1 /**
2  * This file has no copyright assigned and is placed in the Public Domain.
3  * This file is part of the mingw-w64 runtime package.
4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5  */
6 #ifndef _INC_DIRECT
7 #define _INC_DIRECT
8 
9 #include <crtdefs.h>
10 #include <io.h>
11 
12 #pragma pack(push,_CRT_PACKING)
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 #ifndef _DISKFREE_T_DEFINED
19 #define _DISKFREE_T_DEFINED
20   struct _diskfree_t {
21     unsigned total_clusters;
22     unsigned avail_clusters;
23     unsigned sectors_per_cluster;
24     unsigned bytes_per_sector;
25   };
26 #endif
27 
28   _CRTIMP char *__cdecl _getcwd(char *_DstBuf,int _SizeInBytes);
29   _CRTIMP char *__cdecl _getdcwd(int _Drive,char *_DstBuf,int _SizeInBytes);
30 #if __MSVCRT_VERSION__ >= 0x800
31   char *__cdecl _getdcwd_nolock(int _Drive,char *_DstBuf,int _SizeInBytes);
32 #endif
33   _CRTIMP int __cdecl _chdir(const char *_Path);
34   _CRTIMP int __cdecl _mkdir(const char *_Path);
35   _CRTIMP int __cdecl _rmdir(const char *_Path);
36 #ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
37   _CRTIMP int __cdecl _chdrive(int _Drive);
38   _CRTIMP int __cdecl _getdrive(void);
39   _CRTIMP unsigned long __cdecl _getdrives(void);
40 
41 #ifndef _GETDISKFREE_DEFINED
42 #define _GETDISKFREE_DEFINED
43   _CRTIMP unsigned __cdecl _getdiskfree(unsigned _Drive,struct _diskfree_t *_DiskFree);
44 #endif
45 #endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
46 
47 #ifndef _WDIRECT_DEFINED
48 #define _WDIRECT_DEFINED
49   _CRTIMP wchar_t *__cdecl _wgetcwd(wchar_t *_DstBuf,int _SizeInWords);
50   _CRTIMP wchar_t *__cdecl _wgetdcwd(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
51 #if __MSVCRT_VERSION__ >= 0x800
52   wchar_t *__cdecl _wgetdcwd_nolock(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
53 #endif
54   _CRTIMP int __cdecl _wchdir(const wchar_t *_Path);
55   _CRTIMP int __cdecl _wmkdir(const wchar_t *_Path);
56   _CRTIMP int __cdecl _wrmdir(const wchar_t *_Path);
57 #endif
58 
59 #ifndef	NO_OLDNAMES
60 
61 #define diskfree_t _diskfree_t
62 
63   char *__cdecl getcwd(char *_DstBuf,int _SizeInBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
64   int __cdecl chdir(const char *_Path) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
65   int __cdecl mkdir(const char *_Path) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
66   int __cdecl rmdir(const char *_Path) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
67 #endif
68 
69 #ifdef __cplusplus
70 }
71 #endif
72 
73 #pragma pack(pop)
74 #endif
75