sybfront.h
上传用户:bilang918
上传日期:2010-03-24
资源大小:558k
文件大小:5k
源码类别:

网络

开发平台:

Unix_Linux

  1. /* Sccsid %Z% %M% %I% %G% */
  2. /* ORIGINAL_SCCSID:  Sccsid @(#) sybfront.h 8.1 8/10/93  */
  3. /*
  4. ** Sybase DB-LIBRARY Version 10.0.1
  5. ** Confidential Property of Sybase, Inc.
  6. ** (c) Copyright Sybase, Inc. 1988, 1994
  7. ** All rights reserved
  8. **
  9. **
  10. ** Use, duplication, or disclosure by the Government
  11. ** is subject to restrictions as set forth in subparagraph (c) (1) (ii)
  12. ** of the Rights in Technical Data and Computer Software clause
  13. ** at DFARS 52.227-7013. Sybase, Inc. 6475 Christie Avenue, Emeryville,
  14. ** CA 94608.
  15. **
  16. ** History
  17. **
  18. ** 001  12JAN94  Added CS_VOID parameter to avoid warnings 
  19. **  with strict ANSI compilation sureshk
  20. */
  21. #ifndef __sybfront__
  22. #define __sybfront__
  23. #include <cstypes.h> /* DB-Library data types will be based on
  24. ** the types in the 5.0 common header file.
  25. */
  26. #define KR_C_COMPILE 1
  27. #define ANSI_C_COMPILE 2
  28. #define CPP_COMPILE 3
  29. /*
  30. ** Languages
  31. */
  32. #define SYB_C 0
  33. #define SYB_FORTRAN 1
  34. #define SYB_COBOL 2
  35. #define SYB_ADA 3
  36. #define SYB_VERDIX_ADA 4
  37. #define SYB_PASCAL 5
  38. #define SYB_HYPERTALK 6
  39. #define SYB_PL1 7
  40. /*
  41. ** Far pointer modifier
  42. */
  43. #if WIN3
  44. #define DBFAR _far
  45. #else
  46. #define DBFAR
  47. #endif /* WIN3 */
  48. /*
  49. ** Return types
  50. */
  51. #ifndef RETCODE
  52. typedef int RETCODE; /* SUCCEED or FAIL */
  53. #endif
  54. typedef int STATUS; /* OK or condition code */
  55. typedef void DBFAR *DBVOIDPTR;
  56. #ifdef NULL
  57. #undef NULL
  58. #endif /* NULL */
  59. #ifndef NULL
  60. #define NULL 0
  61. #endif /* NULL */
  62. #ifdef FALSE
  63. #undef FALSE
  64. #endif /* undef FALSE */
  65. #ifndef FALSE
  66. #define FALSE (unsigned char)0
  67. #endif /* FALSE */
  68. #ifdef TRUE
  69. #undef TRUE
  70. #endif /* undef TRUE */
  71. #ifndef TRUE
  72. #define TRUE (unsigned char)1
  73. #endif /* TRUE */
  74. #ifndef FAIL
  75. #define FAIL (RETCODE)0
  76. #endif /* FAIL */
  77. #ifndef SUCCEED
  78. #define SUCCEED (RETCODE)1
  79. #endif /* SUCCEED */
  80. /*
  81. ** Defines for exit
  82. */
  83. #ifndef STDEXIT
  84. #if !VMS
  85. #define STDEXIT         0
  86. #else
  87. #define STDEXIT         1
  88. #endif /* !VMS */
  89. #endif  /*  ifndef STDEXIT  */
  90. #ifndef ERREXIT
  91. #if !VMS
  92. #define ERREXIT         -1
  93. #else
  94. #include <stsdef.h>
  95. #define ERREXIT STS$K_SEVERE | STS$M_INHIB_MSG
  96. #endif /* !VMS */
  97. #endif  /*  ifndef ERREXIT  */
  98. /*
  99. **  Defines for the "answer" in interrupt pop-ups 
  100. */
  101. #define INT_EXIT 0
  102. #define INT_CONTINUE 1
  103. #define INT_CANCEL 2
  104. #define INT_TIMEOUT 3
  105. /* DataServer variable typedefs - These are now based on the 
  106. ** definitions contained in common library 
  107. */
  108. #define DBTINYINT CS_TINYINT /* DataServer 1 byte integer */
  109. #define DBSMALLINT CS_SMALLINT /* DataServer 2 byte integer */
  110. #define DBINT CS_INT /* DataServer 4 byte integer */
  111. #define DBCHAR CS_CHAR /* DataServer char type */
  112. #define DBBINARY CS_BINARY /* DataServer binary type */
  113. #define DBBIT CS_BIT /* DataServer bit type */
  114. #define DBDATETIME CS_DATETIME /* DataServer datetime type */
  115. #define DBDATETIME4 CS_DATETIME4 /* DataServer 4-byte datetime type */
  116. #define DBMONEY CS_MONEY /* DataServer money type */
  117. #define DBMONEY4 CS_MONEY4 /* DataServer 4-byte money type */
  118. #define DBFLT8 CS_FLOAT /* DataServer float type */
  119. #define DBREAL CS_REAL /* 4-byte float type */
  120. #define DBNUMERIC CS_NUMERIC /* DataServer numeric type */
  121. #define DBDECIMAL CS_DECIMAL /* DataServer decimal type */
  122. /* Don't define BYTE if it has already been. Some PC Platforms do */
  123. #ifndef BYTE
  124. #define BYTE CS_BYTE
  125. #endif
  126. #define DBTYPEINFO CS_TYPEINFO
  127. #define DBVARYCHAR CS_VARCHAR
  128. #define DBVARYBIN CS_VARBINARY
  129. #define DBMAXCHAR CS_MAX_CHAR
  130. #define DBDATEREC CS_DATEREC
  131. /*
  132. ** Typedefs
  133. */
  134. #ifndef DBBOOL
  135. typedef unsigned char DBBOOL;
  136. #endif
  137. #if !defined(_MSC_VER) && !defined(__OS2__) && !defined(__BORLANDC__)
  138. #if !defined(BOOL)
  139. typedef unsigned char BOOL; /* So older programs won't break yet. */
  140. #endif /* BOOL */
  141. #endif /* _MSC_VER */
  142. typedef BYTE DBFAR *POINTER;
  143. #ifndef DBUSMALLINT
  144. typedef unsigned short  DBUSMALLINT;    /* SQL Server 2 byte integer */
  145. #endif
  146. /*
  147. ** Pointers to functions returning ...
  148. ** Keep the #if under 80 characters 
  149. */
  150. /*- 001 -*/
  151. #if ((COMPILE_STYLE == ANSI_C_COMPILE) || (COMPILE_STYLE == CPP_COMPILE)) 
  152. #define PROTO_FUNCPTR 1
  153. #endif
  154. #if defined(FORCE_PROTOTYPES) || defined(CS_FORCE_PROTOTYPES) 
  155. #ifndef PROTO_FUNCPTR
  156. #define PROTO_FUNCPTR 1
  157. #endif /* !PROTO_FUNCPTR */
  158. #endif
  159. #if !defined(_MSC_VER) && !defined(__BORLANDC__) && !defined(WIN3)
  160. #define NOT_PC_PROTO 1
  161. #endif
  162. #if defined(THINK_C) || defined(__MWERKS__) || defined(__SC__)
  163. #ifdef NOT_PC_PROTO
  164. #undef NOT_PC_PROTO
  165. #endif /* NOT_PC_PROTO */
  166. #endif /* MAC */
  167. #if (defined(PROTO_FUNCPTR) && defined(NOT_PC_PROTO))
  168. typedef CS_INT (CS_PUBLIC DBFAR *INTFUNCPTR)(CS_VOID DBFAR * CS_ELLIPSE);
  169. typedef CS_VOID (CS_PUBLIC DBFAR *VOIDFUNCPTR)(CS_VOID DBFAR * CS_ELLIPSE);
  170. typedef CS_BOOL (CS_PUBLIC DBFAR *BOOLFUNCPTR)(CS_VOID DBFAR * CS_ELLIPSE);
  171. #else
  172. typedef CS_INT (CS_PUBLIC DBFAR *INTFUNCPTR)();
  173. typedef CS_VOID (CS_PUBLIC DBFAR *VOIDFUNCPTR)();
  174. typedef CS_BOOL (CS_PUBLIC DBFAR *BOOLFUNCPTR)();
  175. #endif
  176. /*
  177. ** Numeric/Decimal type limits
  178. */
  179. #define DB_MAX_NUMLEN CS_MAX_NUMLEN
  180. #define DB_MIN_PREC CS_MIN_PREC
  181. #define DB_MAX_PREC CS_MAX_PREC
  182. #define DB_DEF_PREC CS_DEF_PREC
  183. #define DB_MIN_SCALE CS_MIN_SCALE
  184. #define DB_MAX_SCALE CS_MAX_SCALE
  185. #define DB_DEF_SCALE CS_DEF_SCALE
  186. #endif /*__sybfront__*/