abstypes.hpp
来自「Absolute Database 5.12 src. Absolute Da」· HPP 代码 · 共 749 行 · 第 1/2 页
HPP
749 行
typedef TABSKeyBuffer *PABSKeyBuffer;
#pragma pack(push,1)
struct TABSKeyBuffer
{
public:
bool Modified;
bool Exclusive;
int FieldCount;
} ;
#pragma pack(pop)
#pragma pack(push,1)
struct TABSNavigationInfo
{
public:
TABSGetRecordMode GetRecordMode;
int IndexID;
#pragma pack(push,1)
TABSPageItemID RecordID;
#pragma pack(pop)
char *RecordBuffer;
bool FirstPosition;
bool LastPosition;
TABSGetRecordResult GetRecordResult;
} ;
#pragma pack(pop)
#pragma option push -b-
enum TABSDateTimeExtractField { dtefYear, dtefMonth, dtefDay, dtefHour, dtefMinute, dtefSecond };
#pragma option pop
class DELPHICLASS TABSIndexPositionCache;
class PASCALIMPLEMENTATION TABSIndexPositionCache : public System::TObject
{
typedef System::TObject inherited;
public:
void *Position;
int IndexID;
#pragma pack(push,1)
TABSPageItemID RecordID;
#pragma pack(pop)
int TableState;
__fastcall TABSIndexPositionCache(void);
__fastcall virtual ~TABSIndexPositionCache(void);
};
class DELPHICLASS TABSScanSearchCondition;
class PASCALIMPLEMENTATION TABSScanSearchCondition : public System::TObject
{
typedef System::TObject inherited;
public:
void *Expression;
TABSSearchCondition Condition;
char *KeyRecordBuffer;
int KeyRecordBufferSize;
int KeyFieldCount;
int IndexID;
bool CreatedFromExpression;
Classes::TList* ParentExpressions;
Classes::TList* ParentExpressionNodes;
bool FExternalKeyRecordBuffer;
bool PartialCompare;
void __fastcall ClearKeyRecordBuffer(void);
__fastcall TABSScanSearchCondition(bool ExternalKeyRecordBuffer);
__fastcall virtual ~TABSScanSearchCondition(void);
void __fastcall Assign(TABSScanSearchCondition* ScanSearchCondition);
};
#pragma pack(push,1)
struct TABSExtractedConditionInfo
{
public:
char *KeyRecordBuffer;
void *ExtractedExpressionNode;
void *Expression;
} ;
#pragma pack(pop)
typedef TABSExtractedConditionInfo *PABSExtractedConditionInfo;
typedef DynamicArray<TABSScanSearchCondition* > ABSTypes__4;
class DELPHICLASS TABSScanSearchConditionArray;
class PASCALIMPLEMENTATION TABSScanSearchConditionArray : public System::TObject
{
typedef System::TObject inherited;
public:
DynamicArray<TABSScanSearchCondition* > Items;
int Count;
__fastcall TABSScanSearchConditionArray(void);
__fastcall virtual ~TABSScanSearchConditionArray(void);
void __fastcall Delete(int ItemNo);
void __fastcall AddExpression(void * Expression);
void __fastcall AddCondition(TABSScanSearchCondition* ScanSearchCondition);
private:
void __fastcall TryToExtendMultiFieldIndexCondition(int ConditionNo, void * IndexDef, Classes::TList* Expressions);
public:
void __fastcall CreateIndexScanConditionsFromExpressions(void * IndexDefs, int SessionID);
void __fastcall RemoveUnusedConditionsCreatedFromExpressions(int &ScanConditionNo, int &ScanEndConditionNo);
void __fastcall ExtractChosenConditionsFromExpressions(int ScanConditionNo, int ScanEndConditionNo);
void __fastcall ReturnExtractedConditionsToExpressions(int ScanConditionNo, int ScanEndConditionNo);
};
struct TABSSortSpecification
{
public:
AnsiString TableName;
AnsiString ColumnName;
bool Descending;
} ;
typedef int *PABSDate;
typedef int TABSDate;
typedef int *PABSTime;
typedef int TABSTime;
struct TABSDateTime;
typedef TABSDateTime *PABSDateTime;
#pragma pack(push,1)
struct TABSDateTime
{
public:
int Date;
int Time;
} ;
#pragma pack(pop)
typedef Word *PABSLogical;
typedef Word TABSLogical;
typedef double *PABSCurrency;
typedef double TABSCurrency;
typedef GUID *PABSGuid;
typedef GUID TABSGuid;
class DELPHICLASS TABSIntegerArray;
class PASCALIMPLEMENTATION TABSIntegerArray : public System::TObject
{
typedef System::TObject inherited;
public:
DynamicArray<int > Items;
int ItemCount;
int AllocBy;
int deAllocBy;
int MaxAllocBy;
int AllocItemCount;
__fastcall TABSIntegerArray(int size, int DefaultAllocBy, int MaximumAllocBy);
__fastcall virtual ~TABSIntegerArray(void);
void __fastcall SetSize(int newSize);
void __fastcall Assign(TABSIntegerArray* v);
void __fastcall Append(int value);
void __fastcall Insert(int ItemNo, int value);
void __fastcall Delete(int ItemNo);
void __fastcall MoveTo(int itemNo, int newItemNo);
void __fastcall CopyTo(int * ar, const int ar_Size, int itemNo, int iCount);
bool __fastcall IsValueExists(int value);
int __fastcall IndexOf(int value);
};
typedef TABSIntegerArray TABSPagesArray;
typedef DynamicArray<int > ABSTypes__6;
class DELPHICLASS TABSSortedStringPtrArray;
class PASCALIMPLEMENTATION TABSSortedStringPtrArray : public Classes::TList
{
typedef Classes::TList inherited;
public:
#pragma option push -w-inl
/* TList.Destroy */ inline __fastcall virtual ~TABSSortedStringPtrArray(void) { }
#pragma option pop
public:
#pragma option push -w-inl
/* TObject.Create */ inline __fastcall TABSSortedStringPtrArray(void) : Classes::TList() { }
#pragma option pop
};
#pragma pack(push,1)
struct TABSBLOBDescriptor
{
public:
int BlockSize;
__int64 NumBlocks;
__int64 UncompressedSize;
__int64 StartPosition;
Byte CompressionAlgorithm;
Byte CompressionMode;
Byte Reserved[2];
} ;
#pragma pack(pop)
typedef TABSBLOBDescriptor *PABSBLOBDescriptor;
#pragma pack(push,1)
struct TABSPartialBLOBDescriptor
{
public:
int NumBlocks;
__int64 UncompressedSize;
} ;
#pragma pack(pop)
typedef TABSPartialBLOBDescriptor *PABSPartialBLOBDescriptor;
#pragma pack(push,1)
struct TABSPartialTemporaryBLOBDescriptor
{
public:
int NumBlocks;
__int64 UncompressedSize;
__int64 CompressedSize;
} ;
#pragma pack(pop)
typedef TABSPartialTemporaryBLOBDescriptor *PABSPartialTemporaryBLOBDescriptor;
#pragma pack(push,1)
struct TABSCompressedStreamBlockHeader
{
public:
int CompressedSize;
int UncompressedSize;
unsigned Crc32;
__int64 OffsetToNextHeader;
} ;
#pragma pack(pop)
typedef DynamicArray<TABSCompressedStreamBlockHeader > ABSTypes__9;
typedef DynamicArray<__int64 > ABSTypes__01;
class DELPHICLASS TABSCompressedStreamBlockHeadersArray;
class PASCALIMPLEMENTATION TABSCompressedStreamBlockHeadersArray : public System::TObject
{
typedef System::TObject inherited;
private:
__int64 AllocBy;
__int64 DeAllocBy;
__int64 MaxAllocBy;
__int64 AllocItemCount;
public:
DynamicArray<TABSCompressedStreamBlockHeader > Items;
DynamicArray<__int64 > Positions;
__int64 ItemCount;
__fastcall TABSCompressedStreamBlockHeadersArray(void);
__fastcall virtual ~TABSCompressedStreamBlockHeadersArray(void);
void __fastcall SetSize(__int64 NewSize);
void __fastcall AppendItem(const TABSCompressedStreamBlockHeader &Value, __int64 Pos);
int __fastcall FindPosition(__int64 Pos);
};
#pragma pack(push,1)
struct TABSDiskBLOBCache
{
public:
int NumBlocks;
__int64 UncompressedSize;
bool Modified;
char *BlobData;
} ;
#pragma pack(pop)
typedef TABSDiskBLOBCache *PABSDiskBLOBCache;
typedef PABSDiskBLOBCache *PPABSDiskBLOBCache;
#pragma pack(push,1)
struct TABSDiskBLOBHeader
{
public:
Word BlobID;
int NumBlocks;
__int64 CompressedSize;
__int64 UncompressedSize;
} ;
#pragma pack(pop)
typedef TABSDiskBLOBHeader *PABSDiskBLOBHeader;
#pragma pack(push,1)
struct TABSPageListLink
{
public:
int StartPageNo;
Word StartOffset;
int ItemCount;
} ;
#pragma pack(pop)
class DELPHICLASS TABSBitsArray;
class PASCALIMPLEMENTATION TABSBitsArray : public System::TObject
{
typedef System::TObject inherited;
private:
char *FBits;
int FBitCount;
int FNonZeroBitCount;
Byte FBitsTable[256];
protected:
int __fastcall GetNonZeroBitCount(void);
void __fastcall SetSize(int NewSize);
public:
void __fastcall LoadFromStream(Classes::TStream* Stream);
void __fastcall SaveToStream(Classes::TStream* Stream);
__fastcall TABSBitsArray(void);
__fastcall virtual ~TABSBitsArray(void);
bool __fastcall GetBit(int BitNo);
void __fastcall SetBit(int BitNo, bool Value);
int __fastcall GetBitNoByBitPosition(int BitPosition);
int __fastcall GetBitPositionByBitNo(int BitNo);
void __fastcall SetAllBits(void);
bool __fastcall FindBit(bool Value, int &BitNo);
bool __fastcall Find(bool Restart, bool GoForward, int CurBitNo, int &FoundBitNo);
__property int Size = {read=FBitCount, write=SetSize, nodefault};
__property int NonZeroBitCount = {read=FNonZeroBitCount, nodefault};
};
//-- var, const, procedure ---------------------------------------------------
extern PACKAGE bool LocksCompatible[7][7];
extern PACKAGE bool __fastcall CheckNullFlag(int BitNo, char * NullFlags);
extern PACKAGE void __fastcall SetNullFlag(bool ToSet, int BitNo, char * NullFlags);
extern PACKAGE AnsiString __fastcall GetTemporaryName(AnsiString Prefix);
extern PACKAGE AnsiString __fastcall BracketFieldName(AnsiString name);
} /* namespace Abstypes */
using namespace Abstypes;
#pragma pack(pop)
#pragma option pop
#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif // Abstypes
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?