diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2022-12-07 13:17:14 +0100 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2022-12-07 13:17:14 +0100 |
commit | 4875a3dd9b183dcd2256e2abfc4ccf7484c233b4 (patch) | |
tree | 0abbea881ded030851014ffdd60fbf71fead8f65 /docs/doxygen/latex/xbdbf_8h_source.tex | |
parent | daf17154bf13139d9375f48525d19d6aaba08155 (diff) |
New upstream version 4.0.2upstream/4.0.2
Diffstat (limited to 'docs/doxygen/latex/xbdbf_8h_source.tex')
-rw-r--r-- | docs/doxygen/latex/xbdbf_8h_source.tex | 491 |
1 files changed, 491 insertions, 0 deletions
diff --git a/docs/doxygen/latex/xbdbf_8h_source.tex b/docs/doxygen/latex/xbdbf_8h_source.tex new file mode 100644 index 0000000..b83d689 --- /dev/null +++ b/docs/doxygen/latex/xbdbf_8h_source.tex @@ -0,0 +1,491 @@ +\hypertarget{xbdbf_8h_source}{}\doxysection{xbdbf.\+h} +\label{xbdbf_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.0.2/src/include/xbdbf.h@{/mnt/1Tdata/xbase/xbase64-\/4.0.2/src/include/xbdbf.h}} +\mbox{\hyperlink{xbdbf_8h}{Go to the documentation of this file.}} +\begin{DoxyCode}{0} +\DoxyCodeLine{1 \textcolor{comment}{/* xbdbf.h}} +\DoxyCodeLine{2 \textcolor{comment}{}} +\DoxyCodeLine{3 \textcolor{comment}{XBase64 Software Library}} +\DoxyCodeLine{4 \textcolor{comment}{}} +\DoxyCodeLine{5 \textcolor{comment}{Copyright (c) 1997,2003,2014, 2022 Gary A Kunkel}} +\DoxyCodeLine{6 \textcolor{comment}{}} +\DoxyCodeLine{7 \textcolor{comment}{The xb64 software library is covered under the terms of the GPL Version 3, 2007 license.}} +\DoxyCodeLine{8 \textcolor{comment}{}} +\DoxyCodeLine{9 \textcolor{comment}{Email Contact:}} +\DoxyCodeLine{10 \textcolor{comment}{}} +\DoxyCodeLine{11 \textcolor{comment}{ XDB-\/devel@lists.sourceforge.net}} +\DoxyCodeLine{12 \textcolor{comment}{ XDB-\/users@lists.sourceforge.net}} +\DoxyCodeLine{13 \textcolor{comment}{}} +\DoxyCodeLine{14 \textcolor{comment}{*/}} +\DoxyCodeLine{15 } +\DoxyCodeLine{16 } +\DoxyCodeLine{17 \textcolor{preprocessor}{\#ifndef \_\_XB\_XBDBF\_H\_\_}} +\DoxyCodeLine{18 \textcolor{preprocessor}{\#define \_\_XB\_XBDBF\_H\_\_}} +\DoxyCodeLine{19 } +\DoxyCodeLine{20 \textcolor{comment}{//\#ifdef CMAKE\_COMPILER\_IS\_GNUCC}} +\DoxyCodeLine{21 \textcolor{comment}{//\#pragma interface}} +\DoxyCodeLine{22 \textcolor{comment}{//\#endif}} +\DoxyCodeLine{23 } +\DoxyCodeLine{24 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespacexb}{xb}}\{} +\DoxyCodeLine{25 } +\DoxyCodeLine{26 \textcolor{comment}{/*****************************/}} +\DoxyCodeLine{27 \textcolor{comment}{/* Field Types */}} +\DoxyCodeLine{28 } +\DoxyCodeLine{29 \textcolor{preprocessor}{\#define XB\_CHAR\_FLD 'C'}} +\DoxyCodeLine{30 \textcolor{preprocessor}{\#define XB\_LOGICAL\_FLD 'L'}} +\DoxyCodeLine{31 \textcolor{preprocessor}{\#define XB\_NUMERIC\_FLD 'N'}} +\DoxyCodeLine{32 \textcolor{preprocessor}{\#define XB\_DATE\_FLD 'D'}} +\DoxyCodeLine{33 \textcolor{preprocessor}{\#define XB\_MEMO\_FLD 'M'}} +\DoxyCodeLine{34 \textcolor{preprocessor}{\#define XB\_FLOAT\_FLD 'F'}} +\DoxyCodeLine{35 } +\DoxyCodeLine{36 \textcolor{comment}{/*****************************/}} +\DoxyCodeLine{37 \textcolor{comment}{/* File Status Codes */}} +\DoxyCodeLine{38 } +\DoxyCodeLine{39 \textcolor{preprocessor}{\#define XB\_CLOSED 0}} +\DoxyCodeLine{40 \textcolor{preprocessor}{\#define XB\_OPEN 1}} +\DoxyCodeLine{41 \textcolor{preprocessor}{\#define XB\_UPDATED 2}} +\DoxyCodeLine{42 } +\DoxyCodeLine{43 } +\DoxyCodeLine{44 \textcolor{comment}{/*****************************/}} +\DoxyCodeLine{45 \textcolor{comment}{/* File Access Modes */}} +\DoxyCodeLine{46 \textcolor{comment}{// \#define XB\_SINGLE\_USER 0 // file buffering on}} +\DoxyCodeLine{47 \textcolor{comment}{// \#define XB\_MULTI\_USER 1 // file buffering off}} +\DoxyCodeLine{48 } +\DoxyCodeLine{49 \textcolor{comment}{/*****************************/}} +\DoxyCodeLine{50 \textcolor{comment}{/* File Lock Functions */}} +\DoxyCodeLine{51 \textcolor{preprocessor}{\#define XB\_LOCK 0}} +\DoxyCodeLine{52 \textcolor{preprocessor}{\#define XB\_UNLOCK 1}} +\DoxyCodeLine{53 } +\DoxyCodeLine{54 \textcolor{preprocessor}{\#define LK\_DBASE 1}} +\DoxyCodeLine{55 \textcolor{preprocessor}{\#define LK\_CLIPPER 2 }\textcolor{comment}{// future}} +\DoxyCodeLine{56 \textcolor{preprocessor}{\#define LK\_FOX 3 }\textcolor{comment}{// future}} +\DoxyCodeLine{57 \textcolor{preprocessor}{\#define LK\_XBASE64 9 }\textcolor{comment}{// future}} +\DoxyCodeLine{58 } +\DoxyCodeLine{59 \textcolor{comment}{/*****************************/}} +\DoxyCodeLine{60 \textcolor{comment}{/* Record retrieve options */}} +\DoxyCodeLine{61 \textcolor{preprocessor}{\#define XB\_ALL\_RECS 0}} +\DoxyCodeLine{62 \textcolor{preprocessor}{\#define XB\_ACTIVE\_RECS 1}} +\DoxyCodeLine{63 \textcolor{preprocessor}{\#define XB\_DELETED\_RECS 2}} +\DoxyCodeLine{64 } +\DoxyCodeLine{65 } +\DoxyCodeLine{66 \textcolor{comment}{/*****************************/}} +\DoxyCodeLine{67 \textcolor{comment}{/* Other defines */}} +\DoxyCodeLine{68 } +\DoxyCodeLine{69 \textcolor{preprocessor}{\#define XB\_OVERLAY 1}} +\DoxyCodeLine{70 \textcolor{preprocessor}{\#define XB\_DONTOVERLAY 0}} +\DoxyCodeLine{71 \textcolor{preprocessor}{\#define XB\_CHAREOF '\(\backslash\)x1A' }\textcolor{comment}{/* end of DBF */}\textcolor{preprocessor}{}} +\DoxyCodeLine{72 \textcolor{preprocessor}{\#define XB\_CHARHDR '\(\backslash\)x0D' }\textcolor{comment}{/* header terminator */}\textcolor{preprocessor}{}} +\DoxyCodeLine{73 } +\DoxyCodeLine{74 } +\DoxyCodeLine{76 } +\DoxyCodeLine{95 \textcolor{keyword}{struct }XBDLLEXPORT \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} \{} +\DoxyCodeLine{96 \textcolor{keywordtype}{char} cFieldName[11];} +\DoxyCodeLine{97 \textcolor{keywordtype}{char} \mbox{\hyperlink{structxb_1_1xbSchema_a1d612b2ed5dc0b0289c9e91b3cda3a25}{cType}};} +\DoxyCodeLine{98 xbInt16 \mbox{\hyperlink{structxb_1_1xbSchema_a2da554af25ef628acf59bb52996056ac}{iFieldLen}}; \textcolor{comment}{/* fields are stored as one byte on record*/}} +\DoxyCodeLine{99 xbInt16 \mbox{\hyperlink{structxb_1_1xbSchema_a55bab3bb69dee3508d168c93e182d4b9}{iNoOfDecs}};} +\DoxyCodeLine{100 \};} +\DoxyCodeLine{101 } +\DoxyCodeLine{103 \textcolor{keyword}{struct }XBDLLEXPORT xbSchemaRec \{} +\DoxyCodeLine{104 \textcolor{keywordtype}{char} cFieldName[11]; \textcolor{comment}{/* ASCIIZ field name */}} +\DoxyCodeLine{105 \textcolor{keywordtype}{char} cType; \textcolor{comment}{/* field type */}} +\DoxyCodeLine{106 \textcolor{keywordtype}{char} *pAddress; \textcolor{comment}{/* pointer to field in record buffer 1 */}} +\DoxyCodeLine{107 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cFieldLen; \textcolor{comment}{/* fields are stored as one byte on record */}} +\DoxyCodeLine{108 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cNoOfDecs;} +\DoxyCodeLine{109 \textcolor{keywordtype}{char} *pAddress2; \textcolor{comment}{/* pointer to field in record buffer 2 */}} +\DoxyCodeLine{110 xbInt16 iLongFieldLen; \textcolor{comment}{/* to handle long field lengths */}} +\DoxyCodeLine{111 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cIxFlag; \textcolor{comment}{/* DBase IV Index field flag */}} +\DoxyCodeLine{112 \};} +\DoxyCodeLine{114 } +\DoxyCodeLine{115 } +\DoxyCodeLine{116 } +\DoxyCodeLine{118 \textcolor{preprocessor}{\#ifdef XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{119 \textcolor{keyword}{class }XBDLLEXPORT xbIx;} +\DoxyCodeLine{120 \textcolor{comment}{// structure for file list, each open DBF file can have one or more index files}} +\DoxyCodeLine{121 \textcolor{keyword}{struct }XBDLLEXPORT xbIxList \{} +\DoxyCodeLine{122 xbIxList *next;} +\DoxyCodeLine{123 xbIx *ix;} +\DoxyCodeLine{124 xbString *sFmt;} +\DoxyCodeLine{125 \};} +\DoxyCodeLine{126 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{128 \textcolor{comment}{}} +\DoxyCodeLine{129 } +\DoxyCodeLine{131 } +\DoxyCodeLine{150 \textcolor{keyword}{class }XBDLLEXPORT \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbFile}{xbFile}} \{} +\DoxyCodeLine{151 } +\DoxyCodeLine{152 \textcolor{keyword}{public}:} +\DoxyCodeLine{153 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}}( \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *x );} +\DoxyCodeLine{154 \textcolor{keyword}{virtual} \mbox{\hyperlink{classxb_1_1xbDbf}{\string~xbDbf}}();} +\DoxyCodeLine{155 } +\DoxyCodeLine{156 \textcolor{keyword}{virtual} xbInt16 Abort();} +\DoxyCodeLine{157 \textcolor{keyword}{virtual} xbInt16 AppendRecord();} +\DoxyCodeLine{158 \textcolor{keyword}{virtual} xbInt16 BlankRecord();} +\DoxyCodeLine{159 \textcolor{keyword}{virtual} xbInt16 Commit();} +\DoxyCodeLine{160 \textcolor{keyword}{virtual} xbInt16 Close();} +\DoxyCodeLine{161 \textcolor{keyword}{virtual} xbInt16 CopyDbfStructure( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} *dNewTable, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableAlias, xbInt16 iOverlay, xbInt16 iShareMode );} +\DoxyCodeLine{162 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_a73e41bfe679dd06ab16c436652df93f1}{CreateTable}} ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} *pSchema, xbInt16 iOverlay, xbInt16 iShareMode ) = 0;} +\DoxyCodeLine{163 \textcolor{keyword}{virtual} xbInt16 DeleteTable ();} +\DoxyCodeLine{164 \textcolor{keyword}{virtual} xbInt16 DeleteAll ( xbInt16 iOption );} +\DoxyCodeLine{165 \textcolor{keyword}{virtual} xbInt16 DeleteAllRecords ();} +\DoxyCodeLine{166 \textcolor{keyword}{virtual} xbInt16 DeleteRecord ();} +\DoxyCodeLine{167 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_ab1f4a515533402f872cedcd0322aabd4}{DumpHeader}} ( xbInt16 iOption ) \textcolor{keyword}{const};} +\DoxyCodeLine{168 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_a3a6a068addffd06fc9a996639d6ca69e}{DumpRecord}} ( xbUInt32 ulRecNo, xbInt16 iOutputDest = 0, xbInt16 iOutputFmt = 0 );} +\DoxyCodeLine{169 \textcolor{keyword}{virtual} xbInt16 GetAutoCommit () \textcolor{keyword}{const};} +\DoxyCodeLine{170 \textcolor{keyword}{virtual} xbInt16 GetAutoCommit ( xbInt16 iOption ) \textcolor{keyword}{const};} +\DoxyCodeLine{171 \textcolor{keyword}{virtual} xbUInt32 GetCurRecNo () \textcolor{keyword}{const};} +\DoxyCodeLine{172 \textcolor{keyword}{virtual} xbInt16 GetDbfStatus () \textcolor{keyword}{const};} +\DoxyCodeLine{173 \textcolor{keyword}{virtual} xbInt32 GetFieldCnt () \textcolor{keyword}{const};} +\DoxyCodeLine{174 \textcolor{keyword}{virtual} xbInt16 GetFirstRecord ();} +\DoxyCodeLine{175 \textcolor{keyword}{virtual} xbInt16 GetFirstRecord ( xbInt16 iOption );} +\DoxyCodeLine{176 \textcolor{keyword}{virtual} xbInt16 GetLastRecord ();} +\DoxyCodeLine{177 \textcolor{keyword}{virtual} xbInt16 GetLastRecord ( xbInt16 iOption );} +\DoxyCodeLine{178 } +\DoxyCodeLine{179 \textcolor{keyword}{virtual} xbInt16 GetNextRecord ();} +\DoxyCodeLine{180 \textcolor{keyword}{virtual} xbInt16 GetNextRecord ( xbInt16 iOption );} +\DoxyCodeLine{181 \textcolor{keyword}{virtual} xbInt16 GetNextRecord ( xbInt16 iOption, xbUInt32 ulStartRec );} +\DoxyCodeLine{182 \textcolor{keyword}{virtual} xbInt32 \mbox{\hyperlink{classxb_1_1xbDbf_a13393704a8a191d4d6555ae31d3c3e92}{GetPhysicalIxCnt}} () \textcolor{keyword}{const};} +\DoxyCodeLine{183 \textcolor{keyword}{virtual} xbInt16 GetPrevRecord ();} +\DoxyCodeLine{184 \textcolor{keyword}{virtual} xbInt16 GetPrevRecord ( xbInt16 iOption );} +\DoxyCodeLine{185 \textcolor{keyword}{virtual} xbInt16 GetRecord ( xbUInt32 ulRecNo );} +\DoxyCodeLine{186 \textcolor{keyword}{virtual} xbInt16 GetRecordCnt ( xbUInt32 \& ulRecCnt );} +\DoxyCodeLine{187 \textcolor{keyword}{virtual} \textcolor{keywordtype}{char} * GetRecordBuf ( xbInt16 iOpt = 0 ) \textcolor{keyword}{const};} +\DoxyCodeLine{188 \textcolor{keyword}{virtual} xbUInt16 GetRecordLen () \textcolor{keyword}{const};} +\DoxyCodeLine{189 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetTblAlias() \textcolor{keyword}{const};} +\DoxyCodeLine{190 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_a49212a9eb17f7fa9f303e08d5fc50fc6}{GetVersion}} () \textcolor{keyword}{const} = 0; } +\DoxyCodeLine{191 \textcolor{keyword}{virtual} \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *GetXbasePtr () \textcolor{keyword}{const}; \textcolor{comment}{// return xbase pointer}} +\DoxyCodeLine{192 } +\DoxyCodeLine{193 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \mbox{\hyperlink{classxb_1_1xbDbf_ac856fc1b110b46aefa1b2f5c0f530aa2}{MemoFieldsExist}} () \textcolor{keyword}{const};} +\DoxyCodeLine{194 } +\DoxyCodeLine{195 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_a97366c7362e409d7f09973a6aef8dad0}{Open}} ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName );} +\DoxyCodeLine{196 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_ac658818bf9b8f8ff7467d8d80495b324}{Open}} ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias );} +\DoxyCodeLine{197 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_a4d018cbf44d8d8b2145c9acab02c8adf}{Open}} ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, xbInt16 iOpenMode, xbInt16 iShareMode ) = 0;} +\DoxyCodeLine{198 \textcolor{keyword}{virtual} xbInt16 Pack ();} +\DoxyCodeLine{199 \textcolor{keyword}{virtual} xbInt16 Pack ( xbUInt32 \&ulDeletedRecCnt );} +\DoxyCodeLine{200 } +\DoxyCodeLine{201 } +\DoxyCodeLine{202 \textcolor{keyword}{virtual} xbInt16 PutRecord (); \textcolor{comment}{// Put record to current location}} +\DoxyCodeLine{203 \textcolor{keyword}{virtual} xbInt16 PutRecord ( xbUInt32 ulRecNo );} +\DoxyCodeLine{204 \textcolor{keyword}{virtual} xbInt16 ReadHeader ( xbInt16 iFilePositionOption, xbInt16 iReadOption );} +\DoxyCodeLine{205 \textcolor{keyword}{virtual} xbInt16 RecordDeleted ( xbInt16 iOpt = 0 ) \textcolor{keyword}{const};} +\DoxyCodeLine{206 } +\DoxyCodeLine{207 \textcolor{keyword}{virtual} xbInt16 SetAutoCommit ( xbInt16 iAutoCommit );} +\DoxyCodeLine{208 } +\DoxyCodeLine{209 \textcolor{keyword}{virtual} xbInt16 UndeleteAllRecords();} +\DoxyCodeLine{210 \textcolor{keyword}{virtual} xbInt16 UndeleteRecord ();} +\DoxyCodeLine{211 \textcolor{keyword}{virtual} xbInt16 Zap ();} +\DoxyCodeLine{212 } +\DoxyCodeLine{213 } +\DoxyCodeLine{214 \textcolor{comment}{/* field methods */}} +\DoxyCodeLine{215 \textcolor{comment}{//virtual xbInt16 GetRawField( xbInt16 iFieldNo, char *Buf, xbUInt32 BufSize, xbInt16 iRecBufSw ) const;}} +\DoxyCodeLine{216 \textcolor{keyword}{virtual} xbInt16 GetField(xbInt16 iFieldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldValue, xbInt16 iRecBufSw ) \textcolor{keyword}{const};} +\DoxyCodeLine{217 \textcolor{keyword}{virtual} xbInt16 GetField(xbInt16 iFieldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldValue) \textcolor{keyword}{const};} +\DoxyCodeLine{218 \textcolor{keyword}{virtual} xbInt16 GetField(\textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldValue) \textcolor{keyword}{const};} +\DoxyCodeLine{219 \textcolor{keyword}{virtual} xbInt16 GetFieldDecimal( xbInt16 iFieldNo, xbInt16 \&iFieldDecimal ) \textcolor{keyword}{const};} +\DoxyCodeLine{220 \textcolor{keyword}{virtual} xbInt16 GetFieldDecimal( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbInt16 \&iFieldDecimal ) \textcolor{keyword}{const};} +\DoxyCodeLine{221 \textcolor{keyword}{virtual} xbInt16 GetFieldLen( xbInt16 iFieldNo, xbInt16 \&iFieldLen ) \textcolor{keyword}{const};} +\DoxyCodeLine{222 \textcolor{keyword}{virtual} xbInt16 GetFieldLen( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbInt16 \&iFieldLen ) \textcolor{keyword}{const};} +\DoxyCodeLine{223 \textcolor{keyword}{virtual} xbInt16 GetFieldName( xbInt16 iFieldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName ) \textcolor{keyword}{const};} +\DoxyCodeLine{224 } +\DoxyCodeLine{225 \textcolor{keyword}{virtual} xbInt16 GetFieldNo( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbInt16 \&iFieldNo ) \textcolor{keyword}{const};} +\DoxyCodeLine{226 \textcolor{keyword}{virtual} xbInt16 GetFieldNo( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName ) \textcolor{keyword}{const};} +\DoxyCodeLine{227 } +\DoxyCodeLine{228 \textcolor{keyword}{virtual} xbInt16 GetFieldType( xbInt16 iFieldNo, \textcolor{keywordtype}{char} \&cFieldType ) \textcolor{keyword}{const};} +\DoxyCodeLine{229 \textcolor{keyword}{virtual} xbInt16 GetFieldType( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \textcolor{keywordtype}{char} \&cFieldType ) \textcolor{keyword}{const};} +\DoxyCodeLine{230 \textcolor{keyword}{virtual} xbInt16 PutField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldData );} +\DoxyCodeLine{231 \textcolor{keyword}{virtual} xbInt16 PutField( xbInt16 iFieldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldData );} +\DoxyCodeLine{232 } +\DoxyCodeLine{233 \textcolor{keyword}{virtual} xbInt16 PutLogicalField( xbInt16 iFieldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldData );} +\DoxyCodeLine{234 \textcolor{keyword}{virtual} xbInt16 PutLogicalField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldData );} +\DoxyCodeLine{235 \textcolor{keyword}{virtual} xbInt16 GetLogicalField( xbInt16 iFieldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldData ) \textcolor{keyword}{const};} +\DoxyCodeLine{236 \textcolor{keyword}{virtual} xbInt16 GetLogicalField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldData) \textcolor{keyword}{const};} +\DoxyCodeLine{237 } +\DoxyCodeLine{238 \textcolor{keyword}{virtual} xbInt16 PutLogicalField( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFieldData );} +\DoxyCodeLine{239 \textcolor{keyword}{virtual} xbInt16 PutLogicalField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFieldData );} +\DoxyCodeLine{240 \textcolor{keyword}{virtual} xbInt16 GetLogicalField( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bFieldData ) \textcolor{keyword}{const};} +\DoxyCodeLine{241 \textcolor{keyword}{virtual} xbInt16 GetLogicalField( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bFieldData, xbInt16 iRecBufSw ) \textcolor{keyword}{const};} +\DoxyCodeLine{242 \textcolor{keyword}{virtual} xbInt16 GetLogicalField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bFieldData) \textcolor{keyword}{const};} +\DoxyCodeLine{243 } +\DoxyCodeLine{244 \textcolor{keyword}{virtual} xbInt16 GetLongField( xbInt16 iFieldNo, xbInt32 \&lFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{245 \textcolor{keyword}{virtual} xbInt16 GetLongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbInt32 \&lFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{246 \textcolor{keyword}{virtual} xbInt16 PutLongField( xbInt16 iFieldNo, xbInt32 lFieldValue );} +\DoxyCodeLine{247 \textcolor{keyword}{virtual} xbInt16 PutLongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldNo, xbInt32 lFieldValue );} +\DoxyCodeLine{248 } +\DoxyCodeLine{249 \textcolor{keyword}{virtual} xbInt16 GetULongField( xbInt16 iFieldNo, xbUInt32 \&lFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{250 \textcolor{keyword}{virtual} xbInt16 GetULongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbUInt32 \&lFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{251 \textcolor{keyword}{virtual} xbInt16 PutULongField( xbInt16 iFieldNo, xbUInt32 lFieldValue );} +\DoxyCodeLine{252 \textcolor{keyword}{virtual} xbInt16 PutULongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldNo, xbUInt32 lFieldValue );} +\DoxyCodeLine{253 } +\DoxyCodeLine{254 \textcolor{keyword}{virtual} xbInt16 GetDoubleField( xbInt16 FieldNo, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{255 \textcolor{keyword}{virtual} xbInt16 GetDoubleField( xbInt16 FieldNo, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dFieldValue, xbInt16 iRecBufSw ) \textcolor{keyword}{const};} +\DoxyCodeLine{256 \textcolor{keyword}{virtual} xbInt16 GetDoubleField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{257 \textcolor{keyword}{virtual} xbInt16 PutDoubleField( xbInt16 FieldNo, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dFieldValue );} +\DoxyCodeLine{258 \textcolor{keyword}{virtual} xbInt16 PutDoubleField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&FieldName, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dFieldValue );} +\DoxyCodeLine{259 } +\DoxyCodeLine{260 \textcolor{keyword}{virtual} xbInt16 GetFloatField( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_a83aa6a550398db55973aa9fb4257e66e}{xbFloat}} \&fFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{261 \textcolor{keyword}{virtual} xbInt16 GetFloatField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{namespacexb_a83aa6a550398db55973aa9fb4257e66e}{xbFloat}} \&fFieldValue ) \textcolor{keyword}{const};} +\DoxyCodeLine{262 \textcolor{keyword}{virtual} xbInt16 PutFloatField( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_a83aa6a550398db55973aa9fb4257e66e}{xbFloat}} fFieldValue );} +\DoxyCodeLine{263 \textcolor{keyword}{virtual} xbInt16 PutFloatField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{namespacexb_a83aa6a550398db55973aa9fb4257e66e}{xbFloat}} fFieldValue );} +\DoxyCodeLine{264 } +\DoxyCodeLine{265 \textcolor{keyword}{virtual} xbInt16 GetDateField( xbInt16 iFieldNo, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dt ) \textcolor{keyword}{const};} +\DoxyCodeLine{266 \textcolor{keyword}{virtual} xbInt16 GetDateField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dt ) \textcolor{keyword}{const};} +\DoxyCodeLine{267 \textcolor{keyword}{virtual} xbInt16 PutDateField( xbInt16 iFieldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dt );} +\DoxyCodeLine{268 \textcolor{keyword}{virtual} xbInt16 PutDateField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dt );} +\DoxyCodeLine{269 } +\DoxyCodeLine{270 } +\DoxyCodeLine{271 } +\DoxyCodeLine{272 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}} +\DoxyCodeLine{273 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldCnt () \textcolor{keyword}{const};} +\DoxyCodeLine{274 \textcolor{keyword}{virtual} xbMemo *GetMemoPtr ();} +\DoxyCodeLine{275 \textcolor{keyword}{virtual} xbUInt32 GetCreateMemoBlockSize() \textcolor{keyword}{const};} +\DoxyCodeLine{276 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );} +\DoxyCodeLine{277 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );} +\DoxyCodeLine{278 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFldNo, xbUInt32 \&ullMemoFieldLen );} +\DoxyCodeLine{279 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, xbUInt32 \&ulMemoFieldLen );} +\DoxyCodeLine{280 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} MemoFieldExists ( xbInt16 iFieldNo ) \textcolor{keyword}{const};} +\DoxyCodeLine{281 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} MemoFieldExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName ) \textcolor{keyword}{const};} +\DoxyCodeLine{282 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 ulBlockSize ) = 0;} +\DoxyCodeLine{283 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( xbInt16 iFldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );} +\DoxyCodeLine{284 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );} +\DoxyCodeLine{285 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MEMO\_SUPPORT}} +\DoxyCodeLine{286 } +\DoxyCodeLine{287 } +\DoxyCodeLine{288 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}} +\DoxyCodeLine{289 \textcolor{keyword}{virtual} xbInt16 LockTable ( xbInt16 iLockFunction );} +\DoxyCodeLine{290 \textcolor{keyword}{virtual} xbInt16 LockRecord ( xbInt16 iLockFunction, xbUInt32 ulRecNo );} +\DoxyCodeLine{291 \textcolor{keyword}{virtual} xbInt16 LockAppend ( xbInt16 iLockFunction );} +\DoxyCodeLine{292 \textcolor{keyword}{virtual} xbInt16 LockHeader ( xbInt16 iLockFunction );} +\DoxyCodeLine{293 } +\DoxyCodeLine{294 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}} +\DoxyCodeLine{295 \textcolor{keyword}{virtual} xbInt16 LockMemo ( xbInt16 iLockFunction );} +\DoxyCodeLine{296 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMemoLocked () \textcolor{keyword}{const}; } +\DoxyCodeLine{297 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MEMO\_LOCK}} +\DoxyCodeLine{298 } +\DoxyCodeLine{299 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{300 \textcolor{keyword}{virtual} xbInt16 LockIndices ( xbInt16 iLockFunction );} +\DoxyCodeLine{301 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{302 } +\DoxyCodeLine{303 xbInt16 GetAutoLock () \textcolor{keyword}{const};} +\DoxyCodeLine{304 \textcolor{keywordtype}{void} SetAutoLock ( xbInt16 iAutoLock );} +\DoxyCodeLine{305 xbInt16 GetLockFlavor () \textcolor{keyword}{const};} +\DoxyCodeLine{306 \textcolor{keywordtype}{void} SetLockFlavor ( xbInt16 iLockFlavor );} +\DoxyCodeLine{307 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetTableLocked () \textcolor{keyword}{const};} +\DoxyCodeLine{308 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetHeaderLocked () \textcolor{keyword}{const};} +\DoxyCodeLine{309 xbUInt32 GetAppendLocked () \textcolor{keyword}{const};} +\DoxyCodeLine{310 xbLinkListNode<xbUInt32> * GetFirstRecLock () \textcolor{keyword}{const};} +\DoxyCodeLine{311 } +\DoxyCodeLine{312 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}} +\DoxyCodeLine{313 \textcolor{keywordtype}{void} DumpTableLockStatus() \textcolor{keyword}{const};} +\DoxyCodeLine{314 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_DEBUG\_SUPPORT}} +\DoxyCodeLine{315 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPPORT}} +\DoxyCodeLine{316 } +\DoxyCodeLine{317 } +\DoxyCodeLine{318 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{319 \textcolor{keyword}{virtual} xbInt16 CloseIndexFile( xbIx *pIx );} +\DoxyCodeLine{320 \textcolor{keyword}{virtual} xbInt16 CreateTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIxType, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sKey, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFilter, } +\DoxyCodeLine{321 xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverLay, xbIx **xbIxOut, \textcolor{keywordtype}{void} **vpTagOut );} +\DoxyCodeLine{322 \textcolor{keyword}{virtual} xbInt16 DeleteTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIxType, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sName );} +\DoxyCodeLine{323 \textcolor{keyword}{virtual} xbInt16 DeleteAllIndexFiles();} +\DoxyCodeLine{324 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sKey );} +\DoxyCodeLine{325 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dtKey );} +\DoxyCodeLine{326 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dKey );} +\DoxyCodeLine{327 \textcolor{keyword}{virtual} xbIx *GetCurIx() \textcolor{keyword}{const};} +\DoxyCodeLine{328 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} *GetCurTag() \textcolor{keyword}{const};} +\DoxyCodeLine{329 } +\DoxyCodeLine{330 \textcolor{keyword}{virtual} xbInt16 GetFirstKey();} +\DoxyCodeLine{331 \textcolor{keyword}{virtual} xbInt16 GetNextKey();} +\DoxyCodeLine{332 \textcolor{keyword}{virtual} xbInt16 GetPrevKey();} +\DoxyCodeLine{333 \textcolor{keyword}{virtual} xbInt16 GetLastKey();} +\DoxyCodeLine{334 } +\DoxyCodeLine{335 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetCurIxType() \textcolor{keyword}{const};} +\DoxyCodeLine{336 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetCurTagName() \textcolor{keyword}{const};} +\DoxyCodeLine{337 \textcolor{keyword}{virtual} xbIxList *GetIxList() \textcolor{keyword}{const};} +\DoxyCodeLine{338 xbLinkListNode<xbTag *> *GetTagList () \textcolor{keyword}{const};} +\DoxyCodeLine{339 \textcolor{keyword}{virtual} xbInt16 OpenIndex( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIxType, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIndexName );} +\DoxyCodeLine{340 \textcolor{keyword}{virtual} xbInt16 SetCurTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTagName );} +\DoxyCodeLine{341 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetCurTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIxType, xbIx *pIx, \textcolor{keywordtype}{void} *vpTag );} +\DoxyCodeLine{342 } +\DoxyCodeLine{343 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}} +\DoxyCodeLine{344 \textcolor{keyword}{virtual} xbInt16 CheckTagIntegrity( xbInt16 iTagOpt, xbInt16 iOutputOpt );} +\DoxyCodeLine{345 \textcolor{keyword}{virtual} xbInt16 Reindex( xbInt16 iTagOpt );} +\DoxyCodeLine{346 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_DEBUG\_SUPPORT}} +\DoxyCodeLine{347 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{348 } +\DoxyCodeLine{349 \textcolor{preprocessor}{ \#ifdef XB\_NDXINF\_SUPPORT}} +\DoxyCodeLine{350 \textcolor{keyword}{virtual} xbInt16 AssociateIndex( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sType, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sName, xbInt16 iOption );} +\DoxyCodeLine{351 xbLinkListNode<xbString> *GetNdxInfList() \textcolor{keyword}{const};} +\DoxyCodeLine{352 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_NDXINF\_SUPPORT}} +\DoxyCodeLine{353 } +\DoxyCodeLine{354 \textcolor{comment}{//\#ifdef XB\_MDX\_SUPPORT}} +\DoxyCodeLine{355 \textcolor{comment}{//virtual xbInt16 GetCreateMdxBlockSize() const;}} +\DoxyCodeLine{356 \textcolor{comment}{//virtual xbInt16 SetCreateMdxBlockSize( xbInt16 ulBlockSize );}} +\DoxyCodeLine{357 \textcolor{comment}{//\#endif}} +\DoxyCodeLine{358 } +\DoxyCodeLine{359 } +\DoxyCodeLine{360 } +\DoxyCodeLine{361 \textcolor{keyword}{protected}:} +\DoxyCodeLine{362 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{363 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIx;} +\DoxyCodeLine{364 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIxMdx;} +\DoxyCodeLine{365 } +\DoxyCodeLine{366 xbInt16 AddIndex( xbIx *ix, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmt );} +\DoxyCodeLine{367 \textcolor{keywordtype}{void} ClearTagList();} +\DoxyCodeLine{368 \textcolor{keyword}{virtual} xbInt16 GetNdxInfFileName( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sNdxIdxFileName );} +\DoxyCodeLine{369 xbInt16 RemoveIndex( xbIx * ix );} +\DoxyCodeLine{370 \textcolor{keywordtype}{void} UpdateSchemaIxFlag( xbInt16 iFldNo, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cVal );} +\DoxyCodeLine{371 \textcolor{keyword}{virtual} xbInt16 UpdateTagList ();} +\DoxyCodeLine{372 \textcolor{preprocessor}{ \#endif}} +\DoxyCodeLine{373 } +\DoxyCodeLine{374 } +\DoxyCodeLine{375 } +\DoxyCodeLine{376 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}} +\DoxyCodeLine{377 \textcolor{keywordtype}{void} SetHeaderLocked ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked );} +\DoxyCodeLine{378 \textcolor{keywordtype}{void} SetTableLocked ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked );} +\DoxyCodeLine{379 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPORT}} +\DoxyCodeLine{380 } +\DoxyCodeLine{381 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}} +\DoxyCodeLine{382 xbInt16 iMemoFieldCnt; \textcolor{comment}{// Memo field cnt in the table}} +\DoxyCodeLine{383 xbMemo *Memo; \textcolor{comment}{// Pointer to memo class}} +\DoxyCodeLine{384 xbUInt32 ulCreateMemoBlockSize; \textcolor{comment}{// blocksize to use when creating dbt file}} +\DoxyCodeLine{385 \textcolor{preprocessor}{ \#endif}} +\DoxyCodeLine{386 } +\DoxyCodeLine{387 \textcolor{preprocessor}{ \#ifdef XB\_NDXINF\_SUPPORT}} +\DoxyCodeLine{388 \textcolor{keyword}{virtual} xbInt16 DeleteNdxInfData();} +\DoxyCodeLine{389 \textcolor{keyword}{virtual} xbInt16 LoadNdxInfData();} +\DoxyCodeLine{390 \textcolor{keyword}{virtual} xbInt16 SaveNdxInfData();} +\DoxyCodeLine{391 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_NDXINF\_SUPPORT}} +\DoxyCodeLine{392 } +\DoxyCodeLine{393 \textcolor{comment}{/*}} +\DoxyCodeLine{394 \textcolor{comment}{ \#ifdef XB\_MDX\_SUPPORT}} +\DoxyCodeLine{395 \textcolor{comment}{ xbInt16 iCreateMdxBlockSize;}} +\DoxyCodeLine{396 \textcolor{comment}{ \#endif // XB\_MDX\_SUPPORT}} +\DoxyCodeLine{397 \textcolor{comment}{*/}} +\DoxyCodeLine{398 } +\DoxyCodeLine{399 \textcolor{keyword}{virtual} xbInt16 GetRawField( xbInt16 iFieldNo, \textcolor{keywordtype}{char} *Buf, xbUInt32 BufSize, xbInt16 iRecBufSw ) \textcolor{keyword}{const};} +\DoxyCodeLine{400 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} InitVars(); } +\DoxyCodeLine{401 \textcolor{keyword}{virtual} xbInt16 SetVersion() = 0;} +\DoxyCodeLine{402 \textcolor{keyword}{virtual} xbInt16 ValidateSchema( \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} * s ) = 0;} +\DoxyCodeLine{403 xbInt16 WriteHeader( xbInt16 iPositionOption, xbInt16 iWriteOption );} +\DoxyCodeLine{404 } +\DoxyCodeLine{405 } +\DoxyCodeLine{406 xbUInt32 ulCurRec; \textcolor{comment}{// Current record or zero}} +\DoxyCodeLine{407 xbInt16 iAutoCommit; \textcolor{comment}{// Auto commit updates if not explicitly performed before moving off record?}} +\DoxyCodeLine{408 \textcolor{comment}{// -\/1 -\/-\/> Use DBMS default}} +\DoxyCodeLine{409 \textcolor{comment}{// 0 -\/-\/> No auto update on this table, regardless of DBMS setting}} +\DoxyCodeLine{410 \textcolor{comment}{// 1 -\/-\/> Auto update on this table, regardless of DBMS setting}} +\DoxyCodeLine{411 } +\DoxyCodeLine{412 xbInt16 iFileVersion; \textcolor{comment}{// xBase file version -\/ which class is in play}} +\DoxyCodeLine{413 } +\DoxyCodeLine{414 } +\DoxyCodeLine{415 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sAlias; \textcolor{comment}{// table alias}} +\DoxyCodeLine{416 xbInt16 iNoOfFields;} +\DoxyCodeLine{417 xbInt16 iDbfStatus; \textcolor{comment}{// 0 = closed}} +\DoxyCodeLine{418 \textcolor{comment}{// 1 = open}} +\DoxyCodeLine{419 \textcolor{comment}{// 2 = updates pending}} +\DoxyCodeLine{420 } +\DoxyCodeLine{421 xbSchemaRec *SchemaPtr; \textcolor{comment}{// Pointer to field data}} +\DoxyCodeLine{422 \textcolor{keywordtype}{char} *RecBuf; \textcolor{comment}{// Pointer to record buffer}} +\DoxyCodeLine{423 \textcolor{keywordtype}{char} *RecBuf2; \textcolor{comment}{// Pointer to original rec buf}} +\DoxyCodeLine{424 } +\DoxyCodeLine{425 } +\DoxyCodeLine{426 \textcolor{comment}{/* Next several variables are database header fields, up through dbase V */}} +\DoxyCodeLine{427 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cVersion;} +\DoxyCodeLine{428 \textcolor{keywordtype}{char} cUpdateYY;} +\DoxyCodeLine{429 \textcolor{keywordtype}{char} cUpdateMM;} +\DoxyCodeLine{430 \textcolor{keywordtype}{char} cUpdateDD;} +\DoxyCodeLine{431 xbUInt32 ulNoOfRecs;} +\DoxyCodeLine{432 xbUInt16 uiHeaderLen;} +\DoxyCodeLine{433 xbUInt16 uiRecordLen;} +\DoxyCodeLine{434 \textcolor{keywordtype}{char} cTransactionFlag;} +\DoxyCodeLine{435 \textcolor{keywordtype}{char} cEncryptionFlag;} +\DoxyCodeLine{436 \textcolor{keywordtype}{char} cIndexFlag;} +\DoxyCodeLine{437 \textcolor{keywordtype}{char} cLangDriver; \textcolor{comment}{// dbase 7 sets to 1B}} +\DoxyCodeLine{438 } +\DoxyCodeLine{439 } +\DoxyCodeLine{440 } +\DoxyCodeLine{441 \textcolor{keyword}{private}:} +\DoxyCodeLine{442 \textcolor{keywordtype}{void} ResetNoOfRecords(); } +\DoxyCodeLine{443 } +\DoxyCodeLine{444 } +\DoxyCodeLine{445 \textcolor{preprocessor}{\#ifdef XB\_LOCKING\_SUPPORT}} +\DoxyCodeLine{446 xbInt16 iAutoLock; \textcolor{comment}{// 0 -\/ autolock off, 1 -\/ autolock on}} +\DoxyCodeLine{447 xbInt16 iLockFlavor;} +\DoxyCodeLine{448 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked; \textcolor{comment}{// is the table locked}} +\DoxyCodeLine{449 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bHeaderLocked; \textcolor{comment}{// is the header locked}} +\DoxyCodeLine{450 xbUInt32 ulAppendLocked; \textcolor{comment}{// record number of the new record for the append lock operation}} +\DoxyCodeLine{451 xbLinkListOrd<xbUInt32> lloRecLocks; \textcolor{comment}{// ordered link list of locked records}} +\DoxyCodeLine{452 \textcolor{preprocessor}{\#endif}} +\DoxyCodeLine{453 } +\DoxyCodeLine{454 } +\DoxyCodeLine{455 \textcolor{preprocessor}{\#ifdef XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{456 xbIxList *ixList; \textcolor{comment}{// pointer to a list of indices associated with the table}} +\DoxyCodeLine{457 \textcolor{comment}{// \#ifdef XB\_MDX\_SUPPORT}} +\DoxyCodeLine{458 \textcolor{comment}{// xbIx *ixMdx; // pointer to production multi-\/tag index file}} +\DoxyCodeLine{459 \textcolor{comment}{// \#endif}} +\DoxyCodeLine{460 xbIx *pCurIx; \textcolor{comment}{// Pointer to current index class}} +\DoxyCodeLine{461 \textcolor{keywordtype}{void} *vpCurIxTag; \textcolor{comment}{// Pointer to current tag}} +\DoxyCodeLine{462 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sCurIxType; \textcolor{comment}{// Current index type}} +\DoxyCodeLine{463 xbLinkList<xbTag *> llTags; \textcolor{comment}{// linked list of open tags}} +\DoxyCodeLine{464 } +\DoxyCodeLine{465 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}} +\DoxyCodeLine{466 } +\DoxyCodeLine{467 \textcolor{preprocessor}{\#ifdef XB\_NDXINF\_SUPPORT}} +\DoxyCodeLine{468 xbLinkList<xbString> llNdxInfData; \textcolor{comment}{// linked list of strings containing ndx file entries}} +\DoxyCodeLine{469 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_NDXINF\_SUPPORT}} +\DoxyCodeLine{470 } +\DoxyCodeLine{471 } +\DoxyCodeLine{472 \};} +\DoxyCodeLine{473 } +\DoxyCodeLine{474 } +\DoxyCodeLine{475 \textcolor{preprocessor}{\#ifdef XB\_DBF3\_SUPPORT}} +\DoxyCodeLine{477 } +\DoxyCodeLine{483 \textcolor{keyword}{class }XBDLLEXPORT xbDbf3 : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} \{} +\DoxyCodeLine{484 \textcolor{keyword}{public}:} +\DoxyCodeLine{485 xbDbf3(\mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *x);} +\DoxyCodeLine{486 \string~xbDbf3();} +\DoxyCodeLine{487 \textcolor{keyword}{virtual} xbInt16 CreateTable ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} *, xbInt16 iOverlay, xbInt16 iShareMode );} +\DoxyCodeLine{488 \textcolor{keyword}{virtual} xbInt16 GetVersion () \textcolor{keyword}{const};} +\DoxyCodeLine{489 \textcolor{keyword}{virtual} xbInt16 Open ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, xbInt16 iOpenMode, xbInt16 iShareMode );} +\DoxyCodeLine{490 } +\DoxyCodeLine{491 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}} +\DoxyCodeLine{492 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 iBlockSize );} +\DoxyCodeLine{493 \textcolor{preprocessor}{ \#endif}} +\DoxyCodeLine{494 } +\DoxyCodeLine{495 \textcolor{keyword}{protected}:} +\DoxyCodeLine{496 xbInt16 SetVersion ();} +\DoxyCodeLine{497 \textcolor{keyword}{virtual} xbInt16 ValidateSchema( \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} *s );} +\DoxyCodeLine{498 } +\DoxyCodeLine{499 \textcolor{keyword}{private}:} +\DoxyCodeLine{500 } +\DoxyCodeLine{501 \};} +\DoxyCodeLine{502 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_DBF3\_SUPPORT */}\textcolor{preprocessor}{}} +\DoxyCodeLine{503 } +\DoxyCodeLine{504 } +\DoxyCodeLine{505 \textcolor{preprocessor}{\#ifdef XB\_DBF4\_SUPPORT}} +\DoxyCodeLine{507 } +\DoxyCodeLine{512 \textcolor{keyword}{class }XBDLLEXPORT xbDbf4 : \textcolor{keyword}{public} \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} \{} +\DoxyCodeLine{513 \textcolor{keyword}{public}:} +\DoxyCodeLine{514 xbDbf4( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *x );} +\DoxyCodeLine{515 } +\DoxyCodeLine{516 \string~xbDbf4();} +\DoxyCodeLine{517 } +\DoxyCodeLine{518 \textcolor{keyword}{virtual} xbInt16 CreateTable ( \textcolor{keyword}{const} xbString \&sTableName, \textcolor{keyword}{const} xbString \&sAlias, xbSchema *, xbInt16 iOverlay, xbInt16 iShareMode );} +\DoxyCodeLine{519 \textcolor{keyword}{virtual} xbInt16 GetVersion () \textcolor{keyword}{const};} +\DoxyCodeLine{520 \textcolor{keyword}{virtual} xbInt16 Open ( \textcolor{keyword}{const} xbString \&sTableName, \textcolor{keyword}{const} xbString \&sAlias, xbInt16 iOpenMode, xbInt16 iShareMode );} +\DoxyCodeLine{521 } +\DoxyCodeLine{522 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}} +\DoxyCodeLine{523 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 iBlockSize );} +\DoxyCodeLine{524 \textcolor{preprocessor}{ \#endif}} +\DoxyCodeLine{525 } +\DoxyCodeLine{526 \textcolor{keyword}{protected}:} +\DoxyCodeLine{527 \textcolor{comment}{// void InitVars ();}} +\DoxyCodeLine{528 xbInt16 SetVersion();} +\DoxyCodeLine{529 \textcolor{keyword}{virtual} xbInt16 ValidateSchema ( xbSchema *s );} +\DoxyCodeLine{530 } +\DoxyCodeLine{531 \textcolor{keyword}{private}:} +\DoxyCodeLine{532 } +\DoxyCodeLine{533 \};} +\DoxyCodeLine{534 } +\DoxyCodeLine{535 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_DBF4\_SUPPORT */}\textcolor{preprocessor}{}} +\DoxyCodeLine{536 } +\DoxyCodeLine{537 \} \textcolor{comment}{/* namespace xb */}} +\DoxyCodeLine{538 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_DBF\_H\_\_ */}\textcolor{preprocessor}{}} + +\end{DoxyCode} |