home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c004 / 4.ddi / OS2 / CTOPTN.H < prev    next >
Encoding:
C/C++ Source or Header  |  1989-04-18  |  4.5 KB  |  167 lines

  1. /*
  2.  *          SEE CTOPTN.D IN THE MAIN c-tree DIRECTORY FOR AN
  3.  *        EXPLANATION OF THE CONFIGURATION PARAMETERS
  4.  */
  5.  
  6.  
  7. /* ***      Place Your Configuration Option Selections Here        *** */
  8.  
  9. #define NOTFORCE
  10. #define NO_FLUSH
  11. #define LOW_HIGH
  12. #define VARLDATA
  13. #define PERC_D
  14. #define VARLKEYS
  15. #define FLOATKEY
  16. #define UNIFRMAT
  17. #define PARMFILE
  18. #define RTREE
  19. #define NO_SERVE
  20. #define CTS_CPLD
  21. #define CTS_ISAM
  22. #define NATURAL_SERIAL
  23.  
  24. /* ***                Capacity Constants                *** */
  25.  
  26. #define MAXLEN        64    /* maximum key length            */
  27. #define    MAXVFIL        255    /* maximum virtual files open at same time */
  28. #define MAX_NAME    64    /* maximum file name length        */
  29.  
  30. /* ***            Variable Length Key & Field Constants        *** */
  31.  
  32. #define PADDING        ' '    /* trailing ct_key padding            */
  33. #define FIELD_DELIM    '\0'    /* var length field delimiter        */
  34.  
  35. /*
  36.  * The following capacity constants are used only by the ISAM routines and
  37.  * the REBUILD routines.
  38.  */
  39.  
  40. #define MAXFIL        40    /* maximum number of files        */
  41. #define MAX_DAT_KEY    10    /* maximum number of indices per data   */
  42.                 /* file                    */
  43. #define MAX_KEY_SEG    4    /* maximum number of segments per ct_key    */
  44. #define MAX_LOCKS    32    /* maximum number of ct_locks        */
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51. /* ******************************************************************** */
  52. /* ************************     S T O P    **************************** */
  53. /* ***     D O   N O T   C H A N G E   T H E    F O L L O W I N G   *** */
  54. /* ***   W I T H O U T   C H E C K I N G   W I T H   F A I R C O M  *** */
  55. /* ******************************************************************** */
  56.  
  57. /* ***********     FPUTFGET CANNOT BE USED WITH THE SERVER    ********* */
  58. #ifdef CTSERVER
  59. #ifdef FPUTFGET
  60. #undef FPUTFGET
  61. #define FPUTONLY
  62. #endif
  63. #endif
  64.  
  65. /* ***********   MUSTFRCE indicates multi-user requirements  ********* */
  66. #ifdef MUSTFRCE
  67. #undef MUSTFRCE
  68. #endif
  69. #ifdef FPUTFGET
  70. #define MUSTFRCE
  71. #endif
  72. #ifdef CTSERVER
  73. #define MUSTFRCE
  74. #endif
  75.  
  76. /* ***********  DOSFLUSH APPLIES ONLY TO FPUTONLY & FPUTFGET  ********* */
  77. #ifdef NOTFORCE
  78. #ifdef DOSFLUSH
  79. #undef  DOSFLUSH
  80. #define NO_FLUSH
  81. #endif
  82. #endif
  83. /* ************* ************* ************* ************ ************* */
  84.  
  85. /* *************     UNIFRMAT APPLIES ONLY TO HIGH_LOW    ************* */
  86. #ifdef LOW_HIGH
  87. #ifdef UNIFRMAT
  88. #undef  UNIFRMAT
  89. #define NO_UNIFM
  90. #endif
  91. #endif
  92. /* ************* ************* ************* ************ ************* */
  93.  
  94.  
  95. #define MAXLEV        10    /* maximum height of B-Tree + 1        */
  96. #define    VARI_LEN    (sizeof(VRLEN) + sizeof(LONG))
  97. #define STATUS    (2 * sizeof(COUNT) + 2 * sizeof(LONG   ) + 2 * sizeof(TEXT))
  98. /* node info:     nkv & nkb         sucesr & predsr       leaf & bmem    */
  99.  
  100. #define HDRSIZ   64
  101. /* permanent header information */
  102. #define DHDRSIZ  HDRSIZ
  103.  
  104.  
  105. #ifdef  FPUTFGET
  106. #define PRDRPEAT    10    /* # of times to retry predsr node    */
  107. #else
  108. #define PRDRPEAT    0
  109. #endif
  110.  
  111. #define    MAXMEMB        31    /* maximum additional index members    */
  112.  
  113.  
  114.  
  115. /* ******************************************************************** */
  116. /* ***            SYMBOLIC CONSTANTS               ***  */
  117. /* ******************************************************************** */
  118.  
  119. #define    DRNZERO         (POINTER) 0
  120. #define    NODEZERO    (LONG   ) 0
  121.  
  122. #define CTREAD     0
  123. #define CTWRITE     1
  124. #define CTNONE     3
  125. #define CTXTND     4
  126.  
  127. #define LEAF     '\1'
  128. #define NOLEAF   '\0'
  129.  
  130. #define ALPHAKEY    '\0'
  131. #define INTKEY        '\1'
  132. #define SFLOATKEY    '\2'
  133. #define DFLOATKEY    '\3'
  134. #define COL_PREFIX    '\4'    /* leading character compression    */
  135. #define COL_SUFFIX    '\10'    /*  8 decimal: padding compression    */
  136. #define COL_BOTH    '\14'    /* 12 decimal: both of the above    */
  137. #define ALT_SEQ        '\20'    /* 16 decimal: alternative col sequence    */
  138. #define MSK_ALT        ~ALT_SEQ
  139.  
  140. #define DUPKEY   '\1'
  141. #define NODUPKEY '\0'
  142.  
  143. #define REGULAR  '\1'
  144. #define DUPLEAF  '\0'
  145. #define DUPNONL     '\3'
  146.  
  147. #define DAT_CLOSE '\0'
  148. #define IDX_CLOSE '\1'
  149. #define VAT_CLOSE '\2'
  150.  
  151. #define SECSIZ   128        /* logical sector size. DO NOT CHANGE.    */
  152. #define CTBUFSIZ (4 * SECSIZ)    /* ct_buf[] size */
  153. #define UPDATED  C255        /* C255 defined in ctcmpl.h */
  154. #define DELFLG     C255
  155. #define COMPACT  '\143'        /* file compaction flag: must rebuild indices */
  156. #define CMPMSK     0x00ff
  157.  
  158. #define MAXAGE    0xffff    /* max age of lru counter before roll-over */
  159. #define MAXSRLPOS 0xffff    /* no serial segment flag           */
  160.  
  161. #define    LH_VER     0x0001            /* LOW_HIGH option         */
  162. #define    HL_VER     0x0002            /* HIGH_LOW   "            */
  163. #define CT_V4     0x0050            /* c-tree version 4.1(A,B,C,D)    */
  164. #define CT_V4E     0x0060            /* c-tree version 4.1E/E2/F 4.3 */
  165.  
  166. /*    end of ctoptn.h        */
  167.