00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef _ITCLDECLS
00013 #define _ITCLDECLS
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef Itcl_Init_TCL_DECLARED
00028 #define Itcl_Init_TCL_DECLARED
00029
00030 TCL_EXTERN(int) Itcl_Init _ANSI_ARGS_((Tcl_Interp * interp));
00031 #endif
00032 #ifndef Itcl_SafeInit_TCL_DECLARED
00033 #define Itcl_SafeInit_TCL_DECLARED
00034
00035 TCL_EXTERN(int) Itcl_SafeInit _ANSI_ARGS_((Tcl_Interp * interp));
00036 #endif
00037 #ifndef Itcl_RegisterC_TCL_DECLARED
00038 #define Itcl_RegisterC_TCL_DECLARED
00039
00040 TCL_EXTERN(int) Itcl_RegisterC _ANSI_ARGS_((Tcl_Interp * interp,
00041 CONST char * name, Tcl_CmdProc * proc,
00042 ClientData clientData,
00043 Tcl_CmdDeleteProc * deleteProc));
00044 #endif
00045 #ifndef Itcl_RegisterObjC_TCL_DECLARED
00046 #define Itcl_RegisterObjC_TCL_DECLARED
00047
00048 TCL_EXTERN(int) Itcl_RegisterObjC _ANSI_ARGS_((Tcl_Interp * interp,
00049 CONST char * name, Tcl_ObjCmdProc * proc,
00050 ClientData clientData,
00051 Tcl_CmdDeleteProc * deleteProc));
00052 #endif
00053 #ifndef Itcl_FindC_TCL_DECLARED
00054 #define Itcl_FindC_TCL_DECLARED
00055
00056 TCL_EXTERN(int) Itcl_FindC _ANSI_ARGS_((Tcl_Interp * interp,
00057 CONST char * name, Tcl_CmdProc ** argProcPtr,
00058 Tcl_ObjCmdProc ** objProcPtr,
00059 ClientData * cDataPtr));
00060 #endif
00061 #ifndef Itcl_InitStack_TCL_DECLARED
00062 #define Itcl_InitStack_TCL_DECLARED
00063
00064 TCL_EXTERN(void) Itcl_InitStack _ANSI_ARGS_((Itcl_Stack * stack));
00065 #endif
00066 #ifndef Itcl_DeleteStack_TCL_DECLARED
00067 #define Itcl_DeleteStack_TCL_DECLARED
00068
00069 TCL_EXTERN(void) Itcl_DeleteStack _ANSI_ARGS_((Itcl_Stack * stack));
00070 #endif
00071 #ifndef Itcl_PushStack_TCL_DECLARED
00072 #define Itcl_PushStack_TCL_DECLARED
00073
00074 TCL_EXTERN(void) Itcl_PushStack _ANSI_ARGS_((ClientData cdata,
00075 Itcl_Stack * stack));
00076 #endif
00077 #ifndef Itcl_PopStack_TCL_DECLARED
00078 #define Itcl_PopStack_TCL_DECLARED
00079
00080 TCL_EXTERN(ClientData) Itcl_PopStack _ANSI_ARGS_((Itcl_Stack * stack));
00081 #endif
00082 #ifndef Itcl_PeekStack_TCL_DECLARED
00083 #define Itcl_PeekStack_TCL_DECLARED
00084
00085 TCL_EXTERN(ClientData) Itcl_PeekStack _ANSI_ARGS_((Itcl_Stack * stack));
00086 #endif
00087 #ifndef Itcl_GetStackValue_TCL_DECLARED
00088 #define Itcl_GetStackValue_TCL_DECLARED
00089
00090 TCL_EXTERN(ClientData) Itcl_GetStackValue _ANSI_ARGS_((Itcl_Stack * stack,
00091 int pos));
00092 #endif
00093 #ifndef Itcl_InitList_TCL_DECLARED
00094 #define Itcl_InitList_TCL_DECLARED
00095
00096 TCL_EXTERN(void) Itcl_InitList _ANSI_ARGS_((Itcl_List * listPtr));
00097 #endif
00098 #ifndef Itcl_DeleteList_TCL_DECLARED
00099 #define Itcl_DeleteList_TCL_DECLARED
00100
00101 TCL_EXTERN(void) Itcl_DeleteList _ANSI_ARGS_((Itcl_List * listPtr));
00102 #endif
00103 #ifndef Itcl_CreateListElem_TCL_DECLARED
00104 #define Itcl_CreateListElem_TCL_DECLARED
00105
00106 TCL_EXTERN(Itcl_ListElem*) Itcl_CreateListElem _ANSI_ARGS_((
00107 Itcl_List * listPtr));
00108 #endif
00109 #ifndef Itcl_DeleteListElem_TCL_DECLARED
00110 #define Itcl_DeleteListElem_TCL_DECLARED
00111
00112 TCL_EXTERN(Itcl_ListElem*) Itcl_DeleteListElem _ANSI_ARGS_((
00113 Itcl_ListElem * elemPtr));
00114 #endif
00115 #ifndef Itcl_InsertList_TCL_DECLARED
00116 #define Itcl_InsertList_TCL_DECLARED
00117
00118 TCL_EXTERN(Itcl_ListElem*) Itcl_InsertList _ANSI_ARGS_((Itcl_List * listPtr,
00119 ClientData val));
00120 #endif
00121 #ifndef Itcl_InsertListElem_TCL_DECLARED
00122 #define Itcl_InsertListElem_TCL_DECLARED
00123
00124 TCL_EXTERN(Itcl_ListElem*) Itcl_InsertListElem _ANSI_ARGS_((
00125 Itcl_ListElem * pos, ClientData val));
00126 #endif
00127 #ifndef Itcl_AppendList_TCL_DECLARED
00128 #define Itcl_AppendList_TCL_DECLARED
00129
00130 TCL_EXTERN(Itcl_ListElem*) Itcl_AppendList _ANSI_ARGS_((Itcl_List * listPtr,
00131 ClientData val));
00132 #endif
00133 #ifndef Itcl_AppendListElem_TCL_DECLARED
00134 #define Itcl_AppendListElem_TCL_DECLARED
00135
00136 TCL_EXTERN(Itcl_ListElem*) Itcl_AppendListElem _ANSI_ARGS_((
00137 Itcl_ListElem * pos, ClientData val));
00138 #endif
00139 #ifndef Itcl_SetListValue_TCL_DECLARED
00140 #define Itcl_SetListValue_TCL_DECLARED
00141
00142 TCL_EXTERN(void) Itcl_SetListValue _ANSI_ARGS_((
00143 Itcl_ListElem * elemPtr, ClientData val));
00144 #endif
00145 #ifndef Itcl_EventuallyFree_TCL_DECLARED
00146 #define Itcl_EventuallyFree_TCL_DECLARED
00147
00148 TCL_EXTERN(void) Itcl_EventuallyFree _ANSI_ARGS_((ClientData cdata,
00149 Tcl_FreeProc * fproc));
00150 #endif
00151 #ifndef Itcl_PreserveData_TCL_DECLARED
00152 #define Itcl_PreserveData_TCL_DECLARED
00153
00154 TCL_EXTERN(void) Itcl_PreserveData _ANSI_ARGS_((ClientData cdata));
00155 #endif
00156 #ifndef Itcl_ReleaseData_TCL_DECLARED
00157 #define Itcl_ReleaseData_TCL_DECLARED
00158
00159 TCL_EXTERN(void) Itcl_ReleaseData _ANSI_ARGS_((ClientData cdata));
00160 #endif
00161 #ifndef Itcl_SaveInterpState_TCL_DECLARED
00162 #define Itcl_SaveInterpState_TCL_DECLARED
00163
00164 TCL_EXTERN(Itcl_InterpState) Itcl_SaveInterpState _ANSI_ARGS_((
00165 Tcl_Interp* interp, int status));
00166 #endif
00167 #ifndef Itcl_RestoreInterpState_TCL_DECLARED
00168 #define Itcl_RestoreInterpState_TCL_DECLARED
00169
00170 TCL_EXTERN(int) Itcl_RestoreInterpState _ANSI_ARGS_((
00171 Tcl_Interp* interp, Itcl_InterpState state));
00172 #endif
00173 #ifndef Itcl_DiscardInterpState_TCL_DECLARED
00174 #define Itcl_DiscardInterpState_TCL_DECLARED
00175
00176 TCL_EXTERN(void) Itcl_DiscardInterpState _ANSI_ARGS_((
00177 Itcl_InterpState state));
00178 #endif
00179
00180 typedef struct ItclStubHooks {
00181 struct ItclIntStubs *itclIntStubs;
00182 } ItclStubHooks;
00183
00184 typedef struct ItclStubs {
00185 int magic;
00186 struct ItclStubHooks *hooks;
00187
00188 int (*itcl_Init) _ANSI_ARGS_((Tcl_Interp * interp));
00189 int (*itcl_SafeInit) _ANSI_ARGS_((Tcl_Interp * interp));
00190 int (*itcl_RegisterC) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_CmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc));
00191 int (*itcl_RegisterObjC) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_ObjCmdProc * proc, ClientData clientData, Tcl_CmdDeleteProc * deleteProc));
00192 int (*itcl_FindC) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * name, Tcl_CmdProc ** argProcPtr, Tcl_ObjCmdProc ** objProcPtr, ClientData * cDataPtr));
00193 void (*itcl_InitStack) _ANSI_ARGS_((Itcl_Stack * stack));
00194 void (*itcl_DeleteStack) _ANSI_ARGS_((Itcl_Stack * stack));
00195 void (*itcl_PushStack) _ANSI_ARGS_((ClientData cdata, Itcl_Stack * stack));
00196 ClientData (*itcl_PopStack) _ANSI_ARGS_((Itcl_Stack * stack));
00197 ClientData (*itcl_PeekStack) _ANSI_ARGS_((Itcl_Stack * stack));
00198 ClientData (*itcl_GetStackValue) _ANSI_ARGS_((Itcl_Stack * stack, int pos));
00199 void (*itcl_InitList) _ANSI_ARGS_((Itcl_List * listPtr));
00200 void (*itcl_DeleteList) _ANSI_ARGS_((Itcl_List * listPtr));
00201 Itcl_ListElem* (*itcl_CreateListElem) _ANSI_ARGS_((Itcl_List * listPtr));
00202 Itcl_ListElem* (*itcl_DeleteListElem) _ANSI_ARGS_((Itcl_ListElem * elemPtr));
00203 Itcl_ListElem* (*itcl_InsertList) _ANSI_ARGS_((Itcl_List * listPtr, ClientData val));
00204 Itcl_ListElem* (*itcl_InsertListElem) _ANSI_ARGS_((Itcl_ListElem * pos, ClientData val));
00205 Itcl_ListElem* (*itcl_AppendList) _ANSI_ARGS_((Itcl_List * listPtr, ClientData val));
00206 Itcl_ListElem* (*itcl_AppendListElem) _ANSI_ARGS_((Itcl_ListElem * pos, ClientData val));
00207 void (*itcl_SetListValue) _ANSI_ARGS_((Itcl_ListElem * elemPtr, ClientData val));
00208 void (*itcl_EventuallyFree) _ANSI_ARGS_((ClientData cdata, Tcl_FreeProc * fproc));
00209 void (*itcl_PreserveData) _ANSI_ARGS_((ClientData cdata));
00210 void (*itcl_ReleaseData) _ANSI_ARGS_((ClientData cdata));
00211 Itcl_InterpState (*itcl_SaveInterpState) _ANSI_ARGS_((Tcl_Interp* interp, int status));
00212 int (*itcl_RestoreInterpState) _ANSI_ARGS_((Tcl_Interp* interp, Itcl_InterpState state));
00213 void (*itcl_DiscardInterpState) _ANSI_ARGS_((Itcl_InterpState state));
00214 } ItclStubs;
00215
00216 TCL_EXTERNC ItclStubs *itclStubsPtr;
00217
00218 #if defined(USE_ITCL_STUBS) && !defined(USE_ITCL_STUB_PROCS)
00219
00220
00221
00222
00223
00224 #ifndef Itcl_Init
00225 #define Itcl_Init \
00226 (itclStubsPtr->itcl_Init)
00227 #endif
00228 #ifndef Itcl_SafeInit
00229 #define Itcl_SafeInit \
00230 (itclStubsPtr->itcl_SafeInit)
00231 #endif
00232 #ifndef Itcl_RegisterC
00233 #define Itcl_RegisterC \
00234 (itclStubsPtr->itcl_RegisterC)
00235 #endif
00236 #ifndef Itcl_RegisterObjC
00237 #define Itcl_RegisterObjC \
00238 (itclStubsPtr->itcl_RegisterObjC)
00239 #endif
00240 #ifndef Itcl_FindC
00241 #define Itcl_FindC \
00242 (itclStubsPtr->itcl_FindC)
00243 #endif
00244 #ifndef Itcl_InitStack
00245 #define Itcl_InitStack \
00246 (itclStubsPtr->itcl_InitStack)
00247 #endif
00248 #ifndef Itcl_DeleteStack
00249 #define Itcl_DeleteStack \
00250 (itclStubsPtr->itcl_DeleteStack)
00251 #endif
00252 #ifndef Itcl_PushStack
00253 #define Itcl_PushStack \
00254 (itclStubsPtr->itcl_PushStack)
00255 #endif
00256 #ifndef Itcl_PopStack
00257 #define Itcl_PopStack \
00258 (itclStubsPtr->itcl_PopStack)
00259 #endif
00260 #ifndef Itcl_PeekStack
00261 #define Itcl_PeekStack \
00262 (itclStubsPtr->itcl_PeekStack)
00263 #endif
00264 #ifndef Itcl_GetStackValue
00265 #define Itcl_GetStackValue \
00266 (itclStubsPtr->itcl_GetStackValue)
00267 #endif
00268 #ifndef Itcl_InitList
00269 #define Itcl_InitList \
00270 (itclStubsPtr->itcl_InitList)
00271 #endif
00272 #ifndef Itcl_DeleteList
00273 #define Itcl_DeleteList \
00274 (itclStubsPtr->itcl_DeleteList)
00275 #endif
00276 #ifndef Itcl_CreateListElem
00277 #define Itcl_CreateListElem \
00278 (itclStubsPtr->itcl_CreateListElem)
00279 #endif
00280 #ifndef Itcl_DeleteListElem
00281 #define Itcl_DeleteListElem \
00282 (itclStubsPtr->itcl_DeleteListElem)
00283 #endif
00284 #ifndef Itcl_InsertList
00285 #define Itcl_InsertList \
00286 (itclStubsPtr->itcl_InsertList)
00287 #endif
00288 #ifndef Itcl_InsertListElem
00289 #define Itcl_InsertListElem \
00290 (itclStubsPtr->itcl_InsertListElem)
00291 #endif
00292 #ifndef Itcl_AppendList
00293 #define Itcl_AppendList \
00294 (itclStubsPtr->itcl_AppendList)
00295 #endif
00296 #ifndef Itcl_AppendListElem
00297 #define Itcl_AppendListElem \
00298 (itclStubsPtr->itcl_AppendListElem)
00299 #endif
00300 #ifndef Itcl_SetListValue
00301 #define Itcl_SetListValue \
00302 (itclStubsPtr->itcl_SetListValue)
00303 #endif
00304 #ifndef Itcl_EventuallyFree
00305 #define Itcl_EventuallyFree \
00306 (itclStubsPtr->itcl_EventuallyFree)
00307 #endif
00308 #ifndef Itcl_PreserveData
00309 #define Itcl_PreserveData \
00310 (itclStubsPtr->itcl_PreserveData)
00311 #endif
00312 #ifndef Itcl_ReleaseData
00313 #define Itcl_ReleaseData \
00314 (itclStubsPtr->itcl_ReleaseData)
00315 #endif
00316 #ifndef Itcl_SaveInterpState
00317 #define Itcl_SaveInterpState \
00318 (itclStubsPtr->itcl_SaveInterpState)
00319 #endif
00320 #ifndef Itcl_RestoreInterpState
00321 #define Itcl_RestoreInterpState \
00322 (itclStubsPtr->itcl_RestoreInterpState)
00323 #endif
00324 #ifndef Itcl_DiscardInterpState
00325 #define Itcl_DiscardInterpState \
00326 (itclStubsPtr->itcl_DiscardInterpState)
00327 #endif
00328
00329 #endif
00330
00331
00332
00333 #endif
00334
00335
00336
00337
00338
00339
00340
00341
00342
00343
00344