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.2 by greg, Fri Jun 27 06:53:21 2003 UTC vs.
Revision 3.6 by schorsch, Mon Oct 27 10:19:31 2003 UTC

# Line 7 | Line 7
7   */
8   #ifndef _RAD_PROCESS_H_
9   #define _RAD_PROCESS_H_
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
10  
11 < #include  <sys/types.h>
11 > #include  <errno.h>
12   #ifdef _WIN32
13 <  #include <windows.h>
13 >  #include <windows.h> /* DWORD etc. */
14 >  #include <stdio.h>
15 >  typedef DWORD pid_t;
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)
30   #else
31    #include <sys/param.h>
19  #include <unistd.h>
32   #endif
21 #ifndef BSD
22 #include  <errno.h>
23 #endif
33  
34   #include "paths.h"
35  
36 + #ifdef __cplusplus
37 + extern "C" {
38 + #endif
39  
40   /* On Windows, a process ID is a DWORD. That might actually be the
41     same thing as an int, but it's better not to assume anything.
# Line 32 | Line 44 | extern "C" {
44     being the same type, so we have to describe processes with a struct,
45     instead of the original int[3]. To keep things simple, we typedef
46     the posix pid_t on those systems that don't have it already.
35
36   Some older Windows systems use negative PIDs. Open_process() and
37   close_process() will convert those to positive values during
38   runtime, so that client modules can still use -1 as invalid PID.
47   */
48  
41 #ifdef _WIN32
42  typedef DWORD pid_t;
43 #endif
49  
50   #ifndef PIPE_BUF
51    #ifdef PIPSIZ
# Line 68 | Line 73 | extern int close_process(SUBPROC *pd);
73   extern int process(SUBPROC *pd, char *recvbuf, char *sendbuf, int nbr, int nbs);
74   extern int readbuf(int fd, char *bpos, int siz);
75   extern int writebuf(int fd, char *bpos, int siz);
76 +
77 + #ifdef _WIN32
78 + /* any non-negative increment will send the process to IDLE_PRIORITY_CLASS. */
79 + extern int win_nice(int inc);
80 + #endif
81  
82  
83   #ifdef __cplusplus

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines