home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2000 May / MICD_2000_05.iso / CBuilder5 / INSTALL / DATA1.CAB / Program_Built_Files / Include / dirent.h < prev    next >
C/C++ Source or Header  |  2000-02-01  |  3KB  |  110 lines

  1. /*  dirent.h
  2.  
  3.     Definitions for POSIX directory operations.
  4.  
  5. */
  6.  
  7. /*
  8.  *      C/C++ Run Time Library - Version 10.0
  9.  *
  10.  *      Copyright (c) 1991, 2000 by Inprise Corporation
  11.  *      All Rights Reserved.
  12.  *
  13.  */
  14.  
  15. /* $Revision:   9.2  $ */
  16.  
  17. #ifndef __DIRENT_H
  18. #define __DIRENT_H
  19.  
  20. #ifndef ___STDDEF_H
  21. #include <_stddef.h>
  22. #endif
  23.  
  24. #ifndef _WINDOWS_
  25. #include <windows.h>  /* For WIN32_FIND_DATA */
  26. #endif
  27.  
  28. #if !defined(RC_INVOKED)
  29.  
  30. #if defined(__STDC__)
  31. #pragma warn -nak
  32. #endif
  33.  
  34. #pragma pack(push, 1)
  35.  
  36. #endif  /* !RC_INVOKED */
  37.  
  38.  
  39. #ifdef __cplusplus
  40. extern "C" {
  41. #endif
  42.  
  43.  
  44. /* dirent structure returned by readdir().
  45.  */
  46. struct dirent
  47. {
  48.     char        d_name[260];
  49. };
  50.  
  51. /* wdirent structure returned by wreaddir().
  52.  */
  53. struct wdirent
  54. {
  55.     wchar_t        d_name[260];
  56. };
  57.  
  58. /* DIR type returned by opendir().  The members of this structure
  59.  * must not be accessed by application programs.
  60.  */
  61. typedef struct
  62. {
  63.     unsigned long _d_hdir;              /* directory handle */
  64.     char         *_d_dirname;           /* directory name */
  65.     unsigned      _d_magic;             /* magic cookie for verifying handle */
  66.     unsigned      _d_nfiles;            /* no. of files remaining in buf */
  67.     char          _d_buf[sizeof(WIN32_FIND_DATA)];  /* buffer for a single file */
  68. } DIR;
  69.  
  70. typedef struct
  71. {
  72.     unsigned long _d_hdir;              /* directory handle */
  73.     wchar_t      *_d_dirname;           /* directory name */
  74.     unsigned      _d_magic;             /* magic cookie for verifying handle */
  75.     unsigned      _d_nfiles;            /* no. of files remaining in buf */
  76.     char          _d_buf[sizeof(WIN32_FIND_DATA)];  /* buffer for a single file */
  77. } wDIR;
  78.  
  79. wDIR           * _RTLENTRY _EXPFUNC wopendir  (const wchar_t *__dirname);
  80. struct wdirent * _RTLENTRY _EXPFUNC wreaddir  (wDIR *__dir);
  81. int              _RTLENTRY _EXPFUNC wclosedir (wDIR *__dir);
  82. void             _RTLENTRY _EXPFUNC wrewinddir(wDIR *__dir);
  83.  
  84. /* Prototypes.
  85.  */
  86. DIR            _FAR * _RTLENTRY _EXPFUNC opendir  (const char _FAR *__dirname);
  87. struct dirent  _FAR * _RTLENTRY _EXPFUNC readdir  (DIR _FAR *__dir);
  88. int                   _RTLENTRY _EXPFUNC closedir (DIR _FAR *__dir);
  89. void                  _RTLENTRY _EXPFUNC rewinddir(DIR _FAR *__dir);
  90.  
  91. #ifdef __cplusplus
  92. }
  93. #endif
  94.  
  95.  
  96. #if !defined(RC_INVOKED)
  97.  
  98. /* restore default packing */
  99. #pragma pack(pop)
  100.  
  101. #if defined(__STDC__)
  102. #pragma warn .nak
  103. #endif
  104.  
  105. #endif  /* !RC_INVOKED */
  106.  
  107.  
  108. #endif  /* __DIRENT_H */
  109.  
  110.