tabindfile.h

来自「linux下一款GIS程序源码」· C头文件 代码 · 共 60 行

H
60
字号
// tabindfile.h: interface for the TABINDFile class.///*--------------------------------------------------------------------- *                      class TABINDFile * * Class to handle table field index (.IND) files... we use this * class as the main entry point to open and search the table field indexes. * Note that .IND files are supported for read access only. *--------------------------------------------------------------------*/#ifndef  TABINDFile_H#define  TABINDFile_H#include "tabindnode.h"class TABINDFile  {private:    char        *m_pszFname;    FILE        *m_fp;    TABAccess   m_eAccessMode;    TABBinBlockManager m_oBlockManager;    int         m_numIndexes;    TABINDNode  **m_papoIndexRootNodes;    UGKByte       **m_papbyKeyBuffers;    int         ValidateIndexNo(int nIndexNumber);    int         ReadHeader();    int         WriteHeader();public:	TABINDFile();	virtual ~TABINDFile();    int         Open(const char *pszFname, const char *pszAccess,                      UGKBool bTestOpenNoError=FALSE);    int         Close();    int         GetNumIndexes() {return m_numIndexes;};    int         SetIndexFieldType(int nIndexNumber, TABFieldType eType);    int         SetIndexUnique(int nIndexNumber, UGKBool bUnique=TRUE);    UGKByte      *BuildKey(int nIndexNumber, UGKInt32 nValue);    UGKByte      *BuildKey(int nIndexNumber, const char *pszStr);    UGKByte      *BuildKey(int nIndexNumber, double dValue);    UGKInt32      FindFirst(int nIndexNumber, UGKByte *pKeyValue);    UGKInt32      FindNext(int nIndexNumber, UGKByte *pKeyValue);    int         CreateIndex(TABFieldType eType, int nFieldSize);    int         AddEntry(int nIndexNumber, UGKByte *pKeyValue, UGKInt32 nRecordNo);    void Dump(FILE *fpOut = NULL);};#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?