ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/common/rtprocess.h
(Generate patch)

Comparing ray/src/common/rtprocess.h (file contents):
Revision 3.7 by greg, Mon Nov 10 16:41:52 2003 UTC vs.
Revision 3.13 by greg, Tue Feb 2 18:02:32 2016 UTC

# Line 9 | Line 9
9   #define _RAD_PROCESS_H_
10  
11   #include  <errno.h>
12 + #include <stdio.h>
13   #ifdef _WIN32
14    #include <windows.h> /* DWORD etc. */
15 <  #include <stdio.h>
15 <  typedef DWORD pid_t;
15 >  typedef DWORD RT_PID;
16    #include <process.h> /* getpid() and others */
17  #define nice(inc) win_nice(inc)
18
19  #ifdef __cplusplus
20  extern "C" {
21  #endif
22  extern FILE *win_popen(char *command, char *type);
23  extern int win_pclose(FILE *p);
24  #ifdef __cplusplus
25  }
26  #endif
27
28  #define popen(cmd,mode) win_popen(cmd,mode)
29  #define pclose(p) win_pclose(p)
17   #else
18    #include <sys/param.h>
19 +  #include <sys/types.h>
20 +  typedef pid_t RT_PID;
21   #endif
22  
23   #include "paths.h"
24  
36 #if !defined(BSD) || defined(sparc)
37 #define vfork   fork
38 #endif
39
25   #ifdef __cplusplus
26   extern "C" {
27   #endif
# Line 46 | Line 31 | extern "C" {
31  
32     This means that we shouldn't rely on PIDs and file descriptors
33     being the same type, so we have to describe processes with a struct,
34 <   instead of the original int[3]. To keep things simple, we typedef
35 <   the posix pid_t on those systems that don't have it already.
34 >   instead of the original int[3]. For that purpose, we typedef a
35 >   platform independent RT_PID.
36   */
37  
38  
# Line 67 | Line 52 | typedef struct {
52          int r; /* read handle */
53          int w; /* write handle */
54          int running; /* doing something */
55 <        pid_t pid; /* process ID */
55 >        RT_PID pid; /* process ID */
56   } SUBPROC;
57  
58   #define SP_INACTIVE {-1,-1,0,0} /* for static initializations */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines