Mercurial > hg > xemacs-beta
comparison src/process.h @ 440:8de8e3f6228a r21-2-28
Import from CVS: tag r21-2-28
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:33:38 +0200 |
parents | 3ecd8885ac67 |
children | abe6d1db359e |
comparison
equal
deleted
inserted
replaced
439:357dd071b03c | 440:8de8e3f6228a |
---|---|
16 You should have received a copy of the GNU General Public License | 16 You should have received a copy of the GNU General Public License |
17 along with XEmacs; see the file COPYING. If not, write to | 17 along with XEmacs; see the file COPYING. If not, write to |
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
19 Boston, MA 02111-1307, USA. */ | 19 Boston, MA 02111-1307, USA. */ |
20 | 20 |
21 #ifndef _XEMACS_PROCESS_H_ | 21 #ifndef INCLUDED_process_h_ |
22 #define _XEMACS_PROCESS_H_ | 22 #define INCLUDED_process_h_ |
23 | 23 |
24 #if defined (NO_SUBPROCESSES) | 24 #if defined (NO_SUBPROCESSES) |
25 #undef XPROCESS | 25 #undef XPROCESS |
26 #undef CHECK_PROCESS | 26 #undef CHECK_PROCESS |
27 #undef XSETPROCESS | 27 #undef XSETPROCESS |
36 void wait_without_blocking (void); | 36 void wait_without_blocking (void); |
37 | 37 |
38 #else /* not NO_SUBPROCESSES */ | 38 #else /* not NO_SUBPROCESSES */ |
39 | 39 |
40 /* Only process.c needs to know about the guts of this */ | 40 /* Only process.c needs to know about the guts of this */ |
41 struct Lisp_Process; | |
42 | 41 |
43 DECLARE_LRECORD (process, struct Lisp_Process); | 42 DECLARE_LRECORD (process, Lisp_Process); |
44 #define XPROCESS(x) XRECORD (x, process, struct Lisp_Process) | 43 #define XPROCESS(x) XRECORD (x, process, Lisp_Process) |
45 #define XSETPROCESS(x, p) XSETRECORD (x, p, process) | 44 #define XSETPROCESS(x, p) XSETRECORD (x, p, process) |
46 #define PROCESSP(x) RECORDP (x, process) | 45 #define PROCESSP(x) RECORDP (x, process) |
47 #define CHECK_PROCESS(x) CHECK_RECORD (x, process) | 46 #define CHECK_PROCESS(x) CHECK_RECORD (x, process) |
48 #define PROCESS_LIVE_P(x) (!NILP (XPROCESS(x)->pipe_instream)) | 47 #define PROCESS_LIVE_P(x) (!NILP ((x)->pipe_instream)) |
48 | |
49 #define CHECK_LIVE_PROCESS(x) do { \ | |
50 CHECK_PROCESS (x); \ | |
51 if (! PROCESS_LIVE_P (XPROCESS (x))) \ | |
52 dead_wrong_type_argument (Qprocess_live_p, (x)); \ | |
53 } while (0) | |
49 | 54 |
50 #ifdef emacs | 55 #ifdef emacs |
51 | 56 |
52 EXFUN (Fprocess_kill_without_query, 2); | 57 EXFUN (Fprocess_kill_without_query, 2); |
53 EXFUN (Fprocess_id, 1); | 58 EXFUN (Fprocess_id, 1); |
54 | 59 |
55 Lisp_Object connect_to_file_descriptor (Lisp_Object name, | 60 Lisp_Object connect_to_file_descriptor (Lisp_Object name, |
56 Lisp_Object buffer, | 61 Lisp_Object buffer, |
57 Lisp_Object infd, | 62 Lisp_Object infd, |
58 Lisp_Object outfd); | 63 Lisp_Object outfd); |
59 int connected_via_filedesc_p (struct Lisp_Process *p); | 64 int connected_via_filedesc_p (Lisp_Process *p); |
60 void kill_buffer_processes (Lisp_Object buffer); | 65 void kill_buffer_processes (Lisp_Object buffer); |
61 void close_process_descs (void); | 66 void close_process_descs (void); |
62 | 67 |
63 void set_process_filter (Lisp_Object proc, | 68 void set_process_filter (Lisp_Object proc, |
64 Lisp_Object filter, int filter_does_read); | 69 Lisp_Object filter, int filter_does_read); |
77 | 82 |
78 void update_process_status (Lisp_Object p, | 83 void update_process_status (Lisp_Object p, |
79 Lisp_Object status_symbol, | 84 Lisp_Object status_symbol, |
80 int exit_code, int core_dumped); | 85 int exit_code, int core_dumped); |
81 | 86 |
82 void get_process_streams (struct Lisp_Process *p, | 87 void get_process_streams (Lisp_Process *p, |
83 Lisp_Object *instr, Lisp_Object *outstr); | 88 Lisp_Object *instr, Lisp_Object *outstr); |
84 int get_process_selected_p (struct Lisp_Process *p); | 89 int get_process_selected_p (Lisp_Process *p); |
85 void set_process_selected_p (struct Lisp_Process *p, int selected_p); | 90 void set_process_selected_p (Lisp_Process *p, int selected_p); |
86 | 91 |
87 struct Lisp_Process *get_process_from_usid (USID usid); | 92 Lisp_Process *get_process_from_usid (USID usid); |
88 | 93 |
89 #ifdef HAVE_SOCKETS | 94 #ifdef HAVE_SOCKETS |
90 int network_connection_p (Lisp_Object process); | 95 int network_connection_p (Lisp_Object process); |
91 #else | 96 #else |
92 #define network_connection_p(x) 0 | 97 #define network_connection_p(x) 0 |
140 return -1; | 145 return -1; |
141 #define PTY_NAME_SPRINTF | 146 #define PTY_NAME_SPRINTF |
142 #define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ptsname (fd)); | 147 #define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ptsname (fd)); |
143 #endif | 148 #endif |
144 | 149 |
145 #endif /* _XEMACS_PROCESS_H_ */ | 150 #endif /* INCLUDED_process_h_ */ |