aboutsummaryrefslogtreecommitdiff
path: root/Src/nde/win/IndexRecord.h
blob: 97a73bd5374bf45393b5e424a5e9e7176658c97d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once
#include <stdio.h>
#include "Record.h"

class IndexRecord : public RecordBase
{
public:
	IndexRecord(int RecordPos, int insertionPoint, VFILE *FileHandle,Table *p);
	void BuildCollaboration();
	bool NeedFix();
	IndexField *GetIndexByName(const wchar_t *name);
	int GetColumnCount() { return (int)(Fields.size() - 1); }
	bool CheckIndexing(int v);
	int WriteFields(Table *ParentTable);
	int WriteIndex(Table *ParentTable);
	typedef bool (*FieldsWalker)(IndexRecord *record, Field *entry, void *context);
	void WalkFields(FieldsWalker callback, void *context);
};