flaim.h | flaim.h | |||
---|---|---|---|---|
skipping to change at line 666 | skipping to change at line 666 | |||
/// Structure returned when FCURSOR_GET_OPT_INFO_LIST option is pass ed to FlmCursorGetConfig(). | /// Structure returned when FCURSOR_GET_OPT_INFO_LIST option is pass ed to FlmCursorGetConfig(). | |||
typedef struct | typedef struct | |||
{ | { | |||
qOptTypes eOptType; ///< Type of optimization done for sub-query. | qOptTypes eOptType; ///< Type of optimization done for sub-query. | |||
FLMUINT uiCost; ///< Cost calculated for sub-query. | FLMUINT uiCost; ///< Cost calculated for sub-query. | |||
FLMUINT uiDrnCost; ///< DRN cost for sub-query. | FLMUINT uiDrnCost; ///< DRN cost for sub-query. | |||
FLMUINT uiIxNum; ///< Index used to execute query if eOptType is qOptTypes::QOPT_USING_I NDEX. | FLMUINT uiIxNum; ///< Index used to execute query if eOptType is qOptTypes::QOPT_USING_I NDEX. | |||
FLMBOOL bDoRecMatch; ///< Record must be retrieved to test against query criteria.\ Only valid | FLMBOOL bDoRecMatch; ///< Record must be retrieved to test against query criteria.\ Only valid | |||
///< if OPT_INFO::eOptType is qOptTypes::QOPT_U SING_INDEX. | ///< if OPT_INFO::eOptType is qOptTypes::QOPT_U SING_INDEX. | |||
FLMUINT bDoKeyMatch; ///< Must ma tch against index keys. Only valid if OPT_INFO::eOptType is qOptTypes::QOP T_USING_INDEX. | FLMBOOL bDoKeyMatch; ///< Must ma tch against index keys. Only valid if OPT_INFO::eOptType is qOptTypes::QOP T_USING_INDEX. | |||
FLMUINT uiDrn; ///< DRN to read if OPT_INFO::eOptType is qOptTypes::QOPT_SINGLE_RECORD_READ. | FLMUINT uiDrn; ///< DRN to read if OPT_INFO::eOptType is qOptTypes::QOPT_SINGLE_RECORD_READ. | |||
} OPT_INFO; | } OPT_INFO; | |||
/// Structure that holds cache usage statistics. The statistics wil l be for either block cache or record cache. | /// Structure that holds cache usage statistics. The statistics wil l be for either block cache or record cache. | |||
typedef struct | typedef struct | |||
{ | { | |||
FLMUINT uiMaxBytes; ///< Maximum bytes allowed in cache. | FLMUINT uiMaxBytes; ///< Maximum bytes allowed in cache. | |||
FLMUINT uiTotalBytesAllocated; ///< Total bytes currently allocated in cache. | FLMUINT uiTotalBytesAllocated; ///< Total bytes currently allocated in cache. | |||
FLMUINT uiCount; ///< Number of items cached (blocks or records) . | FLMUINT uiCount; ///< Number of items cached (blocks or records) . | |||
FLMUINT uiOldVerCount; ///< Number of items cached that are prior versions. | FLMUINT uiOldVerCount; ///< Number of items cached that are prior versions. | |||
skipping to change at line 1495 | skipping to change at line 1495 | |||
// Predefined values for uiFlags (see FlmCursorAddField, etc.) | // Predefined values for uiFlags (see FlmCursorAddField, etc.) | |||
#define FLM_USE_DEFAULT_VALUE 0x20 | #define FLM_USE_DEFAULT_VALUE 0x20 | |||
#define FLM_SINGLE_VALUED 0x40 | #define FLM_SINGLE_VALUED 0x40 | |||
#define FLM_ROOTED_PATH 0x80 | #define FLM_ROOTED_PATH 0x80 | |||
// Predefined values for special fields | // Predefined values for special fields | |||
#define FLM_RECID_FIELD FLM_DRN_TAG | #define FLM_RECID_FIELD FLM_DRN_TAG | |||
#define FLM_ANY_FIELD FLM_WILD_TAG | #define FLM_ANY_FIELD FLM_WILD_TAG | |||
#define FLM_WILD FLM_WILD_TAG | ||||
/// Add a field path to the query criteria. | /// Add a field path to the query criteria. | |||
/// \ingroup querydef | /// \ingroup querydef | |||
FLMEXP RCODE FLMAPI FlmCursorAddFieldPath( | FLMEXP RCODE FLMAPI FlmCursorAddFieldPath( | |||
HFCURSOR hCursor, ///< Handle to query object. | HFCURSOR hCursor, ///< Handle to query object. | |||
FLMUINT * puiFldPath, ///< Field path that is to be added to query criteria.\ Field path is an array of | FLMUINT * puiFldPath, ///< Field path that is to be added to query criteria.\ Field path is an array of | |||
///< zero-terminated field numb ers. | ///< zero-terminated field numb ers. | |||
FLMUINT uiFlags ///< Flags for field.\ See documentation on uiFlags parameter of FlmCursorAddField(). | FLMUINT uiFlags ///< Flags for field.\ See documentation on uiFlags parameter of FlmCursorAddField(). | |||
); | ); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
flaimtk.h | flaimtk.h | |||
---|---|---|---|---|
skipping to change at line 340 | skipping to change at line 340 | |||
#endif | #endif | |||
#if defined( FLM_WIN) || defined( FLM_NLM) | #if defined( FLM_WIN) || defined( FLM_NLM) | |||
#define FLMATOMIC volatile long | #define FLMATOMIC volatile long | |||
#else | #else | |||
#define FLMATOMIC volatile int | #define FLMATOMIC volatile int | |||
#endif | #endif | |||
/// \addtogroup retcodes | /// \addtogroup retcodes | |||
/// @{ | /// @{ | |||
typedef FLMINT RCODE; ///< Return code | typedef FLMINT32 RCODE; ///< Return code | |||
/// @} | /// @} | |||
typedef FLMINT FLMBOOL; | typedef FLMINT32 FLMBOOL; | |||
#define F_FILENAME_SIZE 256 | #define F_FILENAME_SIZE 256 | |||
#define F_PATH_MAX_SIZE 256 | #define F_PATH_MAX_SIZE 256 | |||
#define F_WAITFOREVER (0xFFFFFFFF) | #define F_WAITFOREVER (0xFFFFFFFF) | |||
#define FLM_MAX_UINT ((FLMUINT)(-1L)) | #define FLM_MAX_UINT ((FLMUINT)(-1L)) | |||
#define FLM_MAX_INT ((FLMINT)(((FLMUINT)(-1L)) >> 1)) | #define FLM_MAX_INT ((FLMINT)(((FLMUINT)(-1L)) >> 1)) | |||
#define FLM_MIN_INT ((FLMINT)((((FLMUINT)(-1L)) >> 1) + 1)) | #define FLM_MIN_INT ((FLMINT)((((FLMUINT)(-1L)) >> 1) + 1)) | |||
#define FLM_MAX_UINT32 ((FLMUINT32)(0xFFFFFFFFL)) | #define FLM_MAX_UINT32 ((FLMUINT32)(0xFFFFFFFFL)) | |||
#define FLM_MAX_INT32 ((FLMINT32)(0x7FFFFFFFL)) | #define FLM_MAX_INT32 ((FLMINT32)(0x7FFFFFFFL)) | |||
skipping to change at line 648 | skipping to change at line 648 | |||
#ifndef FALSE | #ifndef FALSE | |||
#define FALSE 0 | #define FALSE 0 | |||
#endif | #endif | |||
#define f_offsetof(s,m) \ | #define f_offsetof(s,m) \ | |||
(((FLMSIZET)&((s *)1)->m) - 1) | (((FLMSIZET)&((s *)1)->m) - 1) | |||
/******************************************************************* ********* | /******************************************************************* ********* | |||
Desc: Language constants | Desc: Language constants | |||
IMPORTANT NOTE: If langes are added or changed, the corresponding de | ||||
finitions | ||||
in java and C# must also be updated. | ||||
******************************************************************** ********/ | ******************************************************************** ********/ | |||
/// \addtogroup flm_languages | /// \addtogroup flm_languages | |||
/// @{ | /// @{ | |||
#define FLM_US_LANG 0 ///< English, United States | #define FLM_US_LANG 0 ///< English, United States | |||
#define FLM_AF_LANG 1 ///< Afrikaans | #define FLM_AF_LANG 1 ///< Afrikaans | |||
#define FLM_AR_LANG 2 ///< Arabic | #define FLM_AR_LANG 2 ///< Arabic | |||
#define FLM_CA_LANG 3 ///< Catalan | #define FLM_CA_LANG 3 ///< Catalan | |||
#define FLM_HR_LANG 4 ///< Croatian | #define FLM_HR_LANG 4 ///< Croatian | |||
#define FLM_CZ_LANG 5 ///< Czech | #define FLM_CZ_LANG 5 ///< Czech | |||
skipping to change at line 841 | skipping to change at line 843 | |||
#define FLM_INCL 0x0010 | #define FLM_INCL 0x0010 | |||
#define FLM_EXCL 0x0020 | #define FLM_EXCL 0x0020 | |||
#define FLM_EXACT 0x0040 | #define FLM_EXACT 0x0040 | |||
#define FLM_KEY_EXACT 0x0080 | #define FLM_KEY_EXACT 0x0080 | |||
#define FLM_FIRST 0x0100 | #define FLM_FIRST 0x0100 | |||
#define FLM_LAST 0x0200 | #define FLM_LAST 0x0200 | |||
/******************************************************************* ********* | /******************************************************************* ********* | |||
Desc: Comparison flags for strings | Desc: Comparison flags for strings | |||
IMPORTANT NOTE: If changes are made to these, corresponding changes | ||||
need to | ||||
be made in the java and C# code where they are defined. | ||||
******************************************************************** ********/ | ******************************************************************** ********/ | |||
/// \addtogroup compare_rules | /// \addtogroup compare_rules | |||
/// @{ | /// @{ | |||
#define FLM_COMP_CASE_INSENSITIVE 0x0001 ///< 0x0001 = Do case sensitive comparison. | #define FLM_COMP_CASE_INSENSITIVE 0x0001 ///< 0x0001 = Do case sensitive comparison. | |||
#define FLM_COMP_COMPRESS_WHITESPACE 0x0002 ///< 0x0002 = Compare multiple whitespace characters as a single space. | #define FLM_COMP_COMPRESS_WHITESPACE 0x0002 ///< 0x0002 = Compare multiple whitespace characters as a single space. | |||
#define FLM_COMP_NO_WHITESPACE 0x0004 ///< 0x0004 = Ignore all whitespace during comparison. | #define FLM_COMP_NO_WHITESPACE 0x0004 ///< 0x0004 = Ignore all whitespace during comparison. | |||
#define FLM_COMP_NO_UNDERSCORES 0x0008 ///< 0x0008 = Ignore all underscore characters during comparison. | #define FLM_COMP_NO_UNDERSCORES 0x0008 ///< 0x0008 = Ignore all underscore characters during comparison. | |||
#define FLM_COMP_NO_DASHES 0x0010 ///< 0x0010 = Ignore all dash characters during compari son. | #define FLM_COMP_NO_DASHES 0x0010 ///< 0x0010 = Ignore all dash characters during compari son. | |||
#define FLM_COMP_WHITESPACE_AS_SPACE 0x0020 ///< 0x0020 = Treat newlines and tabs as spaces during comparison. | #define FLM_COMP_WHITESPACE_AS_SPACE 0x0020 ///< 0x0020 = Treat newlines and tabs as spaces during comparison. | |||
#define FLM_COMP_IGNORE_LEADING_SPACE 0x0040 ///< 0x0040 = Ignore leading space characters during comparison. | #define FLM_COMP_IGNORE_LEADING_SPACE 0x0040 ///< 0x0040 = Ignore leading space characters during comparison. | |||
skipping to change at line 924 | skipping to change at line 928 | |||
#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 | |||
// IMPORTANT NOTE: This structure needs to be kept in sync with corr | ||||
esponding | ||||
// 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. | |||
FLMUINT64 ui64FreeCells; ///< Total cells that are free within slabs. | FLMUINT64 ui64FreeCells; ///< Total cells that are free within slabs. | |||
} FLM_SLAB_USAGE; | } FLM_SLAB_USAGE; | |||
skipping to change at line 5117 | skipping to change at line 5123 | |||
void clearList( | void clearList( | |||
FLMUINT uiList = 0); | FLMUINT uiList = 0); | |||
private: | private: | |||
FLMUINT m_uiListNodeCnt; | FLMUINT m_uiListNodeCnt; | |||
F_ListNode * m_pListNodes; | F_ListNode * m_pListNodes; | |||
}; | }; | |||
// IMPORTANT NOTE: If these are changed, corresonding changes | ||||
// should be made in java and C# code as well. | ||||
/// Types of locks that may be requested. | /// Types of locks that may be requested. | |||
typedef enum | typedef enum | |||
{ | { | |||
FLM_LOCK_NONE = 0, | FLM_LOCK_NONE = 0, | |||
FLM_LOCK_EXCLUSIVE, ///< 1 = Exclusive lock. | FLM_LOCK_EXCLUSIVE, ///< 1 = Exclusive lock. | |||
FLM_LOCK_SHARED ///< 2 = Shared lock. | FLM_LOCK_SHARED ///< 2 = Shared lock. | |||
} eLockType; | } eLockType; | |||
/******************************************************************* ********* | /******************************************************************* ********* | |||
/// Abstract base class to get lock information. The application mu st | /// Abstract base class to get lock information. The application mu st | |||
skipping to change at line 5157 | skipping to change at line 5165 | |||
/// from the IF_LockObject::getLockInfo() function. | /// from the IF_LockObject::getLockInfo() function. | |||
virtual FLMBOOL FLMAPI addLockInfo( | virtual FLMBOOL FLMAPI addLockInfo( | |||
FLMUINT uiLockNum, ///< Position in queue (0 = lock holder, 1..n = lock waiter). | FLMUINT uiLockNum, ///< Position in queue (0 = lock holder, 1..n = lock waiter). | |||
FLMUINT uiThreadID, ///< Thread ID of the lock holder/waiter. | FLMUINT uiThreadID, ///< Thread ID of the lock holder/waiter. | |||
FLMUINT uiTime ///< For the lock holder, this is the amount of time the lock has been | FLMUINT uiTime ///< For the lock holder, this is the amount of time the lock has been | |||
///< held.\ For a lock waiter, this is the am ount of time the thread | ///< held.\ For a lock waiter, this is the am ount of time the thread | |||
///< has been waiting to obtain the lock.\ Bot h times are milliseconds. | ///< has been waiting to obtain the lock.\ Bot h times are milliseconds. | |||
) = 0; | ) = 0; | |||
}; | }; | |||
// IMPORTANT NOTE: This structure needs to stay in sync with | ||||
// corresponding structures in java and C# code. | ||||
/******************************************************************* ******* | /******************************************************************* ******* | |||
/// Structure used in gathering statistics to hold an operation coun t and an elapsed time. | /// Structure used in gathering statistics to hold an operation coun t and an elapsed time. | |||
******************************************************************** ******/ | ******************************************************************** ******/ | |||
typedef struct | typedef struct | |||
{ | { | |||
FLMUINT64 ui64Count; ///< Number of times operation was performed | FLMUINT64 ui64Count; ///< Number of times operation was performed | |||
FLMUINT64 ui64ElapMilli; ///< Total elapsed time (milliseconds) for the operations. | FLMUINT64 ui64ElapMilli; ///< Total elapsed time (milliseconds) for the operations. | |||
} F_COUNT_TIME_STAT; | } F_COUNT_TIME_STAT; | |||
// IMPORTANT NOTE: This structure needs to stay in sync with | ||||
// corresponding structures in java and C# code. | ||||
/******************************************************************* ******* | /******************************************************************* ******* | |||
/// Structure for returning lock statistics. | /// Structure for returning lock statistics. | |||
******************************************************************** ******/ | ******************************************************************** ******/ | |||
typedef struct | typedef struct | |||
{ | { | |||
F_COUNT_TIME_STAT NoLocks; ///< Statistics on times when nobody was holding a lock on the database. | F_COUNT_TIME_STAT NoLocks; ///< Statistics on times when nobody was holding a lock on the database. | |||
F_COUNT_TIME_STAT WaitingForLock; ///< Statistics on times threads were waiting to obtain a database lock. | F_COUNT_TIME_STAT WaitingForLock; ///< Statistics on times threads were waiting to obtain a database lock. | |||
F_COUNT_TIME_STAT HeldLock; ///< Statistics on times when a thread was holding a lock on th e database. | F_COUNT_TIME_STAT HeldLock; ///< Statistics on times when a thread was holding a lock on th e database. | |||
} F_LOCK_STATS; | } F_LOCK_STATS; | |||
skipping to change at line 5338 | skipping to change at line 5350 | |||
ui64RetVal += ui64Boundary; | ui64RetVal += ui64Boundary; | |||
} | } | |||
return( ui64RetVal); | return( ui64RetVal); | |||
} | } | |||
FINLINE void f_setBit( | FINLINE void f_setBit( | |||
FLMBYTE * pucBuffer, | FLMBYTE * pucBuffer, | |||
FLMUINT uiBit) | FLMUINT uiBit) | |||
{ | { | |||
pucBuffer[ uiBit >> 3] |= (0x01 << (uiBit & 0x07)); | pucBuffer[ uiBit >> 3] |= (FLMBYTE)(0x01 << (uiBit & 0x07)); | |||
} | } | |||
FINLINE void f_clearBit( | FINLINE void f_clearBit( | |||
FLMBYTE * pucBuffer, | FLMBYTE * pucBuffer, | |||
FLMUINT uiBit) | FLMUINT uiBit) | |||
{ | { | |||
pucBuffer[ uiBit >> 3] &= ~(0x01 << (uiBit & 0x07)); | pucBuffer[ uiBit >> 3] &= ~((FLMBYTE)(0x01 << (uiBit & 0x07) )); | |||
} | } | |||
FINLINE FLMBOOL f_isBitSet( | FINLINE FLMBOOL f_isBitSet( | |||
FLMBYTE * pucBuffer, | FLMBYTE * pucBuffer, | |||
FLMUINT uiBit) | FLMUINT uiBit) | |||
{ | { | |||
return( (pucBuffer[ uiBit >> 3] & (0x01 << (uiBit & 0x07))) | return( (pucBuffer[ uiBit >> 3] & (FLMBYTE)(0x01 << (uiBit & 0x07))) | |||
? TRUE | ? TRUE | |||
: FALSE); | : FALSE); | |||
} | } | |||
RCODE FLMAPI f_filecpy( | RCODE FLMAPI f_filecpy( | |||
const char * pszSourceFile, | const char * pszSourceFile, | |||
const char * pszData); | const char * pszData); | |||
RCODE FLMAPI f_filecat( | RCODE FLMAPI f_filecat( | |||
const char * pszSourceFile, | const char * pszSourceFile, | |||
End of changes. 11 change blocks. | ||||
5 lines changed or deleted | 20 lines changed or added | |||