home *** CD-ROM | disk | FTP | other *** search
/ Piper's Pit BBS/FTP: ibm 0040 - 0049 / ibm0040-0049 / ibm0040.tar / ibm0040 / BCPPOWL1.ZIP / CLINC.ZIP / CLSTYPES.H < prev    next >
Encoding:
C/C++ Source or Header  |  1991-08-28  |  6.3 KB  |  218 lines

  1. // Borland C++ - (C) Copyright 1991 by Borland International
  2.  
  3. // Contents ----------------------------------------------------------------
  4. //
  5. //      classType
  6. //      hashValueType
  7. //      sizeType
  8. //      iterFuncType
  9. //      condFuncType
  10. //      countType
  11. //
  12. //      objectClass
  13. //      errorClass
  14. //      sortableClass
  15. //      stringClass
  16. //      listElementClass
  17. //      doubleListElementClass
  18. //      containerClass
  19. //      stackClass
  20. //      queueClass
  21. //      dequeClass
  22. //      collectionClass
  23. //      hashTableClass
  24. //      bagClass
  25. //      setClass
  26. //      dictionaryClass
  27. //      associationClass
  28. //      arrayClass
  29. //      sortedArrayClass
  30. //      listClass
  31. //      doubleListClass
  32. //    timeClass
  33. //    dateClass
  34. //    longClass
  35. //
  36. //    __firstOWLClass
  37. //    __lastOWLClass
  38. //      __lastLibClass
  39. //      __firstUserClass
  40. //
  41. //      directoryClass
  42. //
  43. //      __lastClass
  44. //
  45. // Description
  46. //
  47. //      Defines types for the class library.
  48. //
  49. // End ---------------------------------------------------------------------
  50.  
  51. // Interface Dependencies ---------------------------------------------------
  52.  
  53. #ifndef __CLSTYPES_H
  54. #define __CLSTYPES_H
  55.  
  56. #ifndef __LIMITS_H
  57. #include <limits.h>
  58. #endif
  59.  
  60. #if !defined(__DEFS_H)
  61. #include <_defs.h>
  62. #endif    // __DEFS_H
  63.  
  64. // End Interface Dependencies ------------------------------------------------
  65.  
  66.  
  67. // Section -----------------------------------------------------------------
  68. //                                  types                                 //
  69. // End ---------------------------------------------------------------------
  70.  
  71.  
  72. // Type //
  73.  
  74. typedef unsigned int classType;
  75.  
  76. // Description -------------------------------------------------------------
  77. //
  78. //      Defines the type of a class.
  79. //
  80. // End ---------------------------------------------------------------------
  81.  
  82.  
  83. // Type //
  84.  
  85. typedef unsigned int    hashValueType;
  86.  
  87. // Description -------------------------------------------------------------
  88. //
  89. //      Defines a returned hash value.
  90. //
  91. // End ---------------------------------------------------------------------
  92.  
  93.  
  94. // Type //
  95.  
  96. typedef unsigned int    sizeType;
  97.  
  98. // Description -------------------------------------------------------------
  99. //
  100. //      Defines the size of a storage area.
  101. //
  102. // End ---------------------------------------------------------------------
  103.  
  104. typedef void _FAR * Pvoid;
  105. typedef const void _FAR * PCvoid;
  106. typedef void _FAR * _FAR & RPvoid;
  107. typedef char _FAR * Pchar;
  108. typedef const char _FAR * PCchar;
  109.  
  110. // Type //
  111.  
  112. _CLASSDEF(Object)
  113. typedef void ( _FAR *iterFuncType )( RObject, Pvoid );
  114.  
  115. // Description -------------------------------------------------------------
  116. //
  117. //      Defines a pointer to an iteration function.  The iteration function
  118. //      takes an Object reference and a point to a list of parameters to
  119. //      the function.  The parameter list pointer may be NULL.
  120. //
  121. // End ---------------------------------------------------------------------
  122.  
  123.  
  124. // Type //
  125.  
  126. typedef int ( _FAR *condFuncType )( RCObject, Pvoid );
  127.  
  128. // Description -------------------------------------------------------------
  129. //
  130. //      Defines a pointer to a function which implements a conditional test
  131. //      and returns 0 if the condition was met, non-zero otherwise.  The
  132. //      non-zero values are defined by the individual function.
  133. //
  134. // End ---------------------------------------------------------------------
  135.  
  136.  
  137. // End Section types //
  138.  
  139.  
  140. // Type //
  141.  
  142. typedef int    countType;
  143.  
  144. // Description -------------------------------------------------------------
  145. //
  146. //      Defines a container for counting things in the class library.
  147. //
  148. // End ---------------------------------------------------------------------
  149.  
  150.  
  151. // End Section types //
  152.  
  153.  
  154. // Section -----------------------------------------------------------------
  155. //                               defines                                  //
  156. // End ---------------------------------------------------------------------
  157.  
  158. // LiteralSection ----------------------------------------------------------
  159. //
  160. //      class type codes
  161. //
  162. // Description
  163. //
  164. //      Defines codes for the class types in the class library.
  165. //      The ranges for the codes and their use are defined below.
  166. //
  167. //      0 .. __lastLibClass:                Reserved for classes in 
  168. //                        the container class library
  169. //                        and the ObjectWindows class
  170. //                        library
  171. //
  172. //      __firstOWLClass .. __lastOWLClass:  Reserved for classes in 
  173. //                        the ObjectWindows class 
  174. //                        library.
  175. //
  176. //      __firstUserClass .. __lastClass:    Available for general use.
  177. //
  178. // End ---------------------------------------------------------------------
  179.  
  180. #define    objectClass                0
  181. #define    errorClass               (objectClass+1)
  182. #define    sortableClass            (errorClass+1)
  183. #define    stringClass              (sortableClass+1)
  184. #define    listElementClass         (stringClass+1)
  185. #define    doubleListElementClass   (listElementClass+1)
  186. #define    containerClass           (doubleListElementClass+1)
  187. #define    stackClass               (containerClass+1)
  188. #define    queueClass               (stackClass+1)
  189. #define    dequeClass               (queueClass+1)
  190. #define    collectionClass          (dequeClass+1)
  191. #define    hashTableClass           (collectionClass+1)
  192. #define    bagClass                 (hashTableClass+1)
  193. #define    setClass                 (bagClass+1)
  194. #define    dictionaryClass          (setClass+1)
  195. #define    associationClass         (dictionaryClass+1)
  196. #define    arrayClass               (associationClass+1)
  197. #define    sortedArrayClass         (arrayClass+1)
  198. #define    listClass                (sortedArrayClass+1)
  199. #define    doubleListClass          (listClass+1)
  200. #define    timeClass                (doubleListClass+1)
  201. #define       dateClass                (timeClass+1)
  202. #define       longClass            (dateClass+1)
  203. #define    TCollectionClass        (longClass+1)
  204.  
  205. #define    __firstOWLClass        100
  206. #define       __lastOWLClass        200
  207. #define    __lastLibClass           255
  208. #define    __firstUserClass         __lastLibClass+1
  209.  
  210. #define    __lastClass              UINT_MAX
  211.  
  212. // End LiteralSection class type codes //
  213.  
  214. // End Section defines //
  215.  
  216. #endif // ifndef __CLSTYPES_H //
  217.  
  218.