ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/util/netproc.h
Revision: 2.7
Committed: Mon Oct 27 10:32:06 2003 UTC (20 years, 5 months ago) by schorsch
Content type: text/plain
Branch: MAIN
Changes since 2.6: +3 -3 lines
Log Message:
Added simplistic win_netproc.c and various other compatibility fixes.

File Contents

# Content
1 /* RCSid $Id: netproc.h,v 2.6 2003/06/27 11:32:12 schorsch Exp $ */
2 /*
3 * Header file for network processing routines
4 */
5 #ifndef _RAD_NETPROC_H_
6 #define _RAD_NETPROC_H_
7 #ifdef __cplusplus
8 extern "C" {
9 #endif
10
11
12 typedef struct {
13 char *com; /* command (stored on client side) */
14 int pid; /* process ID */
15 int efd; /* standard error file descriptor */
16 char *errs; /* error output */
17 int elen; /* error output length */
18 int (*cf)(); /* completion callback function */
19 } NETPROC; /* process slot (name PROC conflicts with Windows) */
20
21 /* Callback function cf above passed process server, slot number and status */
22
23 typedef struct pserver {
24 struct pserver *next; /* next process server in main list */
25 char hostname[64]; /* remote host ID */
26 char directory[128]; /* remote execution directory */
27 char username[32]; /* remote user ID */
28 short nprocs; /* number of allocated process slots */
29 NETPROC proc[1]; /* process slot(s) (must be last in struct) */
30 } PSERVER; /* process server */
31
32 extern PSERVER *pslist; /* global process server list */
33
34 extern PSERVER *addpserver(char *host, char *dir, char *usr, int np);
35 extern PSERVER *findjob(int *pnp);
36
37 extern char *myhostname(void);
38
39 #define LHOSTNAME "localhost" /* accepted name for local host */
40
41 #define pserverOK(ps) (wait4job(ps, startjob(ps, "true", NULL)) == 0)
42
43
44 #ifdef __cplusplus
45 }
46 #endif
47 #endif /* _RAD_NETPROC_H_ */
48