| 1 | /* expect_tcl.h - include file for using the expect library, libexpect.a |
| 2 | with Tcl (and optionally Tk) |
| 3 | |
| 4 | Written by: Don Libes, libes@cme.nist.gov, NIST, 12/3/90 |
| 5 | |
| 6 | Design and implementation of this program was paid for by U.S. tax |
| 7 | dollars. Therefore it is public domain. However, the author and NIST |
| 8 | would appreciate credit if this program or parts of it are used. |
| 9 | |
| 10 | */ |
| 11 | |
| 12 | #ifndef _EXPECT_TCL_H |
| 13 | #define _EXPECT_TCL_H |
| 14 | |
| 15 | #include <stdio.h> |
| 16 | #include "expect_comm.h" |
| 17 | |
| 18 | /* |
| 19 | * This is a convenience macro used to initialize a thread local storage ptr. |
| 20 | * Stolen from tclInt.h |
| 21 | */ |
| 22 | #ifndef TCL_TSD_INIT |
| 23 | #define TCL_TSD_INIT(keyPtr) (ThreadSpecificData *)Tcl_GetThreadData((keyPtr), sizeof(ThreadSpecificData)) |
| 24 | #endif |
| 25 | |
| 26 | EXTERN int exp_cmdlinecmds; |
| 27 | EXTERN int exp_interactive; |
| 28 | EXTERN FILE *exp_cmdfile; |
| 29 | EXTERN char *exp_cmdfilename; |
| 30 | EXTERN int exp_getpid; /* pid of Expect itself */ |
| 31 | EXTERN int exp_buffer_command_input; |
| 32 | |
| 33 | EXTERN int exp_tcl_debugger_available; |
| 34 | |
| 35 | EXTERN Tcl_Interp *exp_interp; |
| 36 | |
| 37 | #define Exp_Init Expect_Init |
| 38 | EXTERN int Expect_Init _ANSI_ARGS_((Tcl_Interp *)); /* for Tcl_AppInit apps */ |
| 39 | EXTERN void exp_parse_argv _ANSI_ARGS_((Tcl_Interp *,int argc,char **argv)); |
| 40 | EXTERN int exp_interpreter _ANSI_ARGS_((Tcl_Interp *,Tcl_Obj *)); |
| 41 | EXTERN int exp_interpret_cmdfile _ANSI_ARGS_((Tcl_Interp *,FILE *)); |
| 42 | EXTERN int exp_interpret_cmdfilename _ANSI_ARGS_((Tcl_Interp *,char *)); |
| 43 | EXTERN void exp_interpret_rcfiles _ANSI_ARGS_((Tcl_Interp *,int my_rc,int sys_rc)); |
| 44 | |
| 45 | EXTERN char * exp_cook _ANSI_ARGS_((char *s,int *len)); |
| 46 | |
| 47 | EXTERN void expCloseOnExec _ANSI_ARGS_((int)); |
| 48 | |
| 49 | /* app-specific exit handler */ |
| 50 | EXTERN void (*exp_app_exit)_ANSI_ARGS_((Tcl_Interp *)); |
| 51 | EXTERN void exp_exit_handlers _ANSI_ARGS_((ClientData)); |
| 52 | |
| 53 | EXTERN void exp_error _ANSI_ARGS_(TCL_VARARGS(Tcl_Interp *,interp)); |
| 54 | |
| 55 | #endif /* _EXPECT_TCL_H */ |