| flaimtk.h | | flaimtk.h | |
| | | | |
| skipping to change at line 295 | | skipping to change at line 295 | |
| #if defined( FLM_WIN) | | #if defined( FLM_WIN) | |
| | | | |
| #if defined( FLM_64BIT) | | #if defined( FLM_64BIT) | |
| typedef unsigned __int64
FLMUINT; | | typedef unsigned __int64
FLMUINT; | |
| typedef __int64
FLMINT; | | typedef __int64
FLMINT; | |
| typedef unsigned __int64
FLMSIZET; | | typedef unsigned __int64
FLMSIZET; | |
| typedef unsigned int
FLMUINT32; | | typedef unsigned int
FLMUINT32; | |
| #elif _MSC_VER >= 1300 | | #elif _MSC_VER >= 1300 | |
| typedef unsigned long __w64 FLMU
INT; | | typedef unsigned long __w64 FLMU
INT; | |
| typedef long __w64
FLMINT; | | typedef long __w64
FLMINT; | |
|
| typedef __w64 unsigned int
FLMUINT32; | | typedef __w64 unsigned int
FLMUINT32; | |
| typedef __w64 unsigned int
FLMSIZET; | | typedef __w64 unsigned int
FLMSIZET; | |
| #else | | #else | |
| typedef unsigned long
FLMUINT; | | typedef unsigned long
FLMUINT; | |
| typedef long
FLMINT; | | typedef long
FLMINT; | |
| typedef unsigned int
FLMUINT32; | | typedef unsigned int
FLMUINT32; | |
| typedef unsigned int
FLMSIZET; | | typedef unsigned int
FLMSIZET; | |
| #endif | | #endif | |
| #elif defined( FLM_NLM) | | #elif defined( FLM_NLM) | |
| | | | |
| typedef unsigned long int
FLMUINT; | | typedef unsigned long int
FLMUINT; | |
| | | | |
| skipping to change at line 379 | | skipping to change at line 379 | |
| #endif | | #endif | |
| | | | |
| // xpcselany keeps MS compilers from complaining about multiple defi
nitions | | // xpcselany keeps MS compilers from complaining about multiple defi
nitions | |
| | | | |
| #if defined(_MSC_VER) | | #if defined(_MSC_VER) | |
| #define xpcselany __declspec(selectany) | | #define xpcselany __declspec(selectany) | |
| #else | | #else | |
| #define xpcselany | | #define xpcselany | |
| #endif | | #endif | |
| | | | |
|
| | | #if !defined( FLM_UNIX) && !defined( FLM_64BIT) | |
| | | #define FLM_PACK_STRUCTS | |
| | | #ifdef FLM_WIN | |
| | | | |
| | | // For some reason, Windows emits a warning when the | |
| | | packing | |
| | | // is changed. | |
| | | | |
| | | #pragma warning( disable : 4103) | |
| | | #endif | |
| | | #endif | |
| | | | |
| | | #ifdef FLM_PACK_STRUCTS | |
| | | #pragma pack(push, 1) | |
| | | #endif | |
| | | | |
| typedef struct | | typedef struct | |
| { | | { | |
| FLMUINT32 l; | | FLMUINT32 l; | |
| FLMUINT16 w1; | | FLMUINT16 w1; | |
| FLMUINT16 w2; | | FLMUINT16 w2; | |
| FLMUINT8 b[ 8]; | | FLMUINT8 b[ 8]; | |
| } FLM_GUID; | | } FLM_GUID; | |
| | | | |
|
| | | #ifdef FLM_PACK_STRUCTS | |
| | | #pragma pack(pop) | |
| | | #endif | |
| | | | |
| #define RFLMIID const FLM_GUID & | | #define RFLMIID const FLM_GUID & | |
| #define RFLMCLSID const FLM_GUID & | | #define RFLMCLSID const FLM_GUID & | |
| #define FLMGUID FLM_GUID | | #define FLMGUID FLM_GUID | |
| #define FLMCLSID FLM_GUID | | #define FLMCLSID FLM_GUID | |
| | | | |
| // FLM_DEFINE_GUID may be used to define or declare a GUID | | // FLM_DEFINE_GUID may be used to define or declare a GUID | |
| // #define FLM_INIT_GUID before including this header file when | | // #define FLM_INIT_GUID before including this header file when | |
| // you want to define the guid, all other inclusions will only decla
re | | // you want to define the guid, all other inclusions will only decla
re | |
| // the guid, not define it. | | // the guid, not define it. | |
| | | | |
| | | | |
| skipping to change at line 928 | | skipping to change at line 947 | |
| | | | |
| #define F_PUSH_FORECOLOR "%+F" | | #define F_PUSH_FORECOLOR "%+F" | |
| #define F_POP_FORECOLOR "%-F" | | #define F_POP_FORECOLOR "%-F" | |
| | | | |
| #define F_PUSH_BACKCOLOR "%+B" | | #define F_PUSH_BACKCOLOR "%+B" | |
| #define F_POP_BACKCOLOR "%-B" | | #define F_POP_BACKCOLOR "%-B" | |
| | | | |
| #define F_PUSHCOLOR F_PUSH_FORECOLOR F_PUSH_BACK
COLOR | | #define F_PUSHCOLOR F_PUSH_FORECOLOR F_PUSH_BACK
COLOR | |
| #define F_POPCOLOR F_POP_FORECOLOR F_POP_BACKCO
LOR | | #define F_POPCOLOR F_POP_FORECOLOR F_POP_BACKCO
LOR | |
| | | | |
|
| | | #ifdef FLM_PACK_STRUCTS | |
| | | #pragma pack(push, 1) | |
| | | #endif | |
| | | | |
| // IMPORTANT NOTE: This structure needs to be kept in sync with corr
esponding | | // IMPORTANT NOTE: This structure needs to be kept in sync with corr
esponding | |
| // structures and classes in java and C#. | | // structures and classes in java and C#. | |
| /*******************************************************************
********* | | /*******************************************************************
********* | |
| /// Structure for reporting slab usage information in cache. | | /// Structure for reporting slab usage information in cache. | |
| ********************************************************************
********/ | | ********************************************************************
********/ | |
| typedef struct | | typedef struct | |
| { | | { | |
| FLMUINT64 ui64Slabs;
///< Total slabs currently allocated. | | FLMUINT64 ui64Slabs;
///< Total slabs currently allocated. | |
| FLMUINT64 ui64SlabBytes;
///< Total bytes currently allocated in slabs. | | FLMUINT64 ui64SlabBytes;
///< Total bytes currently allocated in slabs. | |
| FLMUINT64 ui64AllocatedCells;
///< Total cells allocated within slabs. | | FLMUINT64 ui64AllocatedCells;
///< Total cells allocated within slabs. | |
| | | | |
| skipping to change at line 1039 | | skipping to change at line 1062 | |
| virtual FLMINT FLMAPI Release( void); | | virtual FLMINT FLMAPI Release( void); | |
| | | | |
| /// Return the current reference count on the object. | | /// Return the current reference count on the object. | |
| virtual FLMINT FLMAPI getRefCount( void); | | virtual FLMINT FLMAPI getRefCount( void); | |
| | | | |
| /// Overloaded new operator for objects of this class. | | /// Overloaded new operator for objects of this class. | |
| void * FLMAPI operator new( | | void * FLMAPI operator new( | |
| FLMSIZET uiSize,
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | | FLMSIZET uiSize,
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | |
| const char * pszFile,
///< Name of source file where this allocation is made. | | const char * pszFile,
///< Name of source file where this allocation is made. | |
| int iLine)
///< Line number in source file where this allocation request i
s made. | | int iLine)
///< Line number in source file where this allocation request i
s made. | |
|
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| throw() | | throw() | |
|
| #endif | | #endif | |
| ; | | ; | |
| | | | |
| /// Overloaded new operator for objects of this class. | | /// Overloaded new operator for objects of this class. | |
| void * FLMAPI operator new( | | void * FLMAPI operator new( | |
| FLMSIZET uiSize)
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | | FLMSIZET uiSize)
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | |
|
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| throw() | | throw() | |
|
| #endif | | #endif | |
| ; | | ; | |
| | | | |
| /// Overloaded new operator (array) for objects of this clas
s (with source file and line number). | | /// Overloaded new operator (array) for objects of this clas
s (with source file and line number). | |
| /// This new operator is called when an array of objects of
this class are allocated. | | /// This new operator is called when an array of objects of
this class are allocated. | |
| /// This new operator passes in the current file and line nu
mber. This information is | | /// This new operator passes in the current file and line nu
mber. This information is | |
| /// useful in tracking memory allocations to determine where
memory leaks are coming from. | | /// useful in tracking memory allocations to determine where
memory leaks are coming from. | |
| void * FLMAPI operator new[]( | | void * FLMAPI operator new[]( | |
| FLMSIZET uiSize,
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | | FLMSIZET uiSize,
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | |
| const char * pszFile,
///< Name of source file where this allocation is made. | | const char * pszFile,
///< Name of source file where this allocation is made. | |
| int iLine)
///< Line number in source file where this allocation request i
s made. | | int iLine)
///< Line number in source file where this allocation request i
s made. | |
|
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| throw() | | throw() | |
|
| #endif | | #endif | |
| ; | | ; | |
| | | | |
| /// Overloaded new operator (array) for objects of this clas
s. | | /// Overloaded new operator (array) for objects of this clas
s. | |
| /// This new operator is called when an array of objects of
this class are allocated. | | /// This new operator is called when an array of objects of
this class are allocated. | |
| void * FLMAPI operator new[]( | | void * FLMAPI operator new[]( | |
| FLMSIZET uiSize)
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | | FLMSIZET uiSize)
///< Number of bytes to allocate - should be sizeof( ThisClass)
. | |
|
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| throw() | | throw() | |
|
| #endif | | #endif | |
| ; | | ; | |
| | | | |
| /// Overloaded delete operator for objects of this class. | | /// Overloaded delete operator for objects of this class. | |
| void FLMAPI operator delete( | | void FLMAPI operator delete( | |
| void * ptr);
///< Pointer to object being freed. | | void * ptr);
///< Pointer to object being freed. | |
| | | | |
| /// Overloaded delete operator (array) for objects of this c
lass. | | /// Overloaded delete operator (array) for objects of this c
lass. | |
| void FLMAPI operator delete[]( | | void FLMAPI operator delete[]( | |
| void * ptr);
///< Pointer to array of objects being freed. | | void * ptr);
///< Pointer to array of objects being freed. | |
| | | | |
| | | | |
| skipping to change at line 1128 | | skipping to change at line 1151 | |
| } | | } | |
| | | | |
| virtual ~F_OSBase() | | virtual ~F_OSBase() | |
| { | | { | |
| } | | } | |
| | | | |
| void * operator new( | | void * operator new( | |
| FLMSIZET uiSize, | | FLMSIZET uiSize, | |
| const char * pszFile, | | const char * pszFile, | |
| int iLine) | | int iLine) | |
|
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| throw() | | throw() | |
|
| #endif | | #endif | |
| ; | | ; | |
| | | | |
| void * operator new[]( | | void * operator new[]( | |
| FLMSIZET uiSize, | | FLMSIZET uiSize, | |
| const char * pszFile, | | const char * pszFile, | |
| int iLine) | | int iLine) | |
|
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| throw() | | throw() | |
|
| #endif | | #endif | |
| ; | | ; | |
| | | | |
| void operator delete( | | void operator delete( | |
| void * ptr); | | void * ptr); | |
| | | | |
| void operator delete[]( | | void operator delete[]( | |
| void * ptr); | | void * ptr); | |
| | | | |
| #ifndef FLM_WATCOM_NLM | | #ifndef FLM_WATCOM_NLM | |
| void operator delete( | | void operator delete( | |
| | | | |
| skipping to change at line 1524 | | skipping to change at line 1547 | |
| Desc: | | Desc: | |
| ********************************************************************
********/ | | ********************************************************************
********/ | |
| flminterface FLMEXP IF_IOStream : public IF_IStream, public IF_OStre
am | | flminterface FLMEXP IF_IOStream : public IF_IStream, public IF_OStre
am | |
| { | | { | |
| #if defined( FLM_WIN) && _MSC_VER < 1300 | | #if defined( FLM_WIN) && _MSC_VER < 1300 | |
| using IF_IStream::operator delete; | | using IF_IStream::operator delete; | |
| #endif | | #endif | |
| }; | | }; | |
| | | | |
| /*******************************************************************
********* | | /*******************************************************************
********* | |
|
| ********************************************************************
********/ | | | |
| /// Message severity. | | /// Message severity. | |
|
| | | ********************************************************************
********/ | |
| typedef enum | | typedef enum | |
| { | | { | |
| F_FATAL_MESSAGE = 0, ///< Indicates that
a fatal error occurred - the kind that would normally | | F_FATAL_MESSAGE = 0, ///< Indicates that
a fatal error occurred - the kind that would normally | |
|
///< require a shutdown or other corrective action by an admini
strator. | |
///< require a shutdown or other corrective action by an admini
strator. | |
| F_WARN_MESSAGE, ///< Warning message
. | | F_WARN_MESSAGE, ///< Warning message
. | |
| F_ERR_MESSAGE, ///< Non-fat
al error message. | | F_ERR_MESSAGE, ///< Non-fat
al error message. | |
| F_INFO_MESSAGE, ///< Information-onl
y message. | | F_INFO_MESSAGE, ///< Information-onl
y message. | |
| F_DEBUG_MESSAGE ///< Debug message. | | F_DEBUG_MESSAGE ///< Debug message. | |
| } eLogMessageSeverity; | | } eLogMessageSeverity; | |
| | | | |
| | | | |
| skipping to change at line 2811 | | skipping to change at line 2834 | |
| FLMUINT16 ui16WpChar, | | FLMUINT16 ui16WpChar, | |
| FLMUINT16 * pui16DakutenOrHandak
uten); | | FLMUINT16 * pui16DakutenOrHandak
uten); | |
| | | | |
| FLMUINT FLMAPI f_wpToMixed( | | FLMUINT FLMAPI f_wpToMixed( | |
| FLMBYTE * pucWPStr, | | FLMBYTE * pucWPStr, | |
| FLMUINT uiWPStrLen, | | FLMUINT uiWPStrLen, | |
| const FLMBYTE * pucLowUpBitStr, | | const FLMBYTE * pucLowUpBitStr, | |
| FLMUINT uiLang); | | FLMUINT uiLang); | |
| | | | |
| RCODE FLMAPI f_asiaParseSubCol( | | RCODE FLMAPI f_asiaParseSubCol( | |
|
| FLMBYTE * pucWPStr, | | FLMBYTE * pucWPStr, | |
| FLMUINT * puiWPStrLen, | | FLMUINT * puiWPStrLen, | |
| FLMUINT uiMaxWPBytes, | | FLMUINT uiMaxWPBytes | |
| const FLMBYTE * pucSubColBuf, | | , | |
| FLMUINT * puiSubColBitPos); | | const FLMBYTE * pucSubColBuf, | |
| | | FLMUINT * puiSubColBit | |
| | | Pos); | |
| | | | |
| RCODE FLMAPI f_asiaColStr2WPStr( | | RCODE FLMAPI f_asiaColStr2WPStr( | |
| const FLMBYTE * pucColStr, | | const FLMBYTE * pucColStr, | |
| FLMUINT uiColStrLen, | | FLMUINT uiColStrLen, | |
| FLMBYTE * pucWPStr, | | FLMBYTE * pucWPStr, | |
| FLMUINT * puiWPStrLen, | | FLMUINT * puiWPStrLen, | |
| FLMUINT * puiUnconvCha
rs, | | FLMUINT * puiUnconvCha
rs, | |
| FLMBOOL * pbDataTrunca
ted, | | FLMBOOL * pbDataTrunca
ted, | |
| FLMBOOL * pbFirstSubst
ring); | | FLMBOOL * pbFirstSubst
ring); | |
| | | | |
| | | | |
| skipping to change at line 3912 | | skipping to change at line 3935 | |
| | | | |
| F_Printf() | | F_Printf() | |
| { | | { | |
| } | | } | |
| | | | |
| virtual ~F_Printf() | | virtual ~F_Printf() | |
| { | | { | |
| } | | } | |
| | | | |
| FLMINT FLMAPI strvPrintf( | | FLMINT FLMAPI strvPrintf( | |
|
| char * pszDestStr, | | char * pszDestStr, | |
| const char * pszFormat, | | const char * pszFormat, | |
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| FLMINT FLMAPI strPrintf( | | FLMINT FLMAPI strPrintf( | |
| char * pszDestStr, | | char * pszDestStr, | |
| const char * pszFormat, | | const char * pszFormat, | |
| ...); | | ...); | |
| | | | |
| FLMINT FLMAPI logvPrintf( | | FLMINT FLMAPI logvPrintf( | |
| IF_LogMessageClient * pLogMsg, | | IF_LogMessageClient * pLogMsg, | |
| const char * pszFormat, | | const char * pszFormat, | |
| f_va_list * args
); | | f_va_list * args
); | |
| | | | |
| FLMINT FLMAPI logPrintf( | | FLMINT FLMAPI logPrintf( | |
| IF_LogMessageClient * pLogMsg, | | IF_LogMessageClient * pLogMsg, | |
| const char * pszFormat, | | const char * pszFormat, | |
| ...); | | ...); | |
| | | | |
| private: | | private: | |
| | | | |
| void processFieldInfo( | | void processFieldInfo( | |
|
| const char ** ppszFormat, | | const char ** ppszFormat, | |
| FLMUINT * puiWidth, | | FLMUINT * puiWidth, | |
| FLMUINT * puiPrecision, | | FLMUINT * puiPrecision, | |
| FLMUINT * puiFlags, | | FLMUINT * puiFlags, | |
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| void stringFormatter( | | void stringFormatter( | |
|
| char cFormatChar, | | char cFormatChar, | |
| FLMUINT uiWidth, | | FLMUINT uiWidth, | |
| FLMUINT uiPrecision, | | FLMUINT uiPrecision, | |
| FLMUINT uiFlags, | | FLMUINT uiFlags, | |
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| void colorFormatter( | | void colorFormatter( | |
|
| char cFormatChar, | | char cFormatChar, | |
| eColorType eColor, | | eColorType eColor, | |
| FLMUINT uiFlags); | | FLMUINT uiFlags); | |
| | | | |
| void charFormatter( | | void charFormatter( | |
|
| char cFormatChar, | | char cFormatChar, | |
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| void errorFormatter( | | void errorFormatter( | |
|
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| void notHandledFormatter( void); | | void notHandledFormatter( void); | |
| | | | |
| void numberFormatter( | | void numberFormatter( | |
|
| char cFormatChar, | | char cFormatChar, | |
| FLMUINT uiWidth, | | FLMUINT uiWidth, | |
| FLMUINT uiPrecision, | | FLMUINT uiPrecision, | |
| FLMUINT uiFlags, | | FLMUINT uiFlags, | |
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| void parseArgs( | | void parseArgs( | |
|
| const char * pszFormat, | | const char * pszFormat, | |
| f_va_list * args); | | f_va_list * args); | |
| | | | |
| void processFormatString( | | void processFormatString( | |
|
| FLMUINT uiLen, | | FLMUINT uiLen, | |
| ...); | | ...); | |
| | | | |
| FLMUINT printNumber( | | FLMUINT printNumber( | |
|
| FLMUINT64 ui64Val, | | FLMUINT64 ui64Val, | |
| FLMUINT uiBase, | | FLMUINT uiBase, | |
| FLMBOOL bUpperCase, | | FLMBOOL bUpperCase, | |
| FLMBOOL bCommas, | | FLMBOOL bCommas, | |
| char * pszBuf); | | char * pszBuf); | |
| | | | |
| void outputLogBuffer( void); | | void outputLogBuffer( void); | |
| | | | |
| FINLINE void outputChar( | | FINLINE void outputChar( | |
|
| char cChar) | | char cChar) | |
| { | | { | |
| if (!m_pLogMsg) | | if (!m_pLogMsg) | |
| { | | { | |
| *m_pszDestStr++ = cChar; | | *m_pszDestStr++ = cChar; | |
| } | | } | |
| else | | else | |
| { | | { | |
| m_szLogBuf [m_uiCharOffset++] = cChar; | | m_szLogBuf [m_uiCharOffset++] = cChar; | |
| m_uiNumLogChars++; | | m_uiNumLogChars++; | |
| if (m_uiCharOffset == MAX_LOG_BUF_CHARS) | | if (m_uiCharOffset == MAX_LOG_BUF_CHARS) | |
| { | | { | |
| outputLogBuffer(); | | outputLogBuffer(); | |
| } | | } | |
| } | | } | |
| } | | } | |
| | | | |
| FINLINE void memsetChar( | | FINLINE void memsetChar( | |
|
| char cChar, | | char cChar, | |
| FLMUINT uiCount) | | FLMUINT uiCount) | |
| { | | { | |
| if (!m_pLogMsg) | | if (!m_pLogMsg) | |
| { | | { | |
| f_memset( m_pszDestStr, cChar, uiCount); | | f_memset( m_pszDestStr, cChar, uiCount); | |
| m_pszDestStr += uiCount; | | m_pszDestStr += uiCount; | |
| } | | } | |
| else | | else | |
| { | | { | |
| FLMUINT uiTmpCount; | | FLMUINT uiTmpCount; | |
| | | | |
| | | | |
| skipping to change at line 4441 | | skipping to change at line 4464 | |
| }; | | }; | |
| | | | |
| /*******************************************************************
********* | | /*******************************************************************
********* | |
| Desc: Block manager | | Desc: Block manager | |
| ********************************************************************
********/ | | ********************************************************************
********/ | |
| flminterface FLMEXP IF_BlockMgr : public F_Object | | flminterface FLMEXP IF_BlockMgr : public F_Object | |
| { | | { | |
| virtual FLMUINT FLMAPI getBlockSize( void) = 0; | | virtual FLMUINT FLMAPI getBlockSize( void) = 0; | |
| | | | |
| virtual RCODE FLMAPI getBlock( | | virtual RCODE FLMAPI getBlock( | |
|
| FLMUINT32 ui32BlockId, | | FLMUINT32 ui32BlockAdd
r, | |
| IF_Block ** ppBlock, | | IF_Block ** ppBlock, | |
|
| FLMBYTE ** ppucBlock) =
0; | | FLMBYTE ** ppucBlock =
NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI createBlock( | | virtual RCODE FLMAPI createBlock( | |
| IF_Block ** ppBlock, | | IF_Block ** ppBlock, | |
|
| FLMBYTE ** ppucBlock, | | FLMBYTE ** ppucBlock = | |
| FLMUINT32 * pui32BlockId | | NULL, | |
| ) = 0; | | FLMUINT32 * pui32BlockAd | |
| | | dr = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI freeBlock( | | virtual RCODE FLMAPI freeBlock( | |
| IF_Block ** ppBlock, | | IF_Block ** ppBlock, | |
|
| FLMBYTE ** ppucBlock) =
0; | | FLMBYTE ** ppucBlock =
NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI prepareForUpdate( | | virtual RCODE FLMAPI prepareForUpdate( | |
| IF_Block ** ppBlock, | | IF_Block ** ppBlock, | |
|
| FLMBYTE ** ppucBlock) =
0; | | FLMBYTE ** ppucBlock =
NULL) = 0; | |
| }; | | }; | |
| | | | |
| RCODE FLMAPI FlmAllocBlockMgr( | | RCODE FLMAPI FlmAllocBlockMgr( | |
| FLMUINT uiBlockSize, | | FLMUINT uiBlockSize, | |
| IF_BlockMgr ** ppBlockMgr); | | IF_BlockMgr ** ppBlockMgr); | |
| | | | |
| /*******************************************************************
********* | | /*******************************************************************
********* | |
|
| | | Desc: | |
| | | ******************************************************************** | |
| | | ********/ | |
| | | enum BTREE_ERR_TYPE | |
| | | { | |
| | | NO_ERR = 0, | |
| | | BT_HEADER, | |
| | | KEY_ORDER, | |
| | | DUPLICATE_KEYS, | |
| | | INFINITY_MARKER, | |
| | | CHILD_BLOCK_ADDRESS, | |
| | | GET_BLOCK_FAILED, | |
| | | MISSING_OVERALL_DATA_LENGTH, | |
| | | NOT_DATA_ONLY_BLOCK, | |
| | | BAD_DO_BLOCK_LENGTHS, | |
| | | BAD_COUNTS, | |
| | | CATASTROPHIC_FAILURE = 999 | |
| | | }; | |
| | | | |
| | | /******************************************************************* | |
| | | ********* | |
| | | Desc: | |
| | | ******************************************************************** | |
| | | ********/ | |
| | | typedef struct | |
| | | { | |
| | | FLMUINT uiKeyCnt; | |
| | | FLMUINT uiFirstKeyCnt; | |
| | | FLMUINT uiBlockCnt; | |
| | | FLMUINT uiBytesUsed; | |
| | | FLMUINT uiDOBlockCnt; | |
| | | FLMUINT uiDOBytesUsed; | |
| | | } BTREE_LEVEL_STATS; | |
| | | | |
| | | /******************************************************************* | |
| | | ********* | |
| | | Desc: | |
| | | ******************************************************************** | |
| | | ********/ | |
| | | typedef struct | |
| | | { | |
| | | FLMUINT uiBlockAddr; | |
| | | FLMUINT uiBlockSize; | |
| | | FLMUINT uiBlocksChecked; | |
| | | FLMUINT uiAvgFreeSpace; | |
| | | FLMUINT uiLevels; | |
| | | FLMUINT uiNumKeys; | |
| | | FLMUINT64 ui64FreeSpace; | |
| | | #define F_BTREE_MAX_LEVELS 8 | |
| | | BTREE_LEVEL_STATS LevelStats[ F_BTREE_MAX_LEVELS]; | |
| | | char szMsg[ 64]; | |
| | | BTREE_ERR_TYPE type; | |
| | | } BTREE_ERR_INFO; | |
| | | | |
| | | /******************************************************************* | |
| | | ********* | |
| Desc: B-Tree | | Desc: B-Tree | |
| ********************************************************************
********/ | | ********************************************************************
********/ | |
| flminterface FLMEXP IF_BTree : public F_Object | | flminterface FLMEXP IF_BTree : public F_Object | |
| { | | { | |
| virtual RCODE FLMAPI btCreate( | | virtual RCODE FLMAPI btCreate( | |
| FLMUINT16 ui16
BtreeId, | | FLMUINT16 ui16
BtreeId, | |
| FLMBOOL bCou
nts, | | FLMBOOL bCou
nts, | |
| FLMBOOL bDat
a, | | FLMBOOL bDat
a, | |
|
| FLMUINT32 * pui3
2RootBlockId) = 0; | | FLMUINT32 * pui3
2RootBlockAddr) = 0; | |
| | | | |
| virtual RCODE FLMAPI btOpen( | | virtual RCODE FLMAPI btOpen( | |
|
| FLMUINT32 ui32
RootBlockId, | | FLMUINT32 ui32
RootBlockAddr, | |
| FLMBOOL bCou
nts, | | FLMBOOL bCou
nts, | |
| FLMBOOL bDat
a, | | FLMBOOL bDat
a, | |
| IF_ResultSetCompare * pCompare = NULL) = 0; | | IF_ResultSetCompare * pCompare = NULL) = 0; | |
| | | | |
| virtual void FLMAPI btClose( void) = 0; | | virtual void FLMAPI btClose( void) = 0; | |
| | | | |
| virtual RCODE FLMAPI btDeleteTree( | | virtual RCODE FLMAPI btDeleteTree( | |
| IF_DeleteStatus * ifpDeleteSta
tus = NULL) = 0; | | IF_DeleteStatus * ifpDeleteSta
tus = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btGetBlockChains( | | virtual RCODE FLMAPI btGetBlockChains( | |
| | | | |
| skipping to change at line 4502 | | skipping to change at line 4575 | |
| FLMUINT uiKe
yLen) = 0; | | FLMUINT uiKe
yLen) = 0; | |
| | | | |
| virtual RCODE FLMAPI btInsertEntry( | | virtual RCODE FLMAPI btInsertEntry( | |
| const FLMBYTE * pucKey, | | const FLMBYTE * pucKey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT uiKe
yLen, | | FLMUINT uiKe
yLen, | |
| const FLMBYTE * pucData, | | const FLMBYTE * pucData, | |
| FLMUINT uiDa
taLen, | | FLMUINT uiDa
taLen, | |
| FLMBOOL bFir
st, | | FLMBOOL bFir
st, | |
| FLMBOOL bLas
t, | | FLMBOOL bLas
t, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btReplaceEntry( | | virtual RCODE FLMAPI btReplaceEntry( | |
| const FLMBYTE * pucKey, | | const FLMBYTE * pucKey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT uiKe
yLen, | | FLMUINT uiKe
yLen, | |
| const FLMBYTE * pucData, | | const FLMBYTE * pucData, | |
| FLMUINT uiDa
taLen, | | FLMUINT uiDa
taLen, | |
| FLMBOOL bFir
st, | | FLMBOOL bFir
st, | |
| FLMBOOL bLas
t, | | FLMBOOL bLas
t, | |
| FLMBOOL bTru
ncate = TRUE, | | FLMBOOL bTru
ncate = TRUE, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btLocateEntry( | | virtual RCODE FLMAPI btLocateEntry( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT * puiK
eyLen, | | FLMUINT * puiK
eyLen, | |
| FLMUINT uiMa
tch, | | FLMUINT uiMa
tch, | |
| FLMUINT * puiP
osition = NULL, | | FLMUINT * puiP
osition = NULL, | |
| FLMUINT * puiD
ataLength = NULL, | | FLMUINT * puiD
ataLength = NULL, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btGetEntry( | | virtual RCODE FLMAPI btGetEntry( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yLen, | | FLMUINT uiKe
yLen, | |
| FLMBYTE * pucD
ata, | | FLMBYTE * pucD
ata, | |
| FLMUINT uiDa
taBufSize, | | FLMUINT uiDa
taBufSize, | |
| FLMUINT * puiD
ataLen) = 0; | | FLMUINT * puiD
ataLen) = 0; | |
| | | | |
| virtual RCODE FLMAPI btNextEntry( | | virtual RCODE FLMAPI btNextEntry( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT * puiK
eyLen, | | FLMUINT * puiK
eyLen, | |
| FLMUINT * puiD
ataLength = NULL, | | FLMUINT * puiD
ataLength = NULL, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btPrevEntry( | | virtual RCODE FLMAPI btPrevEntry( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT * puiK
eyLen, | | FLMUINT * puiK
eyLen, | |
| FLMUINT * puiD
ataLength = NULL, | | FLMUINT * puiD
ataLength = NULL, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btFirstEntry( | | virtual RCODE FLMAPI btFirstEntry( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT * puiK
eyLen, | | FLMUINT * puiK
eyLen, | |
| FLMUINT * puiD
ataLength = NULL, | | FLMUINT * puiD
ataLength = NULL, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btLastEntry( | | virtual RCODE FLMAPI btLastEntry( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yBufSize, | | FLMUINT uiKe
yBufSize, | |
| FLMUINT * puiK
eyLen, | | FLMUINT * puiK
eyLen, | |
| FLMUINT * puiD
ataLength = NULL, | | FLMUINT * puiD
ataLength = NULL, | |
|
| FLMUINT32 * pui3
2BlockId = NULL, | | FLMUINT32 * pui3
2BlockAddr = NULL, | |
| FLMUINT * puiO
ffsetIndex = NULL) = 0; | | FLMUINT * puiO
ffsetIndex = NULL) = 0; | |
| | | | |
| virtual RCODE FLMAPI btSetReadPosition( | | virtual RCODE FLMAPI btSetReadPosition( | |
| FLMBYTE * pucK
ey, | | FLMBYTE * pucK
ey, | |
| FLMUINT uiKe
yLen, | | FLMUINT uiKe
yLen, | |
| FLMUINT uiPo
sition) = 0; | | FLMUINT uiPo
sition) = 0; | |
| | | | |
| virtual RCODE FLMAPI btGetReadPosition( | | virtual RCODE FLMAPI btGetReadPosition( | |
| FLMUINT * puiP
osition) = 0; | | FLMUINT * puiP
osition) = 0; | |
| | | | |
| | | | |
| skipping to change at line 4598 | | skipping to change at line 4671 | |
| // FLMUINT * puiK
eyCount, | | // FLMUINT * puiK
eyCount, | |
| // FLMBOOL * pbTo
talsEstimated, | | // FLMBOOL * pbTo
talsEstimated, | |
| // FLMUINT uiAv
gBlockFullness) = 0; | | // FLMUINT uiAv
gBlockFullness) = 0; | |
| | | | |
| virtual FLMBOOL FLMAPI btHasCounts( void) = 0; | | virtual FLMBOOL FLMAPI btHasCounts( void) = 0; | |
| | | | |
| virtual FLMBOOL FLMAPI btHasData( void) = 0; | | virtual FLMBOOL FLMAPI btHasData( void) = 0; | |
| | | | |
| virtual void FLMAPI btResetBtree( void) = 0; | | virtual void FLMAPI btResetBtree( void) = 0; | |
| | | | |
|
| virtual FLMUINT32 FLMAPI getRootBlockId( void) = 0; | | virtual FLMUINT32 FLMAPI getRootBlockAddr( void) = 0; | |
| | | | |
| | | virtual RCODE btCheck( | |
| | | BTREE_ERR_INFO * pErrInfo) = | |
| | | 0; | |
| }; | | }; | |
| | | | |
| RCODE FLMAPI FlmAllocBTree( | | RCODE FLMAPI FlmAllocBTree( | |
| IF_BlockMgr * pBlockMgr, | | IF_BlockMgr * pBlockMgr, | |
| IF_BTree ** ppBt
ree); | | IF_BTree ** ppBt
ree); | |
| | | | |
| /*******************************************************************
********* | | /*******************************************************************
********* | |
| Desc: This class is used to do pool memory allocations. | | Desc: This class is used to do pool memory allocations. | |
| ********************************************************************
********/ | | ********************************************************************
********/ | |
| | | | |
| | | | |
| skipping to change at line 7055 | | skipping to change at line 7131 | |
| FLMUINT m_uiObjects; | | FLMUINT m_uiObjects; | |
| FLMUINT m_uiMaxObjects; | | FLMUINT m_uiMaxObjects; | |
| }; | | }; | |
| | | | |
| /*******************************************************************
********* | | /*******************************************************************
********* | |
| Desc: Process ID Functions | | Desc: Process ID Functions | |
| ********************************************************************
********/ | | ********************************************************************
********/ | |
| | | | |
| FLMUINT f_getpid( void); | | FLMUINT f_getpid( void); | |
| | | | |
|
| | | #ifdef FLM_PACK_STRUCTS | |
| | | #pragma pack(pop) | |
| | | #endif | |
| | | | |
| #endif // FTK_H | | #endif // FTK_H | |
| | | | |
End of changes. 48 change blocks. |
| 71 lines changed or deleted | | 162 lines changed or added | |
|