jpayne@69: /* jpayne@69: * tclPlatDecls.h -- jpayne@69: * jpayne@69: * Declarations of platform specific Tcl APIs. jpayne@69: * jpayne@69: * Copyright (c) 1998-1999 by Scriptics Corporation. jpayne@69: * All rights reserved. jpayne@69: */ jpayne@69: jpayne@69: #ifndef _TCLPLATDECLS jpayne@69: #define _TCLPLATDECLS jpayne@69: jpayne@69: #undef TCL_STORAGE_CLASS jpayne@69: #ifdef BUILD_tcl jpayne@69: # define TCL_STORAGE_CLASS DLLEXPORT jpayne@69: #else jpayne@69: # ifdef USE_TCL_STUBS jpayne@69: # define TCL_STORAGE_CLASS jpayne@69: # else jpayne@69: # define TCL_STORAGE_CLASS DLLIMPORT jpayne@69: # endif jpayne@69: #endif jpayne@69: jpayne@69: /* jpayne@69: * WARNING: This file is automatically generated by the tools/genStubs.tcl jpayne@69: * script. Any modifications to the function declarations below should be made jpayne@69: * in the generic/tcl.decls script. jpayne@69: */ jpayne@69: jpayne@69: /* jpayne@69: * TCHAR is needed here for win32, so if it is not defined yet do it here. jpayne@69: * This way, we don't need to include just for one define. jpayne@69: */ jpayne@69: #if (defined(_WIN32) || defined(__CYGWIN__)) && !defined(_TCHAR_DEFINED) jpayne@69: # if defined(_UNICODE) jpayne@69: typedef wchar_t TCHAR; jpayne@69: # else jpayne@69: typedef char TCHAR; jpayne@69: # endif jpayne@69: # define _TCHAR_DEFINED jpayne@69: #endif jpayne@69: jpayne@69: /* !BEGIN!: Do not edit below this line. */ jpayne@69: jpayne@69: #ifdef __cplusplus jpayne@69: extern "C" { jpayne@69: #endif jpayne@69: jpayne@69: /* jpayne@69: * Exported function declarations: jpayne@69: */ jpayne@69: jpayne@69: #if defined(_WIN32) || defined(__CYGWIN__) /* WIN */ jpayne@69: /* 0 */ jpayne@69: EXTERN TCHAR * Tcl_WinUtfToTChar(const char *str, int len, jpayne@69: Tcl_DString *dsPtr); jpayne@69: /* 1 */ jpayne@69: EXTERN char * Tcl_WinTCharToUtf(const TCHAR *str, int len, jpayne@69: Tcl_DString *dsPtr); jpayne@69: /* Slot 2 is reserved */ jpayne@69: /* 3 */ jpayne@69: EXTERN void TclUnusedStubEntry(void); jpayne@69: #endif /* WIN */ jpayne@69: #ifdef MAC_OSX_TCL /* MACOSX */ jpayne@69: /* 0 */ jpayne@69: EXTERN int Tcl_MacOSXOpenBundleResources(Tcl_Interp *interp, jpayne@69: const char *bundleName, int hasResourceFile, jpayne@69: int maxPathLen, char *libraryPath); jpayne@69: /* 1 */ jpayne@69: EXTERN int Tcl_MacOSXOpenVersionedBundleResources( jpayne@69: Tcl_Interp *interp, const char *bundleName, jpayne@69: const char *bundleVersion, jpayne@69: int hasResourceFile, int maxPathLen, jpayne@69: char *libraryPath); jpayne@69: /* 2 */ jpayne@69: EXTERN void TclUnusedStubEntry(void); jpayne@69: #endif /* MACOSX */ jpayne@69: jpayne@69: typedef struct TclPlatStubs { jpayne@69: int magic; jpayne@69: void *hooks; jpayne@69: jpayne@69: #if defined(_WIN32) || defined(__CYGWIN__) /* WIN */ jpayne@69: TCHAR * (*tcl_WinUtfToTChar) (const char *str, int len, Tcl_DString *dsPtr); /* 0 */ jpayne@69: char * (*tcl_WinTCharToUtf) (const TCHAR *str, int len, Tcl_DString *dsPtr); /* 1 */ jpayne@69: void (*reserved2)(void); jpayne@69: void (*tclUnusedStubEntry) (void); /* 3 */ jpayne@69: #endif /* WIN */ jpayne@69: #ifdef MAC_OSX_TCL /* MACOSX */ jpayne@69: int (*tcl_MacOSXOpenBundleResources) (Tcl_Interp *interp, const char *bundleName, int hasResourceFile, int maxPathLen, char *libraryPath); /* 0 */ jpayne@69: int (*tcl_MacOSXOpenVersionedBundleResources) (Tcl_Interp *interp, const char *bundleName, const char *bundleVersion, int hasResourceFile, int maxPathLen, char *libraryPath); /* 1 */ jpayne@69: void (*tclUnusedStubEntry) (void); /* 2 */ jpayne@69: #endif /* MACOSX */ jpayne@69: } TclPlatStubs; jpayne@69: jpayne@69: extern const TclPlatStubs *tclPlatStubsPtr; jpayne@69: jpayne@69: #ifdef __cplusplus jpayne@69: } jpayne@69: #endif jpayne@69: jpayne@69: #if defined(USE_TCL_STUBS) jpayne@69: jpayne@69: /* jpayne@69: * Inline function declarations: jpayne@69: */ jpayne@69: jpayne@69: #if defined(_WIN32) || defined(__CYGWIN__) /* WIN */ jpayne@69: #define Tcl_WinUtfToTChar \ jpayne@69: (tclPlatStubsPtr->tcl_WinUtfToTChar) /* 0 */ jpayne@69: #define Tcl_WinTCharToUtf \ jpayne@69: (tclPlatStubsPtr->tcl_WinTCharToUtf) /* 1 */ jpayne@69: /* Slot 2 is reserved */ jpayne@69: #define TclUnusedStubEntry \ jpayne@69: (tclPlatStubsPtr->tclUnusedStubEntry) /* 3 */ jpayne@69: #endif /* WIN */ jpayne@69: #ifdef MAC_OSX_TCL /* MACOSX */ jpayne@69: #define Tcl_MacOSXOpenBundleResources \ jpayne@69: (tclPlatStubsPtr->tcl_MacOSXOpenBundleResources) /* 0 */ jpayne@69: #define Tcl_MacOSXOpenVersionedBundleResources \ jpayne@69: (tclPlatStubsPtr->tcl_MacOSXOpenVersionedBundleResources) /* 1 */ jpayne@69: #define TclUnusedStubEntry \ jpayne@69: (tclPlatStubsPtr->tclUnusedStubEntry) /* 2 */ jpayne@69: #endif /* MACOSX */ jpayne@69: jpayne@69: #endif /* defined(USE_TCL_STUBS) */ jpayne@69: jpayne@69: /* !END!: Do not edit above this line. */ jpayne@69: jpayne@69: #undef TclUnusedStubEntry jpayne@69: #ifdef MAC_OSX_TCL /* MACOSX */ jpayne@69: #undef Tcl_MacOSXOpenBundleResources jpayne@69: #define Tcl_MacOSXOpenBundleResources(a,b,c,d,e) Tcl_MacOSXOpenVersionedBundleResources(a,b,NULL,c,d,e) jpayne@69: #endif jpayne@69: jpayne@69: #undef TCL_STORAGE_CLASS jpayne@69: #define TCL_STORAGE_CLASS DLLIMPORT jpayne@69: jpayne@69: #endif /* _TCLPLATDECLS */ jpayne@69: jpayne@69: