/[dtapublic]/projs/trunk/shared_source/c_tcl_base_7_5_w_mods/tclwinint.h
ViewVC logotype

Contents of /projs/trunk/shared_source/c_tcl_base_7_5_w_mods/tclwinint.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 71 - (show annotations) (download)
Sat Nov 5 11:07:06 2016 UTC (8 years, 1 month ago) by dashley
File MIME type: text/plain
File size: 3693 byte(s)
Set EOL properties appropriately to facilitate simultaneous Linux and Windows development.
1 /* $Header$ */
2 /*
3 * tclWinInt.h --
4 *
5 * Declarations of Windows-specific shared variables and procedures.
6 *
7 * Copyright (c) 1994-1996 Sun Microsystems, Inc.
8 *
9 * See the file "license.terms" for information on usage and redistribution
10 * of this file, and for a DISCLAIMER OF ALL WARRANTIES.
11 *
12 * RCS: @(#) $Id: tclwinint.h,v 1.1.1.1 2001/06/13 04:49:18 dtashley Exp $
13 */
14
15 #ifndef _TCLWININT
16 #define _TCLWININT
17
18 #ifndef _TCLINT
19 #include "tclInt.h"
20 #endif
21 #ifndef _TCLPORT
22 #include "tclPort.h"
23 #endif
24
25 /*
26 * The following specifies how much stack space TclpCheckStackSpace()
27 * ensures is available. TclpCheckStackSpace() is called by Tcl_EvalObj()
28 * to help avoid overflowing the stack in the case of infinite recursion.
29 */
30
31 #define TCL_WIN_STACK_THRESHOLD 0x2000
32
33 #ifdef BUILD_tcl
34 # undef TCL_STORAGE_CLASS
35 # define TCL_STORAGE_CLASS DLLEXPORT
36 #endif
37
38 /*
39 * Some versions of Borland C have a define for the OSVERSIONINFO for
40 * Win32s and for NT, but not for Windows 95.
41 */
42
43 #ifndef VER_PLATFORM_WIN32_WINDOWS
44 #define VER_PLATFORM_WIN32_WINDOWS 1
45 #endif
46
47 /*
48 * The following structure keeps track of whether we are using the
49 * multi-byte or the wide-character interfaces to the operating system.
50 * System calls should be made through the following function table.
51 */
52
53 typedef union {
54 WIN32_FIND_DATAA a;
55 WIN32_FIND_DATAW w;
56 } WIN32_FIND_DATAT;
57
58 typedef struct TclWinProcs {
59 int useWide;
60
61 BOOL (WINAPI *buildCommDCBProc)(CONST TCHAR *, LPDCB);
62 TCHAR *(WINAPI *charLowerProc)(TCHAR *);
63 BOOL (WINAPI *copyFileProc)(CONST TCHAR *, CONST TCHAR *, BOOL);
64 BOOL (WINAPI *createDirectoryProc)(CONST TCHAR *, LPSECURITY_ATTRIBUTES);
65 HANDLE (WINAPI *createFileProc)(CONST TCHAR *, DWORD, DWORD,
66 LPSECURITY_ATTRIBUTES, DWORD, DWORD, HANDLE);
67 BOOL (WINAPI *createProcessProc)(CONST TCHAR *, TCHAR *,
68 LPSECURITY_ATTRIBUTES, LPSECURITY_ATTRIBUTES, BOOL, DWORD,
69 LPVOID, CONST TCHAR *, LPSTARTUPINFOA, LPPROCESS_INFORMATION);
70 BOOL (WINAPI *deleteFileProc)(CONST TCHAR *);
71 HANDLE (WINAPI *findFirstFileProc)(CONST TCHAR *, WIN32_FIND_DATAT *);
72 BOOL (WINAPI *findNextFileProc)(HANDLE, WIN32_FIND_DATAT *);
73 BOOL (WINAPI *getComputerNameProc)(WCHAR *, LPDWORD);
74 DWORD (WINAPI *getCurrentDirectoryProc)(DWORD, WCHAR *);
75 DWORD (WINAPI *getFileAttributesProc)(CONST TCHAR *);
76 DWORD (WINAPI *getFullPathNameProc)(CONST TCHAR *, DWORD nBufferLength,
77 WCHAR *, TCHAR **);
78 DWORD (WINAPI *getModuleFileNameProc)(HMODULE, WCHAR *, int);
79 DWORD (WINAPI *getShortPathNameProc)(CONST TCHAR *, WCHAR *, DWORD);
80 UINT (WINAPI *getTempFileNameProc)(CONST TCHAR *, CONST TCHAR *, UINT,
81 WCHAR *);
82 DWORD (WINAPI *getTempPathProc)(DWORD, WCHAR *);
83 BOOL (WINAPI *getVolumeInformationProc)(CONST TCHAR *, WCHAR *, DWORD,
84 LPDWORD, LPDWORD, LPDWORD, WCHAR *, DWORD);
85 HINSTANCE (WINAPI *loadLibraryProc)(CONST TCHAR *);
86 TCHAR (WINAPI *lstrcpyProc)(WCHAR *, CONST TCHAR *);
87 BOOL (WINAPI *moveFileProc)(CONST TCHAR *, CONST TCHAR *);
88 BOOL (WINAPI *removeDirectoryProc)(CONST TCHAR *);
89 DWORD (WINAPI *searchPathProc)(CONST TCHAR *, CONST TCHAR *,
90 CONST TCHAR *, DWORD, WCHAR *, TCHAR **);
91 BOOL (WINAPI *setCurrentDirectoryProc)(CONST TCHAR *);
92 BOOL (WINAPI *setFileAttributesProc)(CONST TCHAR *, DWORD);
93 } TclWinProcs;
94
95 EXTERN TclWinProcs *tclWinProcs;
96 EXTERN Tcl_Encoding tclWinTCharEncoding;
97
98 /*
99 * Declarations of functions that are not accessible by way of the
100 * stubs table.
101 */
102
103 EXTERN void TclWinInit(HINSTANCE hInst);
104
105 # undef TCL_STORAGE_CLASS
106 # define TCL_STORAGE_CLASS DLLIMPORT
107
108 #include "tclIntPlatDecls.h"
109
110 #endif /* _TCLWININT */
111
112 /* End of tclwinint.h */

Properties

Name Value
svn:eol-style native
svn:keywords Header

dashley@gmail.com
ViewVC Help
Powered by ViewVC 1.1.25