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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 71 - (hide annotations) (download)
Sat Nov 5 11:07:06 2016 UTC (7 years, 11 months 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 dashley 71 /* $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