home *** CD-ROM | disk | FTP | other *** search
- /* process.h
-
- Symbols and structures for process management.
-
- */
-
- /*
- * C/C++ Run Time Library - Version 10.0
- *
- * Copyright (c) 1987, 2000 by Inprise Corporation
- * All Rights Reserved.
- *
- */
-
- /* $Revision: 9.8 $ */
-
- #if !defined(__PROCESS_H)
- #define __PROCESS_H
-
- #ifndef ___STDDEF_H
- #include <_stddef.h>
- #endif
-
- #if !defined(RC_INVOKED)
-
- #if defined(__STDC__)
- #pragma warn -nak
- #endif
-
- #endif /* !RC_INVOKED */
-
- #ifdef __cplusplus
- namespace std {
- #endif /* __cplusplus */
-
- /* Modes available as first argument to the spawnxx functions. */
- #define P_WAIT 0 /* child runs separately, parent waits until exit */
- #define P_NOWAIT 1 /* both child & parent run concurrently */
- #define P_OVERLAY 2 /* child replaces parent, parent no longer exists */
- #define P_NOWAITO 3 /* ASYNCH, toss RC */
- #define P_DETACH 4 /* DETACHED, toss RC */
-
- /* MSC versions of the spawnxx modes */
- #define _P_WAIT 0
- #define _P_NOWAIT 1
- #define _P_OVERLAY 2
- #define _P_NOWAITO 3
- /* _P_DETACH // This one conflicts with the Flag version below */
-
- /* Flags that can be or'ed into the base spawnxx mode parameter */
- #define _P_MASK (0x07) /* used to mask off the P_xxx values */
-
- #define _P_DETACH (0x0010) /* Run child as a detached process (or'able version of P_DETACH) */
- #define _P_NEWCONSOLE (0x0020) /* Run child in a new console window */
- #define _P_NEWPROCGROUP (0x0040) /* Child is the root of a new Process Group */
- #define _P_SUSPENDED (0x0080) /* Child's main thread is created suspended */
- #define _P_NOCLOSE (0x0100) /* Prevents the child's hProcess or hThread from being closed */
- #define _P_NEWWIN16 (0x0200) /* Run Win16 apps in a private WOW VDM */
- #define _P_SHAREDWIN16 (0x0400) /* Run all Win16 apps the same WOW VDM */
- #define _P_DEFERRORMODE (0x0800) /* Child does not inherit error mode of parent */
- #define _P_PRIO_IDLE (0x1000) /* Run in IDLE priority class */
- #define _P_PRIO_NORM (0x2000) /* Run in NORMAL priority class */
- #define _P_PRIO_HIGH (0x4000) /* Run in HIGH priority class */
- #define _P_PRIO_REAL (0x8000) /* Run in REALTIME priority class */
-
- #define WAIT_CHILD (0)
- #define WAIT_GRANDCHILD (1)
-
- #ifdef __cplusplus
- extern "C" {
- #endif
-
- int _RTLENTRY _EXPFUNC getpid(void);
- void _RTLENTRY _EXPFUNC abort(void);
- void _RTLENTRY _EXPFUNC _cexit(void);
- void _RTLENTRY _EXPFUNC _c_exit(void);
- int _RTLENTRY _EXPFUNC execl(const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC execle(const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC execlp(const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC execlpe(const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC execv(const char * __path, char * const * __argv);
- int _RTLENTRY _EXPFUNC execve(const char * __path, char * const * __argv,
- char * const * __env);
- int _RTLENTRY _EXPFUNC execvp(const char * __path, char * const * __argv);
- int _RTLENTRY _EXPFUNC execvpe(const char * __path, char * const * __argv,
- char * const * __env);
- void _RTLENTRY _EXPFUNC exit(int __status);
- void _RTLENTRY _EXPFUNC _exit(int __status);
- int _RTLENTRY _EXPFUNC spawnl(int __mode, const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC spawnle(int __mode, const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC spawnlp(int __mode, const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC spawnlpe(int __mode, const char * __path, const char * __arg0, ...);
- int _RTLENTRY _EXPFUNC spawnv(int __mode, const char * __path, char * const * __argv);
- int _RTLENTRY _EXPFUNC spawnve(int __mode, const char * __path, char * const * __argv,
- char * const * __env);
- int _RTLENTRY _EXPFUNC spawnvp(int __mode, const char * __path, char * const * __argv);
- int _RTLENTRY _EXPFUNC spawnvpe(int __mode, const char * __path, char * const * __argv,
- char * const * __env);
- int _RTLENTRY _EXPFUNC system(const char * __command);
-
-
- int _RTLENTRY _EXPFUNC _wexecl(const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wexecle(const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wexeclp(const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wexeclpe(const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wexecv(const wchar_t * __path, wchar_t * const * __argv);
- int _RTLENTRY _EXPFUNC _wexecve(const wchar_t * __path, wchar_t * const * __argv,
- wchar_t * const * __env);
- int _RTLENTRY _EXPFUNC _wexecvp(const wchar_t * __path, wchar_t * const * __argv);
- int _RTLENTRY _EXPFUNC _wexecvpe(const wchar_t * __path, wchar_t * const * __argv,
- wchar_t * const * __env);
- int _RTLENTRY _EXPFUNC _wspawnl(int __mode, const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wspawnle(int __mode, const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wspawnlp(int __mode, const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wspawnlpe(int __mode, const wchar_t * __path, const wchar_t * __arg0, ...);
- int _RTLENTRY _EXPFUNC _wspawnv(int __mode, const wchar_t * __path, wchar_t * const * __argv);
- int _RTLENTRY _EXPFUNC _wspawnve(int __mode, const wchar_t * __path, wchar_t * const * __argv,
- wchar_t * const * __env);
- int _RTLENTRY _EXPFUNC _wspawnvp(int __mode, const wchar_t * __path, wchar_t * const * __argv);
- int _RTLENTRY _EXPFUNC _wspawnvpe(int __mode, const wchar_t * __path, wchar_t * const * __argv,
- wchar_t * const * __env);
- int _RTLENTRY _EXPFUNC _wsystem(const wchar_t * __command);
-
-
- #if defined(__MT__)
-
- struct _thread_adoption_data_s { char __dummy; };
- typedef struct _thread_adoption_data_s* _PTHREAD_ADOPTION_DATA;
-
- void _RTLENTRY _EXPFUNC _unadopt_thread(_PTHREAD_ADOPTION_DATA __thd);
- _PTHREAD_ADOPTION_DATA _RTLENTRY _EXPFUNC _adopt_thread(void (_USERENTRY *__start_address)(void *),
- void *__arglist,
- int __free_flag);
-
- unsigned long _RTLENTRY _EXPFUNC _beginthread (void (_USERENTRY *__start)(void *),
- unsigned __stksize, void *__arg);
- unsigned long _RTLENTRY _EXPFUNC _beginthreadNT(void (_USERENTRY *__start)(void *),
- unsigned __stksize, void *__arg,
- void *__security_attr,
- unsigned long __create_flags,
- unsigned long *__thread_id);
-
- unsigned long _RTLENTRY _EXPFUNC _beginthreadex(void *__security_attr,
- unsigned __stksize,
- unsigned (__stdcall *__start)(void *),
- void *__arg,
- unsigned __create_flags,
- unsigned *__thread_id);
-
- void _RTLENTRY _EXPFUNC _endthread (void);
- void _RTLENTRY _EXPFUNC _endthreadex (unsigned __thread_retval);
-
- #endif /* __MT__ */
-
- int _RTLENTRY _EXPFUNC cwait (int *__term_stat, int __pid, int __action);
- int _RTLENTRY _EXPFUNC wait (int *__term_stat);
-
- #ifdef __cplusplus
- }
- #endif
-
-
- #if !defined(RC_INVOKED)
-
- #if defined(__STDC__)
- #pragma warn .nak
- #endif
-
- #endif /* !RC_INVOKED */
-
- #ifdef __cplusplus
- } // std
- #endif /* __cplusplus */
-
- #endif /* __PROCESS_H */
-
- #if defined(__cplusplus) && !defined(__USING_CNAME__) && !defined(__PROCESS_H_USING_LIST)
- #define __PROCESS_H_USING_LIST
- using std::getpid;
- using std::abort;
- using std::_cexit;
- using std::_c_exit;
- using std::execl;
- using std::execle;
- using std::execlp;
- using std::execlpe;
- using std::execv;
- using std::execve;
- using std::execvp;
- using std::execvpe;
- using std::exit;
- using std::_exit;
- using std::spawnl;
- using std::spawnle;
- using std::spawnlp;
- using std::spawnlpe;
- using std::spawnv;
- using std::spawnve;
- using std::spawnvp;
- using std::spawnvpe;
- using std::system;
- using std::_wexecl;
- using std::_wexecle;
- using std::_wexeclp;
- using std::_wexeclpe;
- using std::_wexecv;
- using std::_wexecve;
- using std::_wexecvp;
- using std::_wexecvpe;
- using std::_wspawnl;
- using std::_wspawnle;
- using std::_wspawnlp;
- using std::_wspawnlpe;
- using std::_wspawnv;
- using std::_wspawnve;
- using std::_wspawnvp;
- using std::_wspawnvpe;
- using std::_wsystem;
- #if defined(__MT__)
- using std::_PTHREAD_ADOPTION_DATA;
- using std::_adopt_thread;
- using std::_unadopt_thread;
- using std::_beginthread;
- using std::_beginthreadNT;
- using std::_beginthreadex;
- using std::_endthread;
- using std::_endthreadex;
- #endif // __MT__
- using std::cwait;
- using std::wait;
- #endif /* __USING_CNAME__ */
-
-
-