IndexRecord.h 647 B

1234567891011121314151617181920212223
  1. #pragma once
  2. /*
  3. Android (linux) implementation
  4. */
  5. #include <stdio.h>
  6. #include "Record.h"
  7. #include <nu/PtrDeque2.h>
  8. class IndexField;
  9. class IndexRecord : public RecordBase
  10. {
  11. public:
  12. IndexRecord(int RecordPos, int insertionPoint, VFILE *FileHandle, Table *p);
  13. void BuildCollaboration();
  14. bool NeedFix();
  15. IndexField *GetIndexByName(const char *name);
  16. int GetColumnCount() { return Fields.size() - 1; }
  17. bool CheckIndexing(int v);
  18. int WriteFields(Table *ParentTable);
  19. int WriteIndex(Table *ParentTable);
  20. typedef bool (*FieldsWalker)(IndexRecord *record, Field *entry, void *context);
  21. void WalkFields(FieldsWalker callback, void *context);
  22. };