From dd70ff8bf32c2d7ed365004b1770058265db1978 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Sat, 11 Mar 2023 18:15:37 +0100 Subject: New upstream version 4.1.0 --- src/include/xbdbf.h | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) (limited to 'src/include/xbdbf.h') diff --git a/src/include/xbdbf.h b/src/include/xbdbf.h index c0842cb..16799f2 100755 --- a/src/include/xbdbf.h +++ b/src/include/xbdbf.h @@ -2,7 +2,7 @@ XBase64 Software Library -Copyright (c) 1997,2003,2014, 2022 Gary A Kunkel +Copyright (c) 1997,2003,2014,2022,2023 Gary A Kunkel The xb64 software library is covered under the terms of the GPL Version 3, 2007 license. @@ -168,11 +168,14 @@ class XBDLLEXPORT xbDbf : public xbFile { virtual xbInt16 DumpRecord ( xbUInt32 ulRecNo, xbInt16 iOutputDest = 0, xbInt16 iOutputFmt = 0 ); virtual xbInt16 GetAutoCommit () const; virtual xbInt16 GetAutoCommit ( xbInt16 iOption ) const; + virtual xbBool GetBof (); virtual xbUInt32 GetCurRecNo () const; virtual xbInt16 GetDbfStatus () const; + virtual xbBool GetEof (); virtual xbInt32 GetFieldCnt () const; virtual xbInt16 GetFirstRecord (); virtual xbInt16 GetFirstRecord ( xbInt16 iOption ); + virtual xbUInt16 GetHeaderLen () const; virtual xbInt16 GetLastRecord (); virtual xbInt16 GetLastRecord ( xbInt16 iOption ); @@ -360,7 +363,11 @@ class XBDLLEXPORT xbDbf : public xbFile { //virtual xbInt16 SetCreateMdxBlockSize( xbInt16 ulBlockSize ); //#endif - + #ifdef XB_BLOCKREAD_SUPPORT + xbInt16 DisableBlockReadProcessing(); + xbInt16 EnableBlockReadProcessing(); + xbBool GetBlockReadStatus() const; + #endif // XB_BLOCKREAD_SUPPORT protected: #ifdef XB_INDEX_SUPPORT @@ -378,6 +385,10 @@ class XBDLLEXPORT xbDbf : public xbFile { virtual xbInt16 GetInfFileName( xbString &sNdxIdxFileName ); #endif // XB_INF_SUPPORT + #ifdef XB_BLOCKREAD_SUPPORT + friend class xbBlockRead; + #endif // XB_BLOCKREAD_SUPPORT + #ifdef XB_LOCKING_SUPPORT void SetHeaderLocked ( xbBool bTableLocked ); @@ -426,7 +437,7 @@ class XBDLLEXPORT xbDbf : public xbFile { xbSchemaRec *SchemaPtr; // Pointer to field data char *RecBuf; // Pointer to record buffer - char *RecBuf2; // Pointer to original rec buf + char *RecBuf2; // Pointer to original rec buf allocation /* Next several variables are database header fields, up through dbase V */ @@ -448,28 +459,32 @@ class XBDLLEXPORT xbDbf : public xbFile { void ResetNoOfRecords(); -#ifdef XB_LOCKING_SUPPORT + #ifdef XB_LOCKING_SUPPORT xbInt16 iAutoLock; // 0 - autolock off, 1 - autolock on xbInt16 iLockFlavor; xbBool bTableLocked; // is the table locked xbBool bHeaderLocked; // is the header locked xbUInt32 ulAppendLocked; // record number of the new record for the append lock operation xbLinkListOrd lloRecLocks; // ordered link list of locked records -#endif - + #endif -#ifdef XB_INDEX_SUPPORT + #ifdef XB_INDEX_SUPPORT xbIxList *ixList; // pointer to a list of indices associated with the table xbIx *pCurIx; // Pointer to current index class void *vpCurIxTag; // Pointer to current tag xbString sCurIxType; // Current index type xbLinkList llTags; // linked list of open tags + #endif // XB_INDEX_SUPPORT -#endif // XB_INDEX_SUPPORT + #ifdef XB_INF_SUPPORT + xbLinkList llInfData; // linked list of strings containing ndx file entries + #endif // XB_INF_SUPPORT + + #ifdef XB_BLOCKREAD_SUPPORT + xbBlockRead *pRb; + xbBool bBlockReadEnabled; // if true, then block read mode is on + #endif -#ifdef XB_INF_SUPPORT - xbLinkList llInfData; // linked list of strings containing ndx file entries -#endif // XB_INF_SUPPORT }; -- cgit v1.2.3