home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c082_144 / 1.ddi / RTLINSRC.ZIP / RTLDATA.H < prev    next >
Encoding:
C/C++ Source or Header  |  1992-06-10  |  2.7 KB  |  83 lines

  1. /*------------------------------------------------------------------------
  2.  * filename - rtldata.h
  3.  *
  4.  *      definitions for DLL instance data
  5.  *-----------------------------------------------------------------------*/
  6.  
  7. /*[]------------------------------------------------------------[]*/
  8. /*|                                                              |*/
  9. /*|     C/C++ Run Time Library - Version 4.0                     |*/
  10. /*|                                                              |*/
  11. /*|                                                              |*/
  12. /*|     Copyright (c) 1991 by Borland International              |*/
  13. /*|     All Rights Reserved.                                     |*/
  14. /*|                                                              |*/
  15. /*[]------------------------------------------------------------[]*/
  16.  
  17. #if !defined( __RTLDATA_H )
  18. #define __RTLDATA_H
  19.  
  20. #include <_defs.h>
  21. #include <time.h>
  22. #include <_printf.h>
  23. #include <suballoc.h>
  24. #include <stdio.h>
  25. #include <_nfile.h>
  26.  
  27. #define _F_STDIN    (_F_READ | _F_TERM | _F_LBUF)
  28. #define _F_STDOUT   (_F_WRIT | _F_TERM | _F_LBUF)
  29. #define _F_STDERR   (_F_WRIT | _F_TERM)
  30. #define _F_STDAUX   (_F_RDWR | _F_TERM | _F_BIN)
  31. #define _F_STDPRN   (_F_WRIT | _F_TERM | _F_BIN)
  32.  
  33. typedef void (_FAR * _FARFUNC pvf)();
  34.  
  35. #define TZstrlen        3        /* Len of tz string(- null terminator) */
  36. #define DefaultTimeZone 5L
  37. #define YES 1
  38. #define DefaultDaylight YES
  39.  
  40. struct _RTLData
  41. {
  42.     FILE _streams[_NFILE_];
  43.     unsigned int _openfd[_NFILE_];
  44.     unsigned int _nfile;
  45.     int _fmode;
  46.     int _notUmask;
  47.     int _doserrno_;
  48.     pvf _new_handler;
  49.     char strbuf[94 + 2 + 64 + 1];
  50.     char *Ss;
  51.     char _template[L_tmpnam];
  52.     unsigned int _tmpnum;
  53.     char a[26];
  54.     char _DfltZone[ TZstrlen+1 ], _DfltLight[ TZstrlen+1 ];
  55.     long  timezone_;
  56.     int   daylight_;
  57.     char  *tzname_[2];
  58.     struct tm tmX;
  59.     int errno_;
  60.     unsigned long _StartTime;
  61.     char _cvtBuf[__XCVTDIG__ + 2];
  62.     struct TSubAllocClientData subAllocData;
  63. };
  64.  
  65. #if !defined( _RTLDLL )
  66. #   define _QRTLDataBlock
  67. #   define _RTLInstanceData(x) (x)
  68. #   define _QRTLInstanceData(x) (x)
  69. #else
  70. #   if defined( __cplusplus )
  71.         extern "C" struct _RTLData far * _export pascal __getRTLInstanceData();
  72.         extern "C" struct TSubAllocClientData far * __GetSubAllocClientData();
  73. #   else
  74.         struct _RTLData far * _export pascal __getRTLInstanceData(void);
  75.         struct TSubAllocClientData far * __GetSubAllocClientData(void);
  76. #   endif
  77. #   define _QRTLDataBlock struct _RTLData far *__rtlInstanceData = __getRTLInstanceData()
  78. #   define _RTLInstanceData(x) (__getRTLInstanceData()->x)
  79. #   define _QRTLInstanceData(x) (__rtlInstanceData->x)
  80. #endif
  81.  
  82. #endif  // __RTLDATA_H
  83.