zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

direct.h (3211B) - Raw


      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 #if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
     29 #pragma push_macro("_getcwd")
     30 #undef _getcwd
     31 #pragma push_macro("_getdcwd")
     32 #undef _getdcwd
     33 #pragma push_macro("_getdcwd_nolock")
     34 #undef _getdcwd_nolock
     35 #endif
     36   _CRTIMP char *__cdecl _getcwd(char *_DstBuf,int _SizeInBytes);
     37   _CRTIMP char *__cdecl _getdcwd(int _Drive,char *_DstBuf,int _SizeInBytes);
     38 #if __MSVCRT_VERSION__ >= 0x800
     39   char *__cdecl _getdcwd_nolock(int _Drive,char *_DstBuf,int _SizeInBytes);
     40 #endif
     41 #if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
     42 #pragma pop_macro("_getcwd")
     43 #pragma pop_macro("_getdcwd")
     44 #pragma pop_macro("_getdcwd_nolock")
     45 #endif
     46   _CRTIMP int __cdecl _chdir(const char *_Path);
     47   _CRTIMP int __cdecl _mkdir(const char *_Path);
     48   _CRTIMP int __cdecl _rmdir(const char *_Path);
     49 #ifdef _CRT_USE_WINAPI_FAMILY_DESKTOP_APP
     50   _CRTIMP int __cdecl _chdrive(int _Drive);
     51   _CRTIMP int __cdecl _getdrive(void);
     52   _CRTIMP unsigned long __cdecl _getdrives(void);
     53 
     54 #ifndef _GETDISKFREE_DEFINED
     55 #define _GETDISKFREE_DEFINED
     56   _CRTIMP unsigned __cdecl _getdiskfree(unsigned _Drive,struct _diskfree_t *_DiskFree);
     57 #endif
     58 #endif /* _CRT_USE_WINAPI_FAMILY_DESKTOP_APP */
     59 
     60 #ifndef _WDIRECT_DEFINED
     61 #define _WDIRECT_DEFINED
     62 #if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
     63 #pragma push_macro("_wgetcwd")
     64 #undef _wgetcwd
     65 #pragma push_macro("_wgetdcwd")
     66 #undef _wgetdcwd
     67 #pragma push_macro("_wgetdcwd_nolock")
     68 #undef _wgetdcwd_nolock
     69 #endif
     70   _CRTIMP wchar_t *__cdecl _wgetcwd(wchar_t *_DstBuf,int _SizeInWords);
     71   _CRTIMP wchar_t *__cdecl _wgetdcwd(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
     72 #if __MSVCRT_VERSION__ >= 0x800
     73   wchar_t *__cdecl _wgetdcwd_nolock(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
     74 #endif
     75 #if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
     76 #pragma pop_macro("_wgetcwd")
     77 #pragma pop_macro("_wgetdcwd")
     78 #pragma pop_macro("_wgetdcwd_nolock")
     79 #endif
     80   _CRTIMP int __cdecl _wchdir(const wchar_t *_Path);
     81   _CRTIMP int __cdecl _wmkdir(const wchar_t *_Path);
     82   _CRTIMP int __cdecl _wrmdir(const wchar_t *_Path);
     83 #endif
     84 
     85 #ifndef	NO_OLDNAMES
     86 
     87 #define diskfree_t _diskfree_t
     88 
     89 #if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
     90 #pragma push_macro("getcwd")
     91 #undef getcwd
     92 #endif
     93   char *__cdecl getcwd(char *_DstBuf,int _SizeInBytes) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
     94 #if defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
     95 #pragma pop_macro("getcwd")
     96 #endif
     97   int __cdecl chdir(const char *_Path) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
     98   int __cdecl mkdir(const char *_Path) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
     99   int __cdecl rmdir(const char *_Path) __MINGW_ATTRIB_DEPRECATED_MSVC2005;
    100 #endif
    101 
    102 #ifdef __cplusplus
    103 }
    104 #endif
    105 
    106 #pragma pack(pop)
    107 #endif