home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool_main.zip / ool / include / xdbasefl.H < prev    next >
C/C++ Source or Header  |  1997-08-12  |  2KB  |  51 lines

  1. #ifndef __XDBASEFIELD_H__
  2. #define __XDBASEFIELD_H__
  3.  
  4.  
  5. /*===========================================================================*/
  6. /* OOL ------------------- the Open Object Library ------------------- r 1.0 */
  7. /*===========================================================================*/
  8. /*                              class: XDBaseFile                            */
  9. /*                       derived from: XObject                               */
  10. /*                        last update: 5/97                                  */
  11. /*                      programmed by: Stefan von Brauk (sbrauk@gwdg.de)     */
  12. /*===========================================================================*/
  13.  
  14.  
  15. #include "xobject.h"
  16.  
  17. #define XDBASE_FIELD_CHAR     'C'
  18. #define XDBASE_FIELD_NUMERIC  'N'
  19. #define XDBASE_FIELD_LOGIC    'L'
  20. //#define XDBASE_FIELD_MEMO     'M'
  21. #define XDBASE_FIELD_DATE     'D'
  22.  
  23. #pragma pack(1)
  24.  
  25. typedef struct
  26. {
  27.    char    name[11];       
  28.    char    type;                         
  29.    char*   data_ptr;
  30.    UCHAR   length;                 
  31.    UCHAR   dec_point;
  32. } dbfField;
  33.  
  34. #pragma pack()
  35.  
  36. class _export_ XDBaseField: public XObject
  37. {
  38.       friend class XDBaseFile;
  39.       friend class XDBaseRecord;
  40.    private:
  41.       dbfField field;
  42.       XDBaseField(XFile * , ULONG& off);
  43.       XDBaseField( char * name, unsigned char type, unsigned char length, unsigned char decPointer = 0);
  44.       void Save(XFile * file);
  45.       ULONG offset;
  46. };
  47.  
  48.  
  49.  
  50. #endif
  51.