summaryrefslogtreecommitdiff
path: root/docs/doxygen/latex
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/latex')
-rw-r--r--docs/doxygen/latex/annotated.tex1
-rw-r--r--docs/doxygen/latex/classxb_1_1xbDate.pdfbin4739 -> 4739 bytes
-rw-r--r--docs/doxygen/latex/classxb_1_1xbDate.tex130
-rw-r--r--docs/doxygen/latex/classxb_1_1xbDbf.pdfbin4914 -> 4914 bytes
-rw-r--r--docs/doxygen/latex/classxb_1_1xbDbf.tex343
-rw-r--r--docs/doxygen/latex/classxb_1_1xbFile.pdfbin4915 -> 4915 bytes
-rw-r--r--docs/doxygen/latex/classxb_1_1xbFile.tex216
-rw-r--r--docs/doxygen/latex/classxb_1_1xbSsv.pdfbin6100 -> 6100 bytes
-rw-r--r--docs/doxygen/latex/classxb_1_1xbSsv.tex68
-rw-r--r--docs/doxygen/latex/classxb_1_1xbString.tex46
-rw-r--r--docs/doxygen/latex/classxb_1_1xbTblMgr.pdfbin5490 -> 5490 bytes
-rw-r--r--docs/doxygen/latex/classxb_1_1xbTblMgr.tex68
-rw-r--r--docs/doxygen/latex/classxb_1_1xbXBase.pdfbin5492 -> 5492 bytes
-rw-r--r--docs/doxygen/latex/classxb_1_1xbXBase.tex130
-rw-r--r--docs/doxygen/latex/dir_25b94c3afce00ed38231227d8141f932.tex8
-rw-r--r--docs/doxygen/latex/dir_313caf1132e152dd9b58bea13a4052ca.tex6
-rw-r--r--docs/doxygen/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex4
-rw-r--r--docs/doxygen/latex/dir_aebb8dcc11953d78e620bbef0b9e2183.tex6
-rw-r--r--docs/doxygen/latex/dir_b0856f6b0d80ccb263b2f415c91f9e17.tex6
-rw-r--r--docs/doxygen/latex/dir_d93a1d4020dea85bb71b237545b5e722.tex6
-rw-r--r--docs/doxygen/latex/dir_e931c1a3f0014e624d0645a271726ad2.tex6
-rw-r--r--docs/doxygen/latex/files.tex212
-rw-r--r--docs/doxygen/latex/hierarchy.tex1
-rw-r--r--docs/doxygen/latex/include_2xbcrix_8cpp.tex3
-rw-r--r--docs/doxygen/latex/refman.tex9
-rw-r--r--docs/doxygen/latex/sql_2xbcrix_8cpp.tex3
-rw-r--r--docs/doxygen/latex/structsFldMap.tex45
-rw-r--r--docs/doxygen/latex/structxb_1_1xbSchema.tex2
-rw-r--r--docs/doxygen/latex/structxb_1_1xbTblList.tex2
-rw-r--r--docs/doxygen/latex/tstfuncs_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__cfg__check_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__copydbf_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__dbfutil_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__deletall_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__dumpdbt_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__dumprecs_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__date_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__expression_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__log_8cpp.tex17
-rw-r--r--docs/doxygen/latex/xb__ex__sql_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__ssv_8cpp.tex10
-rw-r--r--docs/doxygen/latex/xb__ex__string_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__v3__create__dbf_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__v3__upd__dbf_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__v4__create__dbf_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__ex__v4__upd__dbf_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__execsql_8cpp.tex32
-rw-r--r--docs/doxygen/latex/xb__import_8cpp.tex38
-rw-r--r--docs/doxygen/latex/xb__pack_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__tblinfo_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__bcd_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__blockread_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__date_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__dbf__v3__memos_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__dbf__v3__nomemos_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__dbf__v4__memos_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__dbf__v4__nomemos_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__expnode_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__expression_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__file_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__filter_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__funcs_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__linklist_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__lock2_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__lock_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__log_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__mdx_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__ndx_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__sql_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__string_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__tblmgr_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__tdx_8cpp.tex18
-rw-r--r--docs/doxygen/latex/xb__test__uda_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__test__xbase_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xb__undelall_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbalttbl_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbase_8h.tex4
-rw-r--r--docs/doxygen/latex/xbase_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbbcd_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbbcd_8h.tex4
-rw-r--r--docs/doxygen/latex/xbbcd_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbblkread_8h.tex4
-rw-r--r--docs/doxygen/latex/xbblkread_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbblockread_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbcrix_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbcrtbl_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbcrtbl_8save2_8cpp.tex3
-rw-r--r--docs/doxygen/latex/xbcrtbl_8save_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdate_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdate_8h.tex4
-rw-r--r--docs/doxygen/latex/xbdate_8h_source.tex111
-rw-r--r--docs/doxygen/latex/xbdbf3_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdbf4_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdbf_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdbf_8h.tex4
-rw-r--r--docs/doxygen/latex/xbdbf_8h_source.tex538
-rw-r--r--docs/doxygen/latex/xbdelete_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdrpix_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbdrptbl_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbexp_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbexp_8h.tex18
-rw-r--r--docs/doxygen/latex/xbexp_8h_source.tex255
-rw-r--r--docs/doxygen/latex/xbexpnode_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbexpnode_8h.tex4
-rw-r--r--docs/doxygen/latex/xbexpnode_8h_source.tex4
-rw-r--r--docs/doxygen/latex/xbfields_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbfile_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbfile_8h.tex4
-rw-r--r--docs/doxygen/latex/xbfile_8h_source.tex263
-rw-r--r--docs/doxygen/latex/xbfilter_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbfilter_8h.tex4
-rw-r--r--docs/doxygen/latex/xbfilter_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbfuncs_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbindex_8h.tex4
-rw-r--r--docs/doxygen/latex/xbindex_8h_source.tex808
-rw-r--r--docs/doxygen/latex/xbinsert_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbixbase_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbixmdx_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbixndx_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbixtdx_8cpp.tex3
-rw-r--r--docs/doxygen/latex/xblnklst_8h.tex4
-rw-r--r--docs/doxygen/latex/xblnklst_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xblnklstord_8h.tex4
-rw-r--r--docs/doxygen/latex/xblnklstord_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xblnknod_8h.tex4
-rw-r--r--docs/doxygen/latex/xblnknod_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xblog_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xblog_8h.tex4
-rw-r--r--docs/doxygen/latex/xblog_8h_source.tex41
-rw-r--r--docs/doxygen/latex/xbmemo3_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbmemo4_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbmemo_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbmemo_8h.tex4
-rw-r--r--docs/doxygen/latex/xbmemo_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbretcod_8h.tex12
-rw-r--r--docs/doxygen/latex/xbretcod_8h_source.tex137
-rw-r--r--docs/doxygen/latex/xbselect_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbset_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbsql_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbsql_8h.tex4
-rw-r--r--docs/doxygen/latex/xbsql_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbssv_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbssv_8h.tex4
-rw-r--r--docs/doxygen/latex/xbssv_8h_source.tex227
-rw-r--r--docs/doxygen/latex/xbstmt_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbstring_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbstring_8h.tex4
-rw-r--r--docs/doxygen/latex/xbstring_8h_source.tex144
-rw-r--r--docs/doxygen/latex/xbtag_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbtag_8h.tex4
-rw-r--r--docs/doxygen/latex/xbtag_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbtblmgr_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbtblmgr_8h.tex4
-rw-r--r--docs/doxygen/latex/xbtblmgr_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbtypes_8h.tex4
-rw-r--r--docs/doxygen/latex/xbtypes_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbuda_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbuda_8h.tex4
-rw-r--r--docs/doxygen/latex/xbuda_8h_source.tex2
-rw-r--r--docs/doxygen/latex/xbxbase_8cpp.tex4
-rw-r--r--docs/doxygen/latex/xbxbase_8h.tex4
-rw-r--r--docs/doxygen/latex/xbxbase_8h_source.tex203
162 files changed, 2657 insertions, 1972 deletions
diff --git a/docs/doxygen/latex/annotated.tex b/docs/doxygen/latex/annotated.tex
index 4ee4578..c670b75 100644
--- a/docs/doxygen/latex/annotated.tex
+++ b/docs/doxygen/latex/annotated.tex
@@ -1,5 +1,6 @@
\doxysection{Data Structures}
Here are the data structures with brief descriptions\+:\begin{DoxyCompactList}
+\item\contentsline{section}{\mbox{\hyperlink{structsFldMap}{s\+Fld\+Map}} }{\pageref{structsFldMap}}{}
\item\contentsline{section}{\mbox{\hyperlink{classxb_1_1xbDate}{xb\+::xb\+Date}} \\*Xb\+Date class }{\pageref{classxb_1_1xbDate}}{}
\item\contentsline{section}{\mbox{\hyperlink{classxb_1_1xbDbf}{xb\+::xb\+Dbf}} \\*Base class for handling dbf files/tables }{\pageref{classxb_1_1xbDbf}}{}
\item\contentsline{section}{\mbox{\hyperlink{classxb_1_1xbFile}{xb\+::xb\+File}} \\*Class for handling low level file I/O }{\pageref{classxb_1_1xbFile}}{}
diff --git a/docs/doxygen/latex/classxb_1_1xbDate.pdf b/docs/doxygen/latex/classxb_1_1xbDate.pdf
index c0c2d67..566204d 100644
--- a/docs/doxygen/latex/classxb_1_1xbDate.pdf
+++ b/docs/doxygen/latex/classxb_1_1xbDate.pdf
Binary files differ
diff --git a/docs/doxygen/latex/classxb_1_1xbDate.tex b/docs/doxygen/latex/classxb_1_1xbDate.tex
index d1505d4..a7a9988 100644
--- a/docs/doxygen/latex/classxb_1_1xbDate.tex
+++ b/docs/doxygen/latex/classxb_1_1xbDate.tex
@@ -26,6 +26,8 @@ Inheritance diagram for xb\+::xb\+Date\+:\begin{figure}[H]
\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbDate_a7ab727a7ec184a086ad36ef83b948170}{xb\+Date}} (xb\+Int32 l\+Jul\+Date)
\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbDate_a8dfc827b466be3c5e3def599277dfa43}{xb\+Date}} (xb\+UInt16 i\+Init)
+\begin{DoxyCompactList}\small\item\em Constructor. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbDate_a05c9680c6eb9fe07ecf13a189b596c37}{$\sim$xb\+Date}} ()
\begin{DoxyCompactList}\small\item\em Destructor. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbDate_a2e33ad9415c32e820e08fd8084198690}{operator=}} (const \mbox{\hyperlink{classxb_1_1xbDate}{xb\+Date}} \&d)
@@ -78,6 +80,8 @@ const char $\ast$ \mbox{\hyperlink{classxb_1_1xbDate_ab43a5d8d929767c0ffdd722972
\begin{DoxyCompactList}\small\item\em Determine if date is a leap year. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbDate_a5f8051c31b29244265e8f26ac3547b9b}{Is\+Leap\+Year}} () const
\begin{DoxyCompactList}\small\item\em Determine if date is a leap year. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbDate_a611a64b14ff89ad3c20b34081ea1e658}{Is\+Null}} () const
+\begin{DoxyCompactList}\small\item\em Determine if date is null date. \end{DoxyCompactList}\item
xb\+Int32 \mbox{\hyperlink{classxb_1_1xbDate_a1ee3377d4ead9d31099eee539d9b13a7}{Julian\+Days}} () const
\begin{DoxyCompactList}\small\item\em Calculate julian days for a given date. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDate_a9d28b2a46d8aaa284b92f44eeb96b2ff}{Jul\+To\+Date8}} (xb\+Int32 l\+Jul\+Date)
@@ -98,14 +102,22 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_a97dfa59ab9a8e9f17454da0faceb023d}{Displa
\begin{DoxyCompactList}\small\item\em Get the default date format. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a1d803a4bfc8ba0561267a0bf9e51f7d9}{Get\+Data\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the current data directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}{Get\+Temp\+Directory}} () const
+\begin{DoxyCompactList}\small\item\em Get the current temp directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
+\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbSsv_a49cd162f066eef2b829ba7c9f6620243}{Get\+Endian\+Type}} () const
\begin{DoxyCompactList}\small\item\em Get the Endian type. \end{DoxyCompactList}\item
const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}{Get\+Error\+Message}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Get an error message. \end{DoxyCompactList}\item
+char \mbox{\hyperlink{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}{Get\+Path\+Separator}} () const
+\begin{DoxyCompactList}\small\item\em Get the OS dependent path separator. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}{Set\+Data\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Data\+Directory)
\begin{DoxyCompactList}\small\item\em Set the data directory. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a5f74db23f8902846d581935c7db73f9c}{Set\+Default\+Date\+Format}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Default\+Date\+Format)
\begin{DoxyCompactList}\small\item\em Set the default date format. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}{Set\+Temp\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Temp\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the temp directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_a62e4fd0a5888665c76bbbad962794e72}{Bit\+Set}} (unsigned char c, xb\+Int16 i\+Bit\+No) const
\begin{DoxyCompactList}\small\item\em Check a bit in a one byte field and see if it is set. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a8551b15a3ce4fa2a40d698db01f4a9ae}{Bit\+Dump}} (unsigned char c) const
@@ -116,14 +128,14 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_aba1395b8e4c7f28c3614061de6e49190}{Bit\+D
\begin{DoxyCompactList}\small\item\em Get the default auto commit setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}{Set\+Default\+Auto\+Commit}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Default\+Auto\+Commit)
\begin{DoxyCompactList}\small\item\em Set the default auto commit. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
-\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}{Get\+Log\+Directory}} () const
\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}{Get\+Log\+File\+Name}} () const
\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Directory)
\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
+\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_abd58031c5f1c3766c24d47a82e6fd9c5}{Get\+Multi\+User}} () const
\begin{DoxyCompactList}\small\item\em Get the multi user setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}{Set\+Multi\+User}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Multi\+User)
@@ -175,7 +187,7 @@ To calculate a future or past date, convert the base date to a Julian date, add
\mbox{\Hypertarget{classxb_1_1xbDate_ab3150e7db0ab5db10a07d748b55465eb}\label{classxb_1_1xbDate_ab3150e7db0ab5db10a07d748b55465eb}}
\index{xb::xbDate@{xb::xbDate}!xbDate@{xbDate}}
\index{xbDate@{xbDate}!xb::xbDate@{xb::xbDate}}
-\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
+\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [1/5]}}
{\footnotesize\ttfamily xb\+::xb\+Date\+::xb\+Date (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
@@ -185,7 +197,7 @@ Constructor.
\mbox{\Hypertarget{classxb_1_1xbDate_ac8a4d9330221a3daee21b3c28c1d9719}\label{classxb_1_1xbDate_ac8a4d9330221a3daee21b3c28c1d9719}}
\index{xb::xbDate@{xb::xbDate}!xbDate@{xbDate}}
\index{xbDate@{xbDate}!xb::xbDate@{xb::xbDate}}
-\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
+\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [2/5]}}
{\footnotesize\ttfamily xb\+::xb\+Date\+::xb\+Date (\begin{DoxyParamCaption}\item[{const char $\ast$}]{s\+Date8\+In }\end{DoxyParamCaption})}
@@ -200,7 +212,7 @@ Constructor.
\mbox{\Hypertarget{classxb_1_1xbDate_acf4546f5681735ede18210f60bab68d4}\label{classxb_1_1xbDate_acf4546f5681735ede18210f60bab68d4}}
\index{xb::xbDate@{xb::xbDate}!xbDate@{xbDate}}
\index{xbDate@{xbDate}!xb::xbDate@{xb::xbDate}}
-\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
+\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [3/5]}}
{\footnotesize\ttfamily xb\+::xb\+Date\+::xb\+Date (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Date8\+In }\end{DoxyParamCaption})}
@@ -215,7 +227,7 @@ Constructor.
\mbox{\Hypertarget{classxb_1_1xbDate_a7ab727a7ec184a086ad36ef83b948170}\label{classxb_1_1xbDate_a7ab727a7ec184a086ad36ef83b948170}}
\index{xb::xbDate@{xb::xbDate}!xbDate@{xbDate}}
\index{xbDate@{xbDate}!xb::xbDate@{xb::xbDate}}
-\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
+\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [4/5]}}
{\footnotesize\ttfamily xb\+::xb\+Date\+::xb\+Date (\begin{DoxyParamCaption}\item[{xb\+Int32}]{l\+Jul\+Date }\end{DoxyParamCaption})}
@@ -227,6 +239,21 @@ Constructor.
{\em l\+Jul\+Date} & -\/ Input julian date. \\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbDate_a8dfc827b466be3c5e3def599277dfa43}\label{classxb_1_1xbDate_a8dfc827b466be3c5e3def599277dfa43}}
+\index{xb::xbDate@{xb::xbDate}!xbDate@{xbDate}}
+\index{xbDate@{xbDate}!xb::xbDate@{xb::xbDate}}
+\doxysubsubsection{\texorpdfstring{xbDate()}{xbDate()}\hspace{0.1cm}{\footnotesize\ttfamily [5/5]}}
+{\footnotesize\ttfamily xb\+::xb\+Date\+::xb\+Date (\begin{DoxyParamCaption}\item[{xb\+UInt16}]{i\+Init }\end{DoxyParamCaption})}
+
+
+
+Constructor.
+
+
+\begin{DoxyParams}{Parameters}
+{\em i\+Init\+Opt} & -\/ Constructor to use to initialize date static variables Called by the main xb\+Xbase\+::xb\+XBase constructor \\
+\hline
+\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbDate_a05c9680c6eb9fe07ecf13a189b596c37}\label{classxb_1_1xbDate_a05c9680c6eb9fe07ecf13a189b596c37}}
\index{xb::xbDate@{xb::xbDate}!````~xbDate@{$\sim$xbDate}}
\index{````~xbDate@{$\sim$xbDate}!xb::xbDate@{xb::xbDate}}
@@ -304,7 +331,7 @@ Century calculated for the two digit year.
Get century for date.
\begin{DoxyReturn}{Returns}
-This routine returns the century from the date.
+the century from the valid date. or 0 for a null date.
\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDate_a9fc29730b66cddfbb58c69992a99cc7c}\label{classxb_1_1xbDate_a9fc29730b66cddfbb58c69992a99cc7c}}
\index{xb::xbDate@{xb::xbDate}!CharDayOf@{CharDayOf}}
@@ -543,9 +570,6 @@ Get home directory.
{\em s\+Home\+Dir\+Out} & -\/ Output home directory for current user. \\
\hline
\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-void
-\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}\label{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}}
\index{xb::xbDate@{xb::xbDate}!GetLogDirectory@{GetLogDirectory}}
\index{GetLogDirectory@{GetLogDirectory}!xb::xbDate@{xb::xbDate}}
@@ -573,6 +597,32 @@ xb\+True -\/ Multi user mode turned on.~\newline
xb\+False -\/ Multi user mode turned off.~\newline
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}\label{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}}
+\index{xb::xbDate@{xb::xbDate}!GetPathSeparator@{GetPathSeparator}}
+\index{GetPathSeparator@{GetPathSeparator}!xb::xbDate@{xb::xbDate}}
+\doxysubsubsection{\texorpdfstring{GetPathSeparator()}{GetPathSeparator()}}
+{\footnotesize\ttfamily char xb\+::xb\+Ssv\+::\+Get\+Path\+Separator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the OS dependent path separator.
+
+\begin{DoxyReturn}{Returns}
+Returns \textquotesingle{}\textbackslash{}\textquotesingle{} for windows environment, otherwise returns \textquotesingle{}/\textquotesingle{}.
+\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}\label{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}}
+\index{xb::xbDate@{xb::xbDate}!GetTempDirectory@{GetTempDirectory}}
+\index{GetTempDirectory@{GetTempDirectory}!xb::xbDate@{xb::xbDate}}
+\doxysubsubsection{\texorpdfstring{GetTempDirectory()}{GetTempDirectory()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Temp\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the current temp directory.
+
+\begin{DoxyReturn}{Returns}
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} containing the current data directory where the database files are stored.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDate_a5f8051c31b29244265e8f26ac3547b9b}\label{classxb_1_1xbDate_a5f8051c31b29244265e8f26ac3547b9b}}
\index{xb::xbDate@{xb::xbDate}!IsLeapYear@{IsLeapYear}}
\index{IsLeapYear@{IsLeapYear}!xb::xbDate@{xb::xbDate}}
@@ -606,6 +656,20 @@ Determine if date is a leap year.
xb\+True -\/ Is leapyear.~\newline
xb\+False -\/ Not a leap year.
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbDate_a611a64b14ff89ad3c20b34081ea1e658}\label{classxb_1_1xbDate_a611a64b14ff89ad3c20b34081ea1e658}}
+\index{xb::xbDate@{xb::xbDate}!IsNull@{IsNull}}
+\index{IsNull@{IsNull}!xb::xbDate@{xb::xbDate}}
+\doxysubsubsection{\texorpdfstring{IsNull()}{IsNull()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} xb\+::xb\+Date\+::\+Is\+Null (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+
+
+
+Determine if date is null date.
+
+\begin{DoxyReturn}{Returns}
+xb\+True -\/ If null date.~\newline
+ xb\+False -\/ Not a null date.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDate_a1ee3377d4ead9d31099eee539d9b13a7}\label{classxb_1_1xbDate_a1ee3377d4ead9d31099eee539d9b13a7}}
\index{xb::xbDate@{xb::xbDate}!JulianDays@{JulianDays}}
\index{JulianDays@{JulianDays}!xb::xbDate@{xb::xbDate}}
@@ -692,7 +756,7 @@ xb\+False -\/ Dates match.
operator +
-This routine adds additional days to a date field.
+This routine adds additional days to a valid date field.
\begin{DoxyParams}{Parameters}
{\em l\+Count} & -\/ Number of days to add. \\
\hline
@@ -710,7 +774,7 @@ New date in CCYYMMDD format.
operator ++
-This routine adds one day to the date field. \mbox{\Hypertarget{classxb_1_1xbDate_a947ba156d04fe063aaa4c9964ae5d163}\label{classxb_1_1xbDate_a947ba156d04fe063aaa4c9964ae5d163}}
+This routine adds one day to the date field if the date is not null. \mbox{\Hypertarget{classxb_1_1xbDate_a947ba156d04fe063aaa4c9964ae5d163}\label{classxb_1_1xbDate_a947ba156d04fe063aaa4c9964ae5d163}}
\index{xb::xbDate@{xb::xbDate}!operator+=@{operator+=}}
\index{operator+=@{operator+=}!xb::xbDate@{xb::xbDate}}
\doxysubsubsection{\texorpdfstring{operator+=()}{operator+=()}}
@@ -720,7 +784,7 @@ This routine adds one day to the date field. \mbox{\Hypertarget{classxb_1_1xbDat
operator +=
-This routine adds l\+Days to the date
+This routine adds l\+Days to the date if the date is not null.
\begin{DoxyParams}{Parameters}
{\em l\+Days} & -\/ Number of days to add to the date. \\
\hline
@@ -737,11 +801,11 @@ operator -\/
This routine subtracts one date from another date returning the difference.
\begin{DoxyParams}{Parameters}
-{\em dt} & -\/ Date to subtract. \\
+{\em dt} & -\/ Date to subtract \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
-Number of days
+Number of days difference or zero if one of the dates is null.
\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDate_a73ff5c037046ac0a0bb7d73f74e25cbb}\label{classxb_1_1xbDate_a73ff5c037046ac0a0bb7d73f74e25cbb}}
\index{xb::xbDate@{xb::xbDate}!operator-\/@{operator-\/}}
@@ -753,7 +817,7 @@ Number of days
operator -\/
-This routine subtracts days from a date field.
+This routine subtracts days from a valid date field.
\begin{DoxyParams}{Parameters}
{\em l\+Count} & -\/ Number of days to subtract. \\
\hline
@@ -771,7 +835,7 @@ New date in CCYYMMDD format.
operator --
-This routine subtracts one day from the date field. \mbox{\Hypertarget{classxb_1_1xbDate_a4a8f207d759540114373f5e9d6d375f7}\label{classxb_1_1xbDate_a4a8f207d759540114373f5e9d6d375f7}}
+This routine subtracts one day from the date field if the date is not null. \mbox{\Hypertarget{classxb_1_1xbDate_a4a8f207d759540114373f5e9d6d375f7}\label{classxb_1_1xbDate_a4a8f207d759540114373f5e9d6d375f7}}
\index{xb::xbDate@{xb::xbDate}!operator-\/=@{operator-\/=}}
\index{operator-\/=@{operator-\/=}!xb::xbDate@{xb::xbDate}}
\doxysubsubsection{\texorpdfstring{operator-\/=()}{operator-=()}}
@@ -781,7 +845,7 @@ This routine subtracts one day from the date field. \mbox{\Hypertarget{classxb_1
operator -\/=
-This routine subtracts l\+Days from the date.
+This routine subtracts l\+Days from the date if the date is not null.
\begin{DoxyParams}{Parameters}
{\em l\+Days} & -\/ Number of days to subtract from the date. \\
\hline
@@ -912,8 +976,7 @@ Set the date.
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
-XB\+\_\+\+NO\+\_\+\+ERROR~\newline
-XB\+\_\+\+INVALID\+\_\+\+DATE
+XB\+\_\+\+NO\+\_\+\+ERROR
\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}\label{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}}
\index{xb::xbDate@{xb::xbDate}!SetDataDirectory@{SetDataDirectory}}
@@ -927,7 +990,7 @@ Set the data directory.
\begin{DoxyParams}{Parameters}
-{\em s\+Data\+Directory} & Set the data direcroty. \\
+{\em s\+Data\+Directory} & Set the data directory. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}\label{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}}
@@ -980,6 +1043,12 @@ This routine determines the Endian-\/ness at run time instead of compile time as
\doxysubsubsection{\texorpdfstring{SetLogDirectory()}{SetLogDirectory()}}
{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}\label{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}}
+\index{xb::xbDate@{xb::xbDate}!SetLogFileName@{SetLogFileName}}
+\index{SetLogFileName@{SetLogFileName}!xb::xbDate@{xb::xbDate}}
+\doxysubsubsection{\texorpdfstring{SetLogFileName()}{SetLogFileName()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
\mbox{\Hypertarget{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}\label{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}}
\index{xb::xbDate@{xb::xbDate}!SetMultiUser@{SetMultiUser}}
\index{SetMultiUser@{SetMultiUser}!xb::xbDate@{xb::xbDate}}
@@ -997,6 +1066,21 @@ Get the multi user setting.
\\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}\label{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}}
+\index{xb::xbDate@{xb::xbDate}!SetTempDirectory@{SetTempDirectory}}
+\index{SetTempDirectory@{SetTempDirectory}!xb::xbDate@{xb::xbDate}}
+\doxysubsubsection{\texorpdfstring{SetTempDirectory()}{SetTempDirectory()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Temp\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Temp\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Set the temp directory.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Temp\+Directory} & Set the data direcroty. \\
+\hline
+\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbDate_ab43a5d8d929767c0ffdd722972bb8cc0}\label{classxb_1_1xbDate_ab43a5d8d929767c0ffdd722972bb8cc0}}
\index{xb::xbDate@{xb::xbDate}!Str@{Str}}
\index{Str@{Str}!xb::xbDate@{xb::xbDate}}
@@ -1061,5 +1145,5 @@ The year of the date.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbdate_8h}{xbdate.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbdate_8cpp}{xbdate.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbdate_8h}{xbdate.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbdate_8cpp}{xbdate.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/classxb_1_1xbDbf.pdf b/docs/doxygen/latex/classxb_1_1xbDbf.pdf
index 589c18c..73fad18 100644
--- a/docs/doxygen/latex/classxb_1_1xbDbf.pdf
+++ b/docs/doxygen/latex/classxb_1_1xbDbf.pdf
Binary files differ
diff --git a/docs/doxygen/latex/classxb_1_1xbDbf.tex b/docs/doxygen/latex/classxb_1_1xbDbf.tex
index 0d95c95..248e693 100644
--- a/docs/doxygen/latex/classxb_1_1xbDbf.tex
+++ b/docs/doxygen/latex/classxb_1_1xbDbf.tex
@@ -44,7 +44,7 @@ virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a3067fdfa3a7a5c15651f6e89d11
\begin{DoxyCompactList}\small\item\em Delete all records. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_acd8c10579229f3a2e2c5fdb7fcef90db}{Delete\+Record}} ()
\begin{DoxyCompactList}\small\item\em Delete the current record. \end{DoxyCompactList}\item
-virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a309b5b1fb6a5c048c4bfb404d011ac55}{Dump\+Header}} (xb\+Int16 i\+Option) const
+virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a47643728f74cf3b6e0ffc55259895bdb}{Dump\+Header}} (xb\+Int16 i\+Option)
\begin{DoxyCompactList}\small\item\em Dump dbf file header. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_aba30399f15885a07f87f904c0d0656fa}{Dump\+Record}} (xb\+UInt32 ul\+Rec\+No, xb\+Int16 i\+Output\+Dest=0, xb\+Int16 i\+Output\+Fmt=0)
\begin{DoxyCompactList}\small\item\em Dump record. \end{DoxyCompactList}\item
@@ -84,8 +84,6 @@ virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a7eadc7b08d73003802b90584f7b
\begin{DoxyCompactList}\small\item\em Get the previous record. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a26fba086b07caeab95066bf1c8d25161}{Get\+Record}} (xb\+UInt32 ul\+Rec\+No)
\begin{DoxyCompactList}\small\item\em Get record for specified record number. \end{DoxyCompactList}\item
-virtual xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbDbf_a0aaa06d6028e75efc6b5131f7356ecce}{Get\+Record\+Count}} ()
-\begin{DoxyCompactList}\small\item\em Get the current number of records in the dbf data file. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_ac196ad55335e1f4789d698748434dc89}{Get\+Record\+Cnt}} (xb\+UInt32 \&ul\+Rec\+Cnt)
\begin{DoxyCompactList}\small\item\em Get the current number of records in the dbf data file. \end{DoxyCompactList}\item
virtual char $\ast$ \mbox{\hyperlink{classxb_1_1xbDbf_aa3e38c4057d726a28a27d07a1610d124}{Get\+Record\+Buf}} (xb\+Int16 i\+Opt=0) const
@@ -114,8 +112,6 @@ virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a3c36a5ffbc7067a1abbcb526dd3
\begin{DoxyCompactList}\small\item\em Write the current record to disk. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_aacbc7bac3ea0c502ee75b838f4f0fcbf}{Put\+Record}} (xb\+UInt32 ul\+Rec\+No)
\begin{DoxyCompactList}\small\item\em Write record to disk. \end{DoxyCompactList}\item
-virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a060541addb5bb1f0fe12959ed6f66fb9}{Read\+Header}} (xb\+Int16 i\+File\+Position\+Option, xb\+Int16 i\+Read\+Option)
-\begin{DoxyCompactList}\small\item\em Read dbf file header information. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a94d7d626ba691fd4b740c034673e6fc6}{Record\+Deleted}} (xb\+Int16 i\+Opt=0) const
\begin{DoxyCompactList}\small\item\em Return record deletion status. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_aeeeb2eb5fabcd0f91d457df07b0e0708}{Rename}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} s\+New\+Name)=0
@@ -180,7 +176,7 @@ virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a7b8ef75b17941beac17e50e969b
\begin{DoxyCompactList}\small\item\em Get long field for field name. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a56c8f924284bf88aabf90b7930b4eb47}{Put\+Long\+Field}} (xb\+Int16 i\+Field\+No, xb\+Int32 l\+Field\+Value)
\begin{DoxyCompactList}\small\item\em Put long field for field number. \end{DoxyCompactList}\item
-virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_ae7aad223119edb3d541e9f65e88c9f2f}{Put\+Long\+Field}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Field\+No, xb\+Int32 l\+Field\+Value)
+virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a0692d1776a725c2f61d4c14677e9307c}{Put\+Long\+Field}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Field\+Name, xb\+Int32 l\+Field\+Value)
\begin{DoxyCompactList}\small\item\em Put long field for field name. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a67e3a050f9090edf69eee75aef7f5d83}{Get\+ULong\+Field}} (xb\+Int16 i\+Field\+No, xb\+UInt32 \&l\+Field\+Value) const
\begin{DoxyCompactList}\small\item\em Get unsigned long field for field number. \end{DoxyCompactList}\item
@@ -216,32 +212,56 @@ virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a873f04af528a9d81e6a367a59d9
\begin{DoxyCompactList}\small\item\em Put date field for field number. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a571b36b3a940b1a16d5e834f329b33b9}{Put\+Date\+Field}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Field\+Name, const \mbox{\hyperlink{classxb_1_1xbDate}{xb\+Date}} \&dt)
\begin{DoxyCompactList}\small\item\em Put date field for field name. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a060acbfaa8d528f86cb59301814b414a}{Set\+Home\+Folders}} ()
-\begin{DoxyCompactList}\small\item\em Create Home Folders. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aae9a2ddb0adb8165b4ac2b6a28a932f7}{Create\+Unique\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqn\+Out)
-\begin{DoxyCompactList}\small\item\em Create a unique file name. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ae5ffabde2c88ea58324f27e471f6bfc0}{Create\+Unique\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqn\+Out, xb\+Int16 i\+Option)
-\begin{DoxyCompactList}\small\item\em Create a unique file name. \end{DoxyCompactList}\item
+virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_ae9a3f726ce5229ed021bfce0515050fc}{Get\+Null\+Sts}} (xb\+Int16 i\+Field\+No, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \&b\+Is\+Null) const
+\begin{DoxyCompactList}\small\item\em Get field null status. \end{DoxyCompactList}\item
+virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a909788123ce0694b65dfcf036380d918}{Get\+Null\+Sts}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Field\+Name, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \&b\+Is\+Null) const
+\begin{DoxyCompactList}\small\item\em Get field null status. \end{DoxyCompactList}\item
+virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a7930fe8b930c6d646b7b0d3df576fe9e}{Get\+Null\+Sts}} (xb\+Int16 i\+Field\+No, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \&b\+Is\+Null, xb\+Int16 i\+Rec\+Buf\+Sw) const
+\begin{DoxyCompactList}\small\item\em Get field null status. \end{DoxyCompactList}\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbFile_acd0fb2166b2bff7e8a1cf65a7bc8be1e}{Get\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the directory name. \end{DoxyCompactList}\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbFile_ac95cb882ccbcdedc9a233c6ad9fed07a}{Get\+File\+Name}} () const
\begin{DoxyCompactList}\small\item\em Get the file name. \end{DoxyCompactList}\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbFile_a31b4e641f93206ba23e2a5a27491dcd4}{Get\+Fq\+File\+Name}} () const
\begin{DoxyCompactList}\small\item\em Get the fully qualified file name. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_ae78a85255488bc78964c16946dbaead3}{Set\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Directory)
-\begin{DoxyCompactList}\small\item\em Set the directory. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a5419eb27e56822f828b2b88a9502a636}{Set\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name)
-\begin{DoxyCompactList}\small\item\em Set the filename. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_aee832fa11db2077a532f49e1329bd05a}{Set\+Fq\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fq\+Name)
-\begin{DoxyCompactList}\small\item\em Set the fully qualifed filename. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ad39797624a752b9d62533d00fad9feff}{Create\+Unique\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqn\+Out, xb\+Int16 i\+Option=0)
+\begin{DoxyCompactList}\small\item\em Create a unique file name. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ae2b6ac26018dc28f77afbb3f008c3f66}{Determine\+Xbase\+Table\+Version}} (unsigned char c\+File\+Type\+Byte) const
+\begin{DoxyCompactList}\small\item\em Determine xbase dbf version. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5a740033664c9ad2611c90e2a6d0c2d3}{Determine\+Xbase\+Memo\+Version}} (unsigned char c\+File\+Type\+Byte) const
+\begin{DoxyCompactList}\small\item\em Determine which version the memo (dbt) file is. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} \mbox{\hyperlink{classxb_1_1xbFile_ab14e4a11427f5efb81cba1dd32bd1aa1}{e\+Get\+Double}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable double value. \end{DoxyCompactList}\item
+xb\+Int32 \mbox{\hyperlink{classxb_1_1xbFile_a60b24a5afc984c586bf384c7e915ba0d}{e\+Get\+Int32}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable long value. \end{DoxyCompactList}\item
+xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbFile_a78f052529d39a18deaface5a0d47d0b0}{e\+Get\+UInt32}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable unsigned long value. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ac40c991110ddc6fb30a72d90f4652762}{e\+Get\+Int16}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable short value. \end{DoxyCompactList}\item
+xb\+UInt16 \mbox{\hyperlink{classxb_1_1xbFile_a936ade458e6d5e6d29f9b5031888d189}{e\+Get\+UInt16}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable unsigned short value. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a98b6ff533ae93f90c977a2ba23eeb105}{e\+Put\+Double}} (char $\ast$p, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} d)
+\begin{DoxyCompactList}\small\item\em Write a portable double value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a19c37f76a2ccbb45019cb0fc373d3f46}{e\+Put\+Int32}} (char $\ast$p, xb\+Int32 l)
+\begin{DoxyCompactList}\small\item\em Write a portable long value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_aa3f6ceae4b96f24875d86848bf13a173}{e\+Put\+UInt32}} (char $\ast$p, xb\+UInt32 ul)
+\begin{DoxyCompactList}\small\item\em Write a portable unsigned long value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a29130f12739ac8fa837f4eaedf1338b2}{e\+Put\+Int16}} (char $\ast$p, xb\+Int16 s)
+\begin{DoxyCompactList}\small\item\em Write a portable short value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a65e9839f92b96eac7b0d071fac3bbe40}{e\+Put\+UInt16}} (char $\ast$p, xb\+UInt16 s)
+\begin{DoxyCompactList}\small\item\em Write a portable unsigned short value to memory location. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a78bd8a11dce102647095baf3aff2b006}{File\+Exists}} () const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a174d8a6aabc9cfcd32fedbd1e5b13ddd}{File\+Exists}} (xb\+Int16 i\+Option) const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a61130b4fbf4cf9d5972dcb4993de2f94}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name) const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a0592168f39a10f2a401a88ef781f6148}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a7fa837938a32dc9ca3fbc81cbaf50f59}{File\+Is\+Open}} () const
+\begin{DoxyCompactList}\small\item\em Determines if file is open. \end{DoxyCompactList}\item
xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbFile_a638e14262410a1627819f016a16cdce2}{Get\+Block\+Size}} () const
\begin{DoxyCompactList}\small\item\em Get the block size. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a991c5676a6f38fa752435390989f413e}{Set\+Block\+Size}} (xb\+UInt32 ul\+Block\+Size)
-\begin{DoxyCompactList}\small\item\em Set the block size. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a3c500dc9dac22c49496e4b29386b2dd3}{Get\+Open\+Mode}} () const
-\begin{DoxyCompactList}\small\item\em Get the open mode of the file. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a9b63e05b77f477ff6109ff7b9432c1b6}{Get\+Share\+Mode}} () const
-\begin{DoxyCompactList}\small\item\em Get the share mode of the file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a60c53998e3d1b694134b20a87bc9bf5a}{Get\+File\+Dir\+Part}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Dir\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the directory part of the file name. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_af5127c92892816e9bbc5c19653c4147a}{Get\+File\+Dir\+Part}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Complete\+File\+Name\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Dir\+Part\+Out) const
@@ -250,62 +270,44 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a57a9222e5cbb51019d4eeb2c3ac89fa2}{
\begin{DoxyCompactList}\small\item\em Get the extension part of the file name. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ab289b6ffe955321160c1f90220c22e25}{Get\+File\+Ext\+Part}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Complete\+File\+Name\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Ext\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the extension part of the file name. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a02df78f4c90313243f508fc56b95aba8}{Get\+File\+Mtime}} (time\+\_\+t \&mtime)
+\begin{DoxyCompactList}\small\item\em Get the time of last file modification timestamp as reported by the OS. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a81422b3dd52763d2cc6c77237ec9af0a}{Get\+File\+Name\+Part}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the name part of the file name. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6110763c5ae996b72c7a62c15bdecc73}{Get\+File\+Name\+Part}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Complete\+File\+Name\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the name part of the file name. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a50b63c39e49d44e52078038027b24cc5}{Get\+File\+Size}} (xb\+UInt64 \&ull\+File\+Size)
+\begin{DoxyCompactList}\small\item\em Get the size of the file as reported by the OS. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5548236d38d43b89ae29b9a015b1f678}{Get\+File\+Type}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Type) const
\begin{DoxyCompactList}\small\item\em Get the file type aka Capitalized file extension. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a3c500dc9dac22c49496e4b29386b2dd3}{Get\+Open\+Mode}} () const
+\begin{DoxyCompactList}\small\item\em Get the open mode of the file. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a9b63e05b77f477ff6109ff7b9432c1b6}{Get\+Share\+Mode}} () const
+\begin{DoxyCompactList}\small\item\em Get the share mode of the file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aaf2e697751a0beff41432a66bb83fb5e}{Get\+Xbase\+File\+Type\+Byte}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 \&i\+Version)
\begin{DoxyCompactList}\small\item\em Get the file type byte and version of the dbf file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a7af337808919680b90710ad5e8a99232}{Get\+Xbase\+File\+Type\+Byte}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, unsigned char \&c\+File\+Type\+Byte)
\begin{DoxyCompactList}\small\item\em Get the file type byte and version of the dbf file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a78aebdd21d3de46a450d5f835e3027f6}{Get\+Xbase\+File\+Type\+Byte}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, unsigned char \&c\+File\+Type\+Byte, xb\+Int16 \&i\+Version)
\begin{DoxyCompactList}\small\item\em Get the file type byte and version of the dbf file. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ae2b6ac26018dc28f77afbb3f008c3f66}{Determine\+Xbase\+Table\+Version}} (unsigned char c\+File\+Type\+Byte) const
-\begin{DoxyCompactList}\small\item\em Determine xbase dbf version. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5a740033664c9ad2611c90e2a6d0c2d3}{Determine\+Xbase\+Memo\+Version}} (unsigned char c\+File\+Type\+Byte) const
-\begin{DoxyCompactList}\small\item\em Determine which version the memo (dbt) file is. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a78bd8a11dce102647095baf3aff2b006}{File\+Exists}} () const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a174d8a6aabc9cfcd32fedbd1e5b13ddd}{File\+Exists}} (xb\+Int16 i\+Option) const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a61130b4fbf4cf9d5972dcb4993de2f94}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name) const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a0592168f39a10f2a401a88ef781f6148}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a7fa837938a32dc9ca3fbc81cbaf50f59}{File\+Is\+Open}} () const
-\begin{DoxyCompactList}\small\item\em Determines if file is open. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a361e3cc318bbf1c4d10f069e0800a24e}{Name\+Suffix\+Missing}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
+\begin{DoxyCompactList}\small\item\em Determines status of file extension. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aa1bb80340abc7a5c22f87f878e9dc825}{Read\+Block}} (xb\+UInt32 ul\+Block\+No, size\+\_\+t read\+Size, void $\ast$buf)
\begin{DoxyCompactList}\small\item\em Read a block of data from file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aef696b1c4c0ef5338e818599f695d485}{Read\+Block}} (xb\+UInt32 ul\+Block\+No, xb\+UInt32 ul\+Block\+Size, size\+\_\+t read\+Size, void $\ast$buf)
\begin{DoxyCompactList}\small\item\em Read a block of data from file. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a991c5676a6f38fa752435390989f413e}{Set\+Block\+Size}} (xb\+UInt32 ul\+Block\+Size)
+\begin{DoxyCompactList}\small\item\em Set the block size. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_ae78a85255488bc78964c16946dbaead3}{Set\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a5419eb27e56822f828b2b88a9502a636}{Set\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name)
+\begin{DoxyCompactList}\small\item\em Set the filename. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_aee832fa11db2077a532f49e1329bd05a}{Set\+Fq\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fq\+Name)
+\begin{DoxyCompactList}\small\item\em Set the fully qualifed filename. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a060acbfaa8d528f86cb59301814b414a}{Set\+Home\+Folders}} ()
+\begin{DoxyCompactList}\small\item\em Set Home Folders. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5d871dcfecc2b4338f7a13722aab766c}{Write\+Block}} (xb\+UInt32 ul\+Block\+No, size\+\_\+t write\+Size, void $\ast$buf)
\begin{DoxyCompactList}\small\item\em Write a block of data to file. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a50b63c39e49d44e52078038027b24cc5}{Get\+File\+Size}} (xb\+UInt64 \&ull\+File\+Size)
-\begin{DoxyCompactList}\small\item\em Get the size of the file as reported by the OS. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a02df78f4c90313243f508fc56b95aba8}{Get\+File\+Mtime}} (time\+\_\+t \&mtime)
-\begin{DoxyCompactList}\small\item\em Get the time of last file modification timestamp as reported by the OS. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} \mbox{\hyperlink{classxb_1_1xbFile_ab14e4a11427f5efb81cba1dd32bd1aa1}{e\+Get\+Double}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable double value. \end{DoxyCompactList}\item
-xb\+Int32 \mbox{\hyperlink{classxb_1_1xbFile_a60b24a5afc984c586bf384c7e915ba0d}{e\+Get\+Int32}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable long value. \end{DoxyCompactList}\item
-xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbFile_a78f052529d39a18deaface5a0d47d0b0}{e\+Get\+UInt32}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable unsigned long value. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ac40c991110ddc6fb30a72d90f4652762}{e\+Get\+Int16}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable short value. \end{DoxyCompactList}\item
-xb\+UInt16 \mbox{\hyperlink{classxb_1_1xbFile_a936ade458e6d5e6d29f9b5031888d189}{e\+Get\+UInt16}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable unsigned short value. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a98b6ff533ae93f90c977a2ba23eeb105}{e\+Put\+Double}} (char $\ast$p, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} d)
-\begin{DoxyCompactList}\small\item\em Write a portable double value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a19c37f76a2ccbb45019cb0fc373d3f46}{e\+Put\+Int32}} (char $\ast$p, xb\+Int32 l)
-\begin{DoxyCompactList}\small\item\em Write a portable long value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_aa3f6ceae4b96f24875d86848bf13a173}{e\+Put\+UInt32}} (char $\ast$p, xb\+UInt32 ul)
-\begin{DoxyCompactList}\small\item\em Write a portable unsigned long value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a29130f12739ac8fa837f4eaedf1338b2}{e\+Put\+Int16}} (char $\ast$p, xb\+Int16 s)
-\begin{DoxyCompactList}\small\item\em Write a portable short value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a65e9839f92b96eac7b0d071fac3bbe40}{e\+Put\+UInt16}} (char $\ast$p, xb\+UInt16 s)
-\begin{DoxyCompactList}\small\item\em Write a portable unsigned short value to memory location. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a18830b5755d74818f60d9c7ce38ddf2d}{xb\+Fclose}} ()
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fclose. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_af5b6356832d2a67212070a1aa605f170}{xb\+Feof}} ()
@@ -316,6 +318,8 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_afb1c584d2895ffb7834df80aea7eb1e4}{
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgetc. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5ee229bda4d7d6695e122200e581e7a6}{xb\+Fgetc}} (char \&c)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgetc. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ad245955ace26e5dde85fd4373b30d026}{xb\+Fgets}} (size\+\_\+t l\+Size, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Line)
+\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgets. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a7cdfef5ede9ac98d44a28a6b7a70972c}{xb\+Fopen}} (xb\+Int16 i\+Open\+Mode)
\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a0548cedf0f26b7d8ac221f75b0cd048c}{xb\+Fopen}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Open\+Mode, xb\+Int16 i\+Share\+Mode)
@@ -332,16 +336,12 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a698f3b40216778562e639e6ca1a47573}{
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fputs. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ab4f6afaa1f77539f27a4f05c26e54e2f}{xb\+Fread}} (void $\ast$ptr, size\+\_\+t size, size\+\_\+t nmemb)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fread. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ad245955ace26e5dde85fd4373b30d026}{xb\+Fgets}} (size\+\_\+t l\+Size, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Line)
-\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgets. \end{DoxyCompactList}\item
-size\+\_\+t \mbox{\hyperlink{classxb_1_1xbFile_a0e1c06aedfa7fbcb92e117f891edd13b}{xb\+Ftell}} ()
-\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary ftell. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5337ab8918df240910c0d19b4f298e3d}{xb\+Fseek}} (xb\+Int64 ll\+Offset, xb\+Int32 whence)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fseek. \end{DoxyCompactList}\item
+size\+\_\+t \mbox{\hyperlink{classxb_1_1xbFile_a0e1c06aedfa7fbcb92e117f891edd13b}{xb\+Ftell}} ()
+\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary ftell. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbFile_a9891b792f585a696f38a5cf959e30918}{xb\+FTurn\+Off\+File\+Buffering}} ()
\begin{DoxyCompactList}\small\item\em Turn off file buffering. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6aadd871d1782944703fed773d44b85f}{xb\+Fwrite}} (const void $\ast$ptr, size\+\_\+t l\+Size, size\+\_\+t l\+Nmemb)
-\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fwrite. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a08463f506f425c2385acbe1a561506e9}{xb\+Read\+Until}} (const char c\+Delim, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Out)
\begin{DoxyCompactList}\small\item\em Read file until a particular character is encountered on input stream. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6d919366c2ec95e529906bf8842cbf07}{xb\+Remove}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option)
@@ -354,24 +354,32 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_afc8ce113aa72611a278233f9bb170012}{
\begin{DoxyCompactList}\small\item\em Rename file. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbFile_a7996b6e084665c37c3892faea64b3505}{xb\+Rewind}} ()
\begin{DoxyCompactList}\small\item\em Xbase wrapper for rewind. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6aadd871d1782944703fed773d44b85f}{xb\+Fwrite}} (const void $\ast$ptr, size\+\_\+t l\+Size, size\+\_\+t l\+Nmemb)
+\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fwrite. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a518bfcbfa3699d883cf89affee383296}{xb\+Truncate}} (xb\+Int64 ll\+Size)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for ftruncate. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a361e3cc318bbf1c4d10f069e0800a24e}{Name\+Suffix\+Missing}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
-\begin{DoxyCompactList}\small\item\em Determines status of file extension. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a97dfa59ab9a8e9f17454da0faceb023d}{Display\+Error}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Display error message on console for a given error number. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a6fbb9c3a550ab0b3378f9586a57791d2}{Get\+Default\+Date\+Format}} () const
\begin{DoxyCompactList}\small\item\em Get the default date format. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a1d803a4bfc8ba0561267a0bf9e51f7d9}{Get\+Data\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the current data directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}{Get\+Temp\+Directory}} () const
+\begin{DoxyCompactList}\small\item\em Get the current temp directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
+\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbSsv_a49cd162f066eef2b829ba7c9f6620243}{Get\+Endian\+Type}} () const
\begin{DoxyCompactList}\small\item\em Get the Endian type. \end{DoxyCompactList}\item
const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}{Get\+Error\+Message}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Get an error message. \end{DoxyCompactList}\item
+char \mbox{\hyperlink{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}{Get\+Path\+Separator}} () const
+\begin{DoxyCompactList}\small\item\em Get the OS dependent path separator. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}{Set\+Data\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Data\+Directory)
\begin{DoxyCompactList}\small\item\em Set the data directory. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a5f74db23f8902846d581935c7db73f9c}{Set\+Default\+Date\+Format}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Default\+Date\+Format)
\begin{DoxyCompactList}\small\item\em Set the default date format. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}{Set\+Temp\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Temp\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the temp directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_a62e4fd0a5888665c76bbbad962794e72}{Bit\+Set}} (unsigned char c, xb\+Int16 i\+Bit\+No) const
\begin{DoxyCompactList}\small\item\em Check a bit in a one byte field and see if it is set. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a8551b15a3ce4fa2a40d698db01f4a9ae}{Bit\+Dump}} (unsigned char c) const
@@ -382,14 +390,14 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_aba1395b8e4c7f28c3614061de6e49190}{Bit\+D
\begin{DoxyCompactList}\small\item\em Get the default auto commit setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}{Set\+Default\+Auto\+Commit}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Default\+Auto\+Commit)
\begin{DoxyCompactList}\small\item\em Set the default auto commit. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
-\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}{Get\+Log\+Directory}} () const
\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}{Get\+Log\+File\+Name}} () const
\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Directory)
\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
+\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_abd58031c5f1c3766c24d47a82e6fd9c5}{Get\+Multi\+User}} () const
\begin{DoxyCompactList}\small\item\em Get the multi user setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}{Set\+Multi\+User}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Multi\+User)
@@ -402,6 +410,8 @@ static const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a6219f1b5e24ea12fe158
\doxysubsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item
+virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_a060541addb5bb1f0fe12959ed6f66fb9}{Read\+Header}} (xb\+Int16 i\+File\+Position\+Option, xb\+Int16 i\+Read\+Option)
+\begin{DoxyCompactList}\small\item\em Read dbf file header information. \end{DoxyCompactList}\item
virtual xb\+Int16 \mbox{\hyperlink{classxb_1_1xbDbf_aabd146c0e1054ab905ec96aedd84b02e}{Get\+Raw\+Field}} (xb\+Int16 i\+Field\+No, char $\ast$Buf, xb\+UInt32 Buf\+Size, xb\+Int16 i\+Rec\+Buf\+Sw) const
\begin{DoxyCompactList}\small\item\em Get raw field data for field number. \end{DoxyCompactList}\item
virtual void \mbox{\hyperlink{classxb_1_1xbDbf_ad06fe0f7975fb81125d27d82504e6829}{Init\+Vars}} ()
@@ -678,11 +688,11 @@ This routine will copy the structure of a dbf file and if successful return a po
\doxysubsubsection{\texorpdfstring{CreateTable()}{CreateTable()}}
{\footnotesize\ttfamily virtual xb\+Int16 xb\+::xb\+Dbf\+::\+Create\+Table (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Table\+Name, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Alias, }\item[{\mbox{\hyperlink{structxb_1_1xbSchema}{xb\+Schema}} $\ast$}]{p\+Schema, }\item[{xb\+Int16}]{i\+Overlay, }\item[{xb\+Int16}]{i\+Share\+Mode }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}
-\mbox{\Hypertarget{classxb_1_1xbFile_aae9a2ddb0adb8165b4ac2b6a28a932f7}\label{classxb_1_1xbFile_aae9a2ddb0adb8165b4ac2b6a28a932f7}}
+\mbox{\Hypertarget{classxb_1_1xbFile_ad39797624a752b9d62533d00fad9feff}\label{classxb_1_1xbFile_ad39797624a752b9d62533d00fad9feff}}
\index{xb::xbDbf@{xb::xbDbf}!CreateUniqueFileName@{CreateUniqueFileName}}
\index{CreateUniqueFileName@{CreateUniqueFileName}!xb::xbDbf@{xb::xbDbf}}
-\doxysubsubsection{\texorpdfstring{CreateUniqueFileName()}{CreateUniqueFileName()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
-{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+File\+::\+Create\+Unique\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+\doxysubsubsection{\texorpdfstring{CreateUniqueFileName()}{CreateUniqueFileName()}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+File\+::\+Create\+Unique\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out, }\item[{xb\+Int16}]{i\+Option = {\ttfamily 0} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
@@ -700,17 +710,9 @@ Given a directory and file extension as inputs, create a unique file name.
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
-\href{xbretcod_8h.html}{\texttt{ Return Codes}}
+\href{xbretcod_8h.html}{\texttt{ Return Codes}}
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbFile_ae5ffabde2c88ea58324f27e471f6bfc0}\label{classxb_1_1xbFile_ae5ffabde2c88ea58324f27e471f6bfc0}}
-\index{xb::xbDbf@{xb::xbDbf}!CreateUniqueFileName@{CreateUniqueFileName}}
-\index{CreateUniqueFileName@{CreateUniqueFileName}!xb::xbDbf@{xb::xbDbf}}
-\doxysubsubsection{\texorpdfstring{CreateUniqueFileName()}{CreateUniqueFileName()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
-{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+File\+::\+Create\+Unique\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out, }\item[{xb\+Int16}]{i\+Option }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
-
-
-
-Create a unique file name.
+Create a unique file name.
Given a directory and file extension as inputs, create a unique file name.
@@ -871,11 +873,11 @@ Display error message on console for a given error number.
{\em i\+Error\+Code} & Error number to reference \\
\hline
\end{DoxyParams}
-\mbox{\Hypertarget{classxb_1_1xbDbf_a309b5b1fb6a5c048c4bfb404d011ac55}\label{classxb_1_1xbDbf_a309b5b1fb6a5c048c4bfb404d011ac55}}
+\mbox{\Hypertarget{classxb_1_1xbDbf_a47643728f74cf3b6e0ffc55259895bdb}\label{classxb_1_1xbDbf_a47643728f74cf3b6e0ffc55259895bdb}}
\index{xb::xbDbf@{xb::xbDbf}!DumpHeader@{DumpHeader}}
\index{DumpHeader@{DumpHeader}!xb::xbDbf@{xb::xbDbf}}
\doxysubsubsection{\texorpdfstring{DumpHeader()}{DumpHeader()}}
-{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Dump\+Header (\begin{DoxyParamCaption}\item[{xb\+Int16}]{i\+Option }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Dump\+Header (\begin{DoxyParamCaption}\item[{xb\+Int16}]{i\+Option }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
@@ -1527,7 +1529,7 @@ B -\/ Big endian~\newline
Return true if dbf file empty or positioned to the last record.
\begin{DoxyReturn}{Returns}
-Returns true if dbf file is empty or positioned on the last record.
+Returns true if error, dbf file is empty or positioned on the last record.
\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}\label{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}}
\index{xb::xbDbf@{xb::xbDbf}!GetErrorMessage@{GetErrorMessage}}
@@ -2174,9 +2176,6 @@ Get home directory.
{\em s\+Home\+Dir\+Out} & -\/ Output home directory for current user. \\
\hline
\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-void
-\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDbf_a49e667f9c8ee55c36444702663fc5964}\label{classxb_1_1xbDbf_a49e667f9c8ee55c36444702663fc5964}}
\index{xb::xbDbf@{xb::xbDbf}!GetLastRecord@{GetLastRecord}}
\index{GetLastRecord@{GetLastRecord}!xb::xbDbf@{xb::xbDbf}}
@@ -2480,6 +2479,87 @@ Get the next record.
\begin{DoxyReturn}{Returns}
\href{xbretcod_8h.html}{\texttt{ Return Codes}}
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbDbf_a909788123ce0694b65dfcf036380d918}\label{classxb_1_1xbDbf_a909788123ce0694b65dfcf036380d918}}
+\index{xb::xbDbf@{xb::xbDbf}!GetNullSts@{GetNullSts}}
+\index{GetNullSts@{GetNullSts}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{GetNullSts()}{GetNullSts()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Get\+Null\+Sts (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Field\+Name, }\item[{\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \&}]{b\+Is\+Null }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
+
+
+
+Get field null status.
+
+
+\begin{DoxyParams}{Parameters}
+{\em i\+Field\+Name} & Field Name of field to retrieve. \\
+\hline
+{\em b\+Is\+Null} & Output field value. If field is all spaces on record buffer, returns true. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The field routines return one of\+:~\newline
+ XB\+\_\+\+NO\+\_\+\+ERROR~\newline
+XB\+\_\+\+INVALID\+\_\+\+DATA~\newline
+XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NO~\newline
+XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NAME~\newline
+ XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+TYPE~\newline
+XB\+\_\+\+INVALID\+\_\+\+DATA
+\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbDbf_ae9a3f726ce5229ed021bfce0515050fc}\label{classxb_1_1xbDbf_ae9a3f726ce5229ed021bfce0515050fc}}
+\index{xb::xbDbf@{xb::xbDbf}!GetNullSts@{GetNullSts}}
+\index{GetNullSts@{GetNullSts}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{GetNullSts()}{GetNullSts()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Get\+Null\+Sts (\begin{DoxyParamCaption}\item[{xb\+Int16}]{i\+Field\+No, }\item[{\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \&}]{b\+Is\+Null }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
+
+
+
+Get field null status.
+
+
+\begin{DoxyParams}{Parameters}
+{\em i\+Field\+No} & Number of field to retrieve. \\
+\hline
+{\em b\+Is\+Null} & Output field value. If field is all spaces on record buffer, returns true. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The field routines return one of\+:~\newline
+ XB\+\_\+\+NO\+\_\+\+ERROR~\newline
+XB\+\_\+\+INVALID\+\_\+\+DATA~\newline
+XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NO~\newline
+XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NAME~\newline
+ XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+TYPE~\newline
+XB\+\_\+\+INVALID\+\_\+\+DATA
+\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbDbf_a7930fe8b930c6d646b7b0d3df576fe9e}\label{classxb_1_1xbDbf_a7930fe8b930c6d646b7b0d3df576fe9e}}
+\index{xb::xbDbf@{xb::xbDbf}!GetNullSts@{GetNullSts}}
+\index{GetNullSts@{GetNullSts}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{GetNullSts()}{GetNullSts()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Get\+Null\+Sts (\begin{DoxyParamCaption}\item[{xb\+Int16}]{i\+Field\+No, }\item[{\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \&}]{b\+Is\+Null, }\item[{xb\+Int16}]{i\+Rec\+Buf\+Sw }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [virtual]}}
+
+
+
+Get field null status.
+
+
+\begin{DoxyParams}{Parameters}
+{\em i\+Field\+No} & Number of field to retrieve. \\
+\hline
+{\em b\+Is\+Null} & Output field value. If field is all spaces on record buffer, returns true. \\
+\hline
+{\em i\+Rec\+Buf\+Sw} & 0 -\/ Record buffer with any updates.~\newline
+1 -\/ Record buffer with original data. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The field routines return one of\+:~\newline
+ XB\+\_\+\+NO\+\_\+\+ERROR~\newline
+XB\+\_\+\+INVALID\+\_\+\+DATA~\newline
+XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NO~\newline
+XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NAME~\newline
+ XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+TYPE~\newline
+XB\+\_\+\+INVALID\+\_\+\+DATA
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbFile_a3c500dc9dac22c49496e4b29386b2dd3}\label{classxb_1_1xbFile_a3c500dc9dac22c49496e4b29386b2dd3}}
\index{xb::xbDbf@{xb::xbDbf}!GetOpenMode@{GetOpenMode}}
\index{GetOpenMode@{GetOpenMode}!xb::xbDbf@{xb::xbDbf}}
@@ -2496,6 +2576,19 @@ XB\+\_\+\+READ~\newline
XB\+\_\+\+WRITE~\newline
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}\label{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}}
+\index{xb::xbDbf@{xb::xbDbf}!GetPathSeparator@{GetPathSeparator}}
+\index{GetPathSeparator@{GetPathSeparator}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{GetPathSeparator()}{GetPathSeparator()}}
+{\footnotesize\ttfamily char xb\+::xb\+Ssv\+::\+Get\+Path\+Separator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the OS dependent path separator.
+
+\begin{DoxyReturn}{Returns}
+Returns \textquotesingle{}\textbackslash{}\textquotesingle{} for windows environment, otherwise returns \textquotesingle{}/\textquotesingle{}.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDbf_ab3d248e5221b4f0809897cd43af17a1e}\label{classxb_1_1xbDbf_ab3d248e5221b4f0809897cd43af17a1e}}
\index{xb::xbDbf@{xb::xbDbf}!GetPrevRecord@{GetPrevRecord}}
\index{GetPrevRecord@{GetPrevRecord}!xb::xbDbf@{xb::xbDbf}}
@@ -2611,6 +2704,11 @@ Pointer to record buffer.
Get the current number of records in the dbf data file.
+\begin{DoxyReturn}{Returns}
+Record count or \href{xbretcod_8h.html}{\texttt{ Return Codes}}
+\end{DoxyReturn}
+Get the current number of records in the dbf data file.
+
\begin{DoxyParams}{Parameters}
{\em ul\+Rec\+Cnt} & Output number of records in file. \\
@@ -2619,19 +2717,6 @@ Get the current number of records in the dbf data file.
\begin{DoxyReturn}{Returns}
\href{xbretcod_8h.html}{\texttt{ Return Codes}}
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbDbf_a0aaa06d6028e75efc6b5131f7356ecce}\label{classxb_1_1xbDbf_a0aaa06d6028e75efc6b5131f7356ecce}}
-\index{xb::xbDbf@{xb::xbDbf}!GetRecordCount@{GetRecordCount}}
-\index{GetRecordCount@{GetRecordCount}!xb::xbDbf@{xb::xbDbf}}
-\doxysubsubsection{\texorpdfstring{GetRecordCount()}{GetRecordCount()}}
-{\footnotesize\ttfamily xb\+UInt32 xb\+::xb\+Dbf\+::\+Get\+Record\+Count (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
-
-
-
-Get the current number of records in the dbf data file.
-
-\begin{DoxyReturn}{Returns}
-Record count or \href{xbretcod_8h.html}{\texttt{ Return Codes}}
-\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDbf_ab50d76c6e29e81e347a6feb04c2f62bb}\label{classxb_1_1xbDbf_ab50d76c6e29e81e347a6feb04c2f62bb}}
\index{xb::xbDbf@{xb::xbDbf}!GetRecordLen@{GetRecordLen}}
\index{GetRecordLen@{GetRecordLen}!xb::xbDbf@{xb::xbDbf}}
@@ -2673,6 +2758,19 @@ Get the table alias.
This routine returns the table alias. \begin{DoxyReturn}{Returns}
Table alias
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}\label{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}}
+\index{xb::xbDbf@{xb::xbDbf}!GetTempDirectory@{GetTempDirectory}}
+\index{GetTempDirectory@{GetTempDirectory}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{GetTempDirectory()}{GetTempDirectory()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Temp\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the current temp directory.
+
+\begin{DoxyReturn}{Returns}
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} containing the current data directory where the database files are stored.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbDbf_a039eb02418ec4ca862adbc0f95b9cbec}\label{classxb_1_1xbDbf_a039eb02418ec4ca862adbc0f95b9cbec}}
\index{xb::xbDbf@{xb::xbDbf}!GetULongField@{GetULongField}}
\index{GetULongField@{GetULongField}!xb::xbDbf@{xb::xbDbf}}
@@ -3249,7 +3347,7 @@ XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+NAME~\newline
XB\+\_\+\+INVALID\+\_\+\+FIELD\+\_\+\+TYPE~\newline
XB\+\_\+\+INVALID\+\_\+\+DATA
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbDbf_ae7aad223119edb3d541e9f65e88c9f2f}\label{classxb_1_1xbDbf_ae7aad223119edb3d541e9f65e88c9f2f}}
+\mbox{\Hypertarget{classxb_1_1xbDbf_a0692d1776a725c2f61d4c14677e9307c}\label{classxb_1_1xbDbf_a0692d1776a725c2f61d4c14677e9307c}}
\index{xb::xbDbf@{xb::xbDbf}!PutLongField@{PutLongField}}
\index{PutLongField@{PutLongField}!xb::xbDbf@{xb::xbDbf}}
\doxysubsubsection{\texorpdfstring{PutLongField()}{PutLongField()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
@@ -3438,7 +3536,7 @@ Read a block of data from file.
\index{xb::xbDbf@{xb::xbDbf}!ReadHeader@{ReadHeader}}
\index{ReadHeader@{ReadHeader}!xb::xbDbf@{xb::xbDbf}}
\doxysubsubsection{\texorpdfstring{ReadHeader()}{ReadHeader()}}
-{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Read\+Header (\begin{DoxyParamCaption}\item[{xb\+Int16}]{i\+Position\+Option, }\item[{xb\+Int16}]{i\+Read\+Option }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Dbf\+::\+Read\+Header (\begin{DoxyParamCaption}\item[{xb\+Int16}]{i\+Position\+Option, }\item[{xb\+Int16}]{i\+Read\+Option }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}
@@ -3526,7 +3624,7 @@ Set the data directory.
\begin{DoxyParams}{Parameters}
-{\em s\+Data\+Directory} & Set the data direcroty. \\
+{\em s\+Data\+Directory} & Set the data directory. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}\label{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}}
@@ -3631,9 +3729,9 @@ Set the fully qualifed filename.
-Create Home Folders.
+Set Home Folders.
-Create xbase64 log and data folders in the home directory for current usre.
+Create xbase64 log, data and temp folders in the home directory for current usre.
\begin{DoxyReturn}{Returns}
\href{xbretcod_8h.html}{\texttt{ Return Codes}}
@@ -3644,6 +3742,12 @@ Create xbase64 log and data folders in the home directory for current usre.
\doxysubsubsection{\texorpdfstring{SetLogDirectory()}{SetLogDirectory()}}
{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}\label{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}}
+\index{xb::xbDbf@{xb::xbDbf}!SetLogFileName@{SetLogFileName}}
+\index{SetLogFileName@{SetLogFileName}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{SetLogFileName()}{SetLogFileName()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
\mbox{\Hypertarget{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}\label{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}}
\index{xb::xbDbf@{xb::xbDbf}!SetMultiUser@{SetMultiUser}}
\index{SetMultiUser@{SetMultiUser}!xb::xbDbf@{xb::xbDbf}}
@@ -3661,6 +3765,21 @@ Get the multi user setting.
\\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}\label{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}}
+\index{xb::xbDbf@{xb::xbDbf}!SetTempDirectory@{SetTempDirectory}}
+\index{SetTempDirectory@{SetTempDirectory}!xb::xbDbf@{xb::xbDbf}}
+\doxysubsubsection{\texorpdfstring{SetTempDirectory()}{SetTempDirectory()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Temp\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Temp\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Set the temp directory.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Temp\+Directory} & Set the data direcroty. \\
+\hline
+\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbDbf_a7e63e852418f337eb7c44de5dcd50323}\label{classxb_1_1xbDbf_a7e63e852418f337eb7c44de5dcd50323}}
\index{xb::xbDbf@{xb::xbDbf}!SetVersion@{SetVersion}}
\index{SetVersion@{SetVersion}!xb::xbDbf@{xb::xbDbf}}
@@ -4399,6 +4518,6 @@ This routine eliminates everything from the dbf file and dbt memo file. \begin{D
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbdbf_8cpp}{xbdbf.\+cpp}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbfields_8cpp}{xbfields.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbdbf_8cpp}{xbdbf.\+cpp}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbfields_8cpp}{xbfields.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/classxb_1_1xbFile.pdf b/docs/doxygen/latex/classxb_1_1xbFile.pdf
index 491c726..11aea00 100644
--- a/docs/doxygen/latex/classxb_1_1xbFile.pdf
+++ b/docs/doxygen/latex/classxb_1_1xbFile.pdf
Binary files differ
diff --git a/docs/doxygen/latex/classxb_1_1xbFile.tex b/docs/doxygen/latex/classxb_1_1xbFile.tex
index b342cad..e5e63ad 100644
--- a/docs/doxygen/latex/classxb_1_1xbFile.tex
+++ b/docs/doxygen/latex/classxb_1_1xbFile.tex
@@ -22,32 +22,50 @@ Inheritance diagram for xb\+::xb\+File\+:\begin{figure}[H]
\begin{DoxyCompactList}\small\item\em Class Constructor. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbFile_a491f6c48076e89da2e791a42b2727a90}{$\sim$xb\+File}} ()
\begin{DoxyCompactList}\small\item\em Class Destructor. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a060acbfaa8d528f86cb59301814b414a}{Set\+Home\+Folders}} ()
-\begin{DoxyCompactList}\small\item\em Create Home Folders. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aae9a2ddb0adb8165b4ac2b6a28a932f7}{Create\+Unique\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqn\+Out)
-\begin{DoxyCompactList}\small\item\em Create a unique file name. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ae5ffabde2c88ea58324f27e471f6bfc0}{Create\+Unique\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqn\+Out, xb\+Int16 i\+Option)
-\begin{DoxyCompactList}\small\item\em Create a unique file name. \end{DoxyCompactList}\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbFile_acd0fb2166b2bff7e8a1cf65a7bc8be1e}{Get\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the directory name. \end{DoxyCompactList}\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbFile_ac95cb882ccbcdedc9a233c6ad9fed07a}{Get\+File\+Name}} () const
\begin{DoxyCompactList}\small\item\em Get the file name. \end{DoxyCompactList}\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbFile_a31b4e641f93206ba23e2a5a27491dcd4}{Get\+Fq\+File\+Name}} () const
\begin{DoxyCompactList}\small\item\em Get the fully qualified file name. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_ae78a85255488bc78964c16946dbaead3}{Set\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Directory)
-\begin{DoxyCompactList}\small\item\em Set the directory. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a5419eb27e56822f828b2b88a9502a636}{Set\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name)
-\begin{DoxyCompactList}\small\item\em Set the filename. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_aee832fa11db2077a532f49e1329bd05a}{Set\+Fq\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fq\+Name)
-\begin{DoxyCompactList}\small\item\em Set the fully qualifed filename. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ad39797624a752b9d62533d00fad9feff}{Create\+Unique\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqn\+Out, xb\+Int16 i\+Option=0)
+\begin{DoxyCompactList}\small\item\em Create a unique file name. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ae2b6ac26018dc28f77afbb3f008c3f66}{Determine\+Xbase\+Table\+Version}} (unsigned char c\+File\+Type\+Byte) const
+\begin{DoxyCompactList}\small\item\em Determine xbase dbf version. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5a740033664c9ad2611c90e2a6d0c2d3}{Determine\+Xbase\+Memo\+Version}} (unsigned char c\+File\+Type\+Byte) const
+\begin{DoxyCompactList}\small\item\em Determine which version the memo (dbt) file is. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} \mbox{\hyperlink{classxb_1_1xbFile_ab14e4a11427f5efb81cba1dd32bd1aa1}{e\+Get\+Double}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable double value. \end{DoxyCompactList}\item
+xb\+Int32 \mbox{\hyperlink{classxb_1_1xbFile_a60b24a5afc984c586bf384c7e915ba0d}{e\+Get\+Int32}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable long value. \end{DoxyCompactList}\item
+xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbFile_a78f052529d39a18deaface5a0d47d0b0}{e\+Get\+UInt32}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable unsigned long value. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ac40c991110ddc6fb30a72d90f4652762}{e\+Get\+Int16}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable short value. \end{DoxyCompactList}\item
+xb\+UInt16 \mbox{\hyperlink{classxb_1_1xbFile_a936ade458e6d5e6d29f9b5031888d189}{e\+Get\+UInt16}} (const char $\ast$p) const
+\begin{DoxyCompactList}\small\item\em Get a portable unsigned short value. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a98b6ff533ae93f90c977a2ba23eeb105}{e\+Put\+Double}} (char $\ast$p, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} d)
+\begin{DoxyCompactList}\small\item\em Write a portable double value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a19c37f76a2ccbb45019cb0fc373d3f46}{e\+Put\+Int32}} (char $\ast$p, xb\+Int32 l)
+\begin{DoxyCompactList}\small\item\em Write a portable long value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_aa3f6ceae4b96f24875d86848bf13a173}{e\+Put\+UInt32}} (char $\ast$p, xb\+UInt32 ul)
+\begin{DoxyCompactList}\small\item\em Write a portable unsigned long value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a29130f12739ac8fa837f4eaedf1338b2}{e\+Put\+Int16}} (char $\ast$p, xb\+Int16 s)
+\begin{DoxyCompactList}\small\item\em Write a portable short value to memory location. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a65e9839f92b96eac7b0d071fac3bbe40}{e\+Put\+UInt16}} (char $\ast$p, xb\+UInt16 s)
+\begin{DoxyCompactList}\small\item\em Write a portable unsigned short value to memory location. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a78bd8a11dce102647095baf3aff2b006}{File\+Exists}} () const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a174d8a6aabc9cfcd32fedbd1e5b13ddd}{File\+Exists}} (xb\+Int16 i\+Option) const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a61130b4fbf4cf9d5972dcb4993de2f94}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name) const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a0592168f39a10f2a401a88ef781f6148}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
+\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
+\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a7fa837938a32dc9ca3fbc81cbaf50f59}{File\+Is\+Open}} () const
+\begin{DoxyCompactList}\small\item\em Determines if file is open. \end{DoxyCompactList}\item
xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbFile_a638e14262410a1627819f016a16cdce2}{Get\+Block\+Size}} () const
\begin{DoxyCompactList}\small\item\em Get the block size. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a991c5676a6f38fa752435390989f413e}{Set\+Block\+Size}} (xb\+UInt32 ul\+Block\+Size)
-\begin{DoxyCompactList}\small\item\em Set the block size. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a3c500dc9dac22c49496e4b29386b2dd3}{Get\+Open\+Mode}} () const
-\begin{DoxyCompactList}\small\item\em Get the open mode of the file. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a9b63e05b77f477ff6109ff7b9432c1b6}{Get\+Share\+Mode}} () const
-\begin{DoxyCompactList}\small\item\em Get the share mode of the file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a60c53998e3d1b694134b20a87bc9bf5a}{Get\+File\+Dir\+Part}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Dir\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the directory part of the file name. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_af5127c92892816e9bbc5c19653c4147a}{Get\+File\+Dir\+Part}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Complete\+File\+Name\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Dir\+Part\+Out) const
@@ -56,62 +74,44 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a57a9222e5cbb51019d4eeb2c3ac89fa2}{
\begin{DoxyCompactList}\small\item\em Get the extension part of the file name. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ab289b6ffe955321160c1f90220c22e25}{Get\+File\+Ext\+Part}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Complete\+File\+Name\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Ext\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the extension part of the file name. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a02df78f4c90313243f508fc56b95aba8}{Get\+File\+Mtime}} (time\+\_\+t \&mtime)
+\begin{DoxyCompactList}\small\item\em Get the time of last file modification timestamp as reported by the OS. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a81422b3dd52763d2cc6c77237ec9af0a}{Get\+File\+Name\+Part}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the name part of the file name. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6110763c5ae996b72c7a62c15bdecc73}{Get\+File\+Name\+Part}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Complete\+File\+Name\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name\+Part\+Out) const
\begin{DoxyCompactList}\small\item\em Get the name part of the file name. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a50b63c39e49d44e52078038027b24cc5}{Get\+File\+Size}} (xb\+UInt64 \&ull\+File\+Size)
+\begin{DoxyCompactList}\small\item\em Get the size of the file as reported by the OS. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5548236d38d43b89ae29b9a015b1f678}{Get\+File\+Type}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Type) const
\begin{DoxyCompactList}\small\item\em Get the file type aka Capitalized file extension. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a3c500dc9dac22c49496e4b29386b2dd3}{Get\+Open\+Mode}} () const
+\begin{DoxyCompactList}\small\item\em Get the open mode of the file. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a9b63e05b77f477ff6109ff7b9432c1b6}{Get\+Share\+Mode}} () const
+\begin{DoxyCompactList}\small\item\em Get the share mode of the file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aaf2e697751a0beff41432a66bb83fb5e}{Get\+Xbase\+File\+Type\+Byte}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 \&i\+Version)
\begin{DoxyCompactList}\small\item\em Get the file type byte and version of the dbf file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a7af337808919680b90710ad5e8a99232}{Get\+Xbase\+File\+Type\+Byte}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, unsigned char \&c\+File\+Type\+Byte)
\begin{DoxyCompactList}\small\item\em Get the file type byte and version of the dbf file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a78aebdd21d3de46a450d5f835e3027f6}{Get\+Xbase\+File\+Type\+Byte}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, unsigned char \&c\+File\+Type\+Byte, xb\+Int16 \&i\+Version)
\begin{DoxyCompactList}\small\item\em Get the file type byte and version of the dbf file. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ae2b6ac26018dc28f77afbb3f008c3f66}{Determine\+Xbase\+Table\+Version}} (unsigned char c\+File\+Type\+Byte) const
-\begin{DoxyCompactList}\small\item\em Determine xbase dbf version. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5a740033664c9ad2611c90e2a6d0c2d3}{Determine\+Xbase\+Memo\+Version}} (unsigned char c\+File\+Type\+Byte) const
-\begin{DoxyCompactList}\small\item\em Determine which version the memo (dbt) file is. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a78bd8a11dce102647095baf3aff2b006}{File\+Exists}} () const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a174d8a6aabc9cfcd32fedbd1e5b13ddd}{File\+Exists}} (xb\+Int16 i\+Option) const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a61130b4fbf4cf9d5972dcb4993de2f94}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name) const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a0592168f39a10f2a401a88ef781f6148}{File\+Exists}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
-\begin{DoxyCompactList}\small\item\em Determines if a file exists. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbFile_a7fa837938a32dc9ca3fbc81cbaf50f59}{File\+Is\+Open}} () const
-\begin{DoxyCompactList}\small\item\em Determines if file is open. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a361e3cc318bbf1c4d10f069e0800a24e}{Name\+Suffix\+Missing}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
+\begin{DoxyCompactList}\small\item\em Determines status of file extension. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aa1bb80340abc7a5c22f87f878e9dc825}{Read\+Block}} (xb\+UInt32 ul\+Block\+No, size\+\_\+t read\+Size, void $\ast$buf)
\begin{DoxyCompactList}\small\item\em Read a block of data from file. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_aef696b1c4c0ef5338e818599f695d485}{Read\+Block}} (xb\+UInt32 ul\+Block\+No, xb\+UInt32 ul\+Block\+Size, size\+\_\+t read\+Size, void $\ast$buf)
\begin{DoxyCompactList}\small\item\em Read a block of data from file. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a991c5676a6f38fa752435390989f413e}{Set\+Block\+Size}} (xb\+UInt32 ul\+Block\+Size)
+\begin{DoxyCompactList}\small\item\em Set the block size. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_ae78a85255488bc78964c16946dbaead3}{Set\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_a5419eb27e56822f828b2b88a9502a636}{Set\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name)
+\begin{DoxyCompactList}\small\item\em Set the filename. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbFile_aee832fa11db2077a532f49e1329bd05a}{Set\+Fq\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fq\+Name)
+\begin{DoxyCompactList}\small\item\em Set the fully qualifed filename. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a060acbfaa8d528f86cb59301814b414a}{Set\+Home\+Folders}} ()
+\begin{DoxyCompactList}\small\item\em Set Home Folders. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5d871dcfecc2b4338f7a13722aab766c}{Write\+Block}} (xb\+UInt32 ul\+Block\+No, size\+\_\+t write\+Size, void $\ast$buf)
\begin{DoxyCompactList}\small\item\em Write a block of data to file. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a50b63c39e49d44e52078038027b24cc5}{Get\+File\+Size}} (xb\+UInt64 \&ull\+File\+Size)
-\begin{DoxyCompactList}\small\item\em Get the size of the file as reported by the OS. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a02df78f4c90313243f508fc56b95aba8}{Get\+File\+Mtime}} (time\+\_\+t \&mtime)
-\begin{DoxyCompactList}\small\item\em Get the time of last file modification timestamp as reported by the OS. \end{DoxyCompactList}\item
-\mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} \mbox{\hyperlink{classxb_1_1xbFile_ab14e4a11427f5efb81cba1dd32bd1aa1}{e\+Get\+Double}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable double value. \end{DoxyCompactList}\item
-xb\+Int32 \mbox{\hyperlink{classxb_1_1xbFile_a60b24a5afc984c586bf384c7e915ba0d}{e\+Get\+Int32}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable long value. \end{DoxyCompactList}\item
-xb\+UInt32 \mbox{\hyperlink{classxb_1_1xbFile_a78f052529d39a18deaface5a0d47d0b0}{e\+Get\+UInt32}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable unsigned long value. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ac40c991110ddc6fb30a72d90f4652762}{e\+Get\+Int16}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable short value. \end{DoxyCompactList}\item
-xb\+UInt16 \mbox{\hyperlink{classxb_1_1xbFile_a936ade458e6d5e6d29f9b5031888d189}{e\+Get\+UInt16}} (const char $\ast$p) const
-\begin{DoxyCompactList}\small\item\em Get a portable unsigned short value. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a98b6ff533ae93f90c977a2ba23eeb105}{e\+Put\+Double}} (char $\ast$p, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xb\+Double}} d)
-\begin{DoxyCompactList}\small\item\em Write a portable double value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a19c37f76a2ccbb45019cb0fc373d3f46}{e\+Put\+Int32}} (char $\ast$p, xb\+Int32 l)
-\begin{DoxyCompactList}\small\item\em Write a portable long value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_aa3f6ceae4b96f24875d86848bf13a173}{e\+Put\+UInt32}} (char $\ast$p, xb\+UInt32 ul)
-\begin{DoxyCompactList}\small\item\em Write a portable unsigned long value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a29130f12739ac8fa837f4eaedf1338b2}{e\+Put\+Int16}} (char $\ast$p, xb\+Int16 s)
-\begin{DoxyCompactList}\small\item\em Write a portable short value to memory location. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbFile_a65e9839f92b96eac7b0d071fac3bbe40}{e\+Put\+UInt16}} (char $\ast$p, xb\+UInt16 s)
-\begin{DoxyCompactList}\small\item\em Write a portable unsigned short value to memory location. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a18830b5755d74818f60d9c7ce38ddf2d}{xb\+Fclose}} ()
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fclose. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_af5b6356832d2a67212070a1aa605f170}{xb\+Feof}} ()
@@ -122,6 +122,8 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_afb1c584d2895ffb7834df80aea7eb1e4}{
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgetc. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5ee229bda4d7d6695e122200e581e7a6}{xb\+Fgetc}} (char \&c)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgetc. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ad245955ace26e5dde85fd4373b30d026}{xb\+Fgets}} (size\+\_\+t l\+Size, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Line)
+\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgets. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a7cdfef5ede9ac98d44a28a6b7a70972c}{xb\+Fopen}} (xb\+Int16 i\+Open\+Mode)
\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a0548cedf0f26b7d8ac221f75b0cd048c}{xb\+Fopen}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Open\+Mode, xb\+Int16 i\+Share\+Mode)
@@ -138,16 +140,12 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a698f3b40216778562e639e6ca1a47573}{
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fputs. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ab4f6afaa1f77539f27a4f05c26e54e2f}{xb\+Fread}} (void $\ast$ptr, size\+\_\+t size, size\+\_\+t nmemb)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fread. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_ad245955ace26e5dde85fd4373b30d026}{xb\+Fgets}} (size\+\_\+t l\+Size, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Line)
-\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fgets. \end{DoxyCompactList}\item
-size\+\_\+t \mbox{\hyperlink{classxb_1_1xbFile_a0e1c06aedfa7fbcb92e117f891edd13b}{xb\+Ftell}} ()
-\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary ftell. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a5337ab8918df240910c0d19b4f298e3d}{xb\+Fseek}} (xb\+Int64 ll\+Offset, xb\+Int32 whence)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fseek. \end{DoxyCompactList}\item
+size\+\_\+t \mbox{\hyperlink{classxb_1_1xbFile_a0e1c06aedfa7fbcb92e117f891edd13b}{xb\+Ftell}} ()
+\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary ftell. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbFile_a9891b792f585a696f38a5cf959e30918}{xb\+FTurn\+Off\+File\+Buffering}} ()
\begin{DoxyCompactList}\small\item\em Turn off file buffering. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6aadd871d1782944703fed773d44b85f}{xb\+Fwrite}} (const void $\ast$ptr, size\+\_\+t l\+Size, size\+\_\+t l\+Nmemb)
-\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fwrite. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a08463f506f425c2385acbe1a561506e9}{xb\+Read\+Until}} (const char c\+Delim, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Out)
\begin{DoxyCompactList}\small\item\em Read file until a particular character is encountered on input stream. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6d919366c2ec95e529906bf8842cbf07}{xb\+Remove}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option)
@@ -160,24 +158,32 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_afc8ce113aa72611a278233f9bb170012}{
\begin{DoxyCompactList}\small\item\em Rename file. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbFile_a7996b6e084665c37c3892faea64b3505}{xb\+Rewind}} ()
\begin{DoxyCompactList}\small\item\em Xbase wrapper for rewind. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a6aadd871d1782944703fed773d44b85f}{xb\+Fwrite}} (const void $\ast$ptr, size\+\_\+t l\+Size, size\+\_\+t l\+Nmemb)
+\begin{DoxyCompactList}\small\item\em Xbase wrapper for standard libary fwrite. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a518bfcbfa3699d883cf89affee383296}{xb\+Truncate}} (xb\+Int64 ll\+Size)
\begin{DoxyCompactList}\small\item\em Xbase wrapper for ftruncate. \end{DoxyCompactList}\item
-xb\+Int16 \mbox{\hyperlink{classxb_1_1xbFile_a361e3cc318bbf1c4d10f069e0800a24e}{Name\+Suffix\+Missing}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+File\+Name, xb\+Int16 i\+Option) const
-\begin{DoxyCompactList}\small\item\em Determines status of file extension. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a97dfa59ab9a8e9f17454da0faceb023d}{Display\+Error}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Display error message on console for a given error number. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a6fbb9c3a550ab0b3378f9586a57791d2}{Get\+Default\+Date\+Format}} () const
\begin{DoxyCompactList}\small\item\em Get the default date format. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a1d803a4bfc8ba0561267a0bf9e51f7d9}{Get\+Data\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the current data directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}{Get\+Temp\+Directory}} () const
+\begin{DoxyCompactList}\small\item\em Get the current temp directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
+\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbSsv_a49cd162f066eef2b829ba7c9f6620243}{Get\+Endian\+Type}} () const
\begin{DoxyCompactList}\small\item\em Get the Endian type. \end{DoxyCompactList}\item
const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}{Get\+Error\+Message}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Get an error message. \end{DoxyCompactList}\item
+char \mbox{\hyperlink{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}{Get\+Path\+Separator}} () const
+\begin{DoxyCompactList}\small\item\em Get the OS dependent path separator. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}{Set\+Data\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Data\+Directory)
\begin{DoxyCompactList}\small\item\em Set the data directory. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a5f74db23f8902846d581935c7db73f9c}{Set\+Default\+Date\+Format}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Default\+Date\+Format)
\begin{DoxyCompactList}\small\item\em Set the default date format. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}{Set\+Temp\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Temp\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the temp directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_a62e4fd0a5888665c76bbbad962794e72}{Bit\+Set}} (unsigned char c, xb\+Int16 i\+Bit\+No) const
\begin{DoxyCompactList}\small\item\em Check a bit in a one byte field and see if it is set. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a8551b15a3ce4fa2a40d698db01f4a9ae}{Bit\+Dump}} (unsigned char c) const
@@ -188,14 +194,14 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_aba1395b8e4c7f28c3614061de6e49190}{Bit\+D
\begin{DoxyCompactList}\small\item\em Get the default auto commit setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}{Set\+Default\+Auto\+Commit}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Default\+Auto\+Commit)
\begin{DoxyCompactList}\small\item\em Set the default auto commit. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
-\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}{Get\+Log\+Directory}} () const
\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}{Get\+Log\+File\+Name}} () const
\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Directory)
\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
+\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_abd58031c5f1c3766c24d47a82e6fd9c5}{Get\+Multi\+User}} () const
\begin{DoxyCompactList}\small\item\em Get the multi user setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}{Set\+Multi\+User}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Multi\+User)
@@ -294,11 +300,11 @@ Check a bit in a one byte field and see if it is set.
xb\+True Bit is set~\newline
xb\+False Bit is not set
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbFile_aae9a2ddb0adb8165b4ac2b6a28a932f7}\label{classxb_1_1xbFile_aae9a2ddb0adb8165b4ac2b6a28a932f7}}
+\mbox{\Hypertarget{classxb_1_1xbFile_ad39797624a752b9d62533d00fad9feff}\label{classxb_1_1xbFile_ad39797624a752b9d62533d00fad9feff}}
\index{xb::xbFile@{xb::xbFile}!CreateUniqueFileName@{CreateUniqueFileName}}
\index{CreateUniqueFileName@{CreateUniqueFileName}!xb::xbFile@{xb::xbFile}}
-\doxysubsubsection{\texorpdfstring{CreateUniqueFileName()}{CreateUniqueFileName()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
-{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+File\+::\+Create\+Unique\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out }\end{DoxyParamCaption})}
+\doxysubsubsection{\texorpdfstring{CreateUniqueFileName()}{CreateUniqueFileName()}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+File\+::\+Create\+Unique\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out, }\item[{xb\+Int16}]{i\+Option = {\ttfamily 0} }\end{DoxyParamCaption})}
@@ -316,17 +322,9 @@ Given a directory and file extension as inputs, create a unique file name.
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
-\href{xbretcod_8h.html}{\texttt{ Return Codes}}
+\href{xbretcod_8h.html}{\texttt{ Return Codes}}
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbFile_ae5ffabde2c88ea58324f27e471f6bfc0}\label{classxb_1_1xbFile_ae5ffabde2c88ea58324f27e471f6bfc0}}
-\index{xb::xbFile@{xb::xbFile}!CreateUniqueFileName@{CreateUniqueFileName}}
-\index{CreateUniqueFileName@{CreateUniqueFileName}!xb::xbFile@{xb::xbFile}}
-\doxysubsubsection{\texorpdfstring{CreateUniqueFileName()}{CreateUniqueFileName()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
-{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+File\+::\+Create\+Unique\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out, }\item[{xb\+Int16}]{i\+Option }\end{DoxyParamCaption})}
-
-
-
-Create a unique file name.
+Create a unique file name.
Given a directory and file extension as inputs, create a unique file name.
@@ -1026,9 +1024,6 @@ Get home directory.
{\em s\+Home\+Dir\+Out} & -\/ Output home directory for current user. \\
\hline
\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-void
-\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}\label{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}}
\index{xb::xbFile@{xb::xbFile}!GetLogDirectory@{GetLogDirectory}}
\index{GetLogDirectory@{GetLogDirectory}!xb::xbFile@{xb::xbFile}}
@@ -1072,6 +1067,19 @@ XB\+\_\+\+READ~\newline
XB\+\_\+\+WRITE~\newline
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}\label{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}}
+\index{xb::xbFile@{xb::xbFile}!GetPathSeparator@{GetPathSeparator}}
+\index{GetPathSeparator@{GetPathSeparator}!xb::xbFile@{xb::xbFile}}
+\doxysubsubsection{\texorpdfstring{GetPathSeparator()}{GetPathSeparator()}}
+{\footnotesize\ttfamily char xb\+::xb\+Ssv\+::\+Get\+Path\+Separator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the OS dependent path separator.
+
+\begin{DoxyReturn}{Returns}
+Returns \textquotesingle{}\textbackslash{}\textquotesingle{} for windows environment, otherwise returns \textquotesingle{}/\textquotesingle{}.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbFile_a9b63e05b77f477ff6109ff7b9432c1b6}\label{classxb_1_1xbFile_a9b63e05b77f477ff6109ff7b9432c1b6}}
\index{xb::xbFile@{xb::xbFile}!GetShareMode@{GetShareMode}}
\index{GetShareMode@{GetShareMode}!xb::xbFile@{xb::xbFile}}
@@ -1087,6 +1095,19 @@ XB\+\_\+\+SINGLE\+\_\+\+USER -\/ (file buffering on\texorpdfstring{$>$}{>}~\newl
XB\+\_\+\+MULTI\+\_\+\+USER -\/ (file buffering off)~\newline
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}\label{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}}
+\index{xb::xbFile@{xb::xbFile}!GetTempDirectory@{GetTempDirectory}}
+\index{GetTempDirectory@{GetTempDirectory}!xb::xbFile@{xb::xbFile}}
+\doxysubsubsection{\texorpdfstring{GetTempDirectory()}{GetTempDirectory()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Temp\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the current temp directory.
+
+\begin{DoxyReturn}{Returns}
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} containing the current data directory where the database files are stored.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbFile_a7af337808919680b90710ad5e8a99232}\label{classxb_1_1xbFile_a7af337808919680b90710ad5e8a99232}}
\index{xb::xbFile@{xb::xbFile}!GetXbaseFileTypeByte@{GetXbaseFileTypeByte}}
\index{GetXbaseFileTypeByte@{GetXbaseFileTypeByte}!xb::xbFile@{xb::xbFile}}
@@ -1259,7 +1280,7 @@ Set the data directory.
\begin{DoxyParams}{Parameters}
-{\em s\+Data\+Directory} & Set the data direcroty. \\
+{\em s\+Data\+Directory} & Set the data directory. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}\label{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}}
@@ -1364,9 +1385,9 @@ Set the fully qualifed filename.
-Create Home Folders.
+Set Home Folders.
-Create xbase64 log and data folders in the home directory for current usre.
+Create xbase64 log, data and temp folders in the home directory for current usre.
\begin{DoxyReturn}{Returns}
\href{xbretcod_8h.html}{\texttt{ Return Codes}}
@@ -1377,6 +1398,12 @@ Create xbase64 log and data folders in the home directory for current usre.
\doxysubsubsection{\texorpdfstring{SetLogDirectory()}{SetLogDirectory()}}
{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}\label{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}}
+\index{xb::xbFile@{xb::xbFile}!SetLogFileName@{SetLogFileName}}
+\index{SetLogFileName@{SetLogFileName}!xb::xbFile@{xb::xbFile}}
+\doxysubsubsection{\texorpdfstring{SetLogFileName()}{SetLogFileName()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
\mbox{\Hypertarget{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}\label{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}}
\index{xb::xbFile@{xb::xbFile}!SetMultiUser@{SetMultiUser}}
\index{SetMultiUser@{SetMultiUser}!xb::xbFile@{xb::xbFile}}
@@ -1394,6 +1421,21 @@ Get the multi user setting.
\\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}\label{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}}
+\index{xb::xbFile@{xb::xbFile}!SetTempDirectory@{SetTempDirectory}}
+\index{SetTempDirectory@{SetTempDirectory}!xb::xbFile@{xb::xbFile}}
+\doxysubsubsection{\texorpdfstring{SetTempDirectory()}{SetTempDirectory()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Temp\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Temp\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Set the temp directory.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Temp\+Directory} & Set the data direcroty. \\
+\hline
+\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbFile_a5d871dcfecc2b4338f7a13722aab766c}\label{classxb_1_1xbFile_a5d871dcfecc2b4338f7a13722aab766c}}
\index{xb::xbFile@{xb::xbFile}!WriteBlock@{WriteBlock}}
\index{WriteBlock@{WriteBlock}!xb::xbFile@{xb::xbFile}}
@@ -1907,5 +1949,5 @@ Set file size to ll\+Size
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbfile_8h}{xbfile.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbfile_8cpp}{xbfile.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbfile_8h}{xbfile.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbfile_8cpp}{xbfile.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/classxb_1_1xbSsv.pdf b/docs/doxygen/latex/classxb_1_1xbSsv.pdf
index 4677f70..526c8c1 100644
--- a/docs/doxygen/latex/classxb_1_1xbSsv.pdf
+++ b/docs/doxygen/latex/classxb_1_1xbSsv.pdf
Binary files differ
diff --git a/docs/doxygen/latex/classxb_1_1xbSsv.tex b/docs/doxygen/latex/classxb_1_1xbSsv.tex
index 8abcbcb..b98b436 100644
--- a/docs/doxygen/latex/classxb_1_1xbSsv.tex
+++ b/docs/doxygen/latex/classxb_1_1xbSsv.tex
@@ -26,14 +26,22 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_a97dfa59ab9a8e9f17454da0faceb023d}{Displa
\begin{DoxyCompactList}\small\item\em Get the default date format. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a1d803a4bfc8ba0561267a0bf9e51f7d9}{Get\+Data\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the current data directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}{Get\+Temp\+Directory}} () const
+\begin{DoxyCompactList}\small\item\em Get the current temp directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
+\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbSsv_a49cd162f066eef2b829ba7c9f6620243}{Get\+Endian\+Type}} () const
\begin{DoxyCompactList}\small\item\em Get the Endian type. \end{DoxyCompactList}\item
const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}{Get\+Error\+Message}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Get an error message. \end{DoxyCompactList}\item
+char \mbox{\hyperlink{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}{Get\+Path\+Separator}} () const
+\begin{DoxyCompactList}\small\item\em Get the OS dependent path separator. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}{Set\+Data\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Data\+Directory)
\begin{DoxyCompactList}\small\item\em Set the data directory. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a5f74db23f8902846d581935c7db73f9c}{Set\+Default\+Date\+Format}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Default\+Date\+Format)
\begin{DoxyCompactList}\small\item\em Set the default date format. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}{Set\+Temp\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Temp\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the temp directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_a62e4fd0a5888665c76bbbad962794e72}{Bit\+Set}} (unsigned char c, xb\+Int16 i\+Bit\+No) const
\begin{DoxyCompactList}\small\item\em Check a bit in a one byte field and see if it is set. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a8551b15a3ce4fa2a40d698db01f4a9ae}{Bit\+Dump}} (unsigned char c) const
@@ -44,14 +52,14 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_aba1395b8e4c7f28c3614061de6e49190}{Bit\+D
\begin{DoxyCompactList}\small\item\em Get the default auto commit setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}{Set\+Default\+Auto\+Commit}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Default\+Auto\+Commit)
\begin{DoxyCompactList}\small\item\em Set the default auto commit. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
-\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}{Get\+Log\+Directory}} () const
\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}{Get\+Log\+File\+Name}} () const
\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Directory)
\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
+\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_abd58031c5f1c3766c24d47a82e6fd9c5}{Get\+Multi\+User}} () const
\begin{DoxyCompactList}\small\item\em Get the multi user setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}{Set\+Multi\+User}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Multi\+User)
@@ -234,9 +242,6 @@ Get home directory.
{\em s\+Home\+Dir\+Out} & -\/ Output home directory for current user. \\
\hline
\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-void
-\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}\label{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}}
\index{xb::xbSsv@{xb::xbSsv}!GetLogDirectory@{GetLogDirectory}}
\index{GetLogDirectory@{GetLogDirectory}!xb::xbSsv@{xb::xbSsv}}
@@ -264,6 +269,32 @@ xb\+True -\/ Multi user mode turned on.~\newline
xb\+False -\/ Multi user mode turned off.~\newline
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}\label{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}}
+\index{xb::xbSsv@{xb::xbSsv}!GetPathSeparator@{GetPathSeparator}}
+\index{GetPathSeparator@{GetPathSeparator}!xb::xbSsv@{xb::xbSsv}}
+\doxysubsubsection{\texorpdfstring{GetPathSeparator()}{GetPathSeparator()}}
+{\footnotesize\ttfamily char xb\+::xb\+Ssv\+::\+Get\+Path\+Separator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+
+
+
+Get the OS dependent path separator.
+
+\begin{DoxyReturn}{Returns}
+Returns \textquotesingle{}\textbackslash{}\textquotesingle{} for windows environment, otherwise returns \textquotesingle{}/\textquotesingle{}.
+\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}\label{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}}
+\index{xb::xbSsv@{xb::xbSsv}!GetTempDirectory@{GetTempDirectory}}
+\index{GetTempDirectory@{GetTempDirectory}!xb::xbSsv@{xb::xbSsv}}
+\doxysubsubsection{\texorpdfstring{GetTempDirectory()}{GetTempDirectory()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Temp\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+
+
+
+Get the current temp directory.
+
+\begin{DoxyReturn}{Returns}
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} containing the current data directory where the database files are stored.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}\label{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}}
\index{xb::xbSsv@{xb::xbSsv}!SetDataDirectory@{SetDataDirectory}}
\index{SetDataDirectory@{SetDataDirectory}!xb::xbSsv@{xb::xbSsv}}
@@ -276,7 +307,7 @@ Set the data directory.
\begin{DoxyParams}{Parameters}
-{\em s\+Data\+Directory} & Set the data direcroty. \\
+{\em s\+Data\+Directory} & Set the data directory. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}\label{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}}
@@ -329,6 +360,12 @@ This routine determines the Endian-\/ness at run time instead of compile time as
\doxysubsubsection{\texorpdfstring{SetLogDirectory()}{SetLogDirectory()}}
{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+Directory }\end{DoxyParamCaption})}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}\label{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}}
+\index{xb::xbSsv@{xb::xbSsv}!SetLogFileName@{SetLogFileName}}
+\index{SetLogFileName@{SetLogFileName}!xb::xbSsv@{xb::xbSsv}}
+\doxysubsubsection{\texorpdfstring{SetLogFileName()}{SetLogFileName()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})}
+
\mbox{\Hypertarget{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}\label{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}}
\index{xb::xbSsv@{xb::xbSsv}!SetMultiUser@{SetMultiUser}}
\index{SetMultiUser@{SetMultiUser}!xb::xbSsv@{xb::xbSsv}}
@@ -346,6 +383,21 @@ Get the multi user setting.
\\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}\label{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}}
+\index{xb::xbSsv@{xb::xbSsv}!SetTempDirectory@{SetTempDirectory}}
+\index{SetTempDirectory@{SetTempDirectory}!xb::xbSsv@{xb::xbSsv}}
+\doxysubsubsection{\texorpdfstring{SetTempDirectory()}{SetTempDirectory()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Temp\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Temp\+Directory }\end{DoxyParamCaption})}
+
+
+
+Set the temp directory.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Temp\+Directory} & Set the data direcroty. \\
+\hline
+\end{DoxyParams}
\doxysubsection{Field Documentation}
@@ -371,5 +423,5 @@ Get the multi user setting.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbssv_8h}{xbssv.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbssv_8cpp}{xbssv.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbssv_8h}{xbssv.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbssv_8cpp}{xbssv.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/classxb_1_1xbString.tex b/docs/doxygen/latex/classxb_1_1xbString.tex
index 9cec303..d589549 100644
--- a/docs/doxygen/latex/classxb_1_1xbString.tex
+++ b/docs/doxygen/latex/classxb_1_1xbString.tex
@@ -86,9 +86,9 @@ char \& \mbox{\hyperlink{classxb_1_1xbString_a4deaa68d9571753349c29baacb5613e8}{
\begin{DoxyCompactList}\small\item\em Assign portion of string. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_a08eb7ca6740423acab4e8bd7a6c8043d}{Assign}} (const char $\ast$src\+Str, xb\+UInt32 l\+Start\+Pos)
\begin{DoxyCompactList}\small\item\em Assign portion of string. \end{DoxyCompactList}\item
-\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_ac6afd224dfbe439ce083c8dd1ad3246c}{Assign}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s, xb\+UInt32 pos, xb\+UInt32 l\+Copy\+Len)
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_a430119df844bd80d67c23c48b045af30}{Assign}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s, xb\+UInt32 ul\+Start\+Pos, xb\+UInt32 l\+Copy\+Len)
\begin{DoxyCompactList}\small\item\em Assign portion of string. \end{DoxyCompactList}\item
-\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_a4f1d709d9f6c56959e8549157b4ee68c}{Assign}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s, xb\+UInt32 l\+Copy\+Len)
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_a97df314be5b3b2611be11ff50a19533d}{Assign}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s, xb\+UInt32 ul\+Start\+Pos)
\begin{DoxyCompactList}\small\item\em Assign portion of string. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \mbox{\hyperlink{classxb_1_1xbString_ac7a8466b03c04df838bd182ef244f792}{Copy}} () const
\begin{DoxyCompactList}\small\item\em Copy a string. \end{DoxyCompactList}\item
@@ -104,6 +104,8 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbString_a1528b30b84a41c3564ef31d1f4496b15
\begin{DoxyCompactList}\small\item\em Convert string to xb\+UInt64 number. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbString_ae3ab18365e132323f8ae4c99eb72181c}{Cvt\+Long\+Long}} (xb\+Int64 \&ll\+Out)
\begin{DoxyCompactList}\small\item\em Convert string to xb\+Int64 number. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_a6b33a8df49cdcb76033cbce5d8dc59d7}{Extract\+Element}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s, char delim, xb\+UInt32 i\+Cnt, xb\+Int16 i\+Opt=0)
+\begin{DoxyCompactList}\small\item\em Extract an element out of a delimited string. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbString_a77195fc4957952625cb33bb503517a3e}{Extract\+Element}} (const char $\ast$src, char delim, xb\+UInt32 i\+Cnt, xb\+Int16 i\+Opt=0)
\begin{DoxyCompactList}\small\item\em Extract an element out of a delimited string. \end{DoxyCompactList}\item
char \mbox{\hyperlink{classxb_1_1xbString_a685187a5f8401b322fc61f3fbe56330d}{Get\+Character}} (xb\+UInt32 l\+Pos) const
@@ -384,7 +386,8 @@ Append data to string.
\begin{DoxyParams}{Parameters}
-{\em s} & String data to append. \\
+{\em s} & String data to append. ~\newline
+ \\
\hline
{\em ul\+Byte\+Count} & Maximum number of bytes to append. \\
\hline
@@ -452,7 +455,7 @@ Assign portion of string.
\begin{DoxyReturn}{Returns}
Reference to this string.
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbString_a4f1d709d9f6c56959e8549157b4ee68c}\label{classxb_1_1xbString_a4f1d709d9f6c56959e8549157b4ee68c}}
+\mbox{\Hypertarget{classxb_1_1xbString_a97df314be5b3b2611be11ff50a19533d}\label{classxb_1_1xbString_a97df314be5b3b2611be11ff50a19533d}}
\index{xb::xbString@{xb::xbString}!Assign@{Assign}}
\index{Assign@{Assign}!xb::xbString@{xb::xbString}}
\doxysubsubsection{\texorpdfstring{Assign()}{Assign()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
@@ -472,7 +475,7 @@ Assign portion of string.
\begin{DoxyReturn}{Returns}
Reference to this string.
\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbString_ac6afd224dfbe439ce083c8dd1ad3246c}\label{classxb_1_1xbString_ac6afd224dfbe439ce083c8dd1ad3246c}}
+\mbox{\Hypertarget{classxb_1_1xbString_a430119df844bd80d67c23c48b045af30}\label{classxb_1_1xbString_a430119df844bd80d67c23c48b045af30}}
\index{xb::xbString@{xb::xbString}!Assign@{Assign}}
\index{Assign@{Assign}!xb::xbString@{xb::xbString}}
\doxysubsubsection{\texorpdfstring{Assign()}{Assign()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
@@ -627,7 +630,7 @@ XB\+\_\+\+NO\+\_\+\+ERROR
\mbox{\Hypertarget{classxb_1_1xbString_a77195fc4957952625cb33bb503517a3e}\label{classxb_1_1xbString_a77195fc4957952625cb33bb503517a3e}}
\index{xb::xbString@{xb::xbString}!ExtractElement@{ExtractElement}}
\index{ExtractElement@{ExtractElement}!xb::xbString@{xb::xbString}}
-\doxysubsubsection{\texorpdfstring{ExtractElement()}{ExtractElement()}}
+\doxysubsubsection{\texorpdfstring{ExtractElement()}{ExtractElement()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+String\+::\+Extract\+Element (\begin{DoxyParamCaption}\item[{const char $\ast$}]{p\+Src, }\item[{char}]{c\+Delim, }\item[{xb\+UInt32}]{l\+Skip\+Cnt, }\item[{xb\+Int16}]{i\+Opt = {\ttfamily 0} }\end{DoxyParamCaption})}
@@ -649,6 +652,31 @@ Extract an element out of a delimited string.
\begin{DoxyReturn}{Returns}
Reference to string extracted from element.
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbString_a6b33a8df49cdcb76033cbce5d8dc59d7}\label{classxb_1_1xbString_a6b33a8df49cdcb76033cbce5d8dc59d7}}
+\index{xb::xbString@{xb::xbString}!ExtractElement@{ExtractElement}}
+\index{ExtractElement@{ExtractElement}!xb::xbString@{xb::xbString}}
+\doxysubsubsection{\texorpdfstring{ExtractElement()}{ExtractElement()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+String\+::\+Extract\+Element (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Src, }\item[{char}]{c\+Delim, }\item[{xb\+UInt32}]{l\+Skip\+Cnt, }\item[{xb\+Int16}]{i\+Opt = {\ttfamily 0} }\end{DoxyParamCaption})}
+
+
+
+Extract an element out of a delimited string.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Src} & Source string. \\
+\hline
+{\em c\+Delim} & Delimiter. \\
+\hline
+{\em l\+Skip\+Cnt} & Number of delimiters to skip. \\
+\hline
+{\em i\+Opt} & 0 -\/ ignore single and double quotes.~\newline
+ 1 -\/ ignore delimiters between single or double quotes. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Reference to string extracted from element.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbString_a685187a5f8401b322fc61f3fbe56330d}\label{classxb_1_1xbString_a685187a5f8401b322fc61f3fbe56330d}}
\index{xb::xbString@{xb::xbString}!GetCharacter@{GetCharacter}}
\index{GetCharacter@{GetCharacter}!xb::xbString@{xb::xbString}}
@@ -713,7 +741,7 @@ Last position of character in the string.
Get the path separator out of the string.
-\begin{DoxyReturn}{Returns}
+This method assumes the string is a valid path name. If it is, it returns either / or . \begin{DoxyReturn}{Returns}
Char value containing either / or \textbackslash{} depending on OS.
\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbString_a6c33e73659f8e98819289d2661c7271c}\label{classxb_1_1xbString_a6c33e73659f8e98819289d2661c7271c}}
@@ -1744,5 +1772,5 @@ std\+::cout \texorpdfstring{$<$}{<}\texorpdfstring{$<$}{<} My\+String \texorpdfs
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbstring_8h}{xbstring.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbstring_8cpp}{xbstring.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbstring_8h}{xbstring.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbstring_8cpp}{xbstring.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/classxb_1_1xbTblMgr.pdf b/docs/doxygen/latex/classxb_1_1xbTblMgr.pdf
index 96c128e..f31039e 100644
--- a/docs/doxygen/latex/classxb_1_1xbTblMgr.pdf
+++ b/docs/doxygen/latex/classxb_1_1xbTblMgr.pdf
Binary files differ
diff --git a/docs/doxygen/latex/classxb_1_1xbTblMgr.tex b/docs/doxygen/latex/classxb_1_1xbTblMgr.tex
index 72d1d08..bbf8bbf 100644
--- a/docs/doxygen/latex/classxb_1_1xbTblMgr.tex
+++ b/docs/doxygen/latex/classxb_1_1xbTblMgr.tex
@@ -41,14 +41,22 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_a97dfa59ab9a8e9f17454da0faceb023d}{Displa
\begin{DoxyCompactList}\small\item\em Get the default date format. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a1d803a4bfc8ba0561267a0bf9e51f7d9}{Get\+Data\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the current data directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}{Get\+Temp\+Directory}} () const
+\begin{DoxyCompactList}\small\item\em Get the current temp directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
+\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbSsv_a49cd162f066eef2b829ba7c9f6620243}{Get\+Endian\+Type}} () const
\begin{DoxyCompactList}\small\item\em Get the Endian type. \end{DoxyCompactList}\item
const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}{Get\+Error\+Message}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Get an error message. \end{DoxyCompactList}\item
+char \mbox{\hyperlink{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}{Get\+Path\+Separator}} () const
+\begin{DoxyCompactList}\small\item\em Get the OS dependent path separator. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}{Set\+Data\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Data\+Directory)
\begin{DoxyCompactList}\small\item\em Set the data directory. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a5f74db23f8902846d581935c7db73f9c}{Set\+Default\+Date\+Format}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Default\+Date\+Format)
\begin{DoxyCompactList}\small\item\em Set the default date format. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}{Set\+Temp\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Temp\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the temp directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_a62e4fd0a5888665c76bbbad962794e72}{Bit\+Set}} (unsigned char c, xb\+Int16 i\+Bit\+No) const
\begin{DoxyCompactList}\small\item\em Check a bit in a one byte field and see if it is set. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a8551b15a3ce4fa2a40d698db01f4a9ae}{Bit\+Dump}} (unsigned char c) const
@@ -59,14 +67,14 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_aba1395b8e4c7f28c3614061de6e49190}{Bit\+D
\begin{DoxyCompactList}\small\item\em Get the default auto commit setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}{Set\+Default\+Auto\+Commit}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Default\+Auto\+Commit)
\begin{DoxyCompactList}\small\item\em Set the default auto commit. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
-\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}{Get\+Log\+Directory}} () const
\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}{Get\+Log\+File\+Name}} () const
\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Directory)
\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
+\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_abd58031c5f1c3766c24d47a82e6fd9c5}{Get\+Multi\+User}} () const
\begin{DoxyCompactList}\small\item\em Get the multi user setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}{Set\+Multi\+User}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Multi\+User)
@@ -274,9 +282,6 @@ Get home directory.
{\em s\+Home\+Dir\+Out} & -\/ Output home directory for current user. \\
\hline
\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-void
-\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}\label{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}}
\index{xb::xbTblMgr@{xb::xbTblMgr}!GetLogDirectory@{GetLogDirectory}}
\index{GetLogDirectory@{GetLogDirectory}!xb::xbTblMgr@{xb::xbTblMgr}}
@@ -310,12 +315,38 @@ xb\+True -\/ Multi user mode turned on.~\newline
\doxysubsubsection{\texorpdfstring{GetOpenTableCount()}{GetOpenTableCount()}}
{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Tbl\+Mgr\+::\+Get\+Open\+Table\+Count (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}\label{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}}
+\index{xb::xbTblMgr@{xb::xbTblMgr}!GetPathSeparator@{GetPathSeparator}}
+\index{GetPathSeparator@{GetPathSeparator}!xb::xbTblMgr@{xb::xbTblMgr}}
+\doxysubsubsection{\texorpdfstring{GetPathSeparator()}{GetPathSeparator()}}
+{\footnotesize\ttfamily char xb\+::xb\+Ssv\+::\+Get\+Path\+Separator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the OS dependent path separator.
+
+\begin{DoxyReturn}{Returns}
+Returns \textquotesingle{}\textbackslash{}\textquotesingle{} for windows environment, otherwise returns \textquotesingle{}/\textquotesingle{}.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbTblMgr_acbf148ddba4297021cfb980a161ebef9}\label{classxb_1_1xbTblMgr_acbf148ddba4297021cfb980a161ebef9}}
\index{xb::xbTblMgr@{xb::xbTblMgr}!GetTblListEntry@{GetTblListEntry}}
\index{GetTblListEntry@{GetTblListEntry}!xb::xbTblMgr@{xb::xbTblMgr}}
\doxysubsubsection{\texorpdfstring{GetTblListEntry()}{GetTblListEntry()}}
{\footnotesize\ttfamily \mbox{\hyperlink{structxb_1_1xbTblList}{xb\+Tbl\+List}} $\ast$ xb\+::xb\+Tbl\+Mgr\+::\+Get\+Tbl\+List\+Entry (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classxb_1_1xbDbf}{xb\+Dbf}} $\ast$}]{d }\end{DoxyParamCaption})}
+\mbox{\Hypertarget{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}\label{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}}
+\index{xb::xbTblMgr@{xb::xbTblMgr}!GetTempDirectory@{GetTempDirectory}}
+\index{GetTempDirectory@{GetTempDirectory}!xb::xbTblMgr@{xb::xbTblMgr}}
+\doxysubsubsection{\texorpdfstring{GetTempDirectory()}{GetTempDirectory()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Temp\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the current temp directory.
+
+\begin{DoxyReturn}{Returns}
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} containing the current data directory where the database files are stored.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbTblMgr_ac8eaef41acf08911b90f900aac8e70af}\label{classxb_1_1xbTblMgr_ac8eaef41acf08911b90f900aac8e70af}}
\index{xb::xbTblMgr@{xb::xbTblMgr}!RemoveTblFromTblList@{RemoveTblFromTblList}}
\index{RemoveTblFromTblList@{RemoveTblFromTblList}!xb::xbTblMgr@{xb::xbTblMgr}}
@@ -340,7 +371,7 @@ Set the data directory.
\begin{DoxyParams}{Parameters}
-{\em s\+Data\+Directory} & Set the data direcroty. \\
+{\em s\+Data\+Directory} & Set the data directory. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}\label{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}}
@@ -393,6 +424,12 @@ This routine determines the Endian-\/ness at run time instead of compile time as
\doxysubsubsection{\texorpdfstring{SetLogDirectory()}{SetLogDirectory()}}
{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}\label{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}}
+\index{xb::xbTblMgr@{xb::xbTblMgr}!SetLogFileName@{SetLogFileName}}
+\index{SetLogFileName@{SetLogFileName}!xb::xbTblMgr@{xb::xbTblMgr}}
+\doxysubsubsection{\texorpdfstring{SetLogFileName()}{SetLogFileName()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
\mbox{\Hypertarget{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}\label{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}}
\index{xb::xbTblMgr@{xb::xbTblMgr}!SetMultiUser@{SetMultiUser}}
\index{SetMultiUser@{SetMultiUser}!xb::xbTblMgr@{xb::xbTblMgr}}
@@ -410,6 +447,21 @@ Get the multi user setting.
\\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}\label{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}}
+\index{xb::xbTblMgr@{xb::xbTblMgr}!SetTempDirectory@{SetTempDirectory}}
+\index{SetTempDirectory@{SetTempDirectory}!xb::xbTblMgr@{xb::xbTblMgr}}
+\doxysubsubsection{\texorpdfstring{SetTempDirectory()}{SetTempDirectory()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Temp\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Temp\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Set the temp directory.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Temp\+Directory} & Set the data direcroty. \\
+\hline
+\end{DoxyParams}
\doxysubsection{Field Documentation}
@@ -435,5 +487,5 @@ Get the multi user setting.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbtblmgr_8h}{xbtblmgr.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbtblmgr_8cpp}{xbtblmgr.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbtblmgr_8h}{xbtblmgr.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbtblmgr_8cpp}{xbtblmgr.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/classxb_1_1xbXBase.pdf b/docs/doxygen/latex/classxb_1_1xbXBase.pdf
index 1e5d6fd..e2b00e7 100644
--- a/docs/doxygen/latex/classxb_1_1xbXBase.pdf
+++ b/docs/doxygen/latex/classxb_1_1xbXBase.pdf
Binary files differ
diff --git a/docs/doxygen/latex/classxb_1_1xbXBase.tex b/docs/doxygen/latex/classxb_1_1xbXBase.tex
index 7159134..420cffe 100644
--- a/docs/doxygen/latex/classxb_1_1xbXBase.tex
+++ b/docs/doxygen/latex/classxb_1_1xbXBase.tex
@@ -24,16 +24,14 @@ Inheritance diagram for xb\+::xb\+XBase\+:\begin{figure}[H]
\begin{DoxyCompactList}\small\item\em Class Deconstructor. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbXBase_afccb552ca0daff779c0500ff20d22c2b}{Close\+All\+Tables}} ()
\begin{DoxyCompactList}\small\item\em Close all tables / files. \end{DoxyCompactList}\item
+xb\+Int16 \mbox{\hyperlink{classxb_1_1xbXBase_aa41240d920b604dcbd91dce7eecb78e1}{Create\+Fqn}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Dir\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Name\+In, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Ext\+In, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Fqfn\+Out)
+\begin{DoxyCompactList}\small\item\em Fully qualified file name from a directory, filename and extension. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbXBase_ae357fac4fdebdf49e46563cf611caf65}{Disable\+Msg\+Logging}} ()
\item
void \mbox{\hyperlink{classxb_1_1xbXBase_a470e6eb0ed0be60338f9b40976d3ad48}{Enable\+Msg\+Logging}} ()
\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbXBase_a5a5ecaed9777978344902446c9ae3b8e}{Flush\+Log}} ()
\item
-const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbXBase_a51d49b4d699740194b28c6ec0d0ee07b}{Get\+Log\+Directory}} () const
-\item
-const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbXBase_ac0744edf9e4aa959d8cf2daa874376af}{Get\+Log\+File\+Name}} () const
-\item
const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbXBase_ab5d63cd7d9137eba8a1d4d9c3df522b7}{Get\+Log\+Fq\+File\+Name}} () const
\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbXBase_ade34cd72c2a7e70fb55429a8a6f6c028}{Get\+Log\+Status}} () const
@@ -46,12 +44,10 @@ xb\+Int16 \mbox{\hyperlink{classxb_1_1xbXBase_afa7bbac08a4601f49cd53b457196ee0e}
\begin{DoxyCompactList}\small\item\em Open highest qualified class available for dbf file. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbDbf}{xb\+Dbf}} $\ast$ \mbox{\hyperlink{classxb_1_1xbXBase_ab35cec5ac8f0fa95f10653ca7ac817f6}{Open}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Table\+Name, const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Alias, xb\+Int16 i\+Open\+Mode, xb\+Int16 i\+Share\+Mode, xb\+Int16 i\+Version, xb\+Int16 \&i\+Rc)
\begin{DoxyCompactList}\small\item\em Open highest qualified class available for dbf file. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbXBase_a48d82dbe298c6f4cf68a63ac82dd8292}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Directory)
-\item
-void \mbox{\hyperlink{classxb_1_1xbXBase_a94010b88a309315ef980715eb581336c}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
-\item
void \mbox{\hyperlink{classxb_1_1xbXBase_a666a0cb5b76ec7a9a3677d339e0c6b42}{Set\+Log\+Size}} (size\+\_\+t l\+Size)
\item
+size\+\_\+t \mbox{\hyperlink{classxb_1_1xbXBase_aedb4c2aa2c90e4529915198a2305b355}{Get\+Log\+Size}} () const
+\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbXBase_a9ca5be73abffd0fdd18bdc799877272a}{Write\+Log\+Message}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Message, xb\+Int16 i\+Output\+Opt=0)
\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbXBase_a0dff00b9ee3c288841e137ca01168116}{Write\+Log\+Bytes}} (xb\+UInt32 l\+Cnt, const char $\ast$p)
@@ -86,14 +82,22 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_a97dfa59ab9a8e9f17454da0faceb023d}{Displa
\begin{DoxyCompactList}\small\item\em Get the default date format. \end{DoxyCompactList}\item
\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a1d803a4bfc8ba0561267a0bf9e51f7d9}{Get\+Data\+Directory}} () const
\begin{DoxyCompactList}\small\item\em Get the current data directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}{Get\+Temp\+Directory}} () const
+\begin{DoxyCompactList}\small\item\em Get the current temp directory. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
+\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
xb\+Int16 \mbox{\hyperlink{classxb_1_1xbSsv_a49cd162f066eef2b829ba7c9f6620243}{Get\+Endian\+Type}} () const
\begin{DoxyCompactList}\small\item\em Get the Endian type. \end{DoxyCompactList}\item
const char $\ast$ \mbox{\hyperlink{classxb_1_1xbSsv_a56961d2a67b8e7470098626ac4dac7e4}{Get\+Error\+Message}} (xb\+Int16 Error\+Code) const
\begin{DoxyCompactList}\small\item\em Get an error message. \end{DoxyCompactList}\item
+char \mbox{\hyperlink{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}{Get\+Path\+Separator}} () const
+\begin{DoxyCompactList}\small\item\em Get the OS dependent path separator. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a57caaaadfbd089d9a58ecfcb50c88a6c}{Set\+Data\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Data\+Directory)
\begin{DoxyCompactList}\small\item\em Set the data directory. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a5f74db23f8902846d581935c7db73f9c}{Set\+Default\+Date\+Format}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Default\+Date\+Format)
\begin{DoxyCompactList}\small\item\em Set the default date format. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}{Set\+Temp\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Temp\+Directory)
+\begin{DoxyCompactList}\small\item\em Set the temp directory. \end{DoxyCompactList}\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_a62e4fd0a5888665c76bbbad962794e72}{Bit\+Set}} (unsigned char c, xb\+Int16 i\+Bit\+No) const
\begin{DoxyCompactList}\small\item\em Check a bit in a one byte field and see if it is set. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a8551b15a3ce4fa2a40d698db01f4a9ae}{Bit\+Dump}} (unsigned char c) const
@@ -104,8 +108,14 @@ void \mbox{\hyperlink{classxb_1_1xbSsv_aba1395b8e4c7f28c3614061de6e49190}{Bit\+D
\begin{DoxyCompactList}\small\item\em Get the default auto commit setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}{Set\+Default\+Auto\+Commit}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Default\+Auto\+Commit)
\begin{DoxyCompactList}\small\item\em Set the default auto commit. \end{DoxyCompactList}\item
-void \mbox{\hyperlink{classxb_1_1xbSsv_abc9c06c95d71fbad8294e1ae8862cea9}{Get\+Home\+Dir}} (\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Home\+Dir\+Out)
-\begin{DoxyCompactList}\small\item\em Get home directory. \end{DoxyCompactList}\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}{Get\+Log\+Directory}} () const
+\item
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& \mbox{\hyperlink{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}{Get\+Log\+File\+Name}} () const
+\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}{Set\+Log\+Directory}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+Directory)
+\item
+void \mbox{\hyperlink{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}{Set\+Log\+File\+Name}} (const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Log\+File\+Name)
+\item
\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} \mbox{\hyperlink{classxb_1_1xbSsv_abd58031c5f1c3766c24d47a82e6fd9c5}{Get\+Multi\+User}} () const
\begin{DoxyCompactList}\small\item\em Get the multi user setting. \end{DoxyCompactList}\item
void \mbox{\hyperlink{classxb_1_1xbSsv_aba6e59512f7172dd55dcf92059e5928c}{Set\+Multi\+User}} (\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Multi\+User)
@@ -227,9 +237,35 @@ xb\+True Bit is set~\newline
Close all tables / files.
-This closes everything. \begin{DoxyReturn}{Returns}
+This closes everything and deletes references to the associated \mbox{\hyperlink{classxb_1_1xbDbf}{xb\+Dbf}} objects. \begin{DoxyReturn}{Returns}
\href{xbretcod_8h.html}{\texttt{ Return Codes}}
\end{DoxyReturn}
+\mbox{\Hypertarget{classxb_1_1xbXBase_aa41240d920b604dcbd91dce7eecb78e1}\label{classxb_1_1xbXBase_aa41240d920b604dcbd91dce7eecb78e1}}
+\index{xb::xbXBase@{xb::xbXBase}!CreateFqn@{CreateFqn}}
+\index{CreateFqn@{CreateFqn}!xb::xbXBase@{xb::xbXBase}}
+\doxysubsubsection{\texorpdfstring{CreateFqn()}{CreateFqn()}}
+{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+XBase\+::\+Create\+Fqn (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Dir\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Name\+In, }\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Ext\+In, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Fqn\+Out }\end{DoxyParamCaption})}
+
+
+
+Fully qualified file name from a directory, filename and extension.
+
+Given a directory, file name and file extension as inputs, create a fully qualified file name.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Dir\+In} & Directory \\
+\hline
+{\em s\+File\+In} & File Name \\
+\hline
+{\em s\+Ext\+In} & File Extension \\
+\hline
+{\em s\+Fqn\+Out} & A fully qualifed unique file name as output \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+XB\+\_\+\+INVALIED\+\_\+\+PARAMETER or XB\+\_\+\+NO\+\_\+\+ERROR
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbXBase_ae357fac4fdebdf49e46563cf611caf65}\label{classxb_1_1xbXBase_ae357fac4fdebdf49e46563cf611caf65}}
\index{xb::xbXBase@{xb::xbXBase}!DisableMsgLogging@{DisableMsgLogging}}
\index{DisableMsgLogging@{DisableMsgLogging}!xb::xbXBase@{xb::xbXBase}}
@@ -427,20 +463,17 @@ Get home directory.
{\em s\+Home\+Dir\+Out} & -\/ Output home directory for current user. \\
\hline
\end{DoxyParams}
-\begin{DoxyReturn}{Returns}
-void
-\end{DoxyReturn}
-\mbox{\Hypertarget{classxb_1_1xbXBase_a51d49b4d699740194b28c6ec0d0ee07b}\label{classxb_1_1xbXBase_a51d49b4d699740194b28c6ec0d0ee07b}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}\label{classxb_1_1xbSsv_a4822315bded3969b59aeeb683c373051}}
\index{xb::xbXBase@{xb::xbXBase}!GetLogDirectory@{GetLogDirectory}}
\index{GetLogDirectory@{GetLogDirectory}!xb::xbXBase@{xb::xbXBase}}
\doxysubsubsection{\texorpdfstring{GetLogDirectory()}{GetLogDirectory()}}
-{\footnotesize\ttfamily const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+XBase\+::\+Get\+Log\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Log\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
-\mbox{\Hypertarget{classxb_1_1xbXBase_ac0744edf9e4aa959d8cf2daa874376af}\label{classxb_1_1xbXBase_ac0744edf9e4aa959d8cf2daa874376af}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}\label{classxb_1_1xbSsv_afaef09435be73b3111f5edbd7091d861}}
\index{xb::xbXBase@{xb::xbXBase}!GetLogFileName@{GetLogFileName}}
\index{GetLogFileName@{GetLogFileName}!xb::xbXBase@{xb::xbXBase}}
\doxysubsubsection{\texorpdfstring{GetLogFileName()}{GetLogFileName()}}
-{\footnotesize\ttfamily const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+XBase\+::\+Get\+Log\+File\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Log\+File\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
\mbox{\Hypertarget{classxb_1_1xbXBase_ab5d63cd7d9137eba8a1d4d9c3df522b7}\label{classxb_1_1xbXBase_ab5d63cd7d9137eba8a1d4d9c3df522b7}}
\index{xb::xbXBase@{xb::xbXBase}!GetLogFqFileName@{GetLogFqFileName}}
@@ -448,6 +481,12 @@ void
\doxysubsubsection{\texorpdfstring{GetLogFqFileName()}{GetLogFqFileName()}}
{\footnotesize\ttfamily const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+XBase\+::\+Get\+Log\+Fq\+File\+Name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+\mbox{\Hypertarget{classxb_1_1xbXBase_aedb4c2aa2c90e4529915198a2305b355}\label{classxb_1_1xbXBase_aedb4c2aa2c90e4529915198a2305b355}}
+\index{xb::xbXBase@{xb::xbXBase}!GetLogSize@{GetLogSize}}
+\index{GetLogSize@{GetLogSize}!xb::xbXBase@{xb::xbXBase}}
+\doxysubsubsection{\texorpdfstring{GetLogSize()}{GetLogSize()}}
+{\footnotesize\ttfamily size\+\_\+t xb\+::xb\+XBase\+::\+Get\+Log\+Size (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const}
+
\mbox{\Hypertarget{classxb_1_1xbXBase_ade34cd72c2a7e70fb55429a8a6f6c028}\label{classxb_1_1xbXBase_ade34cd72c2a7e70fb55429a8a6f6c028}}
\index{xb::xbXBase@{xb::xbXBase}!GetLogStatus@{GetLogStatus}}
\index{GetLogStatus@{GetLogStatus}!xb::xbXBase@{xb::xbXBase}}
@@ -475,12 +514,38 @@ xb\+True -\/ Multi user mode turned on.~\newline
\doxysubsubsection{\texorpdfstring{GetOpenTableCount()}{GetOpenTableCount()}}
{\footnotesize\ttfamily xb\+Int16 xb\+::xb\+Tbl\+Mgr\+::\+Get\+Open\+Table\+Count (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}\label{classxb_1_1xbSsv_a63cee13b473ee13970e93b11837b9e35}}
+\index{xb::xbXBase@{xb::xbXBase}!GetPathSeparator@{GetPathSeparator}}
+\index{GetPathSeparator@{GetPathSeparator}!xb::xbXBase@{xb::xbXBase}}
+\doxysubsubsection{\texorpdfstring{GetPathSeparator()}{GetPathSeparator()}}
+{\footnotesize\ttfamily char xb\+::xb\+Ssv\+::\+Get\+Path\+Separator (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the OS dependent path separator.
+
+\begin{DoxyReturn}{Returns}
+Returns \textquotesingle{}\textbackslash{}\textquotesingle{} for windows environment, otherwise returns \textquotesingle{}/\textquotesingle{}.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbTblMgr_acbf148ddba4297021cfb980a161ebef9}\label{classxb_1_1xbTblMgr_acbf148ddba4297021cfb980a161ebef9}}
\index{xb::xbXBase@{xb::xbXBase}!GetTblListEntry@{GetTblListEntry}}
\index{GetTblListEntry@{GetTblListEntry}!xb::xbXBase@{xb::xbXBase}}
\doxysubsubsection{\texorpdfstring{GetTblListEntry()}{GetTblListEntry()}}
{\footnotesize\ttfamily \mbox{\hyperlink{structxb_1_1xbTblList}{xb\+Tbl\+List}} $\ast$ xb\+::xb\+Tbl\+Mgr\+::\+Get\+Tbl\+List\+Entry (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classxb_1_1xbDbf}{xb\+Dbf}} $\ast$}]{d }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}\label{classxb_1_1xbSsv_abfaeef85935331073d213465bb362a61}}
+\index{xb::xbXBase@{xb::xbXBase}!GetTempDirectory@{GetTempDirectory}}
+\index{GetTempDirectory@{GetTempDirectory}!xb::xbXBase@{xb::xbXBase}}
+\doxysubsubsection{\texorpdfstring{GetTempDirectory()}{GetTempDirectory()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \& xb\+::xb\+Ssv\+::\+Get\+Temp\+Directory (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Get the current temp directory.
+
+\begin{DoxyReturn}{Returns}
+\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} containing the current data directory where the database files are stored.
+\end{DoxyReturn}
\mbox{\Hypertarget{classxb_1_1xbXBase_ab35cec5ac8f0fa95f10653ca7ac817f6}\label{classxb_1_1xbXBase_ab35cec5ac8f0fa95f10653ca7ac817f6}}
\index{xb::xbXBase@{xb::xbXBase}!Open@{Open}}
\index{Open@{Open}!xb::xbXBase@{xb::xbXBase}}
@@ -560,7 +625,7 @@ Set the data directory.
\begin{DoxyParams}{Parameters}
-{\em s\+Data\+Directory} & Set the data direcroty. \\
+{\em s\+Data\+Directory} & Set the data directory. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}\label{classxb_1_1xbSsv_a25542afadaaf39b4fb5a1772a29cc0bd}}
@@ -607,17 +672,17 @@ Set the default date format.
Set the endian type.
-This routine determines the Endian-\/ness at run time instead of compile time as some processers (ie; Sparc,ARM) can be switched either way. This routine is called automatically by the library at startup and does not need to be called in an application program. \mbox{\Hypertarget{classxb_1_1xbXBase_a48d82dbe298c6f4cf68a63ac82dd8292}\label{classxb_1_1xbXBase_a48d82dbe298c6f4cf68a63ac82dd8292}}
+This routine determines the Endian-\/ness at run time instead of compile time as some processers (ie; Sparc,ARM) can be switched either way. This routine is called automatically by the library at startup and does not need to be called in an application program. \mbox{\Hypertarget{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}\label{classxb_1_1xbSsv_a7b992ed97281bf25b5b66f5df686225e}}
\index{xb::xbXBase@{xb::xbXBase}!SetLogDirectory@{SetLogDirectory}}
\index{SetLogDirectory@{SetLogDirectory}!xb::xbXBase@{xb::xbXBase}}
\doxysubsubsection{\texorpdfstring{SetLogDirectory()}{SetLogDirectory()}}
-{\footnotesize\ttfamily void xb\+::xb\+XBase\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Directory }\end{DoxyParamCaption})}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
-\mbox{\Hypertarget{classxb_1_1xbXBase_a94010b88a309315ef980715eb581336c}\label{classxb_1_1xbXBase_a94010b88a309315ef980715eb581336c}}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}\label{classxb_1_1xbSsv_a7f05738e7dfd759e89990242ef503544}}
\index{xb::xbXBase@{xb::xbXBase}!SetLogFileName@{SetLogFileName}}
\index{SetLogFileName@{SetLogFileName}!xb::xbXBase@{xb::xbXBase}}
\doxysubsubsection{\texorpdfstring{SetLogFileName()}{SetLogFileName()}}
-{\footnotesize\ttfamily void xb\+::xb\+XBase\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Log\+File\+Name (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Log\+File\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
\mbox{\Hypertarget{classxb_1_1xbXBase_a666a0cb5b76ec7a9a3677d339e0c6b42}\label{classxb_1_1xbXBase_a666a0cb5b76ec7a9a3677d339e0c6b42}}
\index{xb::xbXBase@{xb::xbXBase}!SetLogSize@{SetLogSize}}
@@ -642,6 +707,21 @@ Get the multi user setting.
\\
\hline
\end{DoxyParams}
+\mbox{\Hypertarget{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}\label{classxb_1_1xbSsv_a17c229a20ef9ab4034df8f9cd657adb2}}
+\index{xb::xbXBase@{xb::xbXBase}!SetTempDirectory@{SetTempDirectory}}
+\index{SetTempDirectory@{SetTempDirectory}!xb::xbXBase@{xb::xbXBase}}
+\doxysubsubsection{\texorpdfstring{SetTempDirectory()}{SetTempDirectory()}}
+{\footnotesize\ttfamily void xb\+::xb\+Ssv\+::\+Set\+Temp\+Directory (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Temp\+Directory }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inherited]}}
+
+
+
+Set the temp directory.
+
+
+\begin{DoxyParams}{Parameters}
+{\em s\+Temp\+Directory} & Set the data direcroty. \\
+\hline
+\end{DoxyParams}
\mbox{\Hypertarget{classxb_1_1xbXBase_a0dff00b9ee3c288841e137ca01168116}\label{classxb_1_1xbXBase_a0dff00b9ee3c288841e137ca01168116}}
\index{xb::xbXBase@{xb::xbXBase}!WriteLogBytes@{WriteLogBytes}}
\index{WriteLogBytes@{WriteLogBytes}!xb::xbXBase@{xb::xbXBase}}
@@ -733,5 +813,5 @@ Cross platform sleep function.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbxbase_8h}{xbxbase.\+h}}\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbxbase_8cpp}{xbxbase.\+cpp}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbxbase_8h}{xbxbase.\+h}}\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbxbase_8cpp}{xbxbase.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/dir_25b94c3afce00ed38231227d8141f932.tex b/docs/doxygen/latex/dir_25b94c3afce00ed38231227d8141f932.tex
index 94a598e..640eef3 100644
--- a/docs/doxygen/latex/dir_25b94c3afce00ed38231227d8141f932.tex
+++ b/docs/doxygen/latex/dir_25b94c3afce00ed38231227d8141f932.tex
@@ -1,16 +1,14 @@
-\hypertarget{dir_25b94c3afce00ed38231227d8141f932}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql Directory Reference}
-\label{dir_25b94c3afce00ed38231227d8141f932}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql Directory Reference}}
+\hypertarget{dir_25b94c3afce00ed38231227d8141f932}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql Directory Reference}
+\label{dir_25b94c3afce00ed38231227d8141f932}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql Directory Reference}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item
file \mbox{\hyperlink{xbalttbl_8cpp}{xbalttbl.\+cpp}}
\item
-file \mbox{\hyperlink{xbcrix_8cpp}{xbcrix.\+cpp}}
+file \mbox{\hyperlink{sql_2xbcrix_8cpp}{xbcrix.\+cpp}}
\item
file \mbox{\hyperlink{xbcrtbl_8cpp}{xbcrtbl.\+cpp}}
\item
-file \mbox{\hyperlink{xbcrtbl_8save_8cpp}{xbcrtbl.\+save.\+cpp}}
-\item
file \mbox{\hyperlink{xbdelete_8cpp}{xbdelete.\+cpp}}
\item
file \mbox{\hyperlink{xbdrpix_8cpp}{xbdrpix.\+cpp}}
diff --git a/docs/doxygen/latex/dir_313caf1132e152dd9b58bea13a4052ca.tex b/docs/doxygen/latex/dir_313caf1132e152dd9b58bea13a4052ca.tex
index 4668464..a9d4086 100644
--- a/docs/doxygen/latex/dir_313caf1132e152dd9b58bea13a4052ca.tex
+++ b/docs/doxygen/latex/dir_313caf1132e152dd9b58bea13a4052ca.tex
@@ -1,5 +1,5 @@
-\hypertarget{dir_313caf1132e152dd9b58bea13a4052ca}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils Directory Reference}
-\label{dir_313caf1132e152dd9b58bea13a4052ca}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils Directory Reference}}
+\hypertarget{dir_313caf1132e152dd9b58bea13a4052ca}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils Directory Reference}
+\label{dir_313caf1132e152dd9b58bea13a4052ca}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils Directory Reference}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item
@@ -17,6 +17,8 @@ file \mbox{\hyperlink{xb__dumprecs_8cpp}{xb\+\_\+dumprecs.\+cpp}}
\item
file \mbox{\hyperlink{xb__execsql_8cpp}{xb\+\_\+execsql.\+cpp}}
\item
+file \mbox{\hyperlink{xb__import_8cpp}{xb\+\_\+import.\+cpp}}
+\item
file \mbox{\hyperlink{xb__pack_8cpp}{xb\+\_\+pack.\+cpp}}
\item
file \mbox{\hyperlink{xb__tblinfo_8cpp}{xb\+\_\+tblinfo.\+cpp}}
diff --git a/docs/doxygen/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex b/docs/doxygen/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex
index 935234e..134f23a 100644
--- a/docs/doxygen/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex
+++ b/docs/doxygen/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex
@@ -1,5 +1,5 @@
-\hypertarget{dir_68267d1309a1af8e8297ef4c3efbcdba}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src Directory Reference}
-\label{dir_68267d1309a1af8e8297ef4c3efbcdba}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src Directory Reference}}
+\hypertarget{dir_68267d1309a1af8e8297ef4c3efbcdba}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src Directory Reference}
+\label{dir_68267d1309a1af8e8297ef4c3efbcdba}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src Directory Reference}}
\doxysubsection*{Directories}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/dir_aebb8dcc11953d78e620bbef0b9e2183.tex b/docs/doxygen/latex/dir_aebb8dcc11953d78e620bbef0b9e2183.tex
index 85ce0c9..7dcdd4d 100644
--- a/docs/doxygen/latex/dir_aebb8dcc11953d78e620bbef0b9e2183.tex
+++ b/docs/doxygen/latex/dir_aebb8dcc11953d78e620bbef0b9e2183.tex
@@ -1,5 +1,5 @@
-\hypertarget{dir_aebb8dcc11953d78e620bbef0b9e2183}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core Directory Reference}
-\label{dir_aebb8dcc11953d78e620bbef0b9e2183}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core Directory Reference}}
+\hypertarget{dir_aebb8dcc11953d78e620bbef0b9e2183}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core Directory Reference}
+\label{dir_aebb8dcc11953d78e620bbef0b9e2183}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core Directory Reference}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item
@@ -33,6 +33,8 @@ file \mbox{\hyperlink{xbixmdx_8cpp}{xbixmdx.\+cpp}}
\item
file \mbox{\hyperlink{xbixndx_8cpp}{xbixndx.\+cpp}}
\item
+file \mbox{\hyperlink{xbixtdx_8cpp}{xbixtdx.\+cpp}}
+\item
file \mbox{\hyperlink{xblog_8cpp}{xblog.\+cpp}}
\item
file \mbox{\hyperlink{xbmemo_8cpp}{xbmemo.\+cpp}}
diff --git a/docs/doxygen/latex/dir_b0856f6b0d80ccb263b2f415c91f9e17.tex b/docs/doxygen/latex/dir_b0856f6b0d80ccb263b2f415c91f9e17.tex
index 539439f..48ddc2a 100644
--- a/docs/doxygen/latex/dir_b0856f6b0d80ccb263b2f415c91f9e17.tex
+++ b/docs/doxygen/latex/dir_b0856f6b0d80ccb263b2f415c91f9e17.tex
@@ -1,5 +1,5 @@
-\hypertarget{dir_b0856f6b0d80ccb263b2f415c91f9e17}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include Directory Reference}
-\label{dir_b0856f6b0d80ccb263b2f415c91f9e17}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include Directory Reference}}
+\hypertarget{dir_b0856f6b0d80ccb263b2f415c91f9e17}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include Directory Reference}
+\label{dir_b0856f6b0d80ccb263b2f415c91f9e17}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include Directory Reference}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item
@@ -9,6 +9,8 @@ file \mbox{\hyperlink{xbbcd_8h}{xbbcd.\+h}}
\item
file \mbox{\hyperlink{xbblkread_8h}{xbblkread.\+h}}
\item
+file \mbox{\hyperlink{include_2xbcrix_8cpp}{xbcrix.\+cpp}}
+\item
file \mbox{\hyperlink{xbdate_8h}{xbdate.\+h}}
\item
file \mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}}
diff --git a/docs/doxygen/latex/dir_d93a1d4020dea85bb71b237545b5e722.tex b/docs/doxygen/latex/dir_d93a1d4020dea85bb71b237545b5e722.tex
index 1fceb7c..5534e90 100644
--- a/docs/doxygen/latex/dir_d93a1d4020dea85bb71b237545b5e722.tex
+++ b/docs/doxygen/latex/dir_d93a1d4020dea85bb71b237545b5e722.tex
@@ -1,5 +1,5 @@
-\hypertarget{dir_d93a1d4020dea85bb71b237545b5e722}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests Directory Reference}
-\label{dir_d93a1d4020dea85bb71b237545b5e722}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests Directory Reference}}
+\hypertarget{dir_d93a1d4020dea85bb71b237545b5e722}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests Directory Reference}
+\label{dir_d93a1d4020dea85bb71b237545b5e722}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests Directory Reference}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item
@@ -47,6 +47,8 @@ file \mbox{\hyperlink{xb__test__string_8cpp}{xb\+\_\+test\+\_\+string.\+cpp}}
\item
file \mbox{\hyperlink{xb__test__tblmgr_8cpp}{xb\+\_\+test\+\_\+tblmgr.\+cpp}}
\item
+file \mbox{\hyperlink{xb__test__tdx_8cpp}{xb\+\_\+test\+\_\+tdx.\+cpp}}
+\item
file \mbox{\hyperlink{xb__test__uda_8cpp}{xb\+\_\+test\+\_\+uda.\+cpp}}
\item
file \mbox{\hyperlink{xb__test__xbase_8cpp}{xb\+\_\+test\+\_\+xbase.\+cpp}}
diff --git a/docs/doxygen/latex/dir_e931c1a3f0014e624d0645a271726ad2.tex b/docs/doxygen/latex/dir_e931c1a3f0014e624d0645a271726ad2.tex
index 6d87543..f1faa43 100644
--- a/docs/doxygen/latex/dir_e931c1a3f0014e624d0645a271726ad2.tex
+++ b/docs/doxygen/latex/dir_e931c1a3f0014e624d0645a271726ad2.tex
@@ -1,5 +1,5 @@
-\hypertarget{dir_e931c1a3f0014e624d0645a271726ad2}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples Directory Reference}
-\label{dir_e931c1a3f0014e624d0645a271726ad2}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples Directory Reference}}
+\hypertarget{dir_e931c1a3f0014e624d0645a271726ad2}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples Directory Reference}
+\label{dir_e931c1a3f0014e624d0645a271726ad2}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples Directory Reference@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples Directory Reference}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item
@@ -7,6 +7,8 @@ file \mbox{\hyperlink{xb__ex__date_8cpp}{xb\+\_\+ex\+\_\+date.\+cpp}}
\item
file \mbox{\hyperlink{xb__ex__expression_8cpp}{xb\+\_\+ex\+\_\+expression.\+cpp}}
\item
+file \mbox{\hyperlink{xb__ex__log_8cpp}{xb\+\_\+ex\+\_\+log.\+cpp}}
+\item
file \mbox{\hyperlink{xb__ex__sql_8cpp}{xb\+\_\+ex\+\_\+sql.\+cpp}}
\item
file \mbox{\hyperlink{xb__ex__ssv_8cpp}{xb\+\_\+ex\+\_\+ssv.\+cpp}}
diff --git a/docs/doxygen/latex/files.tex b/docs/doxygen/latex/files.tex
index aae1da4..cfb7be3 100644
--- a/docs/doxygen/latex/files.tex
+++ b/docs/doxygen/latex/files.tex
@@ -1,107 +1,111 @@
\doxysection{File List}
Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbbcd_8cpp}{xbbcd.\+cpp}} }{\pageref{xbbcd_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbblockread_8cpp}{xbblockread.\+cpp}} }{\pageref{xbblockread_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbdate_8cpp}{xbdate.\+cpp}} }{\pageref{xbdate_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbdbf_8cpp}{xbdbf.\+cpp}} }{\pageref{xbdbf_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbdbf3_8cpp}{xbdbf3.\+cpp}} }{\pageref{xbdbf3_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbdbf4_8cpp}{xbdbf4.\+cpp}} }{\pageref{xbdbf4_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbexp_8cpp}{xbexp.\+cpp}} }{\pageref{xbexp_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbexpnode_8cpp}{xbexpnode.\+cpp}} }{\pageref{xbexpnode_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbfields_8cpp}{xbfields.\+cpp}} }{\pageref{xbfields_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbfile_8cpp}{xbfile.\+cpp}} }{\pageref{xbfile_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbfilter_8cpp}{xbfilter.\+cpp}} }{\pageref{xbfilter_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbfuncs_8cpp}{xbfuncs.\+cpp}} }{\pageref{xbfuncs_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbixbase_8cpp}{xbixbase.\+cpp}} }{\pageref{xbixbase_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbixmdx_8cpp}{xbixmdx.\+cpp}} }{\pageref{xbixmdx_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbixndx_8cpp}{xbixndx.\+cpp}} }{\pageref{xbixndx_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xblog_8cpp}{xblog.\+cpp}} }{\pageref{xblog_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbmemo_8cpp}{xbmemo.\+cpp}} }{\pageref{xbmemo_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbmemo3_8cpp}{xbmemo3.\+cpp}} }{\pageref{xbmemo3_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbmemo4_8cpp}{xbmemo4.\+cpp}} }{\pageref{xbmemo4_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbssv_8cpp}{xbssv.\+cpp}} }{\pageref{xbssv_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbstring_8cpp}{xbstring.\+cpp}} }{\pageref{xbstring_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbtag_8cpp}{xbtag.\+cpp}} }{\pageref{xbtag_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbtblmgr_8cpp}{xbtblmgr.\+cpp}} }{\pageref{xbtblmgr_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbuda_8cpp}{xbuda.\+cpp}} }{\pageref{xbuda_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/core/\mbox{\hyperlink{xbxbase_8cpp}{xbxbase.\+cpp}} }{\pageref{xbxbase_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__date_8cpp}{xb\+\_\+ex\+\_\+date.\+cpp}} }{\pageref{xb__ex__date_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__expression_8cpp}{xb\+\_\+ex\+\_\+expression.\+cpp}} }{\pageref{xb__ex__expression_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__sql_8cpp}{xb\+\_\+ex\+\_\+sql.\+cpp}} }{\pageref{xb__ex__sql_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__ssv_8cpp}{xb\+\_\+ex\+\_\+ssv.\+cpp}} }{\pageref{xb__ex__ssv_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__string_8cpp}{xb\+\_\+ex\+\_\+string.\+cpp}} }{\pageref{xb__ex__string_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__v3__create__dbf_8cpp}{xb\+\_\+ex\+\_\+v3\+\_\+create\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v3__create__dbf_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__v3__upd__dbf_8cpp}{xb\+\_\+ex\+\_\+v3\+\_\+upd\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v3__upd__dbf_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__v4__create__dbf_8cpp}{xb\+\_\+ex\+\_\+v4\+\_\+create\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v4__create__dbf_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/examples/\mbox{\hyperlink{xb__ex__v4__upd__dbf_8cpp}{xb\+\_\+ex\+\_\+v4\+\_\+upd\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v4__upd__dbf_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbase_8h}{xbase.\+h}} }{\pageref{xbase_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbbcd_8h}{xbbcd.\+h}} }{\pageref{xbbcd_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbblkread_8h}{xbblkread.\+h}} }{\pageref{xbblkread_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbdate_8h}{xbdate.\+h}} }{\pageref{xbdate_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}} }{\pageref{xbdbf_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbexp_8h}{xbexp.\+h}} }{\pageref{xbexp_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbexpnode_8h}{xbexpnode.\+h}} }{\pageref{xbexpnode_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbfile_8h}{xbfile.\+h}} }{\pageref{xbfile_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbfilter_8h}{xbfilter.\+h}} }{\pageref{xbfilter_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbindex_8h}{xbindex.\+h}} }{\pageref{xbindex_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xblnklst_8h}{xblnklst.\+h}} }{\pageref{xblnklst_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xblnklstord_8h}{xblnklstord.\+h}} }{\pageref{xblnklstord_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xblnknod_8h}{xblnknod.\+h}} }{\pageref{xblnknod_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xblog_8h}{xblog.\+h}} }{\pageref{xblog_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbmemo_8h}{xbmemo.\+h}} }{\pageref{xbmemo_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbretcod_8h}{xbretcod.\+h}} }{\pageref{xbretcod_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbsql_8h}{xbsql.\+h}} }{\pageref{xbsql_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbssv_8h}{xbssv.\+h}} }{\pageref{xbssv_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbstring_8h}{xbstring.\+h}} }{\pageref{xbstring_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbtag_8h}{xbtag.\+h}} }{\pageref{xbtag_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbtblmgr_8h}{xbtblmgr.\+h}} }{\pageref{xbtblmgr_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbtypes_8h}{xbtypes.\+h}} }{\pageref{xbtypes_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbuda_8h}{xbuda.\+h}} }{\pageref{xbuda_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbxbase_8h}{xbxbase.\+h}} }{\pageref{xbxbase_8h}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbalttbl_8cpp}{xbalttbl.\+cpp}} }{\pageref{xbalttbl_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbcrix_8cpp}{xbcrix.\+cpp}} }{\pageref{xbcrix_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbcrtbl_8cpp}{xbcrtbl.\+cpp}} }{\pageref{xbcrtbl_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbcrtbl_8save_8cpp}{xbcrtbl.\+save.\+cpp}} }{\pageref{xbcrtbl_8save_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbdelete_8cpp}{xbdelete.\+cpp}} }{\pageref{xbdelete_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbdrpix_8cpp}{xbdrpix.\+cpp}} }{\pageref{xbdrpix_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbdrptbl_8cpp}{xbdrptbl.\+cpp}} }{\pageref{xbdrptbl_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbinsert_8cpp}{xbinsert.\+cpp}} }{\pageref{xbinsert_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbselect_8cpp}{xbselect.\+cpp}} }{\pageref{xbselect_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbset_8cpp}{xbset.\+cpp}} }{\pageref{xbset_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbsql_8cpp}{xbsql.\+cpp}} }{\pageref{xbsql_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/sql/\mbox{\hyperlink{xbstmt_8cpp}{xbstmt.\+cpp}} }{\pageref{xbstmt_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{tstfuncs_8cpp}{tstfuncs.\+cpp}} }{\pageref{tstfuncs_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__bcd_8cpp}{xb\+\_\+test\+\_\+bcd.\+cpp}} }{\pageref{xb__test__bcd_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__blockread_8cpp}{xb\+\_\+test\+\_\+blockread.\+cpp}} }{\pageref{xb__test__blockread_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__date_8cpp}{xb\+\_\+test\+\_\+date.\+cpp}} }{\pageref{xb__test__date_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__dbf__v3__memos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+memos.\+cpp}} }{\pageref{xb__test__dbf__v3__memos_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__dbf__v3__nomemos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+nomemos.\+cpp}} }{\pageref{xb__test__dbf__v3__nomemos_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__dbf__v4__memos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+memos.\+cpp}} }{\pageref{xb__test__dbf__v4__memos_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__dbf__v4__nomemos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+nomemos.\+cpp}} }{\pageref{xb__test__dbf__v4__nomemos_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__expnode_8cpp}{xb\+\_\+test\+\_\+expnode.\+cpp}} }{\pageref{xb__test__expnode_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__expression_8cpp}{xb\+\_\+test\+\_\+expression.\+cpp}} }{\pageref{xb__test__expression_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__file_8cpp}{xb\+\_\+test\+\_\+file.\+cpp}} }{\pageref{xb__test__file_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__filter_8cpp}{xb\+\_\+test\+\_\+filter.\+cpp}} }{\pageref{xb__test__filter_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__funcs_8cpp}{xb\+\_\+test\+\_\+funcs.\+cpp}} }{\pageref{xb__test__funcs_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__linklist_8cpp}{xb\+\_\+test\+\_\+linklist.\+cpp}} }{\pageref{xb__test__linklist_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__lock_8cpp}{xb\+\_\+test\+\_\+lock.\+cpp}} }{\pageref{xb__test__lock_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__lock2_8cpp}{xb\+\_\+test\+\_\+lock2.\+cpp}} }{\pageref{xb__test__lock2_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__log_8cpp}{xb\+\_\+test\+\_\+log.\+cpp}} }{\pageref{xb__test__log_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__mdx_8cpp}{xb\+\_\+test\+\_\+mdx.\+cpp}} }{\pageref{xb__test__mdx_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__ndx_8cpp}{xb\+\_\+test\+\_\+ndx.\+cpp}} }{\pageref{xb__test__ndx_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__sql_8cpp}{xb\+\_\+test\+\_\+sql.\+cpp}} }{\pageref{xb__test__sql_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__string_8cpp}{xb\+\_\+test\+\_\+string.\+cpp}} }{\pageref{xb__test__string_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__tblmgr_8cpp}{xb\+\_\+test\+\_\+tblmgr.\+cpp}} }{\pageref{xb__test__tblmgr_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__uda_8cpp}{xb\+\_\+test\+\_\+uda.\+cpp}} }{\pageref{xb__test__uda_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/tests/\mbox{\hyperlink{xb__test__xbase_8cpp}{xb\+\_\+test\+\_\+xbase.\+cpp}} }{\pageref{xb__test__xbase_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__cfg__check_8cpp}{xb\+\_\+cfg\+\_\+check.\+cpp}} }{\pageref{xb__cfg__check_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__copydbf_8cpp}{xb\+\_\+copydbf.\+cpp}} }{\pageref{xb__copydbf_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__dbfutil_8cpp}{xb\+\_\+dbfutil.\+cpp}} }{\pageref{xb__dbfutil_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__deletall_8cpp}{xb\+\_\+deletall.\+cpp}} }{\pageref{xb__deletall_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__dumpdbt_8cpp}{xb\+\_\+dumpdbt.\+cpp}} }{\pageref{xb__dumpdbt_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__dumprecs_8cpp}{xb\+\_\+dumprecs.\+cpp}} }{\pageref{xb__dumprecs_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__execsql_8cpp}{xb\+\_\+execsql.\+cpp}} }{\pageref{xb__execsql_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__pack_8cpp}{xb\+\_\+pack.\+cpp}} }{\pageref{xb__pack_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__tblinfo_8cpp}{xb\+\_\+tblinfo.\+cpp}} }{\pageref{xb__tblinfo_8cpp}}{}
-\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/utils/\mbox{\hyperlink{xb__undelall_8cpp}{xb\+\_\+undelall.\+cpp}} }{\pageref{xb__undelall_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbbcd_8cpp}{xbbcd.\+cpp}} }{\pageref{xbbcd_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbblockread_8cpp}{xbblockread.\+cpp}} }{\pageref{xbblockread_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbdate_8cpp}{xbdate.\+cpp}} }{\pageref{xbdate_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbdbf_8cpp}{xbdbf.\+cpp}} }{\pageref{xbdbf_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbdbf3_8cpp}{xbdbf3.\+cpp}} }{\pageref{xbdbf3_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbdbf4_8cpp}{xbdbf4.\+cpp}} }{\pageref{xbdbf4_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbexp_8cpp}{xbexp.\+cpp}} }{\pageref{xbexp_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbexpnode_8cpp}{xbexpnode.\+cpp}} }{\pageref{xbexpnode_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbfields_8cpp}{xbfields.\+cpp}} }{\pageref{xbfields_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbfile_8cpp}{xbfile.\+cpp}} }{\pageref{xbfile_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbfilter_8cpp}{xbfilter.\+cpp}} }{\pageref{xbfilter_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbfuncs_8cpp}{xbfuncs.\+cpp}} }{\pageref{xbfuncs_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbixbase_8cpp}{xbixbase.\+cpp}} }{\pageref{xbixbase_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbixmdx_8cpp}{xbixmdx.\+cpp}} }{\pageref{xbixmdx_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbixndx_8cpp}{xbixndx.\+cpp}} }{\pageref{xbixndx_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbixtdx_8cpp}{xbixtdx.\+cpp}} }{\pageref{xbixtdx_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xblog_8cpp}{xblog.\+cpp}} }{\pageref{xblog_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbmemo_8cpp}{xbmemo.\+cpp}} }{\pageref{xbmemo_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbmemo3_8cpp}{xbmemo3.\+cpp}} }{\pageref{xbmemo3_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbmemo4_8cpp}{xbmemo4.\+cpp}} }{\pageref{xbmemo4_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbssv_8cpp}{xbssv.\+cpp}} }{\pageref{xbssv_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbstring_8cpp}{xbstring.\+cpp}} }{\pageref{xbstring_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbtag_8cpp}{xbtag.\+cpp}} }{\pageref{xbtag_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbtblmgr_8cpp}{xbtblmgr.\+cpp}} }{\pageref{xbtblmgr_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbuda_8cpp}{xbuda.\+cpp}} }{\pageref{xbuda_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/core/\mbox{\hyperlink{xbxbase_8cpp}{xbxbase.\+cpp}} }{\pageref{xbxbase_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__date_8cpp}{xb\+\_\+ex\+\_\+date.\+cpp}} }{\pageref{xb__ex__date_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__expression_8cpp}{xb\+\_\+ex\+\_\+expression.\+cpp}} }{\pageref{xb__ex__expression_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__log_8cpp}{xb\+\_\+ex\+\_\+log.\+cpp}} }{\pageref{xb__ex__log_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__sql_8cpp}{xb\+\_\+ex\+\_\+sql.\+cpp}} }{\pageref{xb__ex__sql_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__ssv_8cpp}{xb\+\_\+ex\+\_\+ssv.\+cpp}} }{\pageref{xb__ex__ssv_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__string_8cpp}{xb\+\_\+ex\+\_\+string.\+cpp}} }{\pageref{xb__ex__string_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__v3__create__dbf_8cpp}{xb\+\_\+ex\+\_\+v3\+\_\+create\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v3__create__dbf_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__v3__upd__dbf_8cpp}{xb\+\_\+ex\+\_\+v3\+\_\+upd\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v3__upd__dbf_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__v4__create__dbf_8cpp}{xb\+\_\+ex\+\_\+v4\+\_\+create\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v4__create__dbf_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/examples/\mbox{\hyperlink{xb__ex__v4__upd__dbf_8cpp}{xb\+\_\+ex\+\_\+v4\+\_\+upd\+\_\+dbf.\+cpp}} }{\pageref{xb__ex__v4__upd__dbf_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbase_8h}{xbase.\+h}} }{\pageref{xbase_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbbcd_8h}{xbbcd.\+h}} }{\pageref{xbbcd_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbblkread_8h}{xbblkread.\+h}} }{\pageref{xbblkread_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{include_2xbcrix_8cpp}{xbcrix.\+cpp}} }{\pageref{include_2xbcrix_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbdate_8h}{xbdate.\+h}} }{\pageref{xbdate_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}} }{\pageref{xbdbf_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbexp_8h}{xbexp.\+h}} }{\pageref{xbexp_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbexpnode_8h}{xbexpnode.\+h}} }{\pageref{xbexpnode_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbfile_8h}{xbfile.\+h}} }{\pageref{xbfile_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbfilter_8h}{xbfilter.\+h}} }{\pageref{xbfilter_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbindex_8h}{xbindex.\+h}} }{\pageref{xbindex_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xblnklst_8h}{xblnklst.\+h}} }{\pageref{xblnklst_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xblnklstord_8h}{xblnklstord.\+h}} }{\pageref{xblnklstord_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xblnknod_8h}{xblnknod.\+h}} }{\pageref{xblnknod_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xblog_8h}{xblog.\+h}} }{\pageref{xblog_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbmemo_8h}{xbmemo.\+h}} }{\pageref{xbmemo_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbretcod_8h}{xbretcod.\+h}} }{\pageref{xbretcod_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbsql_8h}{xbsql.\+h}} }{\pageref{xbsql_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbssv_8h}{xbssv.\+h}} }{\pageref{xbssv_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbstring_8h}{xbstring.\+h}} }{\pageref{xbstring_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbtag_8h}{xbtag.\+h}} }{\pageref{xbtag_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbtblmgr_8h}{xbtblmgr.\+h}} }{\pageref{xbtblmgr_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbtypes_8h}{xbtypes.\+h}} }{\pageref{xbtypes_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbuda_8h}{xbuda.\+h}} }{\pageref{xbuda_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbxbase_8h}{xbxbase.\+h}} }{\pageref{xbxbase_8h}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbalttbl_8cpp}{xbalttbl.\+cpp}} }{\pageref{xbalttbl_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{sql_2xbcrix_8cpp}{xbcrix.\+cpp}} }{\pageref{sql_2xbcrix_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbcrtbl_8cpp}{xbcrtbl.\+cpp}} }{\pageref{xbcrtbl_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbdelete_8cpp}{xbdelete.\+cpp}} }{\pageref{xbdelete_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbdrpix_8cpp}{xbdrpix.\+cpp}} }{\pageref{xbdrpix_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbdrptbl_8cpp}{xbdrptbl.\+cpp}} }{\pageref{xbdrptbl_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbinsert_8cpp}{xbinsert.\+cpp}} }{\pageref{xbinsert_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbselect_8cpp}{xbselect.\+cpp}} }{\pageref{xbselect_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbset_8cpp}{xbset.\+cpp}} }{\pageref{xbset_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbsql_8cpp}{xbsql.\+cpp}} }{\pageref{xbsql_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/sql/\mbox{\hyperlink{xbstmt_8cpp}{xbstmt.\+cpp}} }{\pageref{xbstmt_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{tstfuncs_8cpp}{tstfuncs.\+cpp}} }{\pageref{tstfuncs_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__bcd_8cpp}{xb\+\_\+test\+\_\+bcd.\+cpp}} }{\pageref{xb__test__bcd_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__blockread_8cpp}{xb\+\_\+test\+\_\+blockread.\+cpp}} }{\pageref{xb__test__blockread_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__date_8cpp}{xb\+\_\+test\+\_\+date.\+cpp}} }{\pageref{xb__test__date_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__dbf__v3__memos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+memos.\+cpp}} }{\pageref{xb__test__dbf__v3__memos_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__dbf__v3__nomemos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+nomemos.\+cpp}} }{\pageref{xb__test__dbf__v3__nomemos_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__dbf__v4__memos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+memos.\+cpp}} }{\pageref{xb__test__dbf__v4__memos_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__dbf__v4__nomemos_8cpp}{xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+nomemos.\+cpp}} }{\pageref{xb__test__dbf__v4__nomemos_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__expnode_8cpp}{xb\+\_\+test\+\_\+expnode.\+cpp}} }{\pageref{xb__test__expnode_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__expression_8cpp}{xb\+\_\+test\+\_\+expression.\+cpp}} }{\pageref{xb__test__expression_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__file_8cpp}{xb\+\_\+test\+\_\+file.\+cpp}} }{\pageref{xb__test__file_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__filter_8cpp}{xb\+\_\+test\+\_\+filter.\+cpp}} }{\pageref{xb__test__filter_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__funcs_8cpp}{xb\+\_\+test\+\_\+funcs.\+cpp}} }{\pageref{xb__test__funcs_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__linklist_8cpp}{xb\+\_\+test\+\_\+linklist.\+cpp}} }{\pageref{xb__test__linklist_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__lock_8cpp}{xb\+\_\+test\+\_\+lock.\+cpp}} }{\pageref{xb__test__lock_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__lock2_8cpp}{xb\+\_\+test\+\_\+lock2.\+cpp}} }{\pageref{xb__test__lock2_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__log_8cpp}{xb\+\_\+test\+\_\+log.\+cpp}} }{\pageref{xb__test__log_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__mdx_8cpp}{xb\+\_\+test\+\_\+mdx.\+cpp}} }{\pageref{xb__test__mdx_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__ndx_8cpp}{xb\+\_\+test\+\_\+ndx.\+cpp}} }{\pageref{xb__test__ndx_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__sql_8cpp}{xb\+\_\+test\+\_\+sql.\+cpp}} }{\pageref{xb__test__sql_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__string_8cpp}{xb\+\_\+test\+\_\+string.\+cpp}} }{\pageref{xb__test__string_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__tblmgr_8cpp}{xb\+\_\+test\+\_\+tblmgr.\+cpp}} }{\pageref{xb__test__tblmgr_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__tdx_8cpp}{xb\+\_\+test\+\_\+tdx.\+cpp}} }{\pageref{xb__test__tdx_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__uda_8cpp}{xb\+\_\+test\+\_\+uda.\+cpp}} }{\pageref{xb__test__uda_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/tests/\mbox{\hyperlink{xb__test__xbase_8cpp}{xb\+\_\+test\+\_\+xbase.\+cpp}} }{\pageref{xb__test__xbase_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__cfg__check_8cpp}{xb\+\_\+cfg\+\_\+check.\+cpp}} }{\pageref{xb__cfg__check_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__copydbf_8cpp}{xb\+\_\+copydbf.\+cpp}} }{\pageref{xb__copydbf_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__dbfutil_8cpp}{xb\+\_\+dbfutil.\+cpp}} }{\pageref{xb__dbfutil_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__deletall_8cpp}{xb\+\_\+deletall.\+cpp}} }{\pageref{xb__deletall_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__dumpdbt_8cpp}{xb\+\_\+dumpdbt.\+cpp}} }{\pageref{xb__dumpdbt_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__dumprecs_8cpp}{xb\+\_\+dumprecs.\+cpp}} }{\pageref{xb__dumprecs_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__execsql_8cpp}{xb\+\_\+execsql.\+cpp}} }{\pageref{xb__execsql_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__import_8cpp}{xb\+\_\+import.\+cpp}} }{\pageref{xb__import_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__pack_8cpp}{xb\+\_\+pack.\+cpp}} }{\pageref{xb__pack_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__tblinfo_8cpp}{xb\+\_\+tblinfo.\+cpp}} }{\pageref{xb__tblinfo_8cpp}}{}
+\item\contentsline{section}{/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__undelall_8cpp}{xb\+\_\+undelall.\+cpp}} }{\pageref{xb__undelall_8cpp}}{}
\end{DoxyCompactList}
diff --git a/docs/doxygen/latex/hierarchy.tex b/docs/doxygen/latex/hierarchy.tex
index 01c2aa7..3e597ac 100644
--- a/docs/doxygen/latex/hierarchy.tex
+++ b/docs/doxygen/latex/hierarchy.tex
@@ -1,5 +1,6 @@
\doxysection{Class Hierarchy}
This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList}
+\item \contentsline{section}{s\+Fld\+Map}{\pageref{structsFldMap}}{}
\item \contentsline{section}{xb\+::xb\+Schema}{\pageref{structxb_1_1xbSchema}}{}
\item \contentsline{section}{xb\+::xb\+Ssv}{\pageref{classxb_1_1xbSsv}}{}
\begin{DoxyCompactList}
diff --git a/docs/doxygen/latex/include_2xbcrix_8cpp.tex b/docs/doxygen/latex/include_2xbcrix_8cpp.tex
new file mode 100644
index 0000000..80208b7
--- /dev/null
+++ b/docs/doxygen/latex/include_2xbcrix_8cpp.tex
@@ -0,0 +1,3 @@
+\hypertarget{include_2xbcrix_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbcrix.cpp File Reference}
+\label{include_2xbcrix_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbcrix.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbcrix.cpp}}
+{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/refman.tex b/docs/doxygen/latex/refman.tex
index 541e8e0..76e319a 100644
--- a/docs/doxygen/latex/refman.tex
+++ b/docs/doxygen/latex/refman.tex
@@ -186,6 +186,7 @@
\chapter{Namespace Documentation}
\input{namespacexb}
\chapter{Data Structure Documentation}
+\input{structsFldMap}
\input{classxb_1_1xbDate}
\input{classxb_1_1xbDbf}
\input{classxb_1_1xbFile}
@@ -211,6 +212,7 @@
\input{xbixbase_8cpp}
\input{xbixmdx_8cpp}
\input{xbixndx_8cpp}
+\input{xbixtdx_8cpp}
\input{xblog_8cpp}
\input{xbmemo_8cpp}
\input{xbmemo3_8cpp}
@@ -223,6 +225,7 @@
\input{xbxbase_8cpp}
\input{xb__ex__date_8cpp}
\input{xb__ex__expression_8cpp}
+\input{xb__ex__log_8cpp}
\input{xb__ex__sql_8cpp}
\input{xb__ex__ssv_8cpp}
\input{xb__ex__string_8cpp}
@@ -236,6 +239,8 @@
\input{xbbcd_8h_source}
\input{xbblkread_8h}
\input{xbblkread_8h_source}
+\input{include_2xbcrix_8cpp}
+\input{sql_2xbcrix_8cpp}
\input{xbdate_8h}
\input{xbdate_8h_source}
\input{xbdbf_8h}
@@ -279,9 +284,7 @@
\input{xbxbase_8h}
\input{xbxbase_8h_source}
\input{xbalttbl_8cpp}
-\input{xbcrix_8cpp}
\input{xbcrtbl_8cpp}
-\input{xbcrtbl_8save_8cpp}
\input{xbdelete_8cpp}
\input{xbdrpix_8cpp}
\input{xbdrptbl_8cpp}
@@ -312,6 +315,7 @@
\input{xb__test__sql_8cpp}
\input{xb__test__string_8cpp}
\input{xb__test__tblmgr_8cpp}
+\input{xb__test__tdx_8cpp}
\input{xb__test__uda_8cpp}
\input{xb__test__xbase_8cpp}
\input{xb__cfg__check_8cpp}
@@ -321,6 +325,7 @@
\input{xb__dumpdbt_8cpp}
\input{xb__dumprecs_8cpp}
\input{xb__execsql_8cpp}
+\input{xb__import_8cpp}
\input{xb__pack_8cpp}
\input{xb__tblinfo_8cpp}
\input{xb__undelall_8cpp}
diff --git a/docs/doxygen/latex/sql_2xbcrix_8cpp.tex b/docs/doxygen/latex/sql_2xbcrix_8cpp.tex
new file mode 100644
index 0000000..da0bd97
--- /dev/null
+++ b/docs/doxygen/latex/sql_2xbcrix_8cpp.tex
@@ -0,0 +1,3 @@
+\hypertarget{sql_2xbcrix_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbcrix.cpp File Reference}
+\label{sql_2xbcrix_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbcrix.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbcrix.cpp}}
+{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/structsFldMap.tex b/docs/doxygen/latex/structsFldMap.tex
new file mode 100644
index 0000000..84b0861
--- /dev/null
+++ b/docs/doxygen/latex/structsFldMap.tex
@@ -0,0 +1,45 @@
+\hypertarget{structsFldMap}{}\doxysection{s\+Fld\+Map Struct Reference}
+\label{structsFldMap}\index{sFldMap@{sFldMap}}
+\doxysubsection*{Data Fields}
+\begin{DoxyCompactItemize}
+\item
+xb\+UInt32 \mbox{\hyperlink{structsFldMap_a02facce45c24ebecc13975c17fd52b8f}{i\+Rec\+Pos}}
+\item
+xb\+Int16 \mbox{\hyperlink{structsFldMap_a42eb801a85d8b60f06c4fe1be13ca723}{i\+Fld\+No}}
+\item
+char \mbox{\hyperlink{structsFldMap_af89b26b2d4bc6e26c597f8c48b97b1a3}{c\+Fld\+Type}}
+\item
+\mbox{\hyperlink{structsFldMap}{s\+Fld\+Map}} $\ast$ \mbox{\hyperlink{structsFldMap_a16eaff8fc09adc3faf453bfaa0d3baaa}{next}}
+\end{DoxyCompactItemize}
+
+
+\doxysubsection{Field Documentation}
+\mbox{\Hypertarget{structsFldMap_af89b26b2d4bc6e26c597f8c48b97b1a3}\label{structsFldMap_af89b26b2d4bc6e26c597f8c48b97b1a3}}
+\index{sFldMap@{sFldMap}!cFldType@{cFldType}}
+\index{cFldType@{cFldType}!sFldMap@{sFldMap}}
+\doxysubsubsection{\texorpdfstring{cFldType}{cFldType}}
+{\footnotesize\ttfamily char s\+Fld\+Map\+::c\+Fld\+Type}
+
+\mbox{\Hypertarget{structsFldMap_a42eb801a85d8b60f06c4fe1be13ca723}\label{structsFldMap_a42eb801a85d8b60f06c4fe1be13ca723}}
+\index{sFldMap@{sFldMap}!iFldNo@{iFldNo}}
+\index{iFldNo@{iFldNo}!sFldMap@{sFldMap}}
+\doxysubsubsection{\texorpdfstring{iFldNo}{iFldNo}}
+{\footnotesize\ttfamily xb\+Int16 s\+Fld\+Map\+::i\+Fld\+No}
+
+\mbox{\Hypertarget{structsFldMap_a02facce45c24ebecc13975c17fd52b8f}\label{structsFldMap_a02facce45c24ebecc13975c17fd52b8f}}
+\index{sFldMap@{sFldMap}!iRecPos@{iRecPos}}
+\index{iRecPos@{iRecPos}!sFldMap@{sFldMap}}
+\doxysubsubsection{\texorpdfstring{iRecPos}{iRecPos}}
+{\footnotesize\ttfamily xb\+UInt32 s\+Fld\+Map\+::i\+Rec\+Pos}
+
+\mbox{\Hypertarget{structsFldMap_a16eaff8fc09adc3faf453bfaa0d3baaa}\label{structsFldMap_a16eaff8fc09adc3faf453bfaa0d3baaa}}
+\index{sFldMap@{sFldMap}!next@{next}}
+\index{next@{next}!sFldMap@{sFldMap}}
+\doxysubsubsection{\texorpdfstring{next}{next}}
+{\footnotesize\ttfamily \mbox{\hyperlink{structsFldMap}{s\+Fld\+Map}}$\ast$ s\+Fld\+Map\+::next}
+
+
+
+The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
+\item
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/utils/\mbox{\hyperlink{xb__import_8cpp}{xb\+\_\+import.\+cpp}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/structxb_1_1xbSchema.tex b/docs/doxygen/latex/structxb_1_1xbSchema.tex
index dd920fc..74cc2bc 100644
--- a/docs/doxygen/latex/structxb_1_1xbSchema.tex
+++ b/docs/doxygen/latex/structxb_1_1xbSchema.tex
@@ -74,4 +74,4 @@ See program \mbox{\hyperlink{xb__ex__v3__create__dbf_8cpp}{xb\+\_\+ex\+\_\+v3\+\
The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbdbf_8h}{xbdbf.\+h}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/structxb_1_1xbTblList.tex b/docs/doxygen/latex/structxb_1_1xbTblList.tex
index 795d36e..5984665 100644
--- a/docs/doxygen/latex/structxb_1_1xbTblList.tex
+++ b/docs/doxygen/latex/structxb_1_1xbTblList.tex
@@ -54,4 +54,4 @@
The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item
-/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+0/src/include/\mbox{\hyperlink{xbtblmgr_8h}{xbtblmgr.\+h}}\end{DoxyCompactItemize}
+/mnt/1\+Tdata/xbase/xbase64-\/4.\+1.\+4/src/include/\mbox{\hyperlink{xbtblmgr_8h}{xbtblmgr.\+h}}\end{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/tstfuncs_8cpp.tex b/docs/doxygen/latex/tstfuncs_8cpp.tex
index 276c1fe..86ee7de 100644
--- a/docs/doxygen/latex/tstfuncs_8cpp.tex
+++ b/docs/doxygen/latex/tstfuncs_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{tstfuncs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/tstfuncs.cpp File Reference}
-\label{tstfuncs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/tstfuncs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/tstfuncs.cpp}}
+\hypertarget{tstfuncs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/tstfuncs.cpp File Reference}
+\label{tstfuncs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/tstfuncs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/tstfuncs.cpp}}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xb__cfg__check_8cpp.tex b/docs/doxygen/latex/xb__cfg__check_8cpp.tex
index edcc405..89a9502 100644
--- a/docs/doxygen/latex/xb__cfg__check_8cpp.tex
+++ b/docs/doxygen/latex/xb__cfg__check_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__cfg__check_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+cfg\+\_\+check.cpp File Reference}
-\label{xb__cfg__check_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_cfg\_check.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_cfg\_check.cpp}}
+\hypertarget{xb__cfg__check_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+cfg\+\_\+check.cpp File Reference}
+\label{xb__cfg__check_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_cfg\_check.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_cfg\_check.cpp}}
{\ttfamily \#include $<$stdio.\+h$>$}\newline
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xb__copydbf_8cpp.tex b/docs/doxygen/latex/xb__copydbf_8cpp.tex
index da6fb80..f16df05 100644
--- a/docs/doxygen/latex/xb__copydbf_8cpp.tex
+++ b/docs/doxygen/latex/xb__copydbf_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__copydbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+copydbf.cpp File Reference}
-\label{xb__copydbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_copydbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_copydbf.cpp}}
+\hypertarget{xb__copydbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+copydbf.cpp File Reference}
+\label{xb__copydbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_copydbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_copydbf.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__dbfutil_8cpp.tex b/docs/doxygen/latex/xb__dbfutil_8cpp.tex
index a7f0538..1d05027 100644
--- a/docs/doxygen/latex/xb__dbfutil_8cpp.tex
+++ b/docs/doxygen/latex/xb__dbfutil_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__dbfutil_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+dbfutil.cpp File Reference}
-\label{xb__dbfutil_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_dbfutil.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_dbfutil.cpp}}
+\hypertarget{xb__dbfutil_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+dbfutil.cpp File Reference}
+\label{xb__dbfutil_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_dbfutil.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_dbfutil.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__deletall_8cpp.tex b/docs/doxygen/latex/xb__deletall_8cpp.tex
index fce1850..4cdfbc0 100644
--- a/docs/doxygen/latex/xb__deletall_8cpp.tex
+++ b/docs/doxygen/latex/xb__deletall_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__deletall_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+deletall.cpp File Reference}
-\label{xb__deletall_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_deletall.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_deletall.cpp}}
+\hypertarget{xb__deletall_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+deletall.cpp File Reference}
+\label{xb__deletall_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_deletall.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_deletall.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__dumpdbt_8cpp.tex b/docs/doxygen/latex/xb__dumpdbt_8cpp.tex
index 4d46b1d..391ee23 100644
--- a/docs/doxygen/latex/xb__dumpdbt_8cpp.tex
+++ b/docs/doxygen/latex/xb__dumpdbt_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__dumpdbt_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+dumpdbt.cpp File Reference}
-\label{xb__dumpdbt_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_dumpdbt.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_dumpdbt.cpp}}
+\hypertarget{xb__dumpdbt_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+dumpdbt.cpp File Reference}
+\label{xb__dumpdbt_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_dumpdbt.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_dumpdbt.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__dumprecs_8cpp.tex b/docs/doxygen/latex/xb__dumprecs_8cpp.tex
index a0ef3d8..eb00bb6 100644
--- a/docs/doxygen/latex/xb__dumprecs_8cpp.tex
+++ b/docs/doxygen/latex/xb__dumprecs_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__dumprecs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+dumprecs.cpp File Reference}
-\label{xb__dumprecs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_dumprecs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_dumprecs.cpp}}
+\hypertarget{xb__dumprecs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+dumprecs.cpp File Reference}
+\label{xb__dumprecs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_dumprecs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_dumprecs.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__date_8cpp.tex b/docs/doxygen/latex/xb__ex__date_8cpp.tex
index ed93914..4aa2f8f 100644
--- a/docs/doxygen/latex/xb__ex__date_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__date_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__date_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+date.cpp File Reference}
-\label{xb__ex__date_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_date.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_date.cpp}}
+\hypertarget{xb__ex__date_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+date.cpp File Reference}
+\label{xb__ex__date_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_date.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_date.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__expression_8cpp.tex b/docs/doxygen/latex/xb__ex__expression_8cpp.tex
index 3b0cb70..403730f 100644
--- a/docs/doxygen/latex/xb__ex__expression_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__expression_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__expression_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+expression.cpp File Reference}
-\label{xb__ex__expression_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_expression.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_expression.cpp}}
+\hypertarget{xb__ex__expression_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+expression.cpp File Reference}
+\label{xb__ex__expression_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_expression.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_expression.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__log_8cpp.tex b/docs/doxygen/latex/xb__ex__log_8cpp.tex
new file mode 100644
index 0000000..2309d5b
--- /dev/null
+++ b/docs/doxygen/latex/xb__ex__log_8cpp.tex
@@ -0,0 +1,17 @@
+\hypertarget{xb__ex__log_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+log.cpp File Reference}
+\label{xb__ex__log_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_log.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_log.cpp}}
+{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
+\doxysubsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+int \mbox{\hyperlink{xb__ex__log_8cpp_a1470527971db41f828c26074cde7e15a}{main}} (int arg\+Cnt, char $\ast$$\ast$av)
+\end{DoxyCompactItemize}
+
+
+\doxysubsection{Function Documentation}
+\mbox{\Hypertarget{xb__ex__log_8cpp_a1470527971db41f828c26074cde7e15a}\label{xb__ex__log_8cpp_a1470527971db41f828c26074cde7e15a}}
+\index{xb\_ex\_log.cpp@{xb\_ex\_log.cpp}!main@{main}}
+\index{main@{main}!xb\_ex\_log.cpp@{xb\_ex\_log.cpp}}
+\doxysubsubsection{\texorpdfstring{main()}{main()}}
+{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{arg\+Cnt, }\item[{char $\ast$$\ast$}]{av }\end{DoxyParamCaption})}
+
diff --git a/docs/doxygen/latex/xb__ex__sql_8cpp.tex b/docs/doxygen/latex/xb__ex__sql_8cpp.tex
index 256aedc..8d616c1 100644
--- a/docs/doxygen/latex/xb__ex__sql_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__sql_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__sql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+sql.cpp File Reference}
-\label{xb__ex__sql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_sql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_sql.cpp}}
+\hypertarget{xb__ex__sql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+sql.cpp File Reference}
+\label{xb__ex__sql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_sql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_sql.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__ssv_8cpp.tex b/docs/doxygen/latex/xb__ex__ssv_8cpp.tex
index badcd47..8afd63a 100644
--- a/docs/doxygen/latex/xb__ex__ssv_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__ssv_8cpp.tex
@@ -1,17 +1,17 @@
-\hypertarget{xb__ex__ssv_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+ssv.cpp File Reference}
-\label{xb__ex__ssv_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_ssv.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_ssv.cpp}}
+\hypertarget{xb__ex__ssv_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+ssv.cpp File Reference}
+\label{xb__ex__ssv_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_ssv.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_ssv.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item
-int \mbox{\hyperlink{xb__ex__ssv_8cpp_a0c99d968a34e803d378692bde2e3f18f}{main}} (int ac, char $\ast$$\ast$av)
+int \mbox{\hyperlink{xb__ex__ssv_8cpp_a6438fb6826a353355708e08b4395d689}{main}} (int, char $\ast$$\ast$av)
\end{DoxyCompactItemize}
\doxysubsection{Function Documentation}
-\mbox{\Hypertarget{xb__ex__ssv_8cpp_a0c99d968a34e803d378692bde2e3f18f}\label{xb__ex__ssv_8cpp_a0c99d968a34e803d378692bde2e3f18f}}
+\mbox{\Hypertarget{xb__ex__ssv_8cpp_a6438fb6826a353355708e08b4395d689}\label{xb__ex__ssv_8cpp_a6438fb6826a353355708e08b4395d689}}
\index{xb\_ex\_ssv.cpp@{xb\_ex\_ssv.cpp}!main@{main}}
\index{main@{main}!xb\_ex\_ssv.cpp@{xb\_ex\_ssv.cpp}}
\doxysubsubsection{\texorpdfstring{main()}{main()}}
-{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{ac, }\item[{char $\ast$$\ast$}]{av }\end{DoxyParamCaption})}
+{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{, }\item[{char $\ast$$\ast$}]{av }\end{DoxyParamCaption})}
diff --git a/docs/doxygen/latex/xb__ex__string_8cpp.tex b/docs/doxygen/latex/xb__ex__string_8cpp.tex
index d6d7d33..1e9b704 100644
--- a/docs/doxygen/latex/xb__ex__string_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__string_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__string_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+string.cpp File Reference}
-\label{xb__ex__string_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_string.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_string.cpp}}
+\hypertarget{xb__ex__string_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+string.cpp File Reference}
+\label{xb__ex__string_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_string.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_string.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__v3__create__dbf_8cpp.tex b/docs/doxygen/latex/xb__ex__v3__create__dbf_8cpp.tex
index 0993233..f5dcd9d 100644
--- a/docs/doxygen/latex/xb__ex__v3__create__dbf_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__v3__create__dbf_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__v3__create__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+v3\+\_\+create\+\_\+dbf.cpp File Reference}
-\label{xb__ex__v3__create__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v3\_create\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v3\_create\_dbf.cpp}}
+\hypertarget{xb__ex__v3__create__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+v3\+\_\+create\+\_\+dbf.cpp File Reference}
+\label{xb__ex__v3__create__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v3\_create\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v3\_create\_dbf.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__v3__upd__dbf_8cpp.tex b/docs/doxygen/latex/xb__ex__v3__upd__dbf_8cpp.tex
index 0018c35..8b088aa 100644
--- a/docs/doxygen/latex/xb__ex__v3__upd__dbf_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__v3__upd__dbf_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__v3__upd__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+v3\+\_\+upd\+\_\+dbf.cpp File Reference}
-\label{xb__ex__v3__upd__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v3\_upd\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v3\_upd\_dbf.cpp}}
+\hypertarget{xb__ex__v3__upd__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+v3\+\_\+upd\+\_\+dbf.cpp File Reference}
+\label{xb__ex__v3__upd__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v3\_upd\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v3\_upd\_dbf.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__v4__create__dbf_8cpp.tex b/docs/doxygen/latex/xb__ex__v4__create__dbf_8cpp.tex
index 7597cf4..8ebb219 100644
--- a/docs/doxygen/latex/xb__ex__v4__create__dbf_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__v4__create__dbf_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__v4__create__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+v4\+\_\+create\+\_\+dbf.cpp File Reference}
-\label{xb__ex__v4__create__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v4\_create\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v4\_create\_dbf.cpp}}
+\hypertarget{xb__ex__v4__create__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+v4\+\_\+create\+\_\+dbf.cpp File Reference}
+\label{xb__ex__v4__create__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v4\_create\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v4\_create\_dbf.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__ex__v4__upd__dbf_8cpp.tex b/docs/doxygen/latex/xb__ex__v4__upd__dbf_8cpp.tex
index 49c36ab..020f2a9 100644
--- a/docs/doxygen/latex/xb__ex__v4__upd__dbf_8cpp.tex
+++ b/docs/doxygen/latex/xb__ex__v4__upd__dbf_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__ex__v4__upd__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\+\_\+ex\+\_\+v4\+\_\+upd\+\_\+dbf.cpp File Reference}
-\label{xb__ex__v4__upd__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v4\_upd\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/examples/xb\_ex\_v4\_upd\_dbf.cpp}}
+\hypertarget{xb__ex__v4__upd__dbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\+\_\+ex\+\_\+v4\+\_\+upd\+\_\+dbf.cpp File Reference}
+\label{xb__ex__v4__upd__dbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v4\_upd\_dbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/examples/xb\_ex\_v4\_upd\_dbf.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__execsql_8cpp.tex b/docs/doxygen/latex/xb__execsql_8cpp.tex
index 370198d..3c77216 100644
--- a/docs/doxygen/latex/xb__execsql_8cpp.tex
+++ b/docs/doxygen/latex/xb__execsql_8cpp.tex
@@ -1,25 +1,41 @@
-\hypertarget{xb__execsql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+execsql.cpp File Reference}
-\label{xb__execsql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_execsql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_execsql.cpp}}
+\hypertarget{xb__execsql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+execsql.cpp File Reference}
+\label{xb__execsql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_execsql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_execsql.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item
-xb\+Int16 \mbox{\hyperlink{xb__execsql_8cpp_af888ba5e7e94d92c2165362b87f1ea0e}{Get\+Next\+Sql\+Cmd}} (\mbox{\hyperlink{classxb_1_1xbFile}{xb\+File}} \&f, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Cmd)
+void \mbox{\hyperlink{xb__execsql_8cpp_ae964ff8411b4fdcaf65cb5529aea4bef}{Print\+Help}} ()
\item
-int \mbox{\hyperlink{xb__execsql_8cpp_a0c99d968a34e803d378692bde2e3f18f}{main}} (int ac, char $\ast$$\ast$av)
+void \mbox{\hyperlink{xb__execsql_8cpp_a1fae5968f70747445d63f63065fb7ef3}{Print\+Version}} ()
+\item
+xb\+Int16 \mbox{\hyperlink{xb__execsql_8cpp_adb176b752e38521fdb334b4976965945}{Get\+Next\+Sql\+Cmd}} (\mbox{\hyperlink{classxb_1_1xbFile}{xb\+File}} \&f, \mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&s\+Cmd, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}} b\+Quiet)
+\item
+int \mbox{\hyperlink{xb__execsql_8cpp_a0ddf1224851353fc92bfbff6f499fa97}{main}} (int argc, char $\ast$argv\mbox{[}$\,$\mbox{]})
\end{DoxyCompactItemize}
\doxysubsection{Function Documentation}
-\mbox{\Hypertarget{xb__execsql_8cpp_af888ba5e7e94d92c2165362b87f1ea0e}\label{xb__execsql_8cpp_af888ba5e7e94d92c2165362b87f1ea0e}}
+\mbox{\Hypertarget{xb__execsql_8cpp_adb176b752e38521fdb334b4976965945}\label{xb__execsql_8cpp_adb176b752e38521fdb334b4976965945}}
\index{xb\_execsql.cpp@{xb\_execsql.cpp}!GetNextSqlCmd@{GetNextSqlCmd}}
\index{GetNextSqlCmd@{GetNextSqlCmd}!xb\_execsql.cpp@{xb\_execsql.cpp}}
\doxysubsubsection{\texorpdfstring{GetNextSqlCmd()}{GetNextSqlCmd()}}
-{\footnotesize\ttfamily xb\+Int16 Get\+Next\+Sql\+Cmd (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classxb_1_1xbFile}{xb\+File}} \&}]{f, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Cmd }\end{DoxyParamCaption})}
+{\footnotesize\ttfamily xb\+Int16 Get\+Next\+Sql\+Cmd (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classxb_1_1xbFile}{xb\+File}} \&}]{f, }\item[{\mbox{\hyperlink{classxb_1_1xbString}{xb\+String}} \&}]{s\+Cmd, }\item[{\mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xb\+Bool}}}]{b\+Quiet }\end{DoxyParamCaption})}
-\mbox{\Hypertarget{xb__execsql_8cpp_a0c99d968a34e803d378692bde2e3f18f}\label{xb__execsql_8cpp_a0c99d968a34e803d378692bde2e3f18f}}
+\mbox{\Hypertarget{xb__execsql_8cpp_a0ddf1224851353fc92bfbff6f499fa97}\label{xb__execsql_8cpp_a0ddf1224851353fc92bfbff6f499fa97}}
\index{xb\_execsql.cpp@{xb\_execsql.cpp}!main@{main}}
\index{main@{main}!xb\_execsql.cpp@{xb\_execsql.cpp}}
\doxysubsubsection{\texorpdfstring{main()}{main()}}
-{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{ac, }\item[{char $\ast$$\ast$}]{av }\end{DoxyParamCaption})}
+{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$}]{argv\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{xb__execsql_8cpp_ae964ff8411b4fdcaf65cb5529aea4bef}\label{xb__execsql_8cpp_ae964ff8411b4fdcaf65cb5529aea4bef}}
+\index{xb\_execsql.cpp@{xb\_execsql.cpp}!PrintHelp@{PrintHelp}}
+\index{PrintHelp@{PrintHelp}!xb\_execsql.cpp@{xb\_execsql.cpp}}
+\doxysubsubsection{\texorpdfstring{PrintHelp()}{PrintHelp()}}
+{\footnotesize\ttfamily void Print\+Help (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{xb__execsql_8cpp_a1fae5968f70747445d63f63065fb7ef3}\label{xb__execsql_8cpp_a1fae5968f70747445d63f63065fb7ef3}}
+\index{xb\_execsql.cpp@{xb\_execsql.cpp}!PrintVersion@{PrintVersion}}
+\index{PrintVersion@{PrintVersion}!xb\_execsql.cpp@{xb\_execsql.cpp}}
+\doxysubsubsection{\texorpdfstring{PrintVersion()}{PrintVersion()}}
+{\footnotesize\ttfamily void Print\+Version (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
diff --git a/docs/doxygen/latex/xb__import_8cpp.tex b/docs/doxygen/latex/xb__import_8cpp.tex
new file mode 100644
index 0000000..7d6cfd5
--- /dev/null
+++ b/docs/doxygen/latex/xb__import_8cpp.tex
@@ -0,0 +1,38 @@
+\hypertarget{xb__import_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+import.cpp File Reference}
+\label{xb__import_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_import.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_import.cpp}}
+{\ttfamily \#include $<$xbase.\+h$>$}\newline
+\doxysubsection*{Data Structures}
+\begin{DoxyCompactItemize}
+\item
+struct \mbox{\hyperlink{structsFldMap}{s\+Fld\+Map}}
+\end{DoxyCompactItemize}
+\doxysubsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+void \mbox{\hyperlink{xb__import_8cpp_ae964ff8411b4fdcaf65cb5529aea4bef}{Print\+Help}} ()
+\item
+void \mbox{\hyperlink{xb__import_8cpp_a1fae5968f70747445d63f63065fb7ef3}{Print\+Version}} ()
+\item
+int \mbox{\hyperlink{xb__import_8cpp_a0ddf1224851353fc92bfbff6f499fa97}{main}} (int argc, char $\ast$argv\mbox{[}$\,$\mbox{]})
+\end{DoxyCompactItemize}
+
+
+\doxysubsection{Function Documentation}
+\mbox{\Hypertarget{xb__import_8cpp_a0ddf1224851353fc92bfbff6f499fa97}\label{xb__import_8cpp_a0ddf1224851353fc92bfbff6f499fa97}}
+\index{xb\_import.cpp@{xb\_import.cpp}!main@{main}}
+\index{main@{main}!xb\_import.cpp@{xb\_import.cpp}}
+\doxysubsubsection{\texorpdfstring{main()}{main()}}
+{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$}]{argv\mbox{[}$\,$\mbox{]} }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{xb__import_8cpp_ae964ff8411b4fdcaf65cb5529aea4bef}\label{xb__import_8cpp_ae964ff8411b4fdcaf65cb5529aea4bef}}
+\index{xb\_import.cpp@{xb\_import.cpp}!PrintHelp@{PrintHelp}}
+\index{PrintHelp@{PrintHelp}!xb\_import.cpp@{xb\_import.cpp}}
+\doxysubsubsection{\texorpdfstring{PrintHelp()}{PrintHelp()}}
+{\footnotesize\ttfamily void Print\+Help (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+\mbox{\Hypertarget{xb__import_8cpp_a1fae5968f70747445d63f63065fb7ef3}\label{xb__import_8cpp_a1fae5968f70747445d63f63065fb7ef3}}
+\index{xb\_import.cpp@{xb\_import.cpp}!PrintVersion@{PrintVersion}}
+\index{PrintVersion@{PrintVersion}!xb\_import.cpp@{xb\_import.cpp}}
+\doxysubsubsection{\texorpdfstring{PrintVersion()}{PrintVersion()}}
+{\footnotesize\ttfamily void Print\+Version (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
diff --git a/docs/doxygen/latex/xb__pack_8cpp.tex b/docs/doxygen/latex/xb__pack_8cpp.tex
index a227ef4..0161316 100644
--- a/docs/doxygen/latex/xb__pack_8cpp.tex
+++ b/docs/doxygen/latex/xb__pack_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__pack_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+pack.cpp File Reference}
-\label{xb__pack_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_pack.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_pack.cpp}}
+\hypertarget{xb__pack_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+pack.cpp File Reference}
+\label{xb__pack_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_pack.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_pack.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__tblinfo_8cpp.tex b/docs/doxygen/latex/xb__tblinfo_8cpp.tex
index 2bcdfdc..6faf127 100644
--- a/docs/doxygen/latex/xb__tblinfo_8cpp.tex
+++ b/docs/doxygen/latex/xb__tblinfo_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__tblinfo_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+tblinfo.cpp File Reference}
-\label{xb__tblinfo_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_tblinfo.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_tblinfo.cpp}}
+\hypertarget{xb__tblinfo_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+tblinfo.cpp File Reference}
+\label{xb__tblinfo_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_tblinfo.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_tblinfo.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xb__test__bcd_8cpp.tex b/docs/doxygen/latex/xb__test__bcd_8cpp.tex
index fd14f5d..f807898 100644
--- a/docs/doxygen/latex/xb__test__bcd_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__bcd_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__bcd_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+bcd.cpp File Reference}
-\label{xb__test__bcd_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_bcd.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_bcd.cpp}}
+\hypertarget{xb__test__bcd_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+bcd.cpp File Reference}
+\label{xb__test__bcd_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_bcd.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_bcd.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__blockread_8cpp.tex b/docs/doxygen/latex/xb__test__blockread_8cpp.tex
index 77e2ca0..7881514 100644
--- a/docs/doxygen/latex/xb__test__blockread_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__blockread_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__blockread_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+blockread.cpp File Reference}
-\label{xb__test__blockread_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_blockread.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_blockread.cpp}}
+\hypertarget{xb__test__blockread_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+blockread.cpp File Reference}
+\label{xb__test__blockread_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_blockread.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_blockread.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__date_8cpp.tex b/docs/doxygen/latex/xb__test__date_8cpp.tex
index cb48e54..f8ee6ba 100644
--- a/docs/doxygen/latex/xb__test__date_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__date_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__date_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+date.cpp File Reference}
-\label{xb__test__date_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_date.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_date.cpp}}
+\hypertarget{xb__test__date_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+date.cpp File Reference}
+\label{xb__test__date_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_date.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_date.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__dbf__v3__memos_8cpp.tex b/docs/doxygen/latex/xb__test__dbf__v3__memos_8cpp.tex
index bf7fc6c..5da1b42 100644
--- a/docs/doxygen/latex/xb__test__dbf__v3__memos_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__dbf__v3__memos_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__dbf__v3__memos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+memos.cpp File Reference}
-\label{xb__test__dbf__v3__memos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v3\_memos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v3\_memos.cpp}}
+\hypertarget{xb__test__dbf__v3__memos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+memos.cpp File Reference}
+\label{xb__test__dbf__v3__memos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v3\_memos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v3\_memos.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__dbf__v3__nomemos_8cpp.tex b/docs/doxygen/latex/xb__test__dbf__v3__nomemos_8cpp.tex
index a79890b..faff200 100644
--- a/docs/doxygen/latex/xb__test__dbf__v3__nomemos_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__dbf__v3__nomemos_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__dbf__v3__nomemos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+nomemos.cpp File Reference}
-\label{xb__test__dbf__v3__nomemos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v3\_nomemos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v3\_nomemos.cpp}}
+\hypertarget{xb__test__dbf__v3__nomemos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v3\+\_\+nomemos.cpp File Reference}
+\label{xb__test__dbf__v3__nomemos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v3\_nomemos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v3\_nomemos.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__dbf__v4__memos_8cpp.tex b/docs/doxygen/latex/xb__test__dbf__v4__memos_8cpp.tex
index 7812871..fead1df 100644
--- a/docs/doxygen/latex/xb__test__dbf__v4__memos_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__dbf__v4__memos_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__dbf__v4__memos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+memos.cpp File Reference}
-\label{xb__test__dbf__v4__memos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v4\_memos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v4\_memos.cpp}}
+\hypertarget{xb__test__dbf__v4__memos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+memos.cpp File Reference}
+\label{xb__test__dbf__v4__memos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v4\_memos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v4\_memos.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__dbf__v4__nomemos_8cpp.tex b/docs/doxygen/latex/xb__test__dbf__v4__nomemos_8cpp.tex
index a6c65b1..feac4e8 100644
--- a/docs/doxygen/latex/xb__test__dbf__v4__nomemos_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__dbf__v4__nomemos_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__dbf__v4__nomemos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+nomemos.cpp File Reference}
-\label{xb__test__dbf__v4__nomemos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v4\_nomemos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_dbf\_v4\_nomemos.cpp}}
+\hypertarget{xb__test__dbf__v4__nomemos_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+dbf\+\_\+v4\+\_\+nomemos.cpp File Reference}
+\label{xb__test__dbf__v4__nomemos_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v4\_nomemos.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_dbf\_v4\_nomemos.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__expnode_8cpp.tex b/docs/doxygen/latex/xb__test__expnode_8cpp.tex
index 6c6a884..defbe12 100644
--- a/docs/doxygen/latex/xb__test__expnode_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__expnode_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__expnode_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+expnode.cpp File Reference}
-\label{xb__test__expnode_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_expnode.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_expnode.cpp}}
+\hypertarget{xb__test__expnode_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+expnode.cpp File Reference}
+\label{xb__test__expnode_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_expnode.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_expnode.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__expression_8cpp.tex b/docs/doxygen/latex/xb__test__expression_8cpp.tex
index 7921c70..c8c37e8 100644
--- a/docs/doxygen/latex/xb__test__expression_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__expression_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__expression_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+expression.cpp File Reference}
-\label{xb__test__expression_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_expression.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_expression.cpp}}
+\hypertarget{xb__test__expression_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+expression.cpp File Reference}
+\label{xb__test__expression_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_expression.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_expression.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__file_8cpp.tex b/docs/doxygen/latex/xb__test__file_8cpp.tex
index 504a6b6..182d123 100644
--- a/docs/doxygen/latex/xb__test__file_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__file_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__file_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+file.cpp File Reference}
-\label{xb__test__file_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_file.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_file.cpp}}
+\hypertarget{xb__test__file_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+file.cpp File Reference}
+\label{xb__test__file_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_file.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_file.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__filter_8cpp.tex b/docs/doxygen/latex/xb__test__filter_8cpp.tex
index 3c229cb..47053c9 100644
--- a/docs/doxygen/latex/xb__test__filter_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__filter_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__filter_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+filter.cpp File Reference}
-\label{xb__test__filter_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_filter.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_filter.cpp}}
+\hypertarget{xb__test__filter_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+filter.cpp File Reference}
+\label{xb__test__filter_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_filter.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_filter.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__funcs_8cpp.tex b/docs/doxygen/latex/xb__test__funcs_8cpp.tex
index 5ea715f..1b406c1 100644
--- a/docs/doxygen/latex/xb__test__funcs_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__funcs_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__funcs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+funcs.cpp File Reference}
-\label{xb__test__funcs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_funcs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_funcs.cpp}}
+\hypertarget{xb__test__funcs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+funcs.cpp File Reference}
+\label{xb__test__funcs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_funcs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_funcs.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__linklist_8cpp.tex b/docs/doxygen/latex/xb__test__linklist_8cpp.tex
index 434f405..77b113d 100644
--- a/docs/doxygen/latex/xb__test__linklist_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__linklist_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__linklist_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+linklist.cpp File Reference}
-\label{xb__test__linklist_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_linklist.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_linklist.cpp}}
+\hypertarget{xb__test__linklist_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+linklist.cpp File Reference}
+\label{xb__test__linklist_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_linklist.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_linklist.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__lock2_8cpp.tex b/docs/doxygen/latex/xb__test__lock2_8cpp.tex
index 03ddf28..16889dd 100644
--- a/docs/doxygen/latex/xb__test__lock2_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__lock2_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__lock2_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+lock2.cpp File Reference}
-\label{xb__test__lock2_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_lock2.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_lock2.cpp}}
+\hypertarget{xb__test__lock2_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+lock2.cpp File Reference}
+\label{xb__test__lock2_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_lock2.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_lock2.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__lock_8cpp.tex b/docs/doxygen/latex/xb__test__lock_8cpp.tex
index 4507a0f..ccbf3ef 100644
--- a/docs/doxygen/latex/xb__test__lock_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__lock_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__lock_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+lock.cpp File Reference}
-\label{xb__test__lock_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_lock.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_lock.cpp}}
+\hypertarget{xb__test__lock_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+lock.cpp File Reference}
+\label{xb__test__lock_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_lock.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_lock.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__log_8cpp.tex b/docs/doxygen/latex/xb__test__log_8cpp.tex
index 7bde740..e0fdd31 100644
--- a/docs/doxygen/latex/xb__test__log_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__log_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__log_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+log.cpp File Reference}
-\label{xb__test__log_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_log.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_log.cpp}}
+\hypertarget{xb__test__log_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+log.cpp File Reference}
+\label{xb__test__log_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_log.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_log.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__mdx_8cpp.tex b/docs/doxygen/latex/xb__test__mdx_8cpp.tex
index 63e6d5b..81fb465 100644
--- a/docs/doxygen/latex/xb__test__mdx_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__mdx_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__mdx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+mdx.cpp File Reference}
-\label{xb__test__mdx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_mdx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_mdx.cpp}}
+\hypertarget{xb__test__mdx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+mdx.cpp File Reference}
+\label{xb__test__mdx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_mdx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_mdx.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__ndx_8cpp.tex b/docs/doxygen/latex/xb__test__ndx_8cpp.tex
index 7ad9cab..dc9782c 100644
--- a/docs/doxygen/latex/xb__test__ndx_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__ndx_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__ndx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+ndx.cpp File Reference}
-\label{xb__test__ndx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_ndx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_ndx.cpp}}
+\hypertarget{xb__test__ndx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+ndx.cpp File Reference}
+\label{xb__test__ndx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_ndx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_ndx.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__sql_8cpp.tex b/docs/doxygen/latex/xb__test__sql_8cpp.tex
index 7c641e5..4d7441a 100644
--- a/docs/doxygen/latex/xb__test__sql_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__sql_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__sql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+sql.cpp File Reference}
-\label{xb__test__sql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_sql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_sql.cpp}}
+\hypertarget{xb__test__sql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+sql.cpp File Reference}
+\label{xb__test__sql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_sql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_sql.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__string_8cpp.tex b/docs/doxygen/latex/xb__test__string_8cpp.tex
index fb5ecd2..cf8c6ed 100644
--- a/docs/doxygen/latex/xb__test__string_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__string_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__string_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+string.cpp File Reference}
-\label{xb__test__string_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_string.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_string.cpp}}
+\hypertarget{xb__test__string_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+string.cpp File Reference}
+\label{xb__test__string_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_string.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_string.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Macros}
diff --git a/docs/doxygen/latex/xb__test__tblmgr_8cpp.tex b/docs/doxygen/latex/xb__test__tblmgr_8cpp.tex
index cd9df27..a7405f7 100644
--- a/docs/doxygen/latex/xb__test__tblmgr_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__tblmgr_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__tblmgr_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+tblmgr.cpp File Reference}
-\label{xb__test__tblmgr_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_tblmgr.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_tblmgr.cpp}}
+\hypertarget{xb__test__tblmgr_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+tblmgr.cpp File Reference}
+\label{xb__test__tblmgr_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_tblmgr.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_tblmgr.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__tdx_8cpp.tex b/docs/doxygen/latex/xb__test__tdx_8cpp.tex
new file mode 100644
index 0000000..49086da
--- /dev/null
+++ b/docs/doxygen/latex/xb__test__tdx_8cpp.tex
@@ -0,0 +1,18 @@
+\hypertarget{xb__test__tdx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+tdx.cpp File Reference}
+\label{xb__test__tdx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_tdx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_tdx.cpp}}
+{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
+{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
+\doxysubsection*{Functions}
+\begin{DoxyCompactItemize}
+\item
+int \mbox{\hyperlink{xb__test__tdx_8cpp_a1470527971db41f828c26074cde7e15a}{main}} (int arg\+Cnt, char $\ast$$\ast$av)
+\end{DoxyCompactItemize}
+
+
+\doxysubsection{Function Documentation}
+\mbox{\Hypertarget{xb__test__tdx_8cpp_a1470527971db41f828c26074cde7e15a}\label{xb__test__tdx_8cpp_a1470527971db41f828c26074cde7e15a}}
+\index{xb\_test\_tdx.cpp@{xb\_test\_tdx.cpp}!main@{main}}
+\index{main@{main}!xb\_test\_tdx.cpp@{xb\_test\_tdx.cpp}}
+\doxysubsubsection{\texorpdfstring{main()}{main()}}
+{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{arg\+Cnt, }\item[{char $\ast$$\ast$}]{av }\end{DoxyParamCaption})}
+
diff --git a/docs/doxygen/latex/xb__test__uda_8cpp.tex b/docs/doxygen/latex/xb__test__uda_8cpp.tex
index bb0bc3e..c59eb0b 100644
--- a/docs/doxygen/latex/xb__test__uda_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__uda_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__uda_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+uda.cpp File Reference}
-\label{xb__test__uda_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_uda.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_uda.cpp}}
+\hypertarget{xb__test__uda_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+uda.cpp File Reference}
+\label{xb__test__uda_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_uda.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_uda.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__test__xbase_8cpp.tex b/docs/doxygen/latex/xb__test__xbase_8cpp.tex
index c436f00..c90dfb0 100644
--- a/docs/doxygen/latex/xb__test__xbase_8cpp.tex
+++ b/docs/doxygen/latex/xb__test__xbase_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__test__xbase_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\+\_\+test\+\_\+xbase.cpp File Reference}
-\label{xb__test__xbase_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_xbase.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/tests/xb\_test\_xbase.cpp}}
+\hypertarget{xb__test__xbase_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\+\_\+test\+\_\+xbase.cpp File Reference}
+\label{xb__test__xbase_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_xbase.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/tests/xb\_test\_xbase.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include \char`\"{}tstfuncs.\+cpp\char`\"{}}\newline
\doxysubsection*{Functions}
diff --git a/docs/doxygen/latex/xb__undelall_8cpp.tex b/docs/doxygen/latex/xb__undelall_8cpp.tex
index d7b2682..1d8b7c5 100644
--- a/docs/doxygen/latex/xb__undelall_8cpp.tex
+++ b/docs/doxygen/latex/xb__undelall_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xb__undelall_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\+\_\+undelall.cpp File Reference}
-\label{xb__undelall_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_undelall.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/utils/xb\_undelall.cpp}}
+\hypertarget{xb__undelall_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\+\_\+undelall.cpp File Reference}
+\label{xb__undelall_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_undelall.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/utils/xb\_undelall.cpp}}
{\ttfamily \#include $<$xbase.\+h$>$}\newline
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbalttbl_8cpp.tex b/docs/doxygen/latex/xbalttbl_8cpp.tex
index 8643874..f28e58f 100644
--- a/docs/doxygen/latex/xbalttbl_8cpp.tex
+++ b/docs/doxygen/latex/xbalttbl_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbalttbl_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbalttbl.cpp File Reference}
-\label{xbalttbl_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbalttbl.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbalttbl.cpp}}
+\hypertarget{xbalttbl_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbalttbl.cpp File Reference}
+\label{xbalttbl_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbalttbl.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbalttbl.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbase_8h.tex b/docs/doxygen/latex/xbase_8h.tex
index e1b3c3b..9d9620a 100644
--- a/docs/doxygen/latex/xbase_8h.tex
+++ b/docs/doxygen/latex/xbase_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbase_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbase.h File Reference}
-\label{xbase_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbase.h}}
+\hypertarget{xbase_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbase.h File Reference}
+\label{xbase_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbase.h}}
{\ttfamily \#include $<$xbconfig.\+h$>$}\newline
{\ttfamily \#include $<$stdio.\+h$>$}\newline
{\ttfamily \#include $<$errno.\+h$>$}\newline
diff --git a/docs/doxygen/latex/xbase_8h_source.tex b/docs/doxygen/latex/xbase_8h_source.tex
index 2d90229..29b6992 100644
--- a/docs/doxygen/latex/xbase_8h_source.tex
+++ b/docs/doxygen/latex/xbase_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbase_8h_source}{}\doxysection{xbase.\+h}
-\label{xbase_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbase.h}}
+\label{xbase_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbase.h}}
\mbox{\hyperlink{xbase_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbase.h}}
diff --git a/docs/doxygen/latex/xbbcd_8cpp.tex b/docs/doxygen/latex/xbbcd_8cpp.tex
index 5236b17..82db089 100644
--- a/docs/doxygen/latex/xbbcd_8cpp.tex
+++ b/docs/doxygen/latex/xbbcd_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbbcd_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbbcd.cpp File Reference}
-\label{xbbcd_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbbcd.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbbcd.cpp}}
+\hypertarget{xbbcd_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbbcd.cpp File Reference}
+\label{xbbcd_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbbcd.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbbcd.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbbcd_8h.tex b/docs/doxygen/latex/xbbcd_8h.tex
index a914997..fde0b26 100644
--- a/docs/doxygen/latex/xbbcd_8h.tex
+++ b/docs/doxygen/latex/xbbcd_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbbcd_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbbcd.h File Reference}
-\label{xbbcd_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbbcd.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbbcd.h}}
+\hypertarget{xbbcd_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbbcd.h File Reference}
+\label{xbbcd_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbbcd.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbbcd.h}}
diff --git a/docs/doxygen/latex/xbbcd_8h_source.tex b/docs/doxygen/latex/xbbcd_8h_source.tex
index 8084dcd..a771647 100644
--- a/docs/doxygen/latex/xbbcd_8h_source.tex
+++ b/docs/doxygen/latex/xbbcd_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbbcd_8h_source}{}\doxysection{xbbcd.\+h}
-\label{xbbcd_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbbcd.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbbcd.h}}
+\label{xbbcd_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbbcd.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbbcd.h}}
\mbox{\hyperlink{xbbcd_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbbcd.h}}
diff --git a/docs/doxygen/latex/xbblkread_8h.tex b/docs/doxygen/latex/xbblkread_8h.tex
index e92d03e..b1c8544 100644
--- a/docs/doxygen/latex/xbblkread_8h.tex
+++ b/docs/doxygen/latex/xbblkread_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbblkread_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbblkread.h File Reference}
-\label{xbblkread_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbblkread.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbblkread.h}}
+\hypertarget{xbblkread_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbblkread.h File Reference}
+\label{xbblkread_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbblkread.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbblkread.h}}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbblkread_8h_source.tex b/docs/doxygen/latex/xbblkread_8h_source.tex
index 75dd9c4..ab6cc57 100644
--- a/docs/doxygen/latex/xbblkread_8h_source.tex
+++ b/docs/doxygen/latex/xbblkread_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbblkread_8h_source}{}\doxysection{xbblkread.\+h}
-\label{xbblkread_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbblkread.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbblkread.h}}
+\label{xbblkread_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbblkread.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbblkread.h}}
\mbox{\hyperlink{xbblkread_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbblkread.h}}
diff --git a/docs/doxygen/latex/xbblockread_8cpp.tex b/docs/doxygen/latex/xbblockread_8cpp.tex
index 81bae84..2cf0efe 100644
--- a/docs/doxygen/latex/xbblockread_8cpp.tex
+++ b/docs/doxygen/latex/xbblockread_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbblockread_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbblockread.cpp File Reference}
-\label{xbblockread_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbblockread.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbblockread.cpp}}
+\hypertarget{xbblockread_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbblockread.cpp File Reference}
+\label{xbblockread_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbblockread.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbblockread.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbcrix_8cpp.tex b/docs/doxygen/latex/xbcrix_8cpp.tex
index 93a2bf2..a354cfa 100644
--- a/docs/doxygen/latex/xbcrix_8cpp.tex
+++ b/docs/doxygen/latex/xbcrix_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbcrix_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrix.cpp File Reference}
-\label{xbcrix_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrix.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrix.cpp}}
+\hypertarget{xbcrix_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrix.cpp File Reference}
+\label{xbcrix_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrix.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrix.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbcrtbl_8cpp.tex b/docs/doxygen/latex/xbcrtbl_8cpp.tex
index 51f8351..f91094a 100644
--- a/docs/doxygen/latex/xbcrtbl_8cpp.tex
+++ b/docs/doxygen/latex/xbcrtbl_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbcrtbl_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrtbl.cpp File Reference}
-\label{xbcrtbl_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrtbl.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrtbl.cpp}}
+\hypertarget{xbcrtbl_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbcrtbl.cpp File Reference}
+\label{xbcrtbl_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbcrtbl.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbcrtbl.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbcrtbl_8save2_8cpp.tex b/docs/doxygen/latex/xbcrtbl_8save2_8cpp.tex
new file mode 100644
index 0000000..9ea8f2f
--- /dev/null
+++ b/docs/doxygen/latex/xbcrtbl_8save2_8cpp.tex
@@ -0,0 +1,3 @@
+\hypertarget{xbcrtbl_8save2_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrtbl.save2.\+cpp File Reference}
+\label{xbcrtbl_8save2_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrtbl.save2.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrtbl.save2.cpp}}
+{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbcrtbl_8save_8cpp.tex b/docs/doxygen/latex/xbcrtbl_8save_8cpp.tex
index 5964451..8113b76 100644
--- a/docs/doxygen/latex/xbcrtbl_8save_8cpp.tex
+++ b/docs/doxygen/latex/xbcrtbl_8save_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbcrtbl_8save_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrtbl.save.\+cpp File Reference}
-\label{xbcrtbl_8save_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrtbl.save.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbcrtbl.save.cpp}}
+\hypertarget{xbcrtbl_8save_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrtbl.save.\+cpp File Reference}
+\label{xbcrtbl_8save_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrtbl.save.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.2/src/sql/xbcrtbl.save.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbdate_8cpp.tex b/docs/doxygen/latex/xbdate_8cpp.tex
index c0808b1..a70d185 100644
--- a/docs/doxygen/latex/xbdate_8cpp.tex
+++ b/docs/doxygen/latex/xbdate_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbdate_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbdate.cpp File Reference}
-\label{xbdate_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdate.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdate.cpp}}
+\hypertarget{xbdate_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbdate.cpp File Reference}
+\label{xbdate_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdate.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdate.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
{\ttfamily \#include $<$time.\+h$>$}\newline
\doxysubsection*{Namespaces}
diff --git a/docs/doxygen/latex/xbdate_8h.tex b/docs/doxygen/latex/xbdate_8h.tex
index ad386cd..478b326 100644
--- a/docs/doxygen/latex/xbdate_8h.tex
+++ b/docs/doxygen/latex/xbdate_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbdate_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbdate.h File Reference}
-\label{xbdate_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdate.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdate.h}}
+\hypertarget{xbdate_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbdate.h File Reference}
+\label{xbdate_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdate.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdate.h}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbdate_8h_source.tex b/docs/doxygen/latex/xbdate_8h_source.tex
index fbfa1fb..3478aea 100644
--- a/docs/doxygen/latex/xbdate_8h_source.tex
+++ b/docs/doxygen/latex/xbdate_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbdate_8h_source}{}\doxysection{xbdate.\+h}
-\label{xbdate_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdate.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdate.h}}
+\label{xbdate_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdate.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdate.h}}
\mbox{\hyperlink{xbdate_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbdate.h}}
@@ -45,59 +45,62 @@
\DoxyCodeLine{66 \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}}( \textcolor{keyword}{const} \textcolor{keywordtype}{char} * Date8 );}
\DoxyCodeLine{67 \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Date8 );}
\DoxyCodeLine{68 \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}}( xbInt32 lJulDate );}
-\DoxyCodeLine{69 \mbox{\hyperlink{classxb_1_1xbDate}{\string~xbDate}}();}
-\DoxyCodeLine{70 }
-\DoxyCodeLine{71 \textcolor{keywordtype}{void} operator=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&d );}
-\DoxyCodeLine{72 \textcolor{keywordtype}{void} operator+=( xbInt32 i );}
-\DoxyCodeLine{73 \textcolor{keywordtype}{void} operator-\/=( xbInt32 i );}
-\DoxyCodeLine{74 \textcolor{keywordtype}{void} operator++( xbInt32 i );}
-\DoxyCodeLine{75 \textcolor{keywordtype}{void} operator-\/-\/( xbInt32 i );}
-\DoxyCodeLine{76 }
-\DoxyCodeLine{77 xbInt32 operator-\/( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{78 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * operator-\/( xbInt32 i );}
-\DoxyCodeLine{79 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * operator+( xbInt32 i );}
-\DoxyCodeLine{80 }
-\DoxyCodeLine{81 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator==( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{82 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator!=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{83 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator< ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{84 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator> ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{85 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator<=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{86 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator>=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
-\DoxyCodeLine{87 }
-\DoxyCodeLine{88 xbInt16 CalcRollingCenturyForYear( xbInt16 year ) \textcolor{keyword}{const};}
-\DoxyCodeLine{89 xbInt16 CenturyOf() \textcolor{keyword}{const};}
-\DoxyCodeLine{90 xbInt16 CharDayOf( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutCharDay );}
-\DoxyCodeLine{91 xbInt16 CharMonthOf( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutCharMonth );}
-\DoxyCodeLine{92 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} DateIsValid ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDate8 ) \textcolor{keyword}{const};}
-\DoxyCodeLine{93 xbInt16 DayOf( xbInt16 iFormat ) \textcolor{keyword}{const};}
-\DoxyCodeLine{94 xbInt16 CTOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCtodInDate );}
-\DoxyCodeLine{95 xbInt16 FormatDate( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmtIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmtOut );}
-\DoxyCodeLine{96 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *Str() \textcolor{keyword}{const};}
-\DoxyCodeLine{97 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeapYear( xbInt16 iYear ) \textcolor{keyword}{const};}
-\DoxyCodeLine{98 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeapYear() \textcolor{keyword}{const};}
-\DoxyCodeLine{99 xbInt32 JulianDays() \textcolor{keyword}{const};}
-\DoxyCodeLine{100 xbInt16 JulToDate8( xbInt32 lJulDate );}
-\DoxyCodeLine{101 xbInt16 LastDayOfMonth();}
-\DoxyCodeLine{102 xbInt16 MonthOf() \textcolor{keyword}{const};}
-\DoxyCodeLine{103 xbInt16 Set( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Date8 );}
-\DoxyCodeLine{104 xbInt16 Sysdate();}
-\DoxyCodeLine{105 xbInt16 YearOf() \textcolor{keyword}{const};}
-\DoxyCodeLine{106 }
-\DoxyCodeLine{107 \textcolor{preprocessor}{\#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{108 \textcolor{keywordtype}{void} Dump( \textcolor{keyword}{const} \textcolor{keywordtype}{char} * title );}
-\DoxyCodeLine{109 \textcolor{keywordtype}{void} DumpDateTables();}
-\DoxyCodeLine{110 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{111 }
-\DoxyCodeLine{112 \textcolor{keyword}{private}:}
-\DoxyCodeLine{113 \textcolor{keywordtype}{void} SetDateTables();}
-\DoxyCodeLine{114 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDate8; \textcolor{comment}{/* CCYYMMDD date format ie; 20140718 */}}
-\DoxyCodeLine{115 }
-\DoxyCodeLine{116 \textcolor{keyword}{static} \textcolor{keywordtype}{int} iAggregatedDaysInMonths[2][13];}
-\DoxyCodeLine{117 \textcolor{keyword}{static} \textcolor{keywordtype}{int} iDaysInMonths[2][13];}
-\DoxyCodeLine{118 \};}
-\DoxyCodeLine{119 }
-\DoxyCodeLine{120 \} \textcolor{comment}{/* namespace */}}
-\DoxyCodeLine{121 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/*\_\_XB\_XBDATE\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{69 \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}}( xbUInt16 iInit ); \textcolor{comment}{// Constructor used to set the static variables, also defaults to sysdate}}
+\DoxyCodeLine{70 \mbox{\hyperlink{classxb_1_1xbDate}{\string~xbDate}}();}
+\DoxyCodeLine{71 }
+\DoxyCodeLine{72 \textcolor{keywordtype}{void} operator=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&d );}
+\DoxyCodeLine{73 \textcolor{keywordtype}{void} operator+=( xbInt32 i );}
+\DoxyCodeLine{74 \textcolor{keywordtype}{void} operator-\/=( xbInt32 i );}
+\DoxyCodeLine{75 \textcolor{keywordtype}{void} operator++( xbInt32 i );}
+\DoxyCodeLine{76 \textcolor{keywordtype}{void} operator-\/-\/( xbInt32 i );}
+\DoxyCodeLine{77 }
+\DoxyCodeLine{78 xbInt32 operator-\/( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{79 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * operator-\/( xbInt32 i );}
+\DoxyCodeLine{80 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * operator+( xbInt32 i );}
+\DoxyCodeLine{81 }
+\DoxyCodeLine{82 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator==( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{83 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator!=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{84 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator< ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{85 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator> ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{86 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator<=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{87 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} operator>=( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \& ) \textcolor{keyword}{const};}
+\DoxyCodeLine{88 }
+\DoxyCodeLine{89 xbInt16 CalcRollingCenturyForYear( xbInt16 year ) \textcolor{keyword}{const};}
+\DoxyCodeLine{90 xbInt16 CenturyOf() \textcolor{keyword}{const};}
+\DoxyCodeLine{91 xbInt16 CharDayOf( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutCharDay );}
+\DoxyCodeLine{92 xbInt16 CharMonthOf( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutCharMonth );}
+\DoxyCodeLine{93 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} DateIsValid ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDate8 ) \textcolor{keyword}{const};}
+\DoxyCodeLine{94 xbInt16 DayOf( xbInt16 iFormat ) \textcolor{keyword}{const};}
+\DoxyCodeLine{95 xbInt16 CTOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCtodInDate );}
+\DoxyCodeLine{96 xbInt16 FormatDate( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmtIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmtOut );}
+\DoxyCodeLine{97 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *Str() \textcolor{keyword}{const};}
+\DoxyCodeLine{98 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeapYear( xbInt16 iYear ) \textcolor{keyword}{const};}
+\DoxyCodeLine{99 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeapYear() \textcolor{keyword}{const};}
+\DoxyCodeLine{100 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsNull() \textcolor{keyword}{const};}
+\DoxyCodeLine{101 xbInt32 JulianDays() \textcolor{keyword}{const};}
+\DoxyCodeLine{102 xbInt16 JulToDate8( xbInt32 lJulDate );}
+\DoxyCodeLine{103 xbInt16 LastDayOfMonth();}
+\DoxyCodeLine{104 xbInt16 MonthOf() \textcolor{keyword}{const};}
+\DoxyCodeLine{105 xbInt16 Set( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Date8 );}
+\DoxyCodeLine{106 xbInt16 Sysdate();}
+\DoxyCodeLine{107 xbInt16 YearOf() \textcolor{keyword}{const};}
+\DoxyCodeLine{108 }
+\DoxyCodeLine{109 \textcolor{preprocessor}{\#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{110 \textcolor{keywordtype}{void} Dump( \textcolor{keyword}{const} \textcolor{keywordtype}{char} * title );}
+\DoxyCodeLine{111 \textcolor{keywordtype}{void} DumpDateTables();}
+\DoxyCodeLine{112 \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{113 }
+\DoxyCodeLine{114 \textcolor{keyword}{private}:}
+\DoxyCodeLine{115 \textcolor{keywordtype}{void} SetDateTables();}
+\DoxyCodeLine{116 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDate8; \textcolor{comment}{// CCYYMMDD date format ie; 20140718}}
+\DoxyCodeLine{117 \textcolor{comment}{// Null date is identified by sDate.Len() < 8}}
+\DoxyCodeLine{118 }
+\DoxyCodeLine{119 \textcolor{keyword}{static} \textcolor{keywordtype}{int} iAggregatedDaysInMonths[2][13];}
+\DoxyCodeLine{120 \textcolor{keyword}{static} \textcolor{keywordtype}{int} iDaysInMonths[2][13];}
+\DoxyCodeLine{121 \};}
\DoxyCodeLine{122 }
+\DoxyCodeLine{123 \} \textcolor{comment}{/* namespace */}}
+\DoxyCodeLine{124 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/*\_\_XB\_XBDATE\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{125 }
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbdbf3_8cpp.tex b/docs/doxygen/latex/xbdbf3_8cpp.tex
index 158b426..ed9be8b 100644
--- a/docs/doxygen/latex/xbdbf3_8cpp.tex
+++ b/docs/doxygen/latex/xbdbf3_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbdbf3_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf3.cpp File Reference}
-\label{xbdbf3_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf3.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf3.cpp}}
+\hypertarget{xbdbf3_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf3.cpp File Reference}
+\label{xbdbf3_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf3.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf3.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbdbf4_8cpp.tex b/docs/doxygen/latex/xbdbf4_8cpp.tex
index 5b06efb..db4c64e 100644
--- a/docs/doxygen/latex/xbdbf4_8cpp.tex
+++ b/docs/doxygen/latex/xbdbf4_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbdbf4_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf4.cpp File Reference}
-\label{xbdbf4_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf4.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf4.cpp}}
+\hypertarget{xbdbf4_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf4.cpp File Reference}
+\label{xbdbf4_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf4.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf4.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbdbf_8cpp.tex b/docs/doxygen/latex/xbdbf_8cpp.tex
index 42f926d..a96b643 100644
--- a/docs/doxygen/latex/xbdbf_8cpp.tex
+++ b/docs/doxygen/latex/xbdbf_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbdbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf.cpp File Reference}
-\label{xbdbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbdbf.cpp}}
+\hypertarget{xbdbf_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf.cpp File Reference}
+\label{xbdbf_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbdbf.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbdbf_8h.tex b/docs/doxygen/latex/xbdbf_8h.tex
index 59ea13f..3efbf47 100644
--- a/docs/doxygen/latex/xbdbf_8h.tex
+++ b/docs/doxygen/latex/xbdbf_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbdbf_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbdbf.h File Reference}
-\label{xbdbf_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdbf.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdbf.h}}
+\hypertarget{xbdbf_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbdbf.h File Reference}
+\label{xbdbf_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdbf.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdbf.h}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbdbf_8h_source.tex b/docs/doxygen/latex/xbdbf_8h_source.tex
index 0bf6c91..d982681 100644
--- a/docs/doxygen/latex/xbdbf_8h_source.tex
+++ b/docs/doxygen/latex/xbdbf_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbdbf_8h_source}{}\doxysection{xbdbf.\+h}
-\label{xbdbf_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdbf.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbdbf.h}}
+\label{xbdbf_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdbf.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbdbf.h}}
\mbox{\hyperlink{xbdbf_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbdbf.h}}
@@ -126,7 +126,7 @@
\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 DumpHeader ( xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{167 \textcolor{keyword}{virtual} xbInt16 DumpHeader ( xbInt16 iOption );}
\DoxyCodeLine{168 \textcolor{keyword}{virtual} xbInt16 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};}
@@ -148,7 +148,7 @@
\DoxyCodeLine{186 \textcolor{keyword}{virtual} xbInt16 GetPrevRecord ( xbInt16 iOption );}
\DoxyCodeLine{187 \textcolor{keyword}{virtual} xbInt16 GetRecord ( xbUInt32 ulRecNo );}
\DoxyCodeLine{188 }
-\DoxyCodeLine{189 \textcolor{keyword}{virtual} xbUInt32 GetRecordCount ();}
+\DoxyCodeLine{189 \textcolor{comment}{// virtual xbUInt32 GetRecordCount ();}}
\DoxyCodeLine{190 \textcolor{keyword}{virtual} xbInt16 GetRecordCnt ( xbUInt32 \& ulRecCnt );}
\DoxyCodeLine{191 }
\DoxyCodeLine{192 \textcolor{keyword}{virtual} \textcolor{keywordtype}{char} * GetRecordBuf ( xbInt16 iOpt = 0 ) \textcolor{keyword}{const};}
@@ -169,7 +169,7 @@
\DoxyCodeLine{207 }
\DoxyCodeLine{208 \textcolor{keyword}{virtual} xbInt16 PutRecord (); \textcolor{comment}{// Put record to current location}}
\DoxyCodeLine{209 \textcolor{keyword}{virtual} xbInt16 PutRecord ( xbUInt32 ulRecNo );}
-\DoxyCodeLine{210 \textcolor{keyword}{virtual} xbInt16 ReadHeader ( xbInt16 iFilePositionOption, xbInt16 iReadOption );}
+\DoxyCodeLine{210 \textcolor{comment}{// virtual xbInt16 ReadHeader ( xbInt16 iFilePositionOption, xbInt16 iReadOption );}}
\DoxyCodeLine{211 \textcolor{keyword}{virtual} xbInt16 RecordDeleted ( xbInt16 iOpt = 0 ) \textcolor{keyword}{const};}
\DoxyCodeLine{212 \textcolor{keyword}{virtual} xbInt16 \mbox{\hyperlink{classxb_1_1xbDbf_aeeeb2eb5fabcd0f91d457df07b0e0708}{Rename}} ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sNewName ) = 0;}
\DoxyCodeLine{213 }
@@ -213,7 +213,7 @@
\DoxyCodeLine{251 \textcolor{keyword}{virtual} xbInt16 GetLongField( xbInt16 iFieldNo, xbInt32 \&lFieldValue ) \textcolor{keyword}{const};}
\DoxyCodeLine{252 \textcolor{keyword}{virtual} xbInt16 GetLongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbInt32 \&lFieldValue ) \textcolor{keyword}{const};}
\DoxyCodeLine{253 \textcolor{keyword}{virtual} xbInt16 PutLongField( xbInt16 iFieldNo, xbInt32 lFieldValue );}
-\DoxyCodeLine{254 \textcolor{keyword}{virtual} xbInt16 PutLongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldNo, xbInt32 lFieldValue );}
+\DoxyCodeLine{254 \textcolor{keyword}{virtual} xbInt16 PutLongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbInt32 lFieldValue );}
\DoxyCodeLine{255 }
\DoxyCodeLine{256 \textcolor{keyword}{virtual} xbInt16 GetULongField( xbInt16 iFieldNo, xbUInt32 \&lFieldValue ) \textcolor{keyword}{const};}
\DoxyCodeLine{257 \textcolor{keyword}{virtual} xbInt16 GetULongField( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, xbUInt32 \&lFieldValue ) \textcolor{keyword}{const};}
@@ -236,276 +236,286 @@
\DoxyCodeLine{274 \textcolor{keyword}{virtual} xbInt16 PutDateField( xbInt16 iFieldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dt );}
\DoxyCodeLine{275 \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{276 }
-\DoxyCodeLine{277 }
-\DoxyCodeLine{278 }
-\DoxyCodeLine{279 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
-\DoxyCodeLine{280 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldCnt () \textcolor{keyword}{const};}
-\DoxyCodeLine{281 \textcolor{keyword}{virtual} xbMemo *GetMemoPtr ();}
-\DoxyCodeLine{282 \textcolor{keyword}{virtual} xbUInt32 GetCreateMemoBlockSize() \textcolor{keyword}{const};}
-\DoxyCodeLine{283 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );}
-\DoxyCodeLine{284 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );}
-\DoxyCodeLine{285 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFldNo, xbUInt32 \&ullMemoFieldLen );}
-\DoxyCodeLine{286 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, xbUInt32 \&ulMemoFieldLen );}
-\DoxyCodeLine{287 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} MemoFieldExists ( xbInt16 iFieldNo ) \textcolor{keyword}{const};}
-\DoxyCodeLine{288 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} MemoFieldExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName ) \textcolor{keyword}{const};}
-\DoxyCodeLine{289 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 ulBlockSize ) = 0;}
-\DoxyCodeLine{290 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( xbInt16 iFldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );}
-\DoxyCodeLine{291 \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{292 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MEMO\_SUPPORT}}
-\DoxyCodeLine{293 }
-\DoxyCodeLine{294 }
-\DoxyCodeLine{295 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{296 \textcolor{keyword}{virtual} xbInt16 LockTable ( xbInt16 iLockFunction );}
-\DoxyCodeLine{297 \textcolor{keyword}{virtual} xbInt16 LockRecord ( xbInt16 iLockFunction, xbUInt32 ulRecNo );}
-\DoxyCodeLine{298 \textcolor{keyword}{virtual} xbInt16 LockAppend ( xbInt16 iLockFunction );}
-\DoxyCodeLine{299 \textcolor{keyword}{virtual} xbInt16 LockHeader ( xbInt16 iLockFunction );}
-\DoxyCodeLine{300 }
-\DoxyCodeLine{301 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
-\DoxyCodeLine{302 \textcolor{keyword}{virtual} xbInt16 LockMemo ( xbInt16 iLockFunction );}
-\DoxyCodeLine{303 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMemoLocked () \textcolor{keyword}{const}; }
-\DoxyCodeLine{304 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MEMO\_LOCK}}
-\DoxyCodeLine{305 }
-\DoxyCodeLine{306 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{307 \textcolor{keyword}{virtual} xbInt16 LockIndices ( xbInt16 iLockFunction );}
-\DoxyCodeLine{308 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{277 \textcolor{keyword}{virtual} xbInt16 GetNullSts( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bIsNull ) \textcolor{keyword}{const};}
+\DoxyCodeLine{278 \textcolor{keyword}{virtual} xbInt16 GetNullSts( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bIsNull ) \textcolor{keyword}{const};}
+\DoxyCodeLine{279 \textcolor{keyword}{virtual} xbInt16 GetNullSts( xbInt16 iFieldNo, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bIsNull, xbInt16 iRecBufSw ) \textcolor{keyword}{const};}
+\DoxyCodeLine{280 }
+\DoxyCodeLine{281 }
+\DoxyCodeLine{282 }
+\DoxyCodeLine{283 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
+\DoxyCodeLine{284 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldCnt () \textcolor{keyword}{const};}
+\DoxyCodeLine{285 \textcolor{keyword}{virtual} xbMemo *GetMemoPtr ();}
+\DoxyCodeLine{286 \textcolor{keyword}{virtual} xbUInt32 GetCreateMemoBlockSize() \textcolor{keyword}{const};}
+\DoxyCodeLine{287 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFldNo, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );}
+\DoxyCodeLine{288 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );}
+\DoxyCodeLine{289 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFldNo, xbUInt32 \&ulMemoFieldLen );}
+\DoxyCodeLine{290 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sFldName, xbUInt32 \&ulMemoFieldLen );}
+\DoxyCodeLine{291 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} MemoFieldExists ( xbInt16 iFieldNo ) \textcolor{keyword}{const};}
+\DoxyCodeLine{292 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} MemoFieldExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFieldName ) \textcolor{keyword}{const};}
+\DoxyCodeLine{293 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 ulBlockSize ) = 0;}
+\DoxyCodeLine{294 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( xbInt16 iFldNo, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMemoData );}
+\DoxyCodeLine{295 \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{296 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MEMO\_SUPPORT}}
+\DoxyCodeLine{297 }
+\DoxyCodeLine{298 }
+\DoxyCodeLine{299 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{300 \textcolor{keyword}{virtual} xbInt16 LockTable ( xbInt16 iLockFunction );}
+\DoxyCodeLine{301 \textcolor{keyword}{virtual} xbInt16 LockRecord ( xbInt16 iLockFunction, xbUInt32 ulRecNo );}
+\DoxyCodeLine{302 \textcolor{keyword}{virtual} xbInt16 LockAppend ( xbInt16 iLockFunction );}
+\DoxyCodeLine{303 \textcolor{keyword}{virtual} xbInt16 LockHeader ( xbInt16 iLockFunction );}
+\DoxyCodeLine{304 }
+\DoxyCodeLine{305 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
+\DoxyCodeLine{306 \textcolor{keyword}{virtual} xbInt16 LockMemo ( xbInt16 iLockFunction );}
+\DoxyCodeLine{307 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMemoLocked () \textcolor{keyword}{const}; }
+\DoxyCodeLine{308 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MEMO\_LOCK}}
\DoxyCodeLine{309 }
-\DoxyCodeLine{310 xbInt16 GetAutoLock () \textcolor{keyword}{const};}
-\DoxyCodeLine{311 \textcolor{keywordtype}{void} SetAutoLock ( xbInt16 iAutoLock );}
-\DoxyCodeLine{312 xbInt16 GetLockFlavor () \textcolor{keyword}{const};}
-\DoxyCodeLine{313 \textcolor{keywordtype}{void} SetLockFlavor ( xbInt16 iLockFlavor );}
-\DoxyCodeLine{314 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetTableLocked () \textcolor{keyword}{const};}
-\DoxyCodeLine{315 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetHeaderLocked () \textcolor{keyword}{const};}
-\DoxyCodeLine{316 xbUInt32 GetAppendLocked () \textcolor{keyword}{const};}
-\DoxyCodeLine{317 xbLinkListNode<xbUInt32> * GetFirstRecLock () \textcolor{keyword}{const};}
-\DoxyCodeLine{318 }
-\DoxyCodeLine{319 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{320 \textcolor{keywordtype}{void} DumpTableLockStatus() \textcolor{keyword}{const};}
-\DoxyCodeLine{321 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{322 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{323 }
-\DoxyCodeLine{324 }
-\DoxyCodeLine{325 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{326 \textcolor{keyword}{virtual} xbInt16 CheckTagIntegrity( xbInt16 iTagOpt, xbInt16 iOutputOpt );}
-\DoxyCodeLine{327 \textcolor{keyword}{virtual} xbInt16 CloseIndexFile( xbIx *pIx );}
-\DoxyCodeLine{328 \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{329 xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverLay, xbIx **xbIxOut, \textcolor{keywordtype}{void} **vpTagOut );}
-\DoxyCodeLine{330 \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{331 \textcolor{keyword}{virtual} xbInt16 DeleteAllIndexFiles();}
-\DoxyCodeLine{332 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sKey );}
-\DoxyCodeLine{333 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dtKey );}
-\DoxyCodeLine{334 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dKey );}
-\DoxyCodeLine{335 \textcolor{keyword}{virtual} xbIx *GetCurIx() \textcolor{keyword}{const};}
-\DoxyCodeLine{336 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} *GetCurTag() \textcolor{keyword}{const};}
-\DoxyCodeLine{337 }
-\DoxyCodeLine{338 \textcolor{keyword}{virtual} xbInt16 GetFirstKey();}
-\DoxyCodeLine{339 \textcolor{keyword}{virtual} xbInt16 GetNextKey();}
-\DoxyCodeLine{340 \textcolor{keyword}{virtual} xbInt16 GetPrevKey();}
-\DoxyCodeLine{341 \textcolor{keyword}{virtual} xbInt16 GetLastKey();}
-\DoxyCodeLine{342 }
-\DoxyCodeLine{343 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetCurIxType() \textcolor{keyword}{const};}
-\DoxyCodeLine{344 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetCurTagName() \textcolor{keyword}{const};}
-\DoxyCodeLine{345 \textcolor{keyword}{virtual} xbIxList *GetIxList() \textcolor{keyword}{const};}
-\DoxyCodeLine{346 \textcolor{keyword}{virtual} xbInt32 GetPhysicalIxCnt () \textcolor{keyword}{const};}
-\DoxyCodeLine{347 xbLinkListNode<xbTag *> *GetTagList () \textcolor{keyword}{const};}
-\DoxyCodeLine{348 }
-\DoxyCodeLine{349 \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{350 \textcolor{keyword}{virtual} xbInt16 Reindex( xbInt16 iTagOpt );}
-\DoxyCodeLine{351 \textcolor{keyword}{virtual} xbInt16 SetCurTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTagName );}
-\DoxyCodeLine{352 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetCurTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIxType, xbIx *pIx, \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{353 }
-\DoxyCodeLine{354 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{355 }
-\DoxyCodeLine{356 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
-\DoxyCodeLine{357 \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{358 xbLinkListNode<xbString> *GetInfList() \textcolor{keyword}{const};}
-\DoxyCodeLine{359 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
-\DoxyCodeLine{360 }
-\DoxyCodeLine{361 \textcolor{comment}{//\#ifdef XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{362 \textcolor{comment}{//virtual xbInt16 GetCreateMdxBlockSize() const;}}
-\DoxyCodeLine{363 \textcolor{comment}{//virtual xbInt16 SetCreateMdxBlockSize( xbInt16 ulBlockSize );}}
-\DoxyCodeLine{364 \textcolor{comment}{//\#endif}}
-\DoxyCodeLine{365 }
-\DoxyCodeLine{366 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{367 xbInt16 DisableBlockReadProcessing();}
-\DoxyCodeLine{368 xbInt16 EnableBlockReadProcessing();}
-\DoxyCodeLine{369 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetBlockReadStatus() \textcolor{keyword}{const};}
-\DoxyCodeLine{370 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{371 }
-\DoxyCodeLine{372 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{373 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{374 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIx;}
-\DoxyCodeLine{375 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIxMdx;}
-\DoxyCodeLine{376 }
-\DoxyCodeLine{377 xbInt16 AddIndex( xbIx *ix, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmt );}
-\DoxyCodeLine{378 \textcolor{keywordtype}{void} ClearTagList();}
-\DoxyCodeLine{379 xbInt16 RemoveIndex( xbIx * ix );}
-\DoxyCodeLine{380 \textcolor{keywordtype}{void} UpdateSchemaIxFlag( xbInt16 iFldNo, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cVal );}
-\DoxyCodeLine{381 \textcolor{keyword}{virtual} xbInt16 UpdateTagList ();}
-\DoxyCodeLine{382 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{383 }
-\DoxyCodeLine{384 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
-\DoxyCodeLine{385 \textcolor{keyword}{virtual} xbInt16 GetInfFileName( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sNdxIdxFileName );}
-\DoxyCodeLine{386 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
+\DoxyCodeLine{310 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{311 \textcolor{keyword}{virtual} xbInt16 LockIndices ( xbInt16 iLockFunction );}
+\DoxyCodeLine{312 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{313 }
+\DoxyCodeLine{314 xbInt16 GetAutoLock () \textcolor{keyword}{const};}
+\DoxyCodeLine{315 \textcolor{keywordtype}{void} SetAutoLock ( xbInt16 iAutoLock );}
+\DoxyCodeLine{316 xbInt16 GetLockFlavor () \textcolor{keyword}{const};}
+\DoxyCodeLine{317 \textcolor{keywordtype}{void} SetLockFlavor ( xbInt16 iLockFlavor );}
+\DoxyCodeLine{318 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetTableLocked () \textcolor{keyword}{const};}
+\DoxyCodeLine{319 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetHeaderLocked () \textcolor{keyword}{const};}
+\DoxyCodeLine{320 xbUInt32 GetAppendLocked () \textcolor{keyword}{const};}
+\DoxyCodeLine{321 xbLinkListNode<xbUInt32> * GetFirstRecLock () \textcolor{keyword}{const};}
+\DoxyCodeLine{322 }
+\DoxyCodeLine{323 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{324 \textcolor{keywordtype}{void} DumpTableLockStatus() \textcolor{keyword}{const};}
+\DoxyCodeLine{325 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{326 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{327 }
+\DoxyCodeLine{328 }
+\DoxyCodeLine{329 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{330 \textcolor{keyword}{virtual} xbInt16 CheckTagIntegrity( xbInt16 iTagOpt, xbInt16 iOutputOpt );}
+\DoxyCodeLine{331 \textcolor{keyword}{virtual} xbInt16 CloseIndexFile( xbIx *pIx );}
+\DoxyCodeLine{332 \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{333 xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverLay, xbIx **xbIxOut, \textcolor{keywordtype}{void} **vpTagOut );}
+\DoxyCodeLine{334 \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{335 \textcolor{keyword}{virtual} xbInt16 DeleteAllIndexFiles();}
+\DoxyCodeLine{336 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sKey );}
+\DoxyCodeLine{337 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dtKey );}
+\DoxyCodeLine{338 \textcolor{keyword}{virtual} xbInt16 Find( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dKey );}
+\DoxyCodeLine{339 \textcolor{keyword}{virtual} xbIx *GetCurIx() \textcolor{keyword}{const};}
+\DoxyCodeLine{340 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} *GetCurTag() \textcolor{keyword}{const};}
+\DoxyCodeLine{341 }
+\DoxyCodeLine{342 \textcolor{keyword}{virtual} xbInt16 GetFirstKey();}
+\DoxyCodeLine{343 \textcolor{keyword}{virtual} xbInt16 GetNextKey();}
+\DoxyCodeLine{344 \textcolor{keyword}{virtual} xbInt16 GetPrevKey();}
+\DoxyCodeLine{345 \textcolor{keyword}{virtual} xbInt16 GetLastKey();}
+\DoxyCodeLine{346 }
+\DoxyCodeLine{347 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetCurIxType() \textcolor{keyword}{const};}
+\DoxyCodeLine{348 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetCurTagName() \textcolor{keyword}{const};}
+\DoxyCodeLine{349 \textcolor{keyword}{virtual} xbIxList *GetIxList() \textcolor{keyword}{const};}
+\DoxyCodeLine{350 \textcolor{keyword}{virtual} xbInt32 GetPhysicalIxCnt () \textcolor{keyword}{const};}
+\DoxyCodeLine{351 xbLinkListNode<xbTag *> *GetTagList () \textcolor{keyword}{const};}
+\DoxyCodeLine{352 }
+\DoxyCodeLine{353 \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{354 \textcolor{keyword}{virtual} xbInt16 Reindex( xbInt16 iTagOpt = 0, xbInt16 iErrorOpt = 1, xbIx **pIx = NULL, \textcolor{keywordtype}{void} **vpTag = NULL );}
+\DoxyCodeLine{355 \textcolor{keyword}{virtual} xbInt16 SetCurTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTagName );}
+\DoxyCodeLine{356 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetCurTag( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIxType, xbIx *pIx, \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{357 }
+\DoxyCodeLine{358 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{359 }
+\DoxyCodeLine{360 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
+\DoxyCodeLine{361 \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{362 xbLinkListNode<xbString> *GetInfList() \textcolor{keyword}{const};}
+\DoxyCodeLine{363 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
+\DoxyCodeLine{364 }
+\DoxyCodeLine{365 \textcolor{comment}{//\#ifdef XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{366 \textcolor{comment}{//virtual xbInt16 GetCreateMdxBlockSize() const;}}
+\DoxyCodeLine{367 \textcolor{comment}{//virtual xbInt16 SetCreateMdxBlockSize( xbInt16 ulBlockSize );}}
+\DoxyCodeLine{368 \textcolor{comment}{//\#endif}}
+\DoxyCodeLine{369 }
+\DoxyCodeLine{370 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{371 xbInt16 DisableBlockReadProcessing();}
+\DoxyCodeLine{372 xbInt16 EnableBlockReadProcessing();}
+\DoxyCodeLine{373 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetBlockReadStatus() \textcolor{keyword}{const};}
+\DoxyCodeLine{374 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{375 }
+\DoxyCodeLine{376 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{377 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{378 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIx;}
+\DoxyCodeLine{379 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIxMdx;}
+\DoxyCodeLine{380 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbIxTdx;}
+\DoxyCodeLine{381 }
+\DoxyCodeLine{382 xbInt16 AddIndex( xbIx *ix, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFmt );}
+\DoxyCodeLine{383 \textcolor{keywordtype}{void} ClearTagList();}
+\DoxyCodeLine{384 xbInt16 RemoveIndex( xbIx * ix );}
+\DoxyCodeLine{385 \textcolor{keywordtype}{void} UpdateSchemaIxFlag( xbInt16 iFldNo, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cVal );}
+\DoxyCodeLine{386 }
\DoxyCodeLine{387 }
-\DoxyCodeLine{388 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{389 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBlockRead;}
-\DoxyCodeLine{390 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{391 }
+\DoxyCodeLine{388 \textcolor{keyword}{virtual} xbInt16 UpdateTagList ();}
+\DoxyCodeLine{389 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{390 }
+\DoxyCodeLine{391 \textcolor{keyword}{virtual} xbInt16 ReadHeader ( xbInt16 iFilePositionOption, xbInt16 iReadOption );}
\DoxyCodeLine{392 }
-\DoxyCodeLine{393 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{394 \textcolor{keywordtype}{void} SetHeaderLocked ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked );}
-\DoxyCodeLine{395 \textcolor{keywordtype}{void} SetTableLocked ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked );}
-\DoxyCodeLine{396 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPORT}}
+\DoxyCodeLine{393 }
+\DoxyCodeLine{394 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
+\DoxyCodeLine{395 \textcolor{keyword}{virtual} xbInt16 GetInfFileName( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sNdxIdxFileName );}
+\DoxyCodeLine{396 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
\DoxyCodeLine{397 }
-\DoxyCodeLine{398 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
-\DoxyCodeLine{399 xbInt16 iMemoFieldCnt; \textcolor{comment}{// Memo field cnt in the table}}
-\DoxyCodeLine{400 xbMemo *Memo; \textcolor{comment}{// Pointer to memo class}}
-\DoxyCodeLine{401 xbUInt32 ulCreateMemoBlockSize; \textcolor{comment}{// blocksize to use when creating dbt file}}
-\DoxyCodeLine{402 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{403 }
-\DoxyCodeLine{404 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
-\DoxyCodeLine{405 \textcolor{keyword}{virtual} xbInt16 DeleteInfData();}
-\DoxyCodeLine{406 \textcolor{keyword}{virtual} xbInt16 LoadInfData();}
-\DoxyCodeLine{407 \textcolor{keyword}{virtual} xbInt16 SaveInfData();}
-\DoxyCodeLine{408 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
-\DoxyCodeLine{409 }
-\DoxyCodeLine{410 \textcolor{comment}{/*}}
-\DoxyCodeLine{411 \textcolor{comment}{ \#ifdef XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{412 \textcolor{comment}{ xbInt16 iCreateMdxBlockSize;}}
-\DoxyCodeLine{413 \textcolor{comment}{ \#endif // XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{414 \textcolor{comment}{*/}}
-\DoxyCodeLine{415 }
-\DoxyCodeLine{416 \textcolor{keyword}{virtual} xbInt16 GetRawField( xbInt16 iFieldNo, \textcolor{keywordtype}{char} *Buf, xbUInt32 BufSize, xbInt16 iRecBufSw ) \textcolor{keyword}{const};}
-\DoxyCodeLine{417 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} InitVars(); }
-\DoxyCodeLine{418 \textcolor{keyword}{virtual} xbInt16 SetVersion() = 0;}
-\DoxyCodeLine{419 \textcolor{keyword}{virtual} xbInt16 ValidateSchema( \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} * s ) = 0;}
-\DoxyCodeLine{420 xbInt16 WriteHeader( xbInt16 iPositionOption, xbInt16 iWriteOption );}
-\DoxyCodeLine{421 }
-\DoxyCodeLine{422 }
-\DoxyCodeLine{423 xbUInt32 ulCurRec; \textcolor{comment}{// Current record or zero}}
-\DoxyCodeLine{424 xbInt16 iAutoCommit; \textcolor{comment}{// Auto commit updates if not explicitly performed before moving off record?}}
-\DoxyCodeLine{425 \textcolor{comment}{// -\/1 -\/-\/> Use DBMS default}}
-\DoxyCodeLine{426 \textcolor{comment}{// 0 -\/-\/> No auto update on this table, regardless of DBMS setting}}
-\DoxyCodeLine{427 \textcolor{comment}{// 1 -\/-\/> Auto update on this table, regardless of DBMS setting}}
-\DoxyCodeLine{428 }
-\DoxyCodeLine{429 xbInt16 iFileVersion; \textcolor{comment}{// xBase file version -\/ which class is in play}}
-\DoxyCodeLine{430 }
+\DoxyCodeLine{398 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{399 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBlockRead;}
+\DoxyCodeLine{400 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{401 }
+\DoxyCodeLine{402 }
+\DoxyCodeLine{403 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{404 \textcolor{keywordtype}{void} SetHeaderLocked ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked );}
+\DoxyCodeLine{405 \textcolor{keywordtype}{void} SetTableLocked ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked );}
+\DoxyCodeLine{406 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPORT}}
+\DoxyCodeLine{407 }
+\DoxyCodeLine{408 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
+\DoxyCodeLine{409 xbInt16 iMemoFieldCnt; \textcolor{comment}{// Memo field cnt in the table}}
+\DoxyCodeLine{410 xbMemo *Memo; \textcolor{comment}{// Pointer to memo class}}
+\DoxyCodeLine{411 xbUInt32 ulCreateMemoBlockSize; \textcolor{comment}{// blocksize to use when creating dbt file}}
+\DoxyCodeLine{412 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{413 }
+\DoxyCodeLine{414 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
+\DoxyCodeLine{415 \textcolor{keyword}{virtual} xbInt16 DeleteInfData();}
+\DoxyCodeLine{416 \textcolor{keyword}{virtual} xbInt16 LoadInfData();}
+\DoxyCodeLine{417 \textcolor{keyword}{virtual} xbInt16 SaveInfData();}
+\DoxyCodeLine{418 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
+\DoxyCodeLine{419 }
+\DoxyCodeLine{420 \textcolor{comment}{/*}}
+\DoxyCodeLine{421 \textcolor{comment}{ \#ifdef XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{422 \textcolor{comment}{ xbInt16 iCreateMdxBlockSize;}}
+\DoxyCodeLine{423 \textcolor{comment}{ \#endif // XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{424 \textcolor{comment}{*/}}
+\DoxyCodeLine{425 }
+\DoxyCodeLine{426 \textcolor{keyword}{virtual} xbInt16 GetRawField( xbInt16 iFieldNo, \textcolor{keywordtype}{char} *Buf, xbUInt32 BufSize, xbInt16 iRecBufSw ) \textcolor{keyword}{const};}
+\DoxyCodeLine{427 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} InitVars(); }
+\DoxyCodeLine{428 \textcolor{keyword}{virtual} xbInt16 SetVersion() = 0;}
+\DoxyCodeLine{429 \textcolor{keyword}{virtual} xbInt16 ValidateSchema( \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} * s ) = 0;}
+\DoxyCodeLine{430 xbInt16 WriteHeader( xbInt16 iPositionOption, xbInt16 iWriteOption );}
\DoxyCodeLine{431 }
-\DoxyCodeLine{432 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sAlias; \textcolor{comment}{// table alias}}
-\DoxyCodeLine{433 xbInt16 iNoOfFields;}
-\DoxyCodeLine{434 xbInt16 iDbfStatus; \textcolor{comment}{// 0 = closed}}
-\DoxyCodeLine{435 \textcolor{comment}{// 1 = open}}
-\DoxyCodeLine{436 \textcolor{comment}{// 2 = updates pending}}
-\DoxyCodeLine{437 }
-\DoxyCodeLine{438 xbSchemaRec *SchemaPtr; \textcolor{comment}{// Pointer to field data}}
-\DoxyCodeLine{439 \textcolor{keywordtype}{char} *RecBuf; \textcolor{comment}{// Pointer to record buffer}}
-\DoxyCodeLine{440 \textcolor{keywordtype}{char} *RecBuf2; \textcolor{comment}{// Pointer to original rec buf allocation}}
+\DoxyCodeLine{432 }
+\DoxyCodeLine{433 xbUInt32 ulCurRec; \textcolor{comment}{// Current record or zero}}
+\DoxyCodeLine{434 xbInt16 iAutoCommit; \textcolor{comment}{// Auto commit updates if not explicitly performed before moving off record?}}
+\DoxyCodeLine{435 \textcolor{comment}{// -\/1 -\/-\/> Use DBMS default}}
+\DoxyCodeLine{436 \textcolor{comment}{// 0 -\/-\/> No auto update on this table, regardless of DBMS setting}}
+\DoxyCodeLine{437 \textcolor{comment}{// 1 -\/-\/> Auto update on this table, regardless of DBMS setting}}
+\DoxyCodeLine{438 }
+\DoxyCodeLine{439 xbInt16 iFileVersion; \textcolor{comment}{// xBase file version -\/ which class is in play}}
+\DoxyCodeLine{440 }
\DoxyCodeLine{441 }
-\DoxyCodeLine{442 }
-\DoxyCodeLine{443 \textcolor{comment}{/* Next several variables are database header fields, up through dbase V */}}
-\DoxyCodeLine{444 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cVersion;}
-\DoxyCodeLine{445 \textcolor{keywordtype}{char} cUpdateYY;}
-\DoxyCodeLine{446 \textcolor{keywordtype}{char} cUpdateMM;}
-\DoxyCodeLine{447 \textcolor{keywordtype}{char} cUpdateDD;}
-\DoxyCodeLine{448 xbUInt32 ulNoOfRecs;}
-\DoxyCodeLine{449 xbUInt16 uiHeaderLen;}
-\DoxyCodeLine{450 xbUInt16 uiRecordLen;}
-\DoxyCodeLine{451 \textcolor{keywordtype}{char} cTransactionFlag;}
-\DoxyCodeLine{452 \textcolor{keywordtype}{char} cEncryptionFlag;}
-\DoxyCodeLine{453 \textcolor{keywordtype}{char} cIndexFlag;}
-\DoxyCodeLine{454 \textcolor{keywordtype}{char} cLangDriver; \textcolor{comment}{// dbase 7 sets to 1B}}
-\DoxyCodeLine{455 }
-\DoxyCodeLine{456 }
-\DoxyCodeLine{457 }
-\DoxyCodeLine{458 \textcolor{keyword}{private}:}
-\DoxyCodeLine{459 \textcolor{keywordtype}{void} ResetNoOfRecords(); }
-\DoxyCodeLine{460 }
-\DoxyCodeLine{461 }
-\DoxyCodeLine{462 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{463 xbInt16 iAutoLock; \textcolor{comment}{// 0 -\/ autolock off, 1 -\/ autolock on}}
-\DoxyCodeLine{464 xbInt16 iLockFlavor;}
-\DoxyCodeLine{465 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked; \textcolor{comment}{// is the table locked}}
-\DoxyCodeLine{466 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bHeaderLocked; \textcolor{comment}{// is the header locked}}
-\DoxyCodeLine{467 xbUInt32 ulAppendLocked; \textcolor{comment}{// record number of the new record for the append lock operation}}
-\DoxyCodeLine{468 xbLinkListOrd<xbUInt32> lloRecLocks; \textcolor{comment}{// ordered link list of locked records}}
-\DoxyCodeLine{469 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{442 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sAlias; \textcolor{comment}{// table alias}}
+\DoxyCodeLine{443 xbInt16 iNoOfFields;}
+\DoxyCodeLine{444 xbInt16 iDbfStatus; \textcolor{comment}{// 0 = closed}}
+\DoxyCodeLine{445 \textcolor{comment}{// 1 = open}}
+\DoxyCodeLine{446 \textcolor{comment}{// 2 = updates pending}}
+\DoxyCodeLine{447 }
+\DoxyCodeLine{448 xbSchemaRec *SchemaPtr; \textcolor{comment}{// Pointer to field data}}
+\DoxyCodeLine{449 \textcolor{keywordtype}{char} *RecBuf; \textcolor{comment}{// Pointer to record buffer}}
+\DoxyCodeLine{450 \textcolor{keywordtype}{char} *RecBuf2; \textcolor{comment}{// Pointer to original rec buf allocation}}
+\DoxyCodeLine{451 }
+\DoxyCodeLine{452 }
+\DoxyCodeLine{453 \textcolor{comment}{/* Next several variables are database header fields, up through dbase V */}}
+\DoxyCodeLine{454 \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cVersion;}
+\DoxyCodeLine{455 \textcolor{keywordtype}{char} cUpdateYY;}
+\DoxyCodeLine{456 \textcolor{keywordtype}{char} cUpdateMM;}
+\DoxyCodeLine{457 \textcolor{keywordtype}{char} cUpdateDD;}
+\DoxyCodeLine{458 xbUInt32 ulNoOfRecs;}
+\DoxyCodeLine{459 xbUInt16 uiHeaderLen;}
+\DoxyCodeLine{460 xbUInt16 uiRecordLen;}
+\DoxyCodeLine{461 \textcolor{keywordtype}{char} cTransactionFlag;}
+\DoxyCodeLine{462 \textcolor{keywordtype}{char} cEncryptionFlag;}
+\DoxyCodeLine{463 \textcolor{keywordtype}{char} cIndexFlag;}
+\DoxyCodeLine{464 \textcolor{keywordtype}{char} cLangDriver; \textcolor{comment}{// dbase 7 sets to 1B}}
+\DoxyCodeLine{465 }
+\DoxyCodeLine{466 }
+\DoxyCodeLine{467 }
+\DoxyCodeLine{468 \textcolor{keyword}{private}:}
+\DoxyCodeLine{469 \textcolor{keywordtype}{void} ResetNoOfRecords(); }
\DoxyCodeLine{470 }
-\DoxyCodeLine{471 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{472 xbIxList *ixList; \textcolor{comment}{// pointer to a list of indices associated with the table}}
-\DoxyCodeLine{473 xbIx *pCurIx; \textcolor{comment}{// Pointer to current index class}}
-\DoxyCodeLine{474 \textcolor{keywordtype}{void} *vpCurIxTag; \textcolor{comment}{// Pointer to current tag}}
-\DoxyCodeLine{475 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sCurIxType; \textcolor{comment}{// Current index type}}
-\DoxyCodeLine{476 xbLinkList<xbTag *> llTags; \textcolor{comment}{// linked list of open tags}}
-\DoxyCodeLine{477 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
-\DoxyCodeLine{478 }
-\DoxyCodeLine{479 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
-\DoxyCodeLine{480 xbLinkList<xbString> llInfData; \textcolor{comment}{// linked list of strings containing ndx file entries}}
-\DoxyCodeLine{481 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
-\DoxyCodeLine{482 }
-\DoxyCodeLine{483 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{484 xbBlockRead *pRb;}
-\DoxyCodeLine{485 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bBlockReadEnabled; \textcolor{comment}{// if true, then block read mode is on}}
-\DoxyCodeLine{486 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{487 }
+\DoxyCodeLine{471 }
+\DoxyCodeLine{472 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{473 xbInt16 iAutoLock; \textcolor{comment}{// 0 -\/ autolock off, 1 -\/ autolock on}}
+\DoxyCodeLine{474 xbInt16 iLockFlavor;}
+\DoxyCodeLine{475 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bTableLocked; \textcolor{comment}{// is the table locked}}
+\DoxyCodeLine{476 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bHeaderLocked; \textcolor{comment}{// is the header locked}}
+\DoxyCodeLine{477 xbUInt32 ulAppendLocked; \textcolor{comment}{// record number of the new record for the append lock operation}}
+\DoxyCodeLine{478 xbLinkListOrd<xbUInt32> lloRecLocks; \textcolor{comment}{// ordered link list of locked records}}
+\DoxyCodeLine{479 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{480 }
+\DoxyCodeLine{481 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}}
+\DoxyCodeLine{482 xbIxList *ixList; \textcolor{comment}{// pointer to a list of indices associated with the table}}
+\DoxyCodeLine{483 xbIx *pCurIx; \textcolor{comment}{// Pointer to current index class}}
+\DoxyCodeLine{484 \textcolor{keywordtype}{void} *vpCurIxTag; \textcolor{comment}{// Pointer to current tag}}
+\DoxyCodeLine{485 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sCurIxType; \textcolor{comment}{// Current index type}}
+\DoxyCodeLine{486 xbLinkList<xbTag *> llTags; \textcolor{comment}{// linked list of open tags}}
+\DoxyCodeLine{487 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}}
\DoxyCodeLine{488 }
-\DoxyCodeLine{489 }
-\DoxyCodeLine{490 \};}
-\DoxyCodeLine{491 }
+\DoxyCodeLine{489 \textcolor{preprocessor}{ \#ifdef XB\_INF\_SUPPORT}}
+\DoxyCodeLine{490 xbLinkList<xbString> llInfData; \textcolor{comment}{// linked list of strings containing ndx file entries}}
+\DoxyCodeLine{491 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INF\_SUPPORT}}
\DoxyCodeLine{492 }
-\DoxyCodeLine{493 \textcolor{preprocessor}{\#ifdef XB\_DBF3\_SUPPORT}}
-\DoxyCodeLine{495 }
-\DoxyCodeLine{501 \textcolor{keyword}{class }XBDLLEXPORT xbDbf3 : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} \{}
-\DoxyCodeLine{502 \textcolor{keyword}{public}:}
-\DoxyCodeLine{503 xbDbf3(\mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *x);}
-\DoxyCodeLine{504 \string~xbDbf3();}
-\DoxyCodeLine{505 \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{506 \textcolor{keyword}{virtual} xbInt16 GetVersion () \textcolor{keyword}{const};}
-\DoxyCodeLine{507 \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{508 \textcolor{keyword}{virtual} xbInt16 Rename ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sNewName );}
-\DoxyCodeLine{509 }
-\DoxyCodeLine{510 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
-\DoxyCodeLine{511 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 iBlockSize );}
-\DoxyCodeLine{512 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{513 }
-\DoxyCodeLine{514 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{515 xbInt16 SetVersion ();}
-\DoxyCodeLine{516 \textcolor{keyword}{virtual} xbInt16 ValidateSchema( \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} *s );}
-\DoxyCodeLine{517 }
-\DoxyCodeLine{518 \textcolor{keyword}{private}:}
+\DoxyCodeLine{493 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{494 xbBlockRead *pRb;}
+\DoxyCodeLine{495 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bBlockReadEnabled; \textcolor{comment}{// if true, then block read mode is on}}
+\DoxyCodeLine{496 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{497 }
+\DoxyCodeLine{498 }
+\DoxyCodeLine{499 }
+\DoxyCodeLine{500 \};}
+\DoxyCodeLine{501 }
+\DoxyCodeLine{502 }
+\DoxyCodeLine{503 \textcolor{preprocessor}{\#ifdef XB\_DBF3\_SUPPORT}}
+\DoxyCodeLine{505 }
+\DoxyCodeLine{511 \textcolor{keyword}{class }XBDLLEXPORT xbDbf3 : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} \{}
+\DoxyCodeLine{512 \textcolor{keyword}{public}:}
+\DoxyCodeLine{513 xbDbf3(\mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *x);}
+\DoxyCodeLine{514 \string~xbDbf3();}
+\DoxyCodeLine{515 \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{516 \textcolor{keyword}{virtual} xbInt16 GetVersion () \textcolor{keyword}{const};}
+\DoxyCodeLine{517 \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{518 \textcolor{keyword}{virtual} xbInt16 Rename ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sNewName );}
\DoxyCodeLine{519 }
-\DoxyCodeLine{520 \};}
-\DoxyCodeLine{521 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_DBF3\_SUPPORT */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{522 }
+\DoxyCodeLine{520 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
+\DoxyCodeLine{521 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 iBlockSize );}
+\DoxyCodeLine{522 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{523 }
-\DoxyCodeLine{524 \textcolor{preprocessor}{\#ifdef XB\_DBF4\_SUPPORT}}
-\DoxyCodeLine{526 }
-\DoxyCodeLine{531 \textcolor{keyword}{class }XBDLLEXPORT xbDbf4 : \textcolor{keyword}{public} \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} \{}
-\DoxyCodeLine{532 \textcolor{keyword}{public}:}
-\DoxyCodeLine{533 xbDbf4( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *x );}
-\DoxyCodeLine{534 }
-\DoxyCodeLine{535 \string~xbDbf4();}
+\DoxyCodeLine{524 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{525 xbInt16 SetVersion ();}
+\DoxyCodeLine{526 \textcolor{keyword}{virtual} xbInt16 ValidateSchema( \mbox{\hyperlink{structxb_1_1xbSchema}{xbSchema}} *s );}
+\DoxyCodeLine{527 }
+\DoxyCodeLine{528 \textcolor{keyword}{private}:}
+\DoxyCodeLine{529 }
+\DoxyCodeLine{530 \};}
+\DoxyCodeLine{531 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_DBF3\_SUPPORT */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{532 }
+\DoxyCodeLine{533 }
+\DoxyCodeLine{534 \textcolor{preprocessor}{\#ifdef XB\_DBF4\_SUPPORT}}
\DoxyCodeLine{536 }
-\DoxyCodeLine{537 \textcolor{keyword}{virtual} xbInt16 CreateTable ( \textcolor{keyword}{const} xbString \&sTableName, \textcolor{keyword}{const} xbString \&sAlias, xbSchema *, xbInt16 iOverlay, xbInt16 iShareMode );}
-\DoxyCodeLine{538 \textcolor{keyword}{virtual} xbInt16 GetVersion () \textcolor{keyword}{const};}
-\DoxyCodeLine{539 \textcolor{keyword}{virtual} xbInt16 Open ( \textcolor{keyword}{const} xbString \&sTableName, \textcolor{keyword}{const} xbString \&sAlias, xbInt16 iOpenMode, xbInt16 iShareMode );}
-\DoxyCodeLine{540 \textcolor{keyword}{virtual} xbInt16 Rename ( \textcolor{keyword}{const} xbString sNewName );}
-\DoxyCodeLine{541 }
-\DoxyCodeLine{542 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
-\DoxyCodeLine{543 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 iBlockSize );}
-\DoxyCodeLine{544 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{545 }
-\DoxyCodeLine{546 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{547 \textcolor{comment}{// void InitVars ();}}
-\DoxyCodeLine{548 xbInt16 SetVersion();}
-\DoxyCodeLine{549 \textcolor{keyword}{virtual} xbInt16 ValidateSchema ( xbSchema *s );}
-\DoxyCodeLine{550 }
-\DoxyCodeLine{551 \textcolor{keyword}{private}:}
-\DoxyCodeLine{552 }
-\DoxyCodeLine{553 \};}
-\DoxyCodeLine{554 }
-\DoxyCodeLine{555 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_DBF4\_SUPPORT */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{556 }
-\DoxyCodeLine{557 \} \textcolor{comment}{/* namespace xb */}}
-\DoxyCodeLine{558 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_DBF\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{541 \textcolor{keyword}{class }XBDLLEXPORT xbDbf4 : \textcolor{keyword}{public} \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} \{}
+\DoxyCodeLine{542 \textcolor{keyword}{public}:}
+\DoxyCodeLine{543 xbDbf4( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *x );}
+\DoxyCodeLine{544 }
+\DoxyCodeLine{545 \string~xbDbf4();}
+\DoxyCodeLine{546 }
+\DoxyCodeLine{547 \textcolor{keyword}{virtual} xbInt16 CreateTable ( \textcolor{keyword}{const} xbString \&sTableName, \textcolor{keyword}{const} xbString \&sAlias, xbSchema *, xbInt16 iOverlay, xbInt16 iShareMode );}
+\DoxyCodeLine{548 \textcolor{keyword}{virtual} xbInt16 GetVersion () \textcolor{keyword}{const};}
+\DoxyCodeLine{549 \textcolor{keyword}{virtual} xbInt16 Open ( \textcolor{keyword}{const} xbString \&sTableName, \textcolor{keyword}{const} xbString \&sAlias, xbInt16 iOpenMode, xbInt16 iShareMode );}
+\DoxyCodeLine{550 \textcolor{keyword}{virtual} xbInt16 Rename ( \textcolor{keyword}{const} xbString sNewName );}
+\DoxyCodeLine{551 }
+\DoxyCodeLine{552 \textcolor{preprocessor}{ \#ifdef XB\_MEMO\_SUPPORT}}
+\DoxyCodeLine{553 \textcolor{keyword}{virtual} xbInt16 SetCreateMemoBlockSize( xbUInt32 iBlockSize );}
+\DoxyCodeLine{554 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{555 }
+\DoxyCodeLine{556 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{557 \textcolor{comment}{// void InitVars ();}}
+\DoxyCodeLine{558 xbInt16 SetVersion();}
+\DoxyCodeLine{559 \textcolor{keyword}{virtual} xbInt16 ValidateSchema ( xbSchema *s );}
+\DoxyCodeLine{560 }
+\DoxyCodeLine{561 \textcolor{keyword}{private}:}
+\DoxyCodeLine{562 }
+\DoxyCodeLine{563 \};}
+\DoxyCodeLine{564 }
+\DoxyCodeLine{565 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_DBF4\_SUPPORT */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{566 }
+\DoxyCodeLine{567 \} \textcolor{comment}{/* namespace xb */}}
+\DoxyCodeLine{568 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_DBF\_H\_\_ */}\textcolor{preprocessor}{}}
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbdelete_8cpp.tex b/docs/doxygen/latex/xbdelete_8cpp.tex
index f24ada6..739077c 100644
--- a/docs/doxygen/latex/xbdelete_8cpp.tex
+++ b/docs/doxygen/latex/xbdelete_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbdelete_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdelete.cpp File Reference}
-\label{xbdelete_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdelete.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdelete.cpp}}
+\hypertarget{xbdelete_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdelete.cpp File Reference}
+\label{xbdelete_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdelete.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdelete.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbdrpix_8cpp.tex b/docs/doxygen/latex/xbdrpix_8cpp.tex
index 39be17f..595716d 100644
--- a/docs/doxygen/latex/xbdrpix_8cpp.tex
+++ b/docs/doxygen/latex/xbdrpix_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbdrpix_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdrpix.cpp File Reference}
-\label{xbdrpix_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdrpix.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdrpix.cpp}}
+\hypertarget{xbdrpix_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdrpix.cpp File Reference}
+\label{xbdrpix_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdrpix.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdrpix.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbdrptbl_8cpp.tex b/docs/doxygen/latex/xbdrptbl_8cpp.tex
index c31d938..dc9f5c3 100644
--- a/docs/doxygen/latex/xbdrptbl_8cpp.tex
+++ b/docs/doxygen/latex/xbdrptbl_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbdrptbl_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdrptbl.cpp File Reference}
-\label{xbdrptbl_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdrptbl.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbdrptbl.cpp}}
+\hypertarget{xbdrptbl_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdrptbl.cpp File Reference}
+\label{xbdrptbl_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdrptbl.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbdrptbl.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbexp_8cpp.tex b/docs/doxygen/latex/xbexp_8cpp.tex
index 554b4cd..fa163fe 100644
--- a/docs/doxygen/latex/xbexp_8cpp.tex
+++ b/docs/doxygen/latex/xbexp_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbexp_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbexp.cpp File Reference}
-\label{xbexp_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbexp.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbexp.cpp}}
+\hypertarget{xbexp_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbexp.cpp File Reference}
+\label{xbexp_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbexp.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbexp.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbexp_8h.tex b/docs/doxygen/latex/xbexp_8h.tex
index 4b3e7a7..bf47046 100644
--- a/docs/doxygen/latex/xbexp_8h.tex
+++ b/docs/doxygen/latex/xbexp_8h.tex
@@ -1,2 +1,16 @@
-\hypertarget{xbexp_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbexp.h File Reference}
-\label{xbexp_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexp.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexp.h}}
+\hypertarget{xbexp_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbexp.h File Reference}
+\label{xbexp_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexp.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexp.h}}
+\doxysubsection*{Macros}
+\begin{DoxyCompactItemize}
+\item
+\#define \mbox{\hyperlink{xbexp_8h_a6e9d2ccba2b3ac6e44ab411ffda488c2}{XB\+\_\+\+NULL\+\_\+\+DATE}}~21474835648
+\end{DoxyCompactItemize}
+
+
+\doxysubsection{Macro Definition Documentation}
+\mbox{\Hypertarget{xbexp_8h_a6e9d2ccba2b3ac6e44ab411ffda488c2}\label{xbexp_8h_a6e9d2ccba2b3ac6e44ab411ffda488c2}}
+\index{xbexp.h@{xbexp.h}!XB\_NULL\_DATE@{XB\_NULL\_DATE}}
+\index{XB\_NULL\_DATE@{XB\_NULL\_DATE}!xbexp.h@{xbexp.h}}
+\doxysubsubsection{\texorpdfstring{XB\_NULL\_DATE}{XB\_NULL\_DATE}}
+{\footnotesize\ttfamily \#define XB\+\_\+\+NULL\+\_\+\+DATE~21474835648}
+
diff --git a/docs/doxygen/latex/xbexp_8h_source.tex b/docs/doxygen/latex/xbexp_8h_source.tex
index 26b5f1a..af4609a 100644
--- a/docs/doxygen/latex/xbexp_8h_source.tex
+++ b/docs/doxygen/latex/xbexp_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbexp_8h_source}{}\doxysection{xbexp.\+h}
-\label{xbexp_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexp.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexp.h}}
+\label{xbexp_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexp.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexp.h}}
\mbox{\hyperlink{xbexp_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbexp.h}}
@@ -26,139 +26,140 @@
\DoxyCodeLine{22 \textcolor{comment}{// \#pragma interface}}
\DoxyCodeLine{23 \textcolor{comment}{// \#endif}}
\DoxyCodeLine{24 }
-\DoxyCodeLine{25 }
+\DoxyCodeLine{25 \textcolor{preprocessor}{\#define XB\_NULL\_DATE 21474835648}}
\DoxyCodeLine{26 }
-\DoxyCodeLine{27 \textcolor{preprocessor}{\#ifdef XB\_FUNCTION\_SUPPORT}}
-\DoxyCodeLine{28 \textcolor{preprocessor}{\#define XB\_EXP\_CHAR 'C'}}
-\DoxyCodeLine{29 \textcolor{preprocessor}{\#define XB\_EXP\_DATE 'D'}}
-\DoxyCodeLine{30 \textcolor{preprocessor}{\#define XB\_EXP\_LOGICAL 'L'}}
-\DoxyCodeLine{31 \textcolor{preprocessor}{\#define XB\_EXP\_NUMERIC 'N'}}
-\DoxyCodeLine{32 \textcolor{preprocessor}{\#define XB\_EXP\_UNKNOWN 'U'}}
-\DoxyCodeLine{33 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{34 }
-\DoxyCodeLine{35 \textcolor{preprocessor}{\#ifdef XB\_EXPRESSION\_SUPPORT}}
-\DoxyCodeLine{36 }
-\DoxyCodeLine{37 \textcolor{preprocessor}{\#define XB\_EXP\_CONSTANT 'C'}}
-\DoxyCodeLine{38 \textcolor{preprocessor}{\#define XB\_EXP\_FUNCTION 'F'}}
-\DoxyCodeLine{39 \textcolor{preprocessor}{\#define XB\_EXP\_FIELD 'D'}}
-\DoxyCodeLine{40 \textcolor{preprocessor}{\#define XB\_EXP\_OPERATOR 'O'}}
-\DoxyCodeLine{41 \textcolor{preprocessor}{\#define XB\_EXP\_NOTROOT 'N' }\textcolor{comment}{// not root node, needs further parsing}}
-\DoxyCodeLine{42 \textcolor{preprocessor}{\#define XB\_EXP\_PRE\_OPERATOR 'B' }\textcolor{comment}{// (B)efore) pre increment, pre decrement}}
-\DoxyCodeLine{43 \textcolor{preprocessor}{\#define XB\_EXP\_POST\_OPERATOR 'A' }\textcolor{comment}{// (A)fter) post increment, pre decrement}}
-\DoxyCodeLine{44 }
-\DoxyCodeLine{45 \textcolor{preprocessor}{\#define XB\_END\_OF\_EXPRESSION -\/100}}
-\DoxyCodeLine{46 }
-\DoxyCodeLine{47 \textcolor{comment}{// \#define XB\_UNBALANCED\_PARENS -\/101}}
-\DoxyCodeLine{48 \textcolor{comment}{// \#define XB\_UNBALANCED\_QUOTES -\/102}}
-\DoxyCodeLine{49 }
+\DoxyCodeLine{27 }
+\DoxyCodeLine{28 \textcolor{preprocessor}{\#ifdef XB\_FUNCTION\_SUPPORT}}
+\DoxyCodeLine{29 \textcolor{preprocessor}{\#define XB\_EXP\_CHAR 'C'}}
+\DoxyCodeLine{30 \textcolor{preprocessor}{\#define XB\_EXP\_DATE 'D'}}
+\DoxyCodeLine{31 \textcolor{preprocessor}{\#define XB\_EXP\_LOGICAL 'L'}}
+\DoxyCodeLine{32 \textcolor{preprocessor}{\#define XB\_EXP\_NUMERIC 'N'}}
+\DoxyCodeLine{33 \textcolor{preprocessor}{\#define XB\_EXP\_UNKNOWN 'U'}}
+\DoxyCodeLine{34 \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{35 }
+\DoxyCodeLine{36 \textcolor{preprocessor}{\#ifdef XB\_EXPRESSION\_SUPPORT}}
+\DoxyCodeLine{37 }
+\DoxyCodeLine{38 \textcolor{preprocessor}{\#define XB\_EXP\_CONSTANT 'C'}}
+\DoxyCodeLine{39 \textcolor{preprocessor}{\#define XB\_EXP\_FUNCTION 'F'}}
+\DoxyCodeLine{40 \textcolor{preprocessor}{\#define XB\_EXP\_FIELD 'D'}}
+\DoxyCodeLine{41 \textcolor{preprocessor}{\#define XB\_EXP\_OPERATOR 'O'}}
+\DoxyCodeLine{42 \textcolor{preprocessor}{\#define XB\_EXP\_NOTROOT 'N' }\textcolor{comment}{// not root node, needs further parsing}}
+\DoxyCodeLine{43 \textcolor{preprocessor}{\#define XB\_EXP\_PRE\_OPERATOR 'B' }\textcolor{comment}{// (B)efore) pre increment, pre decrement}}
+\DoxyCodeLine{44 \textcolor{preprocessor}{\#define XB\_EXP\_POST\_OPERATOR 'A' }\textcolor{comment}{// (A)fter) post increment, pre decrement}}
+\DoxyCodeLine{45 }
+\DoxyCodeLine{46 \textcolor{preprocessor}{\#define XB\_END\_OF\_EXPRESSION -\/100}}
+\DoxyCodeLine{47 }
+\DoxyCodeLine{48 \textcolor{comment}{// \#define XB\_UNBALANCED\_PARENS -\/101}}
+\DoxyCodeLine{49 \textcolor{comment}{// \#define XB\_UNBALANCED\_QUOTES -\/102}}
\DoxyCodeLine{50 }
-\DoxyCodeLine{51 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespacexb}{xb}}\{}
-\DoxyCodeLine{52 }
-\DoxyCodeLine{54 \textcolor{keyword}{struct }XBDLLEXPORT xbExpToken \{}
-\DoxyCodeLine{55 xbString sExpression; \textcolor{comment}{// in -\/ expression to pull next token from}}
-\DoxyCodeLine{56 \textcolor{comment}{// out -\/ remainder of the expression after token removed}}
-\DoxyCodeLine{57 xbString sToken; \textcolor{comment}{// next token pulled from the expression}}
-\DoxyCodeLine{58 \textcolor{keywordtype}{char} cNodeType; \textcolor{comment}{// one of XB\_EXP\_CONSTANT, XB\_EXP\_FUNCTION, XB\_EXP\_FIELD, XB\_EXP\_OPERATOR, XB\_EXP\_NOTROOT}}
-\DoxyCodeLine{59 \textcolor{keywordtype}{char} cReturnType; \textcolor{comment}{// one of XB\_EXP\_CHAR, XB\_EXP\_DATE, XB\_EXP\_LOGICAL, XB\_EXP\_NUMERIC, XB\_EXP\_UNKNOWN}}
-\DoxyCodeLine{60 xbInt16 iSts; \textcolor{comment}{// return status after retrieving or attempting next token from expression}}
-\DoxyCodeLine{61 \textcolor{comment}{// 0 = no error}}
-\DoxyCodeLine{62 \textcolor{comment}{// XB\_END\_OF\_EXPRESSION}}
-\DoxyCodeLine{63 \textcolor{comment}{// XB\_UNBALANCED\_PARENS}}
-\DoxyCodeLine{64 \textcolor{comment}{// XB\_UNBALANCED\_QUOTES}}
-\DoxyCodeLine{65 \textcolor{keywordtype}{char} cPrevNodeType; \textcolor{comment}{// previous node type}}
-\DoxyCodeLine{66 \textcolor{keywordtype}{char} cPrevReturnType; \textcolor{comment}{// previous return type}}
-\DoxyCodeLine{67 }
-\DoxyCodeLine{68 \textcolor{comment}{// constructor}}
-\DoxyCodeLine{69 xbExpToken() \{ cNodeType = 0; cReturnType = 0; iSts = 0; cPrevNodeType = 0; cPrevReturnType = 0; \}}
-\DoxyCodeLine{70 \};}
-\DoxyCodeLine{72 }
+\DoxyCodeLine{51 }
+\DoxyCodeLine{52 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespacexb}{xb}}\{}
+\DoxyCodeLine{53 }
+\DoxyCodeLine{55 \textcolor{keyword}{struct }XBDLLEXPORT xbExpToken \{}
+\DoxyCodeLine{56 xbString sExpression; \textcolor{comment}{// in -\/ expression to pull next token from}}
+\DoxyCodeLine{57 \textcolor{comment}{// out -\/ remainder of the expression after token removed}}
+\DoxyCodeLine{58 xbString sToken; \textcolor{comment}{// next token pulled from the expression}}
+\DoxyCodeLine{59 \textcolor{keywordtype}{char} cNodeType; \textcolor{comment}{// one of XB\_EXP\_CONSTANT, XB\_EXP\_FUNCTION, XB\_EXP\_FIELD, XB\_EXP\_OPERATOR, XB\_EXP\_NOTROOT}}
+\DoxyCodeLine{60 \textcolor{keywordtype}{char} cReturnType; \textcolor{comment}{// one of XB\_EXP\_CHAR, XB\_EXP\_DATE, XB\_EXP\_LOGICAL, XB\_EXP\_NUMERIC, XB\_EXP\_UNKNOWN}}
+\DoxyCodeLine{61 xbInt16 iSts; \textcolor{comment}{// return status after retrieving or attempting next token from expression}}
+\DoxyCodeLine{62 \textcolor{comment}{// 0 = no error}}
+\DoxyCodeLine{63 \textcolor{comment}{// XB\_END\_OF\_EXPRESSION}}
+\DoxyCodeLine{64 \textcolor{comment}{// XB\_UNBALANCED\_PARENS}}
+\DoxyCodeLine{65 \textcolor{comment}{// XB\_UNBALANCED\_QUOTES}}
+\DoxyCodeLine{66 \textcolor{keywordtype}{char} cPrevNodeType; \textcolor{comment}{// previous node type}}
+\DoxyCodeLine{67 \textcolor{keywordtype}{char} cPrevReturnType; \textcolor{comment}{// previous return type}}
+\DoxyCodeLine{68 }
+\DoxyCodeLine{69 \textcolor{comment}{// constructor}}
+\DoxyCodeLine{70 xbExpToken() \{ cNodeType = 0; cReturnType = 0; iSts = 0; cPrevNodeType = 0; cPrevReturnType = 0; \}}
+\DoxyCodeLine{71 \};}
\DoxyCodeLine{73 }
-\DoxyCodeLine{74 \textcolor{comment}{/************************************************************************/}}
-\DoxyCodeLine{75 }
-\DoxyCodeLine{77 }
-\DoxyCodeLine{132 \textcolor{keyword}{class }XBDLLEXPORT xbExp\{}
-\DoxyCodeLine{133 }
-\DoxyCodeLine{134 \textcolor{keyword}{public}:}
-\DoxyCodeLine{135 xbExp( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} * );}
-\DoxyCodeLine{136 xbExp( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *, \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * );}
-\DoxyCodeLine{137 \textcolor{keyword}{virtual} \string~xbExp();}
-\DoxyCodeLine{138 \textcolor{keywordtype}{void} ClearTreeHandle();}
-\DoxyCodeLine{139 }
+\DoxyCodeLine{74 }
+\DoxyCodeLine{75 \textcolor{comment}{/************************************************************************/}}
+\DoxyCodeLine{76 }
+\DoxyCodeLine{78 }
+\DoxyCodeLine{133 \textcolor{keyword}{class }XBDLLEXPORT xbExp\{}
+\DoxyCodeLine{134 }
+\DoxyCodeLine{135 \textcolor{keyword}{public}:}
+\DoxyCodeLine{136 xbExp( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} * );}
+\DoxyCodeLine{137 xbExp( \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *, \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * );}
+\DoxyCodeLine{138 \textcolor{keyword}{virtual} \string~xbExp();}
+\DoxyCodeLine{139 \textcolor{keywordtype}{void} ClearTreeHandle();}
\DoxyCodeLine{140 }
-\DoxyCodeLine{141 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{142 \textcolor{keywordtype}{void} DumpTree( xbInt16 iOption );}
-\DoxyCodeLine{143 \textcolor{keywordtype}{void} DumpToken( xbExpToken \&t, xbInt16 iOption = 0 );}
-\DoxyCodeLine{144 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{145 }
-\DoxyCodeLine{146 xbInt16 GetResultLen() \textcolor{keyword}{const};}
-\DoxyCodeLine{147 \textcolor{keywordtype}{char} GetReturnType() \textcolor{keyword}{const};}
-\DoxyCodeLine{148 xbInt16 GetBoolResult( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
-\DoxyCodeLine{149 xbInt16 GetDateResult( xbDate \&dtResult );}
-\DoxyCodeLine{150 xbInt16 GetNumericResult( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dResult );}
-\DoxyCodeLine{151 xbInt16 GetStringResult( xbString \&sResult );}
-\DoxyCodeLine{152 xbInt16 GetStringResult( \textcolor{keywordtype}{char} * vpResult, xbUInt32 ulLen );}
-\DoxyCodeLine{153 xbExpNode *GetTreeHandle();}
-\DoxyCodeLine{154 xbInt16 ParseExpression( \textcolor{keyword}{const} xbString \&sExpression );}
-\DoxyCodeLine{155 xbInt16 ParseExpression( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf, \textcolor{keyword}{const} xbString \&sExpression );}
-\DoxyCodeLine{156 xbInt16 ProcessExpression();}
-\DoxyCodeLine{157 xbInt16 ProcessExpression( xbInt16 iRecBufSw );}
-\DoxyCodeLine{158 }
+\DoxyCodeLine{141 }
+\DoxyCodeLine{142 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{143 \textcolor{keywordtype}{void} DumpTree( xbInt16 iOption );}
+\DoxyCodeLine{144 \textcolor{keywordtype}{void} DumpToken( xbExpToken \&t, xbInt16 iOption = 0 );}
+\DoxyCodeLine{145 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{146 }
+\DoxyCodeLine{147 xbInt16 GetResultLen() \textcolor{keyword}{const};}
+\DoxyCodeLine{148 \textcolor{keywordtype}{char} GetReturnType() \textcolor{keyword}{const};}
+\DoxyCodeLine{149 xbInt16 GetBoolResult( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
+\DoxyCodeLine{150 xbInt16 GetDateResult( xbDate \&dtResult );}
+\DoxyCodeLine{151 xbInt16 GetNumericResult( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dResult );}
+\DoxyCodeLine{152 xbInt16 GetStringResult( xbString \&sResult );}
+\DoxyCodeLine{153 xbInt16 GetStringResult( \textcolor{keywordtype}{char} * vpResult, xbUInt32 ulLen );}
+\DoxyCodeLine{154 xbExpNode *GetTreeHandle();}
+\DoxyCodeLine{155 xbInt16 ParseExpression( \textcolor{keyword}{const} xbString \&sExpression );}
+\DoxyCodeLine{156 xbInt16 ParseExpression( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf, \textcolor{keyword}{const} xbString \&sExpression );}
+\DoxyCodeLine{157 xbInt16 ProcessExpression();}
+\DoxyCodeLine{158 xbInt16 ProcessExpression( xbInt16 iRecBufSw );}
\DoxyCodeLine{159 }
-\DoxyCodeLine{160 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{161 xbInt16 GetNextToken( xbExpToken \&t );}
-\DoxyCodeLine{162 xbInt16 OperatorWeight( \textcolor{keyword}{const} xbString \&sOperator );}
-\DoxyCodeLine{163 xbExpNode *GetNextNode( xbExpNode * n ) \textcolor{keyword}{const}; \textcolor{comment}{// traverses the tree from bottom left node, right, then up}}
-\DoxyCodeLine{164 }
-\DoxyCodeLine{165 \textcolor{keyword}{private}: \textcolor{comment}{// methods}}
-\DoxyCodeLine{166 }
-\DoxyCodeLine{167 \textcolor{comment}{// xbInt16 CalcExpressionResultLen();}}
-\DoxyCodeLine{168 xbInt16 CalcFunctionResultLen( xbExpNode *n ) \textcolor{keyword}{const};}
-\DoxyCodeLine{169 xbInt16 CalcCharNodeLen( xbExpNode *n );}
-\DoxyCodeLine{170 xbInt16 CheckParensAndQuotes( \textcolor{keyword}{const} xbString \&sExpression );}
-\DoxyCodeLine{171 xbInt16 GetExpressionResultLen() \textcolor{keyword}{const};}
-\DoxyCodeLine{172 }
-\DoxyCodeLine{173 xbInt16 GetTokenCharConstant ( xbExpToken \&t );}
-\DoxyCodeLine{174 xbInt16 GetTokenDatabaseField ( xbExpToken \&t );}
-\DoxyCodeLine{175 xbInt16 GetTokenDateConstant ( xbExpToken \&t );}
-\DoxyCodeLine{176 xbInt16 GetTokenFunction ( xbExpToken \&t );}
-\DoxyCodeLine{177 xbInt16 GetTokenLogicalConstant( xbExpToken \&t );}
-\DoxyCodeLine{178 xbInt16 GetTokenNumericConstant( xbExpToken \&t );}
-\DoxyCodeLine{179 xbInt16 GetTokenOperator ( xbExpToken \&t );}
-\DoxyCodeLine{180 xbInt16 GetTokenParen ( xbExpToken \&t );}
-\DoxyCodeLine{181 }
-\DoxyCodeLine{182 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsFunction ( \textcolor{keyword}{const} xbString \&sExp, \textcolor{keywordtype}{char} \&cReturnType );}
-\DoxyCodeLine{183 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLogicalConstant ( \textcolor{keyword}{const} xbString \&sExp );}
-\DoxyCodeLine{184 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsNumericConstant ( \textcolor{keyword}{const} xbString \&sExp, \textcolor{keywordtype}{char} cPrevNodeType );}
-\DoxyCodeLine{185 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsOperator ( \textcolor{keyword}{const} xbString \&sExp );}
-\DoxyCodeLine{186 \textcolor{keywordtype}{char} IsTokenSeparator ( \textcolor{keywordtype}{char} c );}
-\DoxyCodeLine{187 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsWhiteSpace ( \textcolor{keywordtype}{char} c );}
-\DoxyCodeLine{188 }
-\DoxyCodeLine{189 xbInt16 ParseExpression ( \textcolor{keyword}{const} xbString \&sExpression, xbInt16 iWeight );}
-\DoxyCodeLine{190 xbInt16 ParseExpressionConstant( xbExpToken \&t, xbExpNode *n );}
-\DoxyCodeLine{191 xbInt16 ParseExpressionFunction( xbExpToken \&t, xbExpNode *n, xbInt16 iWeight );}
-\DoxyCodeLine{192 xbInt16 ParseExpressionFunctionParms( \textcolor{keyword}{const} xbString \&sParms, xbLinkList<xbString> \&llParms );}
-\DoxyCodeLine{193 xbInt16 ParseExpressionField ( xbExpToken \&t, xbExpNode *n );}
-\DoxyCodeLine{194 xbInt16 ParseExpressionOperator( xbExpToken \&t, xbExpNode *n, xbInt16 iWeight );}
-\DoxyCodeLine{195 }
-\DoxyCodeLine{196 xbInt16 ProcessExpressionFunction( xbExpNode *n, xbInt16 iRecBufSw = 0 );}
-\DoxyCodeLine{197 xbInt16 ProcessExpressionOperator( xbExpNode *n );}
-\DoxyCodeLine{198 }
-\DoxyCodeLine{199 \textcolor{keyword}{private}: \textcolor{comment}{// fields}}
-\DoxyCodeLine{200 \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *xbase;}
-\DoxyCodeLine{201 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf;}
-\DoxyCodeLine{202 xbExpNode *nTree; \textcolor{comment}{// pointer to tree of expNodes}}
-\DoxyCodeLine{203 \textcolor{comment}{// xbInt16 iExpLen; // size of expression result}}
-\DoxyCodeLine{204 }
+\DoxyCodeLine{160 }
+\DoxyCodeLine{161 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{162 xbInt16 GetNextToken( xbExpToken \&t );}
+\DoxyCodeLine{163 xbInt16 OperatorWeight( \textcolor{keyword}{const} xbString \&sOperator );}
+\DoxyCodeLine{164 xbExpNode *GetNextNode( xbExpNode * n ) \textcolor{keyword}{const}; \textcolor{comment}{// traverses the tree from bottom left node, right, then up}}
+\DoxyCodeLine{165 }
+\DoxyCodeLine{166 \textcolor{keyword}{private}: \textcolor{comment}{// methods}}
+\DoxyCodeLine{167 }
+\DoxyCodeLine{168 \textcolor{comment}{// xbInt16 CalcExpressionResultLen();}}
+\DoxyCodeLine{169 xbInt16 CalcFunctionResultLen( xbExpNode *n ) \textcolor{keyword}{const};}
+\DoxyCodeLine{170 xbInt16 CalcCharNodeLen( xbExpNode *n );}
+\DoxyCodeLine{171 xbInt16 CheckParensAndQuotes( \textcolor{keyword}{const} xbString \&sExpression );}
+\DoxyCodeLine{172 xbInt16 GetExpressionResultLen() \textcolor{keyword}{const};}
+\DoxyCodeLine{173 }
+\DoxyCodeLine{174 xbInt16 GetTokenCharConstant ( xbExpToken \&t );}
+\DoxyCodeLine{175 xbInt16 GetTokenDatabaseField ( xbExpToken \&t );}
+\DoxyCodeLine{176 xbInt16 GetTokenDateConstant ( xbExpToken \&t );}
+\DoxyCodeLine{177 xbInt16 GetTokenFunction ( xbExpToken \&t );}
+\DoxyCodeLine{178 xbInt16 GetTokenLogicalConstant( xbExpToken \&t );}
+\DoxyCodeLine{179 xbInt16 GetTokenNumericConstant( xbExpToken \&t );}
+\DoxyCodeLine{180 xbInt16 GetTokenOperator ( xbExpToken \&t );}
+\DoxyCodeLine{181 xbInt16 GetTokenParen ( xbExpToken \&t );}
+\DoxyCodeLine{182 }
+\DoxyCodeLine{183 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsFunction ( \textcolor{keyword}{const} xbString \&sExp, \textcolor{keywordtype}{char} \&cReturnType );}
+\DoxyCodeLine{184 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLogicalConstant ( \textcolor{keyword}{const} xbString \&sExp );}
+\DoxyCodeLine{185 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsNumericConstant ( \textcolor{keyword}{const} xbString \&sExp, \textcolor{keywordtype}{char} cPrevNodeType );}
+\DoxyCodeLine{186 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsOperator ( \textcolor{keyword}{const} xbString \&sExp );}
+\DoxyCodeLine{187 \textcolor{keywordtype}{char} IsTokenSeparator ( \textcolor{keywordtype}{char} c );}
+\DoxyCodeLine{188 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsWhiteSpace ( \textcolor{keywordtype}{char} c );}
+\DoxyCodeLine{189 }
+\DoxyCodeLine{190 xbInt16 ParseExpression ( \textcolor{keyword}{const} xbString \&sExpression, xbInt16 iWeight );}
+\DoxyCodeLine{191 xbInt16 ParseExpressionConstant( xbExpToken \&t, xbExpNode *n );}
+\DoxyCodeLine{192 xbInt16 ParseExpressionFunction( xbExpToken \&t, xbExpNode *n, xbInt16 iWeight );}
+\DoxyCodeLine{193 xbInt16 ParseExpressionFunctionParms( \textcolor{keyword}{const} xbString \&sParms, xbLinkList<xbString> \&llParms );}
+\DoxyCodeLine{194 xbInt16 ParseExpressionField ( xbExpToken \&t, xbExpNode *n );}
+\DoxyCodeLine{195 xbInt16 ParseExpressionOperator( xbExpToken \&t, xbExpNode *n, xbInt16 iWeight );}
+\DoxyCodeLine{196 }
+\DoxyCodeLine{197 xbInt16 ProcessExpressionFunction( xbExpNode *n, xbInt16 iRecBufSw = 0 );}
+\DoxyCodeLine{198 xbInt16 ProcessExpressionOperator( xbExpNode *n );}
+\DoxyCodeLine{199 }
+\DoxyCodeLine{200 \textcolor{keyword}{private}: \textcolor{comment}{// fields}}
+\DoxyCodeLine{201 \mbox{\hyperlink{namespacexb_a97858ddeb1c4b0100f3edc1a46d3a8b0}{xbXBase}} *xbase;}
+\DoxyCodeLine{202 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf;}
+\DoxyCodeLine{203 xbExpNode *nTree; \textcolor{comment}{// pointer to tree of expNodes}}
+\DoxyCodeLine{204 \textcolor{comment}{// xbInt16 iExpLen; // size of expression result}}
\DoxyCodeLine{205 }
-\DoxyCodeLine{206 \};}
-\DoxyCodeLine{207 }
-\DoxyCodeLine{208 \textcolor{comment}{/* Expression handler */}}
-\DoxyCodeLine{209 }
+\DoxyCodeLine{206 }
+\DoxyCodeLine{207 \};}
+\DoxyCodeLine{208 }
+\DoxyCodeLine{209 \textcolor{comment}{/* Expression handler */}}
\DoxyCodeLine{210 }
-\DoxyCodeLine{211 \};}
-\DoxyCodeLine{212 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_EXPRESSION\_SUPPORT}}
-\DoxyCodeLine{213 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// \_\_XB\_EXP\_H\_\_}}
-\DoxyCodeLine{214 }
+\DoxyCodeLine{211 }
+\DoxyCodeLine{212 \};}
+\DoxyCodeLine{213 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_EXPRESSION\_SUPPORT}}
+\DoxyCodeLine{214 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// \_\_XB\_EXP\_H\_\_}}
\DoxyCodeLine{215 }
+\DoxyCodeLine{216 }
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbexpnode_8cpp.tex b/docs/doxygen/latex/xbexpnode_8cpp.tex
index 3ebbca7..dc7203f 100644
--- a/docs/doxygen/latex/xbexpnode_8cpp.tex
+++ b/docs/doxygen/latex/xbexpnode_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbexpnode_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbexpnode.cpp File Reference}
-\label{xbexpnode_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbexpnode.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbexpnode.cpp}}
+\hypertarget{xbexpnode_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbexpnode.cpp File Reference}
+\label{xbexpnode_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbexpnode.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbexpnode.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbexpnode_8h.tex b/docs/doxygen/latex/xbexpnode_8h.tex
index bfc9f0d..c544ba1 100644
--- a/docs/doxygen/latex/xbexpnode_8h.tex
+++ b/docs/doxygen/latex/xbexpnode_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbexpnode_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbexpnode.h File Reference}
-\label{xbexpnode_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexpnode.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexpnode.h}}
+\hypertarget{xbexpnode_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbexpnode.h File Reference}
+\label{xbexpnode_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexpnode.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexpnode.h}}
diff --git a/docs/doxygen/latex/xbexpnode_8h_source.tex b/docs/doxygen/latex/xbexpnode_8h_source.tex
index ddd8ed1..bc3271b 100644
--- a/docs/doxygen/latex/xbexpnode_8h_source.tex
+++ b/docs/doxygen/latex/xbexpnode_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbexpnode_8h_source}{}\doxysection{xbexpnode.\+h}
-\label{xbexpnode_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexpnode.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbexpnode.h}}
+\label{xbexpnode_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexpnode.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbexpnode.h}}
\mbox{\hyperlink{xbexpnode_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbexpnode.h}}
@@ -94,7 +94,7 @@
\DoxyCodeLine{103 xbUInt32 ulResultLen; \textcolor{comment}{// for string results, accumulated length of character operations}}
\DoxyCodeLine{104 \textcolor{comment}{// includes the sum of all nodes under this + this}}
\DoxyCodeLine{105 \textcolor{comment}{// date = 8, numeric = 4, logical = 1}}
-\DoxyCodeLine{106 xbInt16 iWeight; \textcolor{comment}{// used for buildign the tree of nodes, assigned to operators}}
+\DoxyCodeLine{106 xbInt16 iWeight; \textcolor{comment}{// used for building the tree of nodes, assigned to operators}}
\DoxyCodeLine{107 \textcolor{comment}{// the higher the number, the lower it goes on the tree}}
\DoxyCodeLine{108 }
\DoxyCodeLine{109 \};}
diff --git a/docs/doxygen/latex/xbfields_8cpp.tex b/docs/doxygen/latex/xbfields_8cpp.tex
index 723435f..71ab977 100644
--- a/docs/doxygen/latex/xbfields_8cpp.tex
+++ b/docs/doxygen/latex/xbfields_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbfields_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbfields.cpp File Reference}
-\label{xbfields_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfields.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfields.cpp}}
+\hypertarget{xbfields_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbfields.cpp File Reference}
+\label{xbfields_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfields.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfields.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbfile_8cpp.tex b/docs/doxygen/latex/xbfile_8cpp.tex
index 247d030..0547c81 100644
--- a/docs/doxygen/latex/xbfile_8cpp.tex
+++ b/docs/doxygen/latex/xbfile_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbfile_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbfile.cpp File Reference}
-\label{xbfile_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfile.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfile.cpp}}
+\hypertarget{xbfile_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbfile.cpp File Reference}
+\label{xbfile_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfile.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfile.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbfile_8h.tex b/docs/doxygen/latex/xbfile_8h.tex
index a3c4964..7d7b3b4 100644
--- a/docs/doxygen/latex/xbfile_8h.tex
+++ b/docs/doxygen/latex/xbfile_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbfile_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbfile.h File Reference}
-\label{xbfile_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfile.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfile.h}}
+\hypertarget{xbfile_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbfile.h File Reference}
+\label{xbfile_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfile.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfile.h}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbfile_8h_source.tex b/docs/doxygen/latex/xbfile_8h_source.tex
index 34e78f5..9254dd4 100644
--- a/docs/doxygen/latex/xbfile_8h_source.tex
+++ b/docs/doxygen/latex/xbfile_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbfile_8h_source}{}\doxysection{xbfile.\+h}
-\label{xbfile_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfile.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfile.h}}
+\label{xbfile_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfile.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfile.h}}
\mbox{\hyperlink{xbfile_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbfile.h}}
@@ -40,144 +40,145 @@
\DoxyCodeLine{56 \textcolor{keyword}{class }XBDLLEXPORT \mbox{\hyperlink{classxb_1_1xbFile}{xbFile}} : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbSsv}{xbSsv}} \{}
\DoxyCodeLine{57 }
\DoxyCodeLine{58 \textcolor{keyword}{public}:}
-\DoxyCodeLine{59 \textcolor{comment}{// xbFile();}}
-\DoxyCodeLine{60 \mbox{\hyperlink{classxb_1_1xbFile}{xbFile}}( \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} * x );}
+\DoxyCodeLine{59 \mbox{\hyperlink{classxb_1_1xbFile}{xbFile}}( \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} * x );}
+\DoxyCodeLine{60 \mbox{\hyperlink{classxb_1_1xbFile}{\string~xbFile}}();}
\DoxyCodeLine{61 }
-\DoxyCodeLine{62 \mbox{\hyperlink{classxb_1_1xbFile}{\string~xbFile}}();}
-\DoxyCodeLine{63 }
-\DoxyCodeLine{64 xbInt16 SetHomeFolders();}
+\DoxyCodeLine{62 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetDirectory() \textcolor{keyword}{const};}
+\DoxyCodeLine{63 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetFileName() \textcolor{keyword}{const};}
+\DoxyCodeLine{64 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetFqFileName() \textcolor{keyword}{const};}
\DoxyCodeLine{65 }
-\DoxyCodeLine{66 xbInt16 CreateUniqueFileName( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDirIn, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExtIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFqnOut );}
-\DoxyCodeLine{67 xbInt16 CreateUniqueFileName( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDirIn, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExtIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFqnOut, xbInt16 iOption );}
+\DoxyCodeLine{66 }
+\DoxyCodeLine{67 xbInt16 CreateUniqueFileName( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDirIn, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExtIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFqnOut, xbInt16 iOption = 0 );}
\DoxyCodeLine{68 }
-\DoxyCodeLine{69 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetDirectory() \textcolor{keyword}{const};}
-\DoxyCodeLine{70 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetFileName() \textcolor{keyword}{const};}
-\DoxyCodeLine{71 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetFqFileName() \textcolor{keyword}{const};}
-\DoxyCodeLine{72 }
-\DoxyCodeLine{73 \textcolor{keywordtype}{void} SetDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDirectory);}
-\DoxyCodeLine{74 \textcolor{keywordtype}{void} SetFileName ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName );}
-\DoxyCodeLine{75 \textcolor{keywordtype}{void} SetFqFileName( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFqName );}
-\DoxyCodeLine{76 }
-\DoxyCodeLine{77 xbUInt32 GetBlockSize () \textcolor{keyword}{const};}
-\DoxyCodeLine{78 xbInt16 SetBlockSize ( xbUInt32 ulBlockSize );}
-\DoxyCodeLine{79 }
-\DoxyCodeLine{80 xbInt16 GetOpenMode () \textcolor{keyword}{const};}
-\DoxyCodeLine{81 xbInt16 GetShareMode () \textcolor{keyword}{const};}
+\DoxyCodeLine{69 xbInt16 DetermineXbaseTableVersion( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cFileTypeByte ) \textcolor{keyword}{const};}
+\DoxyCodeLine{70 xbInt16 DetermineXbaseMemoVersion( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cFileTypeByte ) \textcolor{keyword}{const};}
+\DoxyCodeLine{71 }
+\DoxyCodeLine{72 \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} eGetDouble ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
+\DoxyCodeLine{73 xbInt32 eGetInt32 ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
+\DoxyCodeLine{74 xbUInt32 eGetUInt32 ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
+\DoxyCodeLine{75 xbInt16 eGetInt16 ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
+\DoxyCodeLine{76 xbUInt16 eGetUInt16 ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
+\DoxyCodeLine{77 \textcolor{keywordtype}{void} ePutDouble ( \textcolor{keywordtype}{char} *p, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} d );}
+\DoxyCodeLine{78 \textcolor{keywordtype}{void} ePutInt32 ( \textcolor{keywordtype}{char} *p, xbInt32 l );}
+\DoxyCodeLine{79 \textcolor{keywordtype}{void} ePutUInt32 ( \textcolor{keywordtype}{char} *p, xbUInt32 ul );}
+\DoxyCodeLine{80 \textcolor{keywordtype}{void} ePutInt16 ( \textcolor{keywordtype}{char} *p, xbInt16 s );}
+\DoxyCodeLine{81 \textcolor{keywordtype}{void} ePutUInt16 ( \textcolor{keywordtype}{char} *p, xbUInt16 s );}
\DoxyCodeLine{82 }
-\DoxyCodeLine{83 xbInt16 GetFileDirPart ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileDirPartOut ) \textcolor{keyword}{const};}
-\DoxyCodeLine{84 xbInt16 GetFileDirPart ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCompleteFileNameIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileDirPartOut ) \textcolor{keyword}{const};}
-\DoxyCodeLine{85 xbInt16 GetFileExtPart ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileExtPartOut ) \textcolor{keyword}{const};}
-\DoxyCodeLine{86 xbInt16 GetFileExtPart ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCompleteFileNameIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileExtPartOut ) \textcolor{keyword}{const};}
-\DoxyCodeLine{87 xbInt16 GetFileNamePart( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileNamePartOut ) \textcolor{keyword}{const};}
-\DoxyCodeLine{88 xbInt16 GetFileNamePart( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCompleteFileNameIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileNamePartOut ) \textcolor{keyword}{const};}
-\DoxyCodeLine{89 xbInt16 GetFileType ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileType ) \textcolor{keyword}{const};}
+\DoxyCodeLine{83 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists () \textcolor{keyword}{const};}
+\DoxyCodeLine{84 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists ( xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{85 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName ) \textcolor{keyword}{const};}
+\DoxyCodeLine{86 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{87 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileIsOpen () \textcolor{keyword}{const};}
+\DoxyCodeLine{88 }
+\DoxyCodeLine{89 xbUInt32 GetBlockSize () \textcolor{keyword}{const};}
\DoxyCodeLine{90 }
-\DoxyCodeLine{91 xbInt16 GetXbaseFileTypeByte( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 \&iVersion );}
-\DoxyCodeLine{92 xbInt16 GetXbaseFileTypeByte( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} \&cFileTypeByte );}
-\DoxyCodeLine{93 xbInt16 GetXbaseFileTypeByte( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} \&cFileTypeByte, xbInt16 \&iVersion );}
-\DoxyCodeLine{94 xbInt16 DetermineXbaseTableVersion( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cFileTypeByte ) \textcolor{keyword}{const};}
-\DoxyCodeLine{95 xbInt16 DetermineXbaseMemoVersion( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} cFileTypeByte ) \textcolor{keyword}{const};}
-\DoxyCodeLine{96 }
-\DoxyCodeLine{97 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists () \textcolor{keyword}{const};}
-\DoxyCodeLine{98 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists ( xbInt16 iOption ) \textcolor{keyword}{const};}
-\DoxyCodeLine{99 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName ) \textcolor{keyword}{const};}
-\DoxyCodeLine{100 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileExists ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{91 xbInt16 GetFileDirPart ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileDirPartOut ) \textcolor{keyword}{const};}
+\DoxyCodeLine{92 xbInt16 GetFileDirPart ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCompleteFileNameIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileDirPartOut ) \textcolor{keyword}{const};}
+\DoxyCodeLine{93 xbInt16 GetFileExtPart ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileExtPartOut ) \textcolor{keyword}{const};}
+\DoxyCodeLine{94 xbInt16 GetFileExtPart ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCompleteFileNameIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileExtPartOut ) \textcolor{keyword}{const};}
+\DoxyCodeLine{95 xbInt16 GetFileMtime ( time\_t \&mtime );}
+\DoxyCodeLine{96 xbInt16 GetFileNamePart( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileNamePartOut ) \textcolor{keyword}{const};}
+\DoxyCodeLine{97 xbInt16 GetFileNamePart( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sCompleteFileNameIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileNamePartOut ) \textcolor{keyword}{const};}
+\DoxyCodeLine{98 xbInt16 GetFileSize ( xbUInt64 \&ullFileSize );}
+\DoxyCodeLine{99 xbInt16 GetFileType ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileType ) \textcolor{keyword}{const};}
+\DoxyCodeLine{100 }
\DoxyCodeLine{101 }
-\DoxyCodeLine{102 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} FileIsOpen () \textcolor{keyword}{const};}
-\DoxyCodeLine{103 }
-\DoxyCodeLine{104 xbInt16 ReadBlock ( xbUInt32 ulBlockNo, \textcolor{keywordtype}{size\_t} readSize, \textcolor{keywordtype}{void} *buf );}
-\DoxyCodeLine{105 xbInt16 ReadBlock ( xbUInt32 ulBlockNo, xbUInt32 ulBlockSize, \textcolor{keywordtype}{size\_t} readSize, \textcolor{keywordtype}{void} *buf );}
-\DoxyCodeLine{106 xbInt16 WriteBlock( xbUInt32 ulBlockNo, \textcolor{keywordtype}{size\_t} writeSize, \textcolor{keywordtype}{void} *buf );}
-\DoxyCodeLine{107 }
-\DoxyCodeLine{108 xbInt16 GetFileSize( xbUInt64 \&ullFileSize );}
-\DoxyCodeLine{109 xbInt16 GetFileMtime( time\_t \&mtime );}
-\DoxyCodeLine{110 }
-\DoxyCodeLine{111 \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} eGetDouble( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
-\DoxyCodeLine{112 xbInt32 eGetInt32 ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
-\DoxyCodeLine{113 xbUInt32 eGetUInt32( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
-\DoxyCodeLine{114 xbInt16 eGetInt16 ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
-\DoxyCodeLine{115 xbUInt16 eGetUInt16( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p ) \textcolor{keyword}{const};}
-\DoxyCodeLine{116 \textcolor{keywordtype}{void} ePutDouble( \textcolor{keywordtype}{char} *p, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} d );}
-\DoxyCodeLine{117 \textcolor{keywordtype}{void} ePutInt32 ( \textcolor{keywordtype}{char} *p, xbInt32 l );}
-\DoxyCodeLine{118 \textcolor{keywordtype}{void} ePutUInt32( \textcolor{keywordtype}{char} *p, xbUInt32 ul );}
-\DoxyCodeLine{119 \textcolor{keywordtype}{void} ePutInt16 ( \textcolor{keywordtype}{char} *p, xbInt16 s );}
-\DoxyCodeLine{120 \textcolor{keywordtype}{void} ePutUInt16( \textcolor{keywordtype}{char} *p, xbUInt16 s );}
-\DoxyCodeLine{121 }
-\DoxyCodeLine{122 xbInt16 xbFclose ();}
-\DoxyCodeLine{123 xbInt16 xbFeof ();}
-\DoxyCodeLine{124 xbInt16 xbFflush ();}
-\DoxyCodeLine{125 xbInt16 xbFgetc ( xbInt32 \&c );}
-\DoxyCodeLine{126 xbInt16 xbFgetc ( \textcolor{keywordtype}{char} \&c );}
-\DoxyCodeLine{127 }
-\DoxyCodeLine{128 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{129 xbInt16 xbLock ( xbInt16 iFunction, xbInt64 llOffset, \textcolor{keywordtype}{size\_t} stLen );}
-\DoxyCodeLine{130 xbInt16 GetLockRetryCount() \textcolor{keyword}{const};}
-\DoxyCodeLine{131 \textcolor{keywordtype}{void} SetLockRetryCount( xbInt16 iLockRetries );}
-\DoxyCodeLine{132 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{133 }
-\DoxyCodeLine{134 xbInt16 \mbox{\hyperlink{classxb_1_1xbFile_a7cdfef5ede9ac98d44a28a6b7a70972c}{xbFopen}} ( xbInt16 iOpenMode );}
-\DoxyCodeLine{135 xbInt16 xbFopen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOpenMode, xbInt16 iShareMode );}
-\DoxyCodeLine{136 xbInt16 xbFopen ( xbInt16 iOpenMode, xbInt16 iShareMode );}
-\DoxyCodeLine{137 xbInt16 xbFopen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMode, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iShareMode );}
-\DoxyCodeLine{138 }
-\DoxyCodeLine{139 xbInt16 xbFputc ( xbInt32 c );}
-\DoxyCodeLine{140 xbInt16 xbFputc ( xbInt32 c, xbInt32 iNoTimes );}
-\DoxyCodeLine{141 xbInt16 xbFputs ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s );}
-\DoxyCodeLine{142 xbInt16 xbFread ( \textcolor{keywordtype}{void} *ptr, \textcolor{keywordtype}{size\_t} size, \textcolor{keywordtype}{size\_t} nmemb );}
-\DoxyCodeLine{143 xbInt16 xbFgets ( \textcolor{keywordtype}{size\_t} lSize, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLine );}
-\DoxyCodeLine{144 }
-\DoxyCodeLine{145 \textcolor{keywordtype}{size\_t} xbFtell ();}
-\DoxyCodeLine{146 xbInt16 xbFseek ( xbInt64 llOffset, xbInt32 whence );}
-\DoxyCodeLine{147 }
-\DoxyCodeLine{148 \textcolor{keywordtype}{void} xbFTurnOffFileBuffering();}
-\DoxyCodeLine{149 xbInt16 xbFwrite ( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *ptr, \textcolor{keywordtype}{size\_t} lSize, \textcolor{keywordtype}{size\_t} lNmemb );}
-\DoxyCodeLine{150 }
-\DoxyCodeLine{151 xbInt16 xbReadUntil ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} cDelim, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{152 xbInt16 xbRemove ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iOption );}
-\DoxyCodeLine{153 xbInt16 xbRemove ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName );}
-\DoxyCodeLine{154 xbInt16 xbRemove ();}
+\DoxyCodeLine{102 xbInt16 GetOpenMode () \textcolor{keyword}{const};}
+\DoxyCodeLine{103 xbInt16 GetShareMode () \textcolor{keyword}{const};}
+\DoxyCodeLine{104 }
+\DoxyCodeLine{105 }
+\DoxyCodeLine{106 xbInt16 GetXbaseFileTypeByte( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 \&iVersion );}
+\DoxyCodeLine{107 xbInt16 GetXbaseFileTypeByte( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} \&cFileTypeByte );}
+\DoxyCodeLine{108 xbInt16 GetXbaseFileTypeByte( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} \&cFileTypeByte, xbInt16 \&iVersion );}
+\DoxyCodeLine{109 }
+\DoxyCodeLine{110 xbInt16 NameSuffixMissing( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{111 }
+\DoxyCodeLine{112 xbInt16 ReadBlock ( xbUInt32 ulBlockNo, \textcolor{keywordtype}{size\_t} readSize, \textcolor{keywordtype}{void} *buf );}
+\DoxyCodeLine{113 xbInt16 ReadBlock ( xbUInt32 ulBlockNo, xbUInt32 ulBlockSize, \textcolor{keywordtype}{size\_t} readSize, \textcolor{keywordtype}{void} *buf );}
+\DoxyCodeLine{114 }
+\DoxyCodeLine{115 xbInt16 SetBlockSize ( xbUInt32 ulBlockSize );}
+\DoxyCodeLine{116 \textcolor{keywordtype}{void} SetDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDirectory);}
+\DoxyCodeLine{117 \textcolor{keywordtype}{void} SetFileName ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName );}
+\DoxyCodeLine{118 \textcolor{keywordtype}{void} SetFqFileName ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFqName );}
+\DoxyCodeLine{119 xbInt16 SetHomeFolders();}
+\DoxyCodeLine{120 }
+\DoxyCodeLine{121 xbInt16 WriteBlock ( xbUInt32 ulBlockNo, \textcolor{keywordtype}{size\_t} writeSize, \textcolor{keywordtype}{void} *buf );}
+\DoxyCodeLine{122 }
+\DoxyCodeLine{123 xbInt16 xbFclose ();}
+\DoxyCodeLine{124 xbInt16 xbFeof ();}
+\DoxyCodeLine{125 xbInt16 xbFflush ();}
+\DoxyCodeLine{126 xbInt16 xbFgetc ( xbInt32 \&c );}
+\DoxyCodeLine{127 xbInt16 xbFgetc ( \textcolor{keywordtype}{char} \&c );}
+\DoxyCodeLine{128 xbInt16 xbFgets ( \textcolor{keywordtype}{size\_t} lSize, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLine );}
+\DoxyCodeLine{129 }
+\DoxyCodeLine{130 }
+\DoxyCodeLine{131 xbInt16 \mbox{\hyperlink{classxb_1_1xbFile_a7cdfef5ede9ac98d44a28a6b7a70972c}{xbFopen}} ( xbInt16 iOpenMode );}
+\DoxyCodeLine{132 xbInt16 xbFopen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOpenMode, xbInt16 iShareMode );}
+\DoxyCodeLine{133 xbInt16 xbFopen ( xbInt16 iOpenMode, xbInt16 iShareMode );}
+\DoxyCodeLine{134 xbInt16 xbFopen ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sMode, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iShareMode );}
+\DoxyCodeLine{135 }
+\DoxyCodeLine{136 xbInt16 xbFputc ( xbInt32 c );}
+\DoxyCodeLine{137 xbInt16 xbFputc ( xbInt32 c, xbInt32 iNoTimes );}
+\DoxyCodeLine{138 xbInt16 xbFputs ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s );}
+\DoxyCodeLine{139 xbInt16 xbFread ( \textcolor{keywordtype}{void} *ptr, \textcolor{keywordtype}{size\_t} size, \textcolor{keywordtype}{size\_t} nmemb );}
+\DoxyCodeLine{140 xbInt16 xbFseek ( xbInt64 llOffset, xbInt32 whence );}
+\DoxyCodeLine{141 \textcolor{keywordtype}{size\_t} xbFtell ();}
+\DoxyCodeLine{142 \textcolor{keywordtype}{void} xbFTurnOffFileBuffering();}
+\DoxyCodeLine{143 }
+\DoxyCodeLine{144 xbInt16 xbReadUntil ( \textcolor{keyword}{const} \textcolor{keywordtype}{char} cDelim, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{145 xbInt16 xbRemove ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iOption );}
+\DoxyCodeLine{146 xbInt16 xbRemove ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName );}
+\DoxyCodeLine{147 xbInt16 xbRemove ();}
+\DoxyCodeLine{148 }
+\DoxyCodeLine{149 xbInt16 xbRename ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOldName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sNewName );}
+\DoxyCodeLine{150 \textcolor{keywordtype}{void} xbRewind ();}
+\DoxyCodeLine{151 }
+\DoxyCodeLine{152 xbInt16 xbFwrite ( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *ptr, \textcolor{keywordtype}{size\_t} lSize, \textcolor{keywordtype}{size\_t} lNmemb );}
+\DoxyCodeLine{153 }
+\DoxyCodeLine{154 xbInt16 xbTruncate ( xbInt64 llSize );}
\DoxyCodeLine{155 }
-\DoxyCodeLine{156 xbInt16 xbRename ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOldName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sNewName );}
-\DoxyCodeLine{157 \textcolor{keywordtype}{void} xbRewind ();}
-\DoxyCodeLine{158 }
-\DoxyCodeLine{159 xbInt16 xbTruncate ( xbInt64 llSize );}
-\DoxyCodeLine{160 xbInt16 NameSuffixMissing( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFileName, xbInt16 iOption ) \textcolor{keyword}{const};}
-\DoxyCodeLine{161 }
-\DoxyCodeLine{162 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{163 xbInt16 DumpBlockToDisk( xbUInt32 ulBlockNo, \textcolor{keywordtype}{size\_t} lBlockSize );}
-\DoxyCodeLine{164 xbInt16 DumpMemToDisk ( \textcolor{keywordtype}{char} *p, \textcolor{keywordtype}{size\_t} lBlockSize );}
-\DoxyCodeLine{165 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{166 }
+\DoxyCodeLine{156 }
+\DoxyCodeLine{157 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{158 xbInt16 xbLock ( xbInt16 iFunction, xbInt64 llOffset, \textcolor{keywordtype}{size\_t} stLen );}
+\DoxyCodeLine{159 xbInt16 GetLockRetryCount() \textcolor{keyword}{const};}
+\DoxyCodeLine{160 \textcolor{keywordtype}{void} SetLockRetryCount( xbInt16 iLockRetries );}
+\DoxyCodeLine{161 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{162 }
+\DoxyCodeLine{163 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{164 xbInt16 DumpBlockToDisk( xbUInt32 ulBlockNo, \textcolor{keywordtype}{size\_t} lBlockSize );}
+\DoxyCodeLine{165 xbInt16 DumpMemToDisk ( \textcolor{keywordtype}{char} *p, \textcolor{keywordtype}{size\_t} lBlockSize );}
+\DoxyCodeLine{166 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{167 }
-\DoxyCodeLine{168 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{169 }
-\DoxyCodeLine{170 \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *\mbox{\hyperlink{classxb_1_1xbFile_ae39a67ea391b46055d4ca299cb222004}{xbase}}; \textcolor{comment}{/* pointer to the main structures */}}
-\DoxyCodeLine{171 }
-\DoxyCodeLine{172 \textcolor{keyword}{private}:}
-\DoxyCodeLine{173 FILE *fp;}
-\DoxyCodeLine{174 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sFqFileName; \textcolor{comment}{/* fully qualified file name */}}
-\DoxyCodeLine{175 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sFileName; \textcolor{comment}{/* file name */}}
-\DoxyCodeLine{176 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDirectory; \textcolor{comment}{/* directory, ends with / or \(\backslash\) */}}
-\DoxyCodeLine{177 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFileOpen; \textcolor{comment}{/* true if file is open */}}
-\DoxyCodeLine{178 xbUInt32 ulBlockSize; \textcolor{comment}{/* used for memo and index files */}}
-\DoxyCodeLine{179 }
-\DoxyCodeLine{180 xbInt16 iOpenMode; \textcolor{comment}{/* XB\_READ || XB\_READ\_WRITE || XB\_WRITE */}}
-\DoxyCodeLine{181 xbInt16 iShareMode; \textcolor{comment}{/* XB\_SINGLE\_USER || XB\_MULTI\_USER -\/ set file buffering */}}
-\DoxyCodeLine{182 xbInt32 iFileNo; \textcolor{comment}{/* Library File No */}}
-\DoxyCodeLine{183 }
-\DoxyCodeLine{184 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{185 xbInt16 iLockRetries; \textcolor{comment}{/* file override number of lock attempts */}}
-\DoxyCodeLine{186 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{187 }
-\DoxyCodeLine{188 \textcolor{preprocessor}{ \#ifdef HAVE\_SETENDOFFILE\_F}}
-\DoxyCodeLine{189 HANDLE fHandle;}
-\DoxyCodeLine{190 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{191 }
+\DoxyCodeLine{168 }
+\DoxyCodeLine{169 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{170 }
+\DoxyCodeLine{171 \mbox{\hyperlink{classxb_1_1xbXBase}{xbXBase}} *\mbox{\hyperlink{classxb_1_1xbFile_ae39a67ea391b46055d4ca299cb222004}{xbase}}; \textcolor{comment}{/* pointer to the main structures */}}
+\DoxyCodeLine{172 }
+\DoxyCodeLine{173 \textcolor{keyword}{private}:}
+\DoxyCodeLine{174 FILE *fp;}
+\DoxyCodeLine{175 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sFqFileName; \textcolor{comment}{/* fully qualified file name */}}
+\DoxyCodeLine{176 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sFileName; \textcolor{comment}{/* file name */}}
+\DoxyCodeLine{177 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDirectory; \textcolor{comment}{/* directory, ends with / or \(\backslash\) */}}
+\DoxyCodeLine{178 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFileOpen; \textcolor{comment}{/* true if file is open */}}
+\DoxyCodeLine{179 xbUInt32 ulBlockSize; \textcolor{comment}{/* used for memo and index files */}}
+\DoxyCodeLine{180 }
+\DoxyCodeLine{181 xbInt16 iOpenMode; \textcolor{comment}{/* XB\_READ || XB\_READ\_WRITE || XB\_WRITE */}}
+\DoxyCodeLine{182 xbInt16 iShareMode; \textcolor{comment}{/* XB\_SINGLE\_USER || XB\_MULTI\_USER -\/ set file buffering */}}
+\DoxyCodeLine{183 xbInt32 iFileNo; \textcolor{comment}{/* Library File No */}}
+\DoxyCodeLine{184 }
+\DoxyCodeLine{185 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{186 xbInt16 iLockRetries; \textcolor{comment}{/* file override number of lock attempts */}}
+\DoxyCodeLine{187 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{188 }
+\DoxyCodeLine{189 \textcolor{preprocessor}{ \#ifdef HAVE\_SETENDOFFILE\_F}}
+\DoxyCodeLine{190 HANDLE fHandle;}
+\DoxyCodeLine{191 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{192 }
-\DoxyCodeLine{193 \};}
-\DoxyCodeLine{194 }
-\DoxyCodeLine{195 \} \textcolor{comment}{/* namespace */}}
-\DoxyCodeLine{196 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XBFILE\_H\_\_ */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{197 }
+\DoxyCodeLine{193 }
+\DoxyCodeLine{194 \};}
+\DoxyCodeLine{195 }
+\DoxyCodeLine{196 \} \textcolor{comment}{/* namespace */}}
+\DoxyCodeLine{197 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XBFILE\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{198 }
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbfilter_8cpp.tex b/docs/doxygen/latex/xbfilter_8cpp.tex
index 93db5f7..fd07d41 100644
--- a/docs/doxygen/latex/xbfilter_8cpp.tex
+++ b/docs/doxygen/latex/xbfilter_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbfilter_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbfilter.cpp File Reference}
-\label{xbfilter_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfilter.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfilter.cpp}}
+\hypertarget{xbfilter_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbfilter.cpp File Reference}
+\label{xbfilter_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfilter.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfilter.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbfilter_8h.tex b/docs/doxygen/latex/xbfilter_8h.tex
index f8801e0..85a7296 100644
--- a/docs/doxygen/latex/xbfilter_8h.tex
+++ b/docs/doxygen/latex/xbfilter_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbfilter_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbfilter.h File Reference}
-\label{xbfilter_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfilter.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfilter.h}}
+\hypertarget{xbfilter_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbfilter.h File Reference}
+\label{xbfilter_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfilter.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfilter.h}}
diff --git a/docs/doxygen/latex/xbfilter_8h_source.tex b/docs/doxygen/latex/xbfilter_8h_source.tex
index 861045b..7baffe4 100644
--- a/docs/doxygen/latex/xbfilter_8h_source.tex
+++ b/docs/doxygen/latex/xbfilter_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbfilter_8h_source}{}\doxysection{xbfilter.\+h}
-\label{xbfilter_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfilter.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbfilter.h}}
+\label{xbfilter_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfilter.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbfilter.h}}
\mbox{\hyperlink{xbfilter_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbfilter.h}}
diff --git a/docs/doxygen/latex/xbfuncs_8cpp.tex b/docs/doxygen/latex/xbfuncs_8cpp.tex
index aa4a914..1ed3326 100644
--- a/docs/doxygen/latex/xbfuncs_8cpp.tex
+++ b/docs/doxygen/latex/xbfuncs_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbfuncs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbfuncs.cpp File Reference}
-\label{xbfuncs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfuncs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbfuncs.cpp}}
+\hypertarget{xbfuncs_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbfuncs.cpp File Reference}
+\label{xbfuncs_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfuncs.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbfuncs.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbindex_8h.tex b/docs/doxygen/latex/xbindex_8h.tex
index 3a731e4..92e2b3d 100644
--- a/docs/doxygen/latex/xbindex_8h.tex
+++ b/docs/doxygen/latex/xbindex_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbindex_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbindex.h File Reference}
-\label{xbindex_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbindex.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbindex.h}}
+\hypertarget{xbindex_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbindex.h File Reference}
+\label{xbindex_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbindex.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbindex.h}}
diff --git a/docs/doxygen/latex/xbindex_8h_source.tex b/docs/doxygen/latex/xbindex_8h_source.tex
index bc9fde0..1572730 100644
--- a/docs/doxygen/latex/xbindex_8h_source.tex
+++ b/docs/doxygen/latex/xbindex_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbindex_8h_source}{}\doxysection{xbindex.\+h}
-\label{xbindex_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbindex.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbindex.h}}
+\label{xbindex_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbindex.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbindex.h}}
\mbox{\hyperlink{xbindex_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbindex.h}}
@@ -94,420 +94,428 @@
\DoxyCodeLine{167 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetSortOrder( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const} = 0;}
\DoxyCodeLine{168 }
\DoxyCodeLine{169 \textcolor{keyword}{virtual} xbInt16 Open( \textcolor{keyword}{const} xbString \&sFileName );}
-\DoxyCodeLine{170 \textcolor{keyword}{virtual} xbInt16 Reindex( \textcolor{keywordtype}{void} **vpTag ) = 0;}
-\DoxyCodeLine{171 \textcolor{keyword}{virtual} xbInt16 SetCurTag( xbInt16 iTagNo ) = 0;}
-\DoxyCodeLine{172 \textcolor{keyword}{virtual} xbInt16 SetCurTag( xbString \&sTagName ) = 0;}
-\DoxyCodeLine{173 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetCurTag( \textcolor{keywordtype}{void} * vpCurTag );}
-\DoxyCodeLine{174 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetLocked( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLocked );}
-\DoxyCodeLine{175 }
-\DoxyCodeLine{176 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} TestStub( \textcolor{keywordtype}{char} *s, \textcolor{keywordtype}{void} *vpTag ) \{\};}
+\DoxyCodeLine{170 \textcolor{keyword}{virtual} xbInt16 SetCurTag( xbInt16 iTagNo ) = 0;}
+\DoxyCodeLine{171 \textcolor{keyword}{virtual} xbInt16 SetCurTag( xbString \&sTagName ) = 0;}
+\DoxyCodeLine{172 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetCurTag( \textcolor{keywordtype}{void} * vpCurTag );}
+\DoxyCodeLine{173 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetLocked( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLocked );}
+\DoxyCodeLine{174 }
+\DoxyCodeLine{175 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} TestStub( \textcolor{keywordtype}{char} *s, \textcolor{keywordtype}{void} *vpTag ) \{\};}
+\DoxyCodeLine{176 }
\DoxyCodeLine{177 }
\DoxyCodeLine{178 }
-\DoxyCodeLine{179 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{180 \textcolor{keyword}{virtual} xbInt16 DumpFreeBlocks( xbInt16 iOpt = 0 ) \{ \textcolor{keywordflow}{return} \mbox{\hyperlink{xbretcod_8h_ac720d5b4ec45bfd606f5865d40816e23}{XB\_NO\_ERROR}}; \}}
-\DoxyCodeLine{181 \textcolor{keyword}{virtual} xbInt16 DumpHeader( xbInt16 iDestOpt = 0, xbInt16 iFmtOpt = 0 ) = 0;}
-\DoxyCodeLine{182 \textcolor{keyword}{virtual} xbInt16 DumpIxForTag( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) = 0;}
-\DoxyCodeLine{183 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} DumpIxNodeChain( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) \textcolor{keyword}{const} = 0;}
-\DoxyCodeLine{184 \textcolor{keyword}{virtual} xbInt16 DumpNode( \textcolor{keywordtype}{void} * vpTag, xbIxNode * pNode, xbInt16 iOption ) \textcolor{keyword}{const};}
-\DoxyCodeLine{185 \textcolor{keyword}{virtual} xbInt16 DumpTagBlocks( xbInt16 iOpt = 1, \textcolor{keywordtype}{void} *vpTag = NULL ) = 0;}
-\DoxyCodeLine{186 }
-\DoxyCodeLine{187 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{188 }
-\DoxyCodeLine{189 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{190 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
+\DoxyCodeLine{179 \textcolor{keyword}{virtual} xbInt16 Reindex( \textcolor{keywordtype}{void} **vpTag ) = 0;}
+\DoxyCodeLine{180 }
+\DoxyCodeLine{181 }
+\DoxyCodeLine{182 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{183 \textcolor{keyword}{virtual} xbInt16 DumpFreeBlocks( xbInt16 iOpt = 0 ) \{ \textcolor{keywordflow}{return} \mbox{\hyperlink{xbretcod_8h_ac720d5b4ec45bfd606f5865d40816e23}{XB\_NO\_ERROR}}; \}}
+\DoxyCodeLine{184 \textcolor{keyword}{virtual} xbInt16 DumpHeader( xbInt16 iDestOpt = 0, xbInt16 iFmtOpt = 0 ) = 0;}
+\DoxyCodeLine{185 \textcolor{keyword}{virtual} xbInt16 DumpIxForTag( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) = 0;}
+\DoxyCodeLine{186 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} DumpIxNodeChain( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) \textcolor{keyword}{const} = 0;}
+\DoxyCodeLine{187 \textcolor{keyword}{virtual} xbInt16 DumpNode( \textcolor{keywordtype}{void} * vpTag, xbIxNode * pNode, xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{188 \textcolor{keyword}{virtual} xbInt16 DumpTagBlocks( xbInt16 iOpt = 1, \textcolor{keywordtype}{void} *vpTag = NULL ) = 0;}
+\DoxyCodeLine{189 }
+\DoxyCodeLine{190 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{191 }
-\DoxyCodeLine{192 \textcolor{keyword}{virtual} xbInt16 AddKey( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo ) = 0;}
-\DoxyCodeLine{193 \textcolor{keyword}{virtual} xbInt16 AddKeys( xbUInt32 ulRecNo );}
-\DoxyCodeLine{194 \textcolor{keyword}{virtual} xbIxNode *AllocateIxNode( xbUInt32 ulBufSize = 0, xbInt16 iOption = 0 );}
-\DoxyCodeLine{195 \textcolor{keyword}{virtual} xbInt16 BSearchBlock( \textcolor{keywordtype}{char} cKeyType, xbIxNode *npNode, xbInt32 lKeyLen, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpKey, xbInt32 lSearchKeyLen, xbInt16 \&iCompRc, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bDescending = \mbox{\hyperlink{xbtypes_8h_adc4b6ca5ad299f63675136d9e03938cc}{xbFalse}} ) \textcolor{keyword}{const};}
-\DoxyCodeLine{196 \textcolor{keyword}{virtual} xbInt16 CheckForDupKeys();}
-\DoxyCodeLine{197 \textcolor{keyword}{virtual} xbInt16 CheckForDupKey( \textcolor{keywordtype}{void} *vpTag ) = 0;}
-\DoxyCodeLine{198 \textcolor{keyword}{virtual} xbInt16 CompareKey( \textcolor{keywordtype}{char} cKeyType, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *v1, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *v2, \textcolor{keywordtype}{size\_t} lKeyLen ) \textcolor{keyword}{const};}
-\DoxyCodeLine{199 \textcolor{keyword}{virtual} xbInt16 CreateKeys( xbInt16 iOpt );}
-\DoxyCodeLine{200 \textcolor{keyword}{virtual} xbInt16 CreateKey( \textcolor{keywordtype}{void} * vpTag, xbInt16 iOpt ) = 0;}
-\DoxyCodeLine{201 \textcolor{keyword}{virtual} xbInt16 DeleteFromNode( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo ) = 0;}
-\DoxyCodeLine{202 \textcolor{comment}{// virtual xbInt16 DeleteKeys( xbUInt32 ulRecNo );}}
-\DoxyCodeLine{203 \textcolor{keyword}{virtual} xbInt16 DeleteKeys();}
-\DoxyCodeLine{204 \textcolor{keyword}{virtual} xbInt16 DeleteKey( \textcolor{keywordtype}{void} *vpTag ) = 0;}
-\DoxyCodeLine{205 }
-\DoxyCodeLine{206 \textcolor{keyword}{virtual} xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag ) = 0;}
-\DoxyCodeLine{207 }
+\DoxyCodeLine{192 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{193 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
+\DoxyCodeLine{194 }
+\DoxyCodeLine{195 \textcolor{keyword}{virtual} xbInt16 AddKey( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo ) = 0;}
+\DoxyCodeLine{196 \textcolor{keyword}{virtual} xbInt16 AddKeys( xbUInt32 ulRecNo );}
+\DoxyCodeLine{197 \textcolor{keyword}{virtual} xbIxNode *AllocateIxNode( xbUInt32 ulBufSize = 0, xbInt16 iOption = 0 );}
+\DoxyCodeLine{198 \textcolor{keyword}{virtual} xbInt16 BSearchBlock( \textcolor{keywordtype}{char} cKeyType, xbIxNode *npNode, xbInt32 lKeyLen, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpKey, xbInt32 lSearchKeyLen, xbInt16 \&iCompRc, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bDescending = \mbox{\hyperlink{xbtypes_8h_adc4b6ca5ad299f63675136d9e03938cc}{xbFalse}} ) \textcolor{keyword}{const};}
+\DoxyCodeLine{199 \textcolor{keyword}{virtual} xbInt16 CheckForDupKeys();}
+\DoxyCodeLine{200 \textcolor{keyword}{virtual} xbInt16 CheckForDupKey( \textcolor{keywordtype}{void} *vpTag ) = 0;}
+\DoxyCodeLine{201 \textcolor{keyword}{virtual} xbInt16 CompareKey( \textcolor{keywordtype}{char} cKeyType, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *v1, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *v2, \textcolor{keywordtype}{size\_t} lKeyLen ) \textcolor{keyword}{const};}
+\DoxyCodeLine{202 \textcolor{keyword}{virtual} xbInt16 CreateKeys( xbInt16 iOpt );}
+\DoxyCodeLine{203 \textcolor{keyword}{virtual} xbInt16 CreateKey( \textcolor{keywordtype}{void} * vpTag, xbInt16 iOpt ) = 0;}
+\DoxyCodeLine{204 \textcolor{keyword}{virtual} xbInt16 DeleteFromNode( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo ) = 0;}
+\DoxyCodeLine{205 \textcolor{keyword}{virtual} xbInt16 DeleteKeys();}
+\DoxyCodeLine{206 \textcolor{keyword}{virtual} xbInt16 DeleteKey( \textcolor{keywordtype}{void} *vpTag ) = 0;}
+\DoxyCodeLine{207 \textcolor{keyword}{virtual} xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag ) = 0;}
\DoxyCodeLine{208 }
\DoxyCodeLine{209 \textcolor{keyword}{virtual} xbInt16 FindKeyForCurRec( \textcolor{keywordtype}{void} *vpTag ) = 0;}
\DoxyCodeLine{210 \textcolor{keyword}{virtual} xbIxNode *FreeNodeChain( xbIxNode *np );}
\DoxyCodeLine{211 \textcolor{keyword}{virtual} xbInt16 GetBlock( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulBlockNo, xbInt16 iOpt, xbUInt32 ulAddlBuf = 0 );}
-\DoxyCodeLine{212 \textcolor{comment}{// virtual xbBool GetIndexUpdated() const = 0;}}
-\DoxyCodeLine{213 \textcolor{keyword}{virtual} xbInt32 GetKeyCount( xbIxNode *npNode ) \textcolor{keyword}{const};}
-\DoxyCodeLine{214 \textcolor{keyword}{virtual} \textcolor{keywordtype}{char} *GetKeyData( xbIxNode *npNode, xbInt16 iKeyNo, xbInt16 iKeyItemLen ) \textcolor{keyword}{const};}
-\DoxyCodeLine{215 \textcolor{keyword}{virtual} xbInt16 GetKeySts( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const} = 0;}
-\DoxyCodeLine{216 \textcolor{keyword}{virtual} xbInt16 GetLastKey( xbUInt32 ulNodeNo, \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw ) = 0;}
-\DoxyCodeLine{217 \textcolor{keyword}{virtual} xbInt16 InsertNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, \textcolor{keywordtype}{char} * cpKeyBuf, xbUInt32 uiPtr ) = 0;}
-\DoxyCodeLine{218 \textcolor{keyword}{virtual} xbInt16 InsertNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, xbUInt32 uiPtr ) = 0;}
-\DoxyCodeLine{219 \textcolor{keyword}{virtual} xbInt16 KeyExists( \textcolor{keywordtype}{void} * ) = 0;}
-\DoxyCodeLine{220 \textcolor{comment}{// virtual xbInt16 KeyUpdated( void *vpTag ) const = 0;}}
-\DoxyCodeLine{221 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} NodeFree( xbIxNode * ixNode );}
-\DoxyCodeLine{222 \textcolor{keyword}{virtual} xbInt16 ReadHeadBlock( xbInt16 iOpt = 0 ) = 0;}
-\DoxyCodeLine{223 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetDbf( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf );}
-\DoxyCodeLine{224 \textcolor{keyword}{virtual} xbInt16 SplitNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr ) = 0;}
-\DoxyCodeLine{225 \textcolor{keyword}{virtual} xbInt16 SplitNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, xbUInt32 uiPtr ) = 0;}
-\DoxyCodeLine{226 \textcolor{keyword}{virtual} xbInt16 UpdateTagKey( \textcolor{keywordtype}{char} cAction, \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo = 0 ) = 0;}
-\DoxyCodeLine{227 \textcolor{keyword}{virtual} xbInt16 WriteHeadBlock( xbInt16 iOption ) = 0;}
-\DoxyCodeLine{228 }
-\DoxyCodeLine{229 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf;}
-\DoxyCodeLine{230 \textcolor{keywordtype}{char} *cNodeBuf; \textcolor{comment}{// pointer to memory for processing in a block of index data}}
-\DoxyCodeLine{231 \textcolor{keywordtype}{void} *vpCurTag; \textcolor{comment}{// pointer to active tag. Single index files have only one tag}}
-\DoxyCodeLine{232 }
-\DoxyCodeLine{233 \textcolor{keyword}{private}:}
-\DoxyCodeLine{234 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} AppendNodeChain( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) = 0;}
-\DoxyCodeLine{235 \textcolor{keyword}{virtual} xbInt16 GetKeyPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulKeyPtr ) \textcolor{keyword}{const} = 0;}
-\DoxyCodeLine{236 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeaf( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) \textcolor{keyword}{const} = 0;}
-\DoxyCodeLine{237 \textcolor{comment}{// virtual void SetCurNode( void *vpTag, xbIxNode *npNode ) = 0;}}
-\DoxyCodeLine{238 }
-\DoxyCodeLine{239 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLocked; \textcolor{comment}{// index file locked?}}
-\DoxyCodeLine{240 \};}
-\DoxyCodeLine{241 }
-\DoxyCodeLine{242 \textcolor{preprocessor}{\#ifdef XB\_NDX\_SUPPORT}}
-\DoxyCodeLine{243 }
-\DoxyCodeLine{244 \textcolor{preprocessor}{\#define XB\_NDX\_BLOCK\_SIZE 512}}
+\DoxyCodeLine{212 \textcolor{keyword}{virtual} xbInt32 GetKeyCount( xbIxNode *npNode ) \textcolor{keyword}{const};}
+\DoxyCodeLine{213 \textcolor{keyword}{virtual} \textcolor{keywordtype}{char} *GetKeyData( xbIxNode *npNode, xbInt16 iKeyNo, xbInt16 iKeyItemLen ) \textcolor{keyword}{const};}
+\DoxyCodeLine{214 \textcolor{keyword}{virtual} xbInt16 GetKeySts( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const} = 0;}
+\DoxyCodeLine{215 \textcolor{keyword}{virtual} xbInt16 GetLastKey( xbUInt32 ulNodeNo, \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw ) = 0;}
+\DoxyCodeLine{216 \textcolor{keyword}{virtual} xbInt16 InsertNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, \textcolor{keywordtype}{char} * cpKeyBuf, xbUInt32 uiPtr ) = 0;}
+\DoxyCodeLine{217 \textcolor{keyword}{virtual} xbInt16 InsertNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, xbUInt32 uiPtr ) = 0;}
+\DoxyCodeLine{218 \textcolor{keyword}{virtual} xbInt16 KeyExists( \textcolor{keywordtype}{void} * ) = 0;}
+\DoxyCodeLine{219 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} NodeFree( xbIxNode * ixNode );}
+\DoxyCodeLine{220 \textcolor{keyword}{virtual} xbInt16 ReadHeadBlock( xbInt16 iOpt = 0 ) = 0;}
+\DoxyCodeLine{221 \textcolor{comment}{// virtual xbInt16 Reindex( void **vpTag ) = 0;}}
+\DoxyCodeLine{222 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} SetDbf( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf );}
+\DoxyCodeLine{223 \textcolor{keyword}{virtual} xbInt16 SplitNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr ) = 0;}
+\DoxyCodeLine{224 \textcolor{keyword}{virtual} xbInt16 SplitNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, xbUInt32 uiPtr ) = 0;}
+\DoxyCodeLine{225 \textcolor{keyword}{virtual} xbInt16 UpdateTagKey( \textcolor{keywordtype}{char} cAction, \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo = 0 ) = 0;}
+\DoxyCodeLine{226 \textcolor{keyword}{virtual} xbInt16 WriteHeadBlock( xbInt16 iOption ) = 0;}
+\DoxyCodeLine{227 }
+\DoxyCodeLine{228 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf;}
+\DoxyCodeLine{229 \textcolor{keywordtype}{char} *cNodeBuf; \textcolor{comment}{// pointer to memory for processing in a block of index data}}
+\DoxyCodeLine{230 \textcolor{keywordtype}{void} *vpCurTag; \textcolor{comment}{// pointer to active tag. Single index files have only one tag}}
+\DoxyCodeLine{231 }
+\DoxyCodeLine{232 \textcolor{keyword}{private}:}
+\DoxyCodeLine{233 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} AppendNodeChain( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) = 0;}
+\DoxyCodeLine{234 \textcolor{keyword}{virtual} xbInt16 GetKeyPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulKeyPtr ) \textcolor{keyword}{const} = 0;}
+\DoxyCodeLine{235 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeaf( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) \textcolor{keyword}{const} = 0;}
+\DoxyCodeLine{236 \textcolor{comment}{// virtual void SetCurNode( void *vpTag, xbIxNode *npNode ) = 0;}}
+\DoxyCodeLine{237 }
+\DoxyCodeLine{238 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLocked; \textcolor{comment}{// index file locked?}}
+\DoxyCodeLine{239 \};}
+\DoxyCodeLine{240 }
+\DoxyCodeLine{241 \textcolor{preprocessor}{\#ifdef XB\_NDX\_SUPPORT}}
+\DoxyCodeLine{242 }
+\DoxyCodeLine{243 \textcolor{preprocessor}{\#define XB\_NDX\_BLOCK\_SIZE 512}}
+\DoxyCodeLine{244 }
\DoxyCodeLine{245 }
-\DoxyCodeLine{246 }
-\DoxyCodeLine{248 \textcolor{keyword}{struct }XBDLLEXPORT xbNdxTag \{}
-\DoxyCodeLine{249 }
-\DoxyCodeLine{250 \textcolor{comment}{// NDX File Header Fields}}
-\DoxyCodeLine{251 xbUInt32 ulRootBlock; \textcolor{comment}{// header node is 0}}
-\DoxyCodeLine{252 xbUInt32 ulTotalBlocks; \textcolor{comment}{// includes header node}}
-\DoxyCodeLine{253 \textcolor{keywordtype}{char} cKeyType; \textcolor{comment}{// C = Char, F = Numeric, D = Date}}
-\DoxyCodeLine{254 xbInt16 iKeyLen; \textcolor{comment}{// length of key data}}
-\DoxyCodeLine{255 xbInt16 iKeysPerBlock; \textcolor{comment}{// max number keys per block <=100}}
-\DoxyCodeLine{256 xbInt16 iKeyType; \textcolor{comment}{// 00 = Char, 01 = Numeric}}
-\DoxyCodeLine{257 xbInt16 iKeyItemLen; \textcolor{comment}{// KeyLen + 8 bytes}}
-\DoxyCodeLine{258 \textcolor{keywordtype}{char} cSerNo; \textcolor{comment}{// rolling incrementing serial number +1 on each index update}}
-\DoxyCodeLine{259 xbInt16 iUnique; \textcolor{comment}{// True if unique}}
-\DoxyCodeLine{260 xbString sKeyExpression; \textcolor{comment}{// index expression}}
-\DoxyCodeLine{261 \textcolor{comment}{// end of NDX Header field}}
-\DoxyCodeLine{262 }
-\DoxyCodeLine{263 xbExp *exp; \textcolor{comment}{// pointer to expression for expression keys}}
-\DoxyCodeLine{264 time\_t tNodeChainTs; \textcolor{comment}{// node chain time stamp}}
-\DoxyCodeLine{265 xbIxNode *npNodeChain;}
-\DoxyCodeLine{266 xbIxNode *npCurNode;}
-\DoxyCodeLine{267 \textcolor{keywordtype}{char} *cpKeyBuf; \textcolor{comment}{// key buffer, for searches and adds}}
-\DoxyCodeLine{268 \textcolor{keywordtype}{char} *cpKeyBuf2; \textcolor{comment}{// key buffer, for deletes}}
-\DoxyCodeLine{269 xbString sTagName; \textcolor{comment}{// tag name -\/ is the file name without the extension}}
-\DoxyCodeLine{270 \textcolor{comment}{// xbInt16 iKeyUpdated; // key updated? set in method KeyUpdated, checked in AddKey and DeleteKey routines}}
-\DoxyCodeLine{271 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFoundSts; \textcolor{comment}{// key found? used to determine if new key should be added in XB\_EMULATE\_DBASE mode in AddKey}}
-\DoxyCodeLine{272 }
-\DoxyCodeLine{273 }
-\DoxyCodeLine{274 xbInt16 iKeySts; \textcolor{comment}{// key updated? set in method CreateKey, checked in AddKey and DeleteKey routines}}
-\DoxyCodeLine{275 \textcolor{comment}{// old key filtered new key filtered iKeySts}}
-\DoxyCodeLine{276 \textcolor{comment}{// Y Y XB\_UPD\_KEY 2 -\/ update key if changed (delete and add)}}
-\DoxyCodeLine{277 \textcolor{comment}{// Y N XB\_DEL\_KEY 3 -\/ delete key}}
-\DoxyCodeLine{278 \textcolor{comment}{// N Y XB\_ADD\_KEY 1 -\/ add key}}
-\DoxyCodeLine{279 \textcolor{comment}{// N N 0 -\/ no update}}
-\DoxyCodeLine{280 }
-\DoxyCodeLine{281 \};}
+\DoxyCodeLine{247 \textcolor{keyword}{struct }XBDLLEXPORT xbNdxTag \{}
+\DoxyCodeLine{248 }
+\DoxyCodeLine{249 \textcolor{comment}{// NDX File Header Fields}}
+\DoxyCodeLine{250 xbUInt32 ulRootBlock; \textcolor{comment}{// header node is 0}}
+\DoxyCodeLine{251 xbUInt32 ulTotalBlocks; \textcolor{comment}{// includes header node}}
+\DoxyCodeLine{252 \textcolor{keywordtype}{char} cKeyType; \textcolor{comment}{// C = Char, F = Numeric, D = Date}}
+\DoxyCodeLine{253 xbInt16 iKeyLen; \textcolor{comment}{// length of key data}}
+\DoxyCodeLine{254 xbInt16 iKeysPerBlock; \textcolor{comment}{// max number keys per block <=100}}
+\DoxyCodeLine{255 xbInt16 iKeyType; \textcolor{comment}{// 00 = Char, 01 = Numeric}}
+\DoxyCodeLine{256 xbInt16 iKeyItemLen; \textcolor{comment}{// KeyLen + 8 bytes}}
+\DoxyCodeLine{257 \textcolor{keywordtype}{char} cSerNo; \textcolor{comment}{// rolling incrementing serial number +1 on each index update}}
+\DoxyCodeLine{258 xbInt16 iUnique; \textcolor{comment}{// True if unique}}
+\DoxyCodeLine{259 xbString sKeyExpression; \textcolor{comment}{// index expression}}
+\DoxyCodeLine{260 \textcolor{comment}{// end of NDX Header field}}
+\DoxyCodeLine{261 }
+\DoxyCodeLine{262 xbExp *exp; \textcolor{comment}{// pointer to expression for expression keys}}
+\DoxyCodeLine{263 time\_t tNodeChainTs; \textcolor{comment}{// node chain time stamp}}
+\DoxyCodeLine{264 xbIxNode *npNodeChain;}
+\DoxyCodeLine{265 xbIxNode *npCurNode;}
+\DoxyCodeLine{266 \textcolor{keywordtype}{char} *cpKeyBuf; \textcolor{comment}{// key buffer, for searches and adds}}
+\DoxyCodeLine{267 \textcolor{keywordtype}{char} *cpKeyBuf2; \textcolor{comment}{// key buffer, for deletes}}
+\DoxyCodeLine{268 xbString sTagName; \textcolor{comment}{// tag name -\/ is the file name without the extension}}
+\DoxyCodeLine{269 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFoundSts; \textcolor{comment}{// key found? used to determine if new key should be added in XB\_EMULATE\_DBASE mode in AddKey}}
+\DoxyCodeLine{270 }
+\DoxyCodeLine{271 }
+\DoxyCodeLine{272 xbInt16 iKeySts; \textcolor{comment}{// key updated? set in method CreateKey, checked in AddKey and DeleteKey routines}}
+\DoxyCodeLine{273 \textcolor{comment}{// old key filtered new key filtered iKeySts}}
+\DoxyCodeLine{274 \textcolor{comment}{// Y Y XB\_UPD\_KEY 2 -\/ update key if changed (delete and add)}}
+\DoxyCodeLine{275 \textcolor{comment}{// Y N XB\_DEL\_KEY 3 -\/ delete key}}
+\DoxyCodeLine{276 \textcolor{comment}{// N Y XB\_ADD\_KEY 1 -\/ add key}}
+\DoxyCodeLine{277 \textcolor{comment}{// N N 0 -\/ no update}}
+\DoxyCodeLine{278 }
+\DoxyCodeLine{279 \};}
+\DoxyCodeLine{281 }
\DoxyCodeLine{283 }
-\DoxyCodeLine{285 }
-\DoxyCodeLine{304 \textcolor{keyword}{class }XBDLLEXPORT xbIxNdx : \textcolor{keyword}{public} xbIx \{}
-\DoxyCodeLine{305 \textcolor{keyword}{public}:}
-\DoxyCodeLine{306 xbIxNdx( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * d );}
-\DoxyCodeLine{307 \string~xbIxNdx();}
-\DoxyCodeLine{308 xbInt16 CheckTagIntegrity( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt );}
-\DoxyCodeLine{309 xbInt16 CreateTag( \textcolor{keyword}{const} xbString \&sName, \textcolor{keyword}{const} xbString \&sKey, \textcolor{keyword}{const} xbString \&sFilter, xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverlay, \textcolor{keywordtype}{void} **vpTag );}
-\DoxyCodeLine{310 \textcolor{comment}{// xbInt16 DeleteTag( void *vpTag );}}
-\DoxyCodeLine{311 xbInt16 FindKey( \textcolor{keywordtype}{void} *vpTag, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpKey, xbInt32 lKeyLen, xbInt16 iRetrieveSw );}
-\DoxyCodeLine{312 xbInt16 GetFirstKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw );}
-\DoxyCodeLine{313 }
-\DoxyCodeLine{314 xbInt16 GetLastKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
-\DoxyCodeLine{315 xbInt16 GetNextKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
-\DoxyCodeLine{316 xbInt16 GetPrevKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
-\DoxyCodeLine{317 xbInt32 GetKeyLen ( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{318 \textcolor{keywordtype}{char} GetKeyType ( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{319 xbString \&GetKeyExpression( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{320 xbString \&GetKeyFilter( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{321 \textcolor{keywordtype}{void} *GetTag( xbInt16 iTagNo ) \textcolor{keyword}{const};}
-\DoxyCodeLine{322 \textcolor{keywordtype}{void} *GetTag( xbString \&sTagName ) \textcolor{keyword}{const};}
-\DoxyCodeLine{323 xbString \&GetTagName( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{324 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * GetTagName( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt ) \textcolor{keyword}{const};}
-\DoxyCodeLine{325 }
-\DoxyCodeLine{326 xbInt16 GetTagCount() \textcolor{keyword}{const};}
-\DoxyCodeLine{327 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetUnique( \textcolor{keywordtype}{void} *vpTag = NULL ) \textcolor{keyword}{const};}
-\DoxyCodeLine{328 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetSortOrder( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{329 xbInt16 Reindex( \textcolor{keywordtype}{void} **vpTag );}
-\DoxyCodeLine{330 xbInt16 SetCurTag( xbInt16 iTagNo );}
-\DoxyCodeLine{331 xbInt16 SetCurTag( xbString \&sTagName );}
-\DoxyCodeLine{332 }
-\DoxyCodeLine{333 }
-\DoxyCodeLine{334 }
-\DoxyCodeLine{335 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{336 xbInt16 DumpTagBlocks( xbInt16 iOpt = 1, \textcolor{keywordtype}{void} *vpTag = NULL );}
-\DoxyCodeLine{337 xbInt16 DumpHeader( xbInt16 iOpt = 0, xbInt16 iFmt = 0 );}
-\DoxyCodeLine{338 xbInt16 DumpIxForTag( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt );}
-\DoxyCodeLine{339 \textcolor{keywordtype}{void} DumpIxNodeChain( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) \textcolor{keyword}{const};}
-\DoxyCodeLine{340 xbInt16 DumpNode( \textcolor{keywordtype}{void} * vpTag, xbIxNode * pNode, xbInt16 iOption ) \textcolor{keyword}{const};}
-\DoxyCodeLine{341 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{342 }
-\DoxyCodeLine{343 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{344 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
-\DoxyCodeLine{345 xbInt16 AddKey( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo );}
-\DoxyCodeLine{346 xbIxNode *AllocateIxNode( xbUInt32 ulBufSize = 0, xbInt16 iOption = 0 );}
-\DoxyCodeLine{347 xbInt16 CheckForDupKey( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{348 xbIxNode *CreateIxNode( xbUInt32 ulBufSize );}
-\DoxyCodeLine{349 xbInt16 CreateKey( \textcolor{keywordtype}{void} * vpTag, xbInt16 iOpt );}
-\DoxyCodeLine{350 xbInt16 DeleteFromNode( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo );}
-\DoxyCodeLine{351 xbInt16 DeleteKey( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{352 }
-\DoxyCodeLine{353 xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{354 }
-\DoxyCodeLine{355 xbInt16 FindKeyForCurRec( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{356 \textcolor{comment}{// xbBool GetIndexUpdated() const;}}
-\DoxyCodeLine{357 xbInt16 GetKeyTypeN( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{358 xbInt16 GetKeySts( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{359 xbInt16 GetLastKey( xbUInt32 ulNodeNo, \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
-\DoxyCodeLine{360 xbInt16 InsertNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, xbUInt32 uiPtr );}
-\DoxyCodeLine{361 xbInt16 InsertNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, \textcolor{keywordtype}{char} * cpKeyBuf, xbUInt32 uiPtr );}
-\DoxyCodeLine{362 xbInt16 KeyExists( \textcolor{keywordtype}{void} *vpTag = NULL );}
-\DoxyCodeLine{363 \textcolor{comment}{// xbBool KeyFiltered( void *vpTag ) const;}}
-\DoxyCodeLine{364 \textcolor{comment}{// xbInt16 KeyUpdated( void *vpTag ) const;}}
-\DoxyCodeLine{365 xbInt16 ReadHeadBlock(xbInt16 iOpt); \textcolor{comment}{// read the header node of the disk NDX file}}
-\DoxyCodeLine{366 xbInt16 SplitNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, xbUInt32 uiPtr );}
-\DoxyCodeLine{367 xbInt16 SplitNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr );}
-\DoxyCodeLine{368 xbInt16 UpdateTagKey( \textcolor{keywordtype}{char} cAction, \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo = 0 );}
-\DoxyCodeLine{369 xbInt16 WriteHeadBlock( xbInt16 iOption );}
-\DoxyCodeLine{370 }
-\DoxyCodeLine{371 \textcolor{keyword}{private}:}
-\DoxyCodeLine{372 xbInt16 AddKeyNewRoot( xbNdxTag *npTag, xbIxNode *npLeft, xbIxNode *npRight );}
-\DoxyCodeLine{373 \textcolor{keywordtype}{void} AppendNodeChain( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode );}
-\DoxyCodeLine{374 xbInt16 GetDbfPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulDbfPtr ) \textcolor{keyword}{const};}
-\DoxyCodeLine{375 xbInt16 GetKeyPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulKeyPtr ) \textcolor{keyword}{const};}
-\DoxyCodeLine{376 xbInt16 GetLastKeyForBlockNo( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulBlockNo, \textcolor{keywordtype}{char} *cpKeyBuf );}
-\DoxyCodeLine{377 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeaf( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) \textcolor{keyword}{const};}
-\DoxyCodeLine{378 xbInt16 KeySetPosAdd( xbNdxTag *npTag, xbUInt32 ulAddKeyRecNo );}
-\DoxyCodeLine{379 xbInt16 KeySetPosDel( xbNdxTag *npTag );}
-\DoxyCodeLine{380 \textcolor{comment}{// void SetCurNode( void *vpTag, xbIxNode *np );}}
-\DoxyCodeLine{381 xbNdxTag *ndxTag;}
-\DoxyCodeLine{382 \};}
+\DoxyCodeLine{302 \textcolor{keyword}{class }XBDLLEXPORT xbIxNdx : \textcolor{keyword}{public} xbIx \{}
+\DoxyCodeLine{303 \textcolor{keyword}{public}:}
+\DoxyCodeLine{304 xbIxNdx( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * d );}
+\DoxyCodeLine{305 \string~xbIxNdx();}
+\DoxyCodeLine{306 xbInt16 CheckTagIntegrity( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt );}
+\DoxyCodeLine{307 xbInt16 CreateTag( \textcolor{keyword}{const} xbString \&sName, \textcolor{keyword}{const} xbString \&sKey, \textcolor{keyword}{const} xbString \&sFilter, xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverlay, \textcolor{keywordtype}{void} **vpTag );}
+\DoxyCodeLine{308 xbInt16 FindKey( \textcolor{keywordtype}{void} *vpTag, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpKey, xbInt32 lKeyLen, xbInt16 iRetrieveSw );}
+\DoxyCodeLine{309 xbInt16 GetFirstKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw );}
+\DoxyCodeLine{310 }
+\DoxyCodeLine{311 xbInt16 GetLastKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
+\DoxyCodeLine{312 xbInt16 GetNextKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
+\DoxyCodeLine{313 xbInt16 GetPrevKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
+\DoxyCodeLine{314 xbInt32 GetKeyLen ( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{315 \textcolor{keywordtype}{char} GetKeyType ( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{316 xbString \&GetKeyExpression( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{317 xbString \&GetKeyFilter( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{318 \textcolor{keywordtype}{void} *GetTag( xbInt16 iTagNo ) \textcolor{keyword}{const};}
+\DoxyCodeLine{319 \textcolor{keywordtype}{void} *GetTag( xbString \&sTagName ) \textcolor{keyword}{const};}
+\DoxyCodeLine{320 xbString \&GetTagName( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{321 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * GetTagName( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt ) \textcolor{keyword}{const};}
+\DoxyCodeLine{322 }
+\DoxyCodeLine{323 xbInt16 GetTagCount() \textcolor{keyword}{const};}
+\DoxyCodeLine{324 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetUnique( \textcolor{keywordtype}{void} *vpTag = NULL ) \textcolor{keyword}{const};}
+\DoxyCodeLine{325 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetSortOrder( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{326 xbInt16 SetCurTag( xbInt16 iTagNo );}
+\DoxyCodeLine{327 xbInt16 SetCurTag( xbString \&sTagName );}
+\DoxyCodeLine{328 }
+\DoxyCodeLine{329 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{330 xbInt16 DumpTagBlocks( xbInt16 iOpt = 1, \textcolor{keywordtype}{void} *vpTag = NULL );}
+\DoxyCodeLine{331 xbInt16 DumpHeader( xbInt16 iOpt = 0, xbInt16 iFmt = 0 );}
+\DoxyCodeLine{332 xbInt16 DumpIxForTag( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt );}
+\DoxyCodeLine{333 \textcolor{keywordtype}{void} DumpIxNodeChain( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) \textcolor{keyword}{const};}
+\DoxyCodeLine{334 xbInt16 DumpNode( \textcolor{keywordtype}{void} * vpTag, xbIxNode * pNode, xbInt16 iOption ) \textcolor{keyword}{const};}
+\DoxyCodeLine{335 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{336 }
+\DoxyCodeLine{337 xbInt16 Reindex( \textcolor{keywordtype}{void} **vpTag );}
+\DoxyCodeLine{338 }
+\DoxyCodeLine{339 }
+\DoxyCodeLine{340 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{341 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
+\DoxyCodeLine{342 xbInt16 AddKey( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo );}
+\DoxyCodeLine{343 xbIxNode *AllocateIxNode( xbUInt32 ulBufSize = 0, xbInt16 iOption = 0 );}
+\DoxyCodeLine{344 xbInt16 CheckForDupKey( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{345 xbIxNode *CreateIxNode( xbUInt32 ulBufSize );}
+\DoxyCodeLine{346 xbInt16 CreateKey( \textcolor{keywordtype}{void} * vpTag, xbInt16 iOpt );}
+\DoxyCodeLine{347 xbInt16 DeleteFromNode( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo );}
+\DoxyCodeLine{348 xbInt16 DeleteKey( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{349 xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{350 xbInt16 FindKeyForCurRec( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{351 xbInt16 GetKeyTypeN( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{352 xbInt16 GetKeySts( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{353 xbInt16 GetLastKey( xbUInt32 ulNodeNo, \textcolor{keywordtype}{void} *vpTag, xbInt16 iRetrieveSw = 1 );}
+\DoxyCodeLine{354 xbInt16 InsertNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, xbUInt32 uiPtr );}
+\DoxyCodeLine{355 xbInt16 InsertNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo, \textcolor{keywordtype}{char} * cpKeyBuf, xbUInt32 uiPtr );}
+\DoxyCodeLine{356 xbInt16 KeyExists( \textcolor{keywordtype}{void} *vpTag = NULL );}
+\DoxyCodeLine{357 xbInt16 ReadHeadBlock(xbInt16 iOpt); \textcolor{comment}{// read the header node of the disk NDX file}}
+\DoxyCodeLine{358 \textcolor{comment}{// xbInt16 Reindex( void **vpTag );}}
+\DoxyCodeLine{359 xbInt16 SplitNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, xbUInt32 uiPtr );}
+\DoxyCodeLine{360 xbInt16 SplitNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr );}
+\DoxyCodeLine{361 xbInt16 UpdateTagKey( \textcolor{keywordtype}{char} cAction, \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo = 0 );}
+\DoxyCodeLine{362 xbInt16 WriteHeadBlock( xbInt16 iOption );}
+\DoxyCodeLine{363 }
+\DoxyCodeLine{364 \textcolor{keyword}{private}:}
+\DoxyCodeLine{365 xbInt16 AddKeyNewRoot( xbNdxTag *npTag, xbIxNode *npLeft, xbIxNode *npRight );}
+\DoxyCodeLine{366 \textcolor{keywordtype}{void} AppendNodeChain( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode );}
+\DoxyCodeLine{367 xbInt16 GetDbfPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulDbfPtr ) \textcolor{keyword}{const};}
+\DoxyCodeLine{368 xbInt16 GetKeyPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulKeyPtr ) \textcolor{keyword}{const};}
+\DoxyCodeLine{369 xbInt16 GetLastKeyForBlockNo( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulBlockNo, \textcolor{keywordtype}{char} *cpKeyBuf );}
+\DoxyCodeLine{370 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeaf( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) \textcolor{keyword}{const};}
+\DoxyCodeLine{371 xbInt16 KeySetPosAdd( xbNdxTag *npTag, xbUInt32 ulAddKeyRecNo );}
+\DoxyCodeLine{372 xbInt16 KeySetPosDel( xbNdxTag *npTag );}
+\DoxyCodeLine{373 xbNdxTag *ndxTag;}
+\DoxyCodeLine{374 \};}
+\DoxyCodeLine{375 }
+\DoxyCodeLine{376 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_NDX\_SUPPORT */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{377 }
+\DoxyCodeLine{378 }
+\DoxyCodeLine{379 \textcolor{preprocessor}{\#ifdef XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{380 \textcolor{comment}{//\#define XB\_MDX\_BLOCK\_SIZE 1024}}
+\DoxyCodeLine{381 }
+\DoxyCodeLine{382 \textcolor{keyword}{struct }XBDLLEXPORT xbMdxTag \{}
\DoxyCodeLine{383 }
-\DoxyCodeLine{384 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_NDX\_SUPPORT */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{385 }
-\DoxyCodeLine{386 }
-\DoxyCodeLine{387 \textcolor{preprocessor}{\#ifdef XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{388 \textcolor{comment}{//\#define XB\_MDX\_BLOCK\_SIZE 1024}}
-\DoxyCodeLine{389 }
-\DoxyCodeLine{390 \textcolor{keyword}{struct }XBDLLEXPORT xbMdxTag \{}
-\DoxyCodeLine{391 }
-\DoxyCodeLine{392 \textcolor{comment}{// next 7 fields comprise the tag table entry}}
-\DoxyCodeLine{393 xbUInt32 ulTagHdrPageNo; \textcolor{comment}{// 512 byte page number, NOT block number}}
-\DoxyCodeLine{394 \textcolor{keywordtype}{char} cTagName[11];}
-\DoxyCodeLine{395 \textcolor{keywordtype}{char} cKeyFmt; \textcolor{comment}{// always 0x10 w/ DBase V7}}
-\DoxyCodeLine{396 \textcolor{keywordtype}{char} cLeftChild; \textcolor{comment}{// cFwdTagThread}}
-\DoxyCodeLine{397 \textcolor{keywordtype}{char} cRightChild; \textcolor{comment}{// cFwdTagThread2}}
-\DoxyCodeLine{398 \textcolor{keywordtype}{char} cParent; \textcolor{comment}{// cBwdTagThread}}
-\DoxyCodeLine{399 \textcolor{keywordtype}{char} c2;}
-\DoxyCodeLine{400 \textcolor{keywordtype}{char} cKeyType; \textcolor{comment}{// C,D,N}}
-\DoxyCodeLine{401 }
-\DoxyCodeLine{402 xbUInt32 ulRootPage; \textcolor{comment}{// 512 byte page number, NOT block number}}
-\DoxyCodeLine{403 xbUInt32 ulTagSize; \textcolor{comment}{// Number of 512 byte pages allocated to the tag. Tag size of two is a single 1024 block}}
-\DoxyCodeLine{404 }
-\DoxyCodeLine{405 \textcolor{keywordtype}{char} cKeyFmt2; \textcolor{comment}{// 0x10 -\/ base}}
-\DoxyCodeLine{406 \textcolor{comment}{// 0x08 -\/ descending}}
-\DoxyCodeLine{407 \textcolor{comment}{// 0x40 -\/ unique}}
-\DoxyCodeLine{408 \textcolor{keywordtype}{char} cKeyType2;}
-\DoxyCodeLine{409 \textcolor{comment}{// one unused byte fits here}}
-\DoxyCodeLine{410 }
-\DoxyCodeLine{411 \textcolor{keywordtype}{char} cTag11; \textcolor{comment}{// dbase sets to 0x1B}}
-\DoxyCodeLine{412 }
-\DoxyCodeLine{413 xbInt16 iKeyLen;}
-\DoxyCodeLine{414 xbInt16 iKeysPerBlock;}
-\DoxyCodeLine{415 xbInt16 iSecKeyType;}
-\DoxyCodeLine{416 xbInt16 iKeyItemLen; \textcolor{comment}{// iKeyLen + 4}}
-\DoxyCodeLine{417 }
-\DoxyCodeLine{418 \textcolor{keywordtype}{char} cSerialNo; \textcolor{comment}{// Increments +1 for each tag update}}
-\DoxyCodeLine{419 \textcolor{keywordtype}{char} cUnique;}
-\DoxyCodeLine{420 xbString *sKeyExp; \textcolor{comment}{// Key expression}}
-\DoxyCodeLine{421 }
-\DoxyCodeLine{422 \textcolor{keywordtype}{char} cHasFilter; \textcolor{comment}{// 0x00 or 0x01}}
-\DoxyCodeLine{423 \textcolor{keywordtype}{char} cHasKeys; \textcolor{comment}{// 0x00 or 0x01}}
+\DoxyCodeLine{384 \textcolor{comment}{// next 7 fields comprise the tag table entry}}
+\DoxyCodeLine{385 xbUInt32 ulTagHdrPageNo; \textcolor{comment}{// 512 byte page number, NOT block number}}
+\DoxyCodeLine{386 \textcolor{keywordtype}{char} cTagName[11];}
+\DoxyCodeLine{387 \textcolor{keywordtype}{char} cKeyFmt; \textcolor{comment}{// always 0x10 w/ DBase V7}}
+\DoxyCodeLine{388 \textcolor{keywordtype}{char} cLeftChild; \textcolor{comment}{// cFwdTagThread}}
+\DoxyCodeLine{389 \textcolor{keywordtype}{char} cRightChild; \textcolor{comment}{// cFwdTagThread2}}
+\DoxyCodeLine{390 \textcolor{keywordtype}{char} cParent; \textcolor{comment}{// cBwdTagThread}}
+\DoxyCodeLine{391 \textcolor{keywordtype}{char} c2;}
+\DoxyCodeLine{392 \textcolor{keywordtype}{char} cKeyType; \textcolor{comment}{// C,D,N}}
+\DoxyCodeLine{393 }
+\DoxyCodeLine{394 xbUInt32 ulRootPage; \textcolor{comment}{// 512 byte page number, NOT block number}}
+\DoxyCodeLine{395 xbUInt32 ulTagSize; \textcolor{comment}{// Number of 512 byte pages allocated to the tag. Tag size of two is a single 1024 block}}
+\DoxyCodeLine{396 }
+\DoxyCodeLine{397 \textcolor{keywordtype}{char} cKeyFmt2; \textcolor{comment}{// 0x10 -\/ base}}
+\DoxyCodeLine{398 \textcolor{comment}{// 0x08 -\/ descending}}
+\DoxyCodeLine{399 \textcolor{comment}{// 0x40 -\/ unique}}
+\DoxyCodeLine{400 \textcolor{keywordtype}{char} cKeyType2;}
+\DoxyCodeLine{401 \textcolor{comment}{// one unused byte fits here}}
+\DoxyCodeLine{402 }
+\DoxyCodeLine{403 \textcolor{keywordtype}{char} cTag11; \textcolor{comment}{// dbase sets to 0x1B}}
+\DoxyCodeLine{404 xbInt16 iKeyLen;}
+\DoxyCodeLine{405 xbInt16 iKeysPerBlock;}
+\DoxyCodeLine{406 xbInt16 iSecKeyType;}
+\DoxyCodeLine{407 xbInt16 iKeyItemLen; \textcolor{comment}{// iKeyLen + 4}}
+\DoxyCodeLine{408 }
+\DoxyCodeLine{409 \textcolor{keywordtype}{char} cSerialNo; \textcolor{comment}{// Increments +1 for each tag update}}
+\DoxyCodeLine{410 \textcolor{keywordtype}{char} cUnique;}
+\DoxyCodeLine{411 xbString *sKeyExp; \textcolor{comment}{// Key expression}}
+\DoxyCodeLine{412 \textcolor{keywordtype}{char} cHasFilter; \textcolor{comment}{// 0x00 or 0x01}}
+\DoxyCodeLine{413 \textcolor{keywordtype}{char} cHasKeys; \textcolor{comment}{// 0x00 or 0x01}}
+\DoxyCodeLine{414 xbUInt32 ulLeftChild; \textcolor{comment}{// dbase 7 sets this to the root page on tag creation}}
+\DoxyCodeLine{415 xbUInt32 ulRightChild; \textcolor{comment}{// dbase 7 sets this to the root page on tag creation}}
+\DoxyCodeLine{416 }
+\DoxyCodeLine{417 \textcolor{keywordtype}{char} cTagYY;}
+\DoxyCodeLine{418 \textcolor{keywordtype}{char} cTagMM;}
+\DoxyCodeLine{419 \textcolor{keywordtype}{char} cTagDD;}
+\DoxyCodeLine{420 }
+\DoxyCodeLine{421 \textcolor{keywordtype}{char} cKeyFmt3; \textcolor{comment}{// dbase 7 sets this 0x01 if discreet field or 0x00 if calculated or combination field key expression on tag creation}}
+\DoxyCodeLine{422 }
+\DoxyCodeLine{423 xbString *sFiltExp; \textcolor{comment}{// Filter expression}}
\DoxyCodeLine{424 }
-\DoxyCodeLine{425 xbUInt32 ulLeftChild; \textcolor{comment}{// dbase 7 sets this to the root page on tag creation}}
-\DoxyCodeLine{426 xbUInt32 ulRightChild; \textcolor{comment}{// dbase 7 sets this to the root page on tag creation}}
-\DoxyCodeLine{427 }
-\DoxyCodeLine{428 \textcolor{keywordtype}{char} cTagYY;}
-\DoxyCodeLine{429 \textcolor{keywordtype}{char} cTagMM;}
-\DoxyCodeLine{430 \textcolor{keywordtype}{char} cTagDD;}
-\DoxyCodeLine{431 }
-\DoxyCodeLine{432 \textcolor{keywordtype}{char} cKeyFmt3; \textcolor{comment}{// dbase 7 sets this 0x01 if discreet field or 0x00 if calculated or combination field key expression on tag creation}}
-\DoxyCodeLine{433 }
-\DoxyCodeLine{434 xbString *sFiltExp; \textcolor{comment}{// Filter expression}}
+\DoxyCodeLine{425 time\_t tNodeChainTs;}
+\DoxyCodeLine{426 xbIxNode *npNodeChain;}
+\DoxyCodeLine{427 xbIxNode *npCurNode;}
+\DoxyCodeLine{428 xbExp *exp; \textcolor{comment}{// pointer to expression for expression based tags}}
+\DoxyCodeLine{429 xbExp *filter; \textcolor{comment}{// pointer to expression for index filter}}
+\DoxyCodeLine{430 }
+\DoxyCodeLine{431 \textcolor{keywordtype}{char} *cpKeyBuf; \textcolor{comment}{// key buffer}}
+\DoxyCodeLine{432 \textcolor{keywordtype}{char} *cpKeyBuf2; \textcolor{comment}{// key buffer}}
+\DoxyCodeLine{433 xbString *sTagName; \textcolor{comment}{// string tag name}}
+\DoxyCodeLine{434 }
\DoxyCodeLine{435 }
-\DoxyCodeLine{436 time\_t tNodeChainTs;}
-\DoxyCodeLine{437 xbIxNode *npNodeChain;}
-\DoxyCodeLine{438 xbIxNode *npCurNode;}
-\DoxyCodeLine{439 xbExp *exp; \textcolor{comment}{// pointer to expression for expression based tags}}
-\DoxyCodeLine{440 xbExp *filter; \textcolor{comment}{// pointer to expression for index filter}}
-\DoxyCodeLine{441 }
-\DoxyCodeLine{442 \textcolor{keywordtype}{char} *cpKeyBuf; \textcolor{comment}{// key buffer}}
-\DoxyCodeLine{443 \textcolor{keywordtype}{char} *cpKeyBuf2; \textcolor{comment}{// key buffer}}
-\DoxyCodeLine{444 \textcolor{comment}{// xbBool iKeyUpdated; // key updated? set in method CreateKey, checked in AddKey and DeleteKey routines}}
-\DoxyCodeLine{445 \textcolor{comment}{// 0 -\/ no update}}
-\DoxyCodeLine{446 \textcolor{comment}{// 1 -\/ Add}}
-\DoxyCodeLine{447 \textcolor{comment}{// 2 -\/ Update}}
-\DoxyCodeLine{448 \textcolor{comment}{// 3 -\/ Delete}}
-\DoxyCodeLine{449 \textcolor{comment}{// xbBool bKeyFiltered; // key filtered? True if included key, False if excluded key. Set in method CreateKey, checked in AddKey and DeleteKey routines}}
-\DoxyCodeLine{450 xbString *sTagName; \textcolor{comment}{// string tag name}}
-\DoxyCodeLine{451 }
-\DoxyCodeLine{452 }
-\DoxyCodeLine{453 xbMdxTag *next;}
-\DoxyCodeLine{454 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFoundSts; \textcolor{comment}{// key found? used to determine if new key should be added in XB\_EMULATE\_DBASE mode in AddKey}}
-\DoxyCodeLine{455 }
-\DoxyCodeLine{456 }
-\DoxyCodeLine{457 xbInt16 iKeySts; \textcolor{comment}{// key updated? set in method CreateKey, checked in AddKey and DeleteKey routines}}
-\DoxyCodeLine{458 \textcolor{comment}{// old key filtered new key filtered iKeySts}}
-\DoxyCodeLine{459 \textcolor{comment}{// Y Y XB\_UPD\_KEY 2 -\/ update key if changed (delete and add)}}
-\DoxyCodeLine{460 \textcolor{comment}{// Y N XB\_DEL\_KEY 3 -\/ delete key}}
-\DoxyCodeLine{461 \textcolor{comment}{// N Y XB\_ADD\_KEY 1 -\/ add key}}
-\DoxyCodeLine{462 \textcolor{comment}{// N N 0 -\/ no update}}
-\DoxyCodeLine{463 }
-\DoxyCodeLine{464 }
-\DoxyCodeLine{465 \};}
-\DoxyCodeLine{466 }
-\DoxyCodeLine{467 }
-\DoxyCodeLine{468 \textcolor{keyword}{class }XBDLLEXPORT xbIxMdx : \textcolor{keyword}{public} xbIx \{}
-\DoxyCodeLine{469 \textcolor{keyword}{public}:}
-\DoxyCodeLine{470 xbIxMdx( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * d );}
-\DoxyCodeLine{471 \string~xbIxMdx();}
-\DoxyCodeLine{472 xbInt16 CheckTagIntegrity( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt );}
-\DoxyCodeLine{473 xbInt16 CreateTag( \textcolor{keyword}{const} xbString \&sName, \textcolor{keyword}{const} xbString \&sKey, \textcolor{keyword}{const} xbString \&sFilter, xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverlay, \textcolor{keywordtype}{void} **vpTag );}
-\DoxyCodeLine{474 \textcolor{comment}{// xbInt16 DeleteTag( void *vpTag );}}
-\DoxyCodeLine{475 xbInt16 FindKey( \textcolor{keywordtype}{void} *vpTag, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vKey, xbInt32 lKeyLen, xbInt16 iRetrieveSw );}
-\DoxyCodeLine{476 xbInt16 FindKey( \textcolor{keywordtype}{void} *vpTag, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dKey, xbInt16 iRetrieveSw );}
-\DoxyCodeLine{477 xbInt16 GetFirstKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
-\DoxyCodeLine{478 xbString \&GetKeyExpression( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{479 xbString \&GetKeyFilter( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{480 \textcolor{keywordtype}{char} GetKeyType( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{481 xbInt16 GetLastKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
-\DoxyCodeLine{482 xbInt16 GetNextKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
-\DoxyCodeLine{483 xbInt16 GetPrevKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
-\DoxyCodeLine{484 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetReuseEmptyNodesSw() \textcolor{keyword}{const};}
-\DoxyCodeLine{485 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetSortOrder( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{486 \textcolor{keywordtype}{void} *GetTag( xbInt16 iTagNo ) \textcolor{keyword}{const};}
-\DoxyCodeLine{487 \textcolor{keywordtype}{void} *GetTag( xbString \&sTagName ) \textcolor{keyword}{const};}
-\DoxyCodeLine{488 xbInt16 GetTagCount() \textcolor{keyword}{const};}
+\DoxyCodeLine{436 xbMdxTag *next;}
+\DoxyCodeLine{437 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFoundSts; \textcolor{comment}{// key found? used to determine if new key should be added in XB\_EMULATE\_DBASE mode in AddKey}}
+\DoxyCodeLine{438 }
+\DoxyCodeLine{439 }
+\DoxyCodeLine{440 xbInt16 iKeySts; \textcolor{comment}{// key updated? set in method CreateKey, checked in AddKey and DeleteKey routines}}
+\DoxyCodeLine{441 \textcolor{comment}{// old key filtered new key filtered iKeySts}}
+\DoxyCodeLine{442 \textcolor{comment}{// Y Y XB\_UPD\_KEY 2 -\/ update key if changed (delete and add)}}
+\DoxyCodeLine{443 \textcolor{comment}{// Y N XB\_DEL\_KEY 3 -\/ delete key}}
+\DoxyCodeLine{444 \textcolor{comment}{// N Y XB\_ADD\_KEY 1 -\/ add key}}
+\DoxyCodeLine{445 \textcolor{comment}{// N N 0 -\/ no update}}
+\DoxyCodeLine{446 }
+\DoxyCodeLine{447 }
+\DoxyCodeLine{448 \};}
+\DoxyCodeLine{449 }
+\DoxyCodeLine{450 }
+\DoxyCodeLine{451 \textcolor{keyword}{class }XBDLLEXPORT xbIxMdx : \textcolor{keyword}{public} xbIx \{}
+\DoxyCodeLine{452 \textcolor{keyword}{public}:}
+\DoxyCodeLine{453 xbIxMdx( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * d );}
+\DoxyCodeLine{454 \string~xbIxMdx();}
+\DoxyCodeLine{455 \textcolor{keyword}{virtual} xbInt16 CheckTagIntegrity( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt );}
+\DoxyCodeLine{456 \textcolor{keyword}{virtual} xbInt16 CreateTag( \textcolor{keyword}{const} xbString \&sName, \textcolor{keyword}{const} xbString \&sKey, \textcolor{keyword}{const} xbString \&sFilter, xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverlay, \textcolor{keywordtype}{void} **vpTag );}
+\DoxyCodeLine{457 \textcolor{keyword}{virtual} xbInt16 FindKey( \textcolor{keywordtype}{void} *vpTag, \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vKey, xbInt32 lKeyLen, xbInt16 iRetrieveSw );}
+\DoxyCodeLine{458 \textcolor{keyword}{virtual} xbInt16 FindKey( \textcolor{keywordtype}{void} *vpTag, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dKey, xbInt16 iRetrieveSw );}
+\DoxyCodeLine{459 \textcolor{keyword}{virtual} xbInt16 GetFirstKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
+\DoxyCodeLine{460 \textcolor{keyword}{virtual} xbString \&GetKeyExpression( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{461 \textcolor{keyword}{virtual} xbString \&GetKeyFilter( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{462 \textcolor{keyword}{virtual} \textcolor{keywordtype}{char} GetKeyType( \textcolor{keyword}{const} \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{463 \textcolor{keyword}{virtual} xbInt16 GetLastKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
+\DoxyCodeLine{464 \textcolor{keyword}{virtual} xbInt16 GetNextKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
+\DoxyCodeLine{465 \textcolor{keyword}{virtual} xbInt16 GetPrevKey( \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
+\DoxyCodeLine{466 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetReuseEmptyNodesSw() \textcolor{keyword}{const};}
+\DoxyCodeLine{467 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetSortOrder( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{468 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} *GetTag( xbInt16 iTagNo ) \textcolor{keyword}{const};}
+\DoxyCodeLine{469 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} *GetTag( xbString \&sTagName ) \textcolor{keyword}{const};}
+\DoxyCodeLine{470 \textcolor{keyword}{virtual} xbInt16 GetTagCount() \textcolor{keyword}{const};}
+\DoxyCodeLine{471 }
+\DoxyCodeLine{472 \textcolor{keyword}{virtual} xbString \&GetTagName( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{473 \textcolor{keyword}{virtual} \textcolor{keyword}{const} \textcolor{keywordtype}{char} * GetTagName( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt ) \textcolor{keyword}{const};}
+\DoxyCodeLine{474 \textcolor{keyword}{virtual} \textcolor{keywordtype}{void} GetTagName( \textcolor{keywordtype}{void} *vpTag, xbString \&sTagName );}
+\DoxyCodeLine{475 }
+\DoxyCodeLine{476 \textcolor{keyword}{virtual} xbInt16 GetUnique( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{477 \textcolor{keyword}{virtual} xbInt16 SetCurTag( xbInt16 iTagNo );}
+\DoxyCodeLine{478 \textcolor{keyword}{virtual} xbInt16 SetCurTag( xbString \&sTagName );}
+\DoxyCodeLine{479 \textcolor{keywordtype}{void} SetReuseEmptyNodesSw( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bReuse );}
+\DoxyCodeLine{480 }
+\DoxyCodeLine{481 \textcolor{keywordtype}{void} TestStub( \textcolor{keywordtype}{char} *s, \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{482 }
+\DoxyCodeLine{483 }
+\DoxyCodeLine{484 \textcolor{keyword}{virtual} xbInt16 Reindex( \textcolor{keywordtype}{void} **vpTag );}
+\DoxyCodeLine{485 }
+\DoxyCodeLine{486 }
+\DoxyCodeLine{487 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{488 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
\DoxyCodeLine{489 }
-\DoxyCodeLine{490 xbString \&GetTagName( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{491 \textcolor{keyword}{const} \textcolor{keywordtype}{char} * GetTagName( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOpt ) \textcolor{keyword}{const};}
-\DoxyCodeLine{492 \textcolor{keywordtype}{void} GetTagName( \textcolor{keywordtype}{void} *vpTag, xbString \&sTagName );}
-\DoxyCodeLine{493 }
-\DoxyCodeLine{494 xbInt16 GetUnique( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{495 xbInt16 Reindex( \textcolor{keywordtype}{void} **vpTag );}
-\DoxyCodeLine{496 xbInt16 SetCurTag( xbInt16 iTagNo );}
-\DoxyCodeLine{497 xbInt16 SetCurTag( xbString \&sTagName );}
-\DoxyCodeLine{498 \textcolor{keywordtype}{void} SetReuseEmptyNodesSw( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bReuse );}
-\DoxyCodeLine{499 }
-\DoxyCodeLine{500 \textcolor{keywordtype}{void} TestStub( \textcolor{keywordtype}{char} *s, \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{501 }
-\DoxyCodeLine{502 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{503 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
-\DoxyCodeLine{504 }
-\DoxyCodeLine{505 xbInt16 AddKey( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo );}
-\DoxyCodeLine{506 xbIxNode *AllocateIxNode( xbMdxTag * mpTag, xbUInt32 ulBufSize, xbUInt32 ulBlock2 );}
-\DoxyCodeLine{507 xbInt16 CheckForDupKey( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{508 xbInt16 Close();}
-\DoxyCodeLine{509 xbInt16 CreateKey( \textcolor{keywordtype}{void} * vpTag, xbInt16 iOpt );}
-\DoxyCodeLine{510 xbInt16 DeleteFromNode( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo );}
-\DoxyCodeLine{511 xbInt16 DeleteKey( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{512 }
-\DoxyCodeLine{513 xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{514 }
-\DoxyCodeLine{515 xbInt16 FindKeyForCurRec( \textcolor{keywordtype}{void} *vpTag );}
-\DoxyCodeLine{516 xbInt16 GetKeySts( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
-\DoxyCodeLine{517 xbInt16 GetLastKey( xbUInt32 ulBlockNo, \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
-\DoxyCodeLine{518 \textcolor{keywordtype}{void} *GetTagTblPtr() \textcolor{keyword}{const};}
-\DoxyCodeLine{519 \textcolor{keywordtype}{void} Init( xbInt16 iOpt = 0 );}
-\DoxyCodeLine{520 xbInt16 InsertNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode, xbInt16 iSlotNo, xbUInt32 uiPtr );}
-\DoxyCodeLine{521 xbInt16 InsertNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr );}
-\DoxyCodeLine{522 xbInt16 KeyExists( \textcolor{keywordtype}{void} * );}
-\DoxyCodeLine{523 xbInt16 LoadTagTable();}
-\DoxyCodeLine{524 xbInt16 ReadHeadBlock(xbInt16 iOpt); \textcolor{comment}{// read the header node of the disk file}}
-\DoxyCodeLine{525 xbInt16 SplitNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, xbUInt32 uiPtr );}
-\DoxyCodeLine{526 xbInt16 SplitNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr );}
-\DoxyCodeLine{527 xbInt16 UpdateTagKey( \textcolor{keywordtype}{char} cAction, \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo = 0 );}
-\DoxyCodeLine{528 xbInt16 WriteHeadBlock( xbInt16 iOption );}
+\DoxyCodeLine{490 xbInt16 AddKey( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo );}
+\DoxyCodeLine{491 xbIxNode *AllocateIxNode( xbMdxTag * mpTag, xbUInt32 ulBufSize, xbUInt32 ulBlock2 );}
+\DoxyCodeLine{492 \textcolor{keywordtype}{void} CalcBtreePointers();}
+\DoxyCodeLine{493 \textcolor{keywordtype}{char} CalcTagKeyFmt( xbExp \&exp );}
+\DoxyCodeLine{494 }
+\DoxyCodeLine{495 xbInt16 CheckForDupKey( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{496 \textcolor{keyword}{virtual} xbInt16 Close();}
+\DoxyCodeLine{497 xbInt16 CreateKey( \textcolor{keywordtype}{void} * vpTag, xbInt16 iOpt );}
+\DoxyCodeLine{498 xbInt16 DeleteFromNode( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npNode, xbInt16 iSlotNo );}
+\DoxyCodeLine{499 xbInt16 DeleteKey( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{500 }
+\DoxyCodeLine{501 \textcolor{keyword}{virtual} xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{502 }
+\DoxyCodeLine{503 xbInt16 FindKeyForCurRec( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{504 xbInt16 GetKeySts( \textcolor{keywordtype}{void} *vpTag ) \textcolor{keyword}{const};}
+\DoxyCodeLine{505 xbInt16 GetLastKey( xbUInt32 ulBlockNo, \textcolor{keywordtype}{void} *vpTag, xbInt16 lRetrieveSw );}
+\DoxyCodeLine{506 \textcolor{keywordtype}{void} *GetTagTblPtr() \textcolor{keyword}{const};}
+\DoxyCodeLine{507 }
+\DoxyCodeLine{508 xbInt16 HarvestTagNodes( xbMdxTag *mpTag, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bRecycleRoot = \mbox{\hyperlink{xbtypes_8h_adc4b6ca5ad299f63675136d9e03938cc}{xbFalse}} );}
+\DoxyCodeLine{509 \textcolor{keywordtype}{void} Init( xbInt16 iOpt = 0 );}
+\DoxyCodeLine{510 xbInt16 InsertNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode, xbInt16 iSlotNo, xbUInt32 uiPtr );}
+\DoxyCodeLine{511 xbInt16 InsertNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr );}
+\DoxyCodeLine{512 xbInt16 KeyExists( \textcolor{keywordtype}{void} * );}
+\DoxyCodeLine{513 xbInt16 LoadTagTable();}
+\DoxyCodeLine{514 xbInt16 ReadHeadBlock(xbInt16 iOpt); \textcolor{comment}{// read the header node of the disk file}}
+\DoxyCodeLine{515 \textcolor{comment}{//virtual xbInt16 Reindex( void **vpTag );}}
+\DoxyCodeLine{516 xbInt16 SplitNodeI( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, xbUInt32 uiPtr );}
+\DoxyCodeLine{517 xbInt16 SplitNodeL( \textcolor{keywordtype}{void} *vpTag, xbIxNode * npLeft, xbIxNode *npRight, xbInt16 iSlotNo, \textcolor{keywordtype}{char} *cpKeyBuf, xbUInt32 uiPtr );}
+\DoxyCodeLine{518 xbInt16 UpdateTagKey( \textcolor{keywordtype}{char} cAction, \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulRecNo = 0 );}
+\DoxyCodeLine{519 xbInt16 WriteHeadBlock( xbInt16 iOption );}
+\DoxyCodeLine{520 }
+\DoxyCodeLine{521 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{522 xbInt16 DumpTagBlocks( xbInt16 iOpt = 1, \textcolor{keywordtype}{void} *vpTag = NULL );}
+\DoxyCodeLine{523 xbInt16 DumpFreeBlocks( xbInt16 iOpt = 0 );}
+\DoxyCodeLine{524 xbInt16 DumpHeader( xbInt16 iOpt = 0, xbInt16 iFmtOpt = 0 );}
+\DoxyCodeLine{525 xbInt16 DumpIxForTag( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt );}
+\DoxyCodeLine{526 \textcolor{keywordtype}{void} DumpIxNodeChain( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) \textcolor{keyword}{const};}
+\DoxyCodeLine{527 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{528 }
\DoxyCodeLine{529 }
-\DoxyCodeLine{530 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{531 xbInt16 DumpTagBlocks( xbInt16 iOpt = 1, \textcolor{keywordtype}{void} *vpTag = NULL );}
-\DoxyCodeLine{532 xbInt16 DumpFreeBlocks( xbInt16 iOpt = 0 );}
-\DoxyCodeLine{533 xbInt16 DumpHeader( xbInt16 iOpt = 0, xbInt16 iFmtOpt = 0 );}
-\DoxyCodeLine{534 xbInt16 DumpIxForTag( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt );}
-\DoxyCodeLine{535 \textcolor{keywordtype}{void} DumpIxNodeChain( \textcolor{keywordtype}{void} *vpTag, xbInt16 iOutputOpt ) \textcolor{keyword}{const};}
-\DoxyCodeLine{536 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{537 }
-\DoxyCodeLine{538 \textcolor{keyword}{private}:}
-\DoxyCodeLine{539 xbInt16 AddKeyNewRoot( xbMdxTag *npTag, xbIxNode *npLeft, xbIxNode *npRight );}
-\DoxyCodeLine{540 \textcolor{keywordtype}{void} AppendNodeChain( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode );}
-\DoxyCodeLine{541 xbUInt32 BlockToPage( xbUInt32 ulBlockNo );}
-\DoxyCodeLine{542 \textcolor{keywordtype}{void} CalcBtreePointers();}
-\DoxyCodeLine{543 \textcolor{keywordtype}{char} CalcTagKeyFmt( xbExp \&exp );}
-\DoxyCodeLine{544 \textcolor{keywordtype}{char} CalcTagFwdThread1();}
-\DoxyCodeLine{545 \textcolor{keywordtype}{char} CalcTagFwdThread2();}
-\DoxyCodeLine{546 xbMdxTag *ClearTagTable();}
-\DoxyCodeLine{547 xbInt16 DumpBlock( xbInt16 iOpt, xbUInt32 ulBlockNo, xbMdxTag * mpTag );}
-\DoxyCodeLine{548 xbInt16 GetDbfPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulDbfPtr ) \textcolor{keyword}{const};}
-\DoxyCodeLine{549 xbInt16 GetKeyPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulKeyPtr ) \textcolor{keyword}{const};}
-\DoxyCodeLine{550 xbInt16 GetLastKeyForBlockNo( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulBlockNo, \textcolor{keywordtype}{char} *cpKeyBuf );}
-\DoxyCodeLine{551 xbInt16 HarvestEmptyNode( xbMdxTag *mpTag, xbIxNode *npNode, xbInt16 iOpt, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bHarvestRoot = \mbox{\hyperlink{xbtypes_8h_adc4b6ca5ad299f63675136d9e03938cc}{xbFalse}} );}
-\DoxyCodeLine{552 xbInt16 HarvestTagNodes( xbMdxTag *mpTag, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bRecycleRoot = \mbox{\hyperlink{xbtypes_8h_adc4b6ca5ad299f63675136d9e03938cc}{xbFalse}} );}
-\DoxyCodeLine{553 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeaf( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) \textcolor{keyword}{const};}
-\DoxyCodeLine{554 xbInt16 KeySetPosAdd( xbMdxTag *mpTag, xbUInt32 ulAddKeyRecNo );}
-\DoxyCodeLine{555 xbInt16 KeySetPosDel( xbMdxTag *mpTag );}
-\DoxyCodeLine{556 xbInt16 LoadTagDetail( xbInt16 iOption, xbMdxTag *tte );}
-\DoxyCodeLine{557 xbUInt32 PageToBlock( xbUInt32 ulPageNo );}
-\DoxyCodeLine{558 xbInt16 TagSerialNo( xbInt16 iOption, xbMdxTag *mpTag );}
-\DoxyCodeLine{559 xbInt16 UpdateTagSize( xbMdxTag *mpTag, xbUInt32 ulTagSz );}
-\DoxyCodeLine{560 }
-\DoxyCodeLine{561 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{562 xbInt16 PrintKey( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode, xbInt16 iKeyNo, xbInt16 iDepth, \textcolor{keywordtype}{char} cType, xbInt16 iOutputOpt );}
-\DoxyCodeLine{563 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{564 }
-\DoxyCodeLine{565 \textcolor{comment}{// MDX File Header Fields}}
-\DoxyCodeLine{566 \textcolor{keywordtype}{char} cVersion;}
-\DoxyCodeLine{567 \textcolor{keywordtype}{char} cCreateYY;}
-\DoxyCodeLine{568 \textcolor{keywordtype}{char} cCreateMM;}
-\DoxyCodeLine{569 \textcolor{keywordtype}{char} cCreateDD;}
-\DoxyCodeLine{570 xbString sFileName;}
-\DoxyCodeLine{571 xbInt16 iBlockFactor; \textcolor{comment}{// 1-\/32 \#of 512 byte segments in a block}}
-\DoxyCodeLine{572 }
-\DoxyCodeLine{573 \textcolor{comment}{// use file version}}
-\DoxyCodeLine{574 \textcolor{comment}{// xbInt16 iBlockSize; // Stored at the xbFile level}}
-\DoxyCodeLine{575 }
-\DoxyCodeLine{576 \textcolor{keywordtype}{char} cProdIxFlag;}
-\DoxyCodeLine{577 \textcolor{keywordtype}{char} cTagEntryCnt;}
-\DoxyCodeLine{578 xbInt16 iTagLen;}
-\DoxyCodeLine{579 xbInt16 iTagUseCnt;}
-\DoxyCodeLine{580 \textcolor{keywordtype}{char} cNextTag; \textcolor{comment}{// byte 28 +1}}
-\DoxyCodeLine{581 \textcolor{keywordtype}{char} c1B; \textcolor{comment}{// always 0x1B}}
-\DoxyCodeLine{582 xbUInt32 ulPageCnt; \textcolor{comment}{// number of 512 byte pages in the mdx file}}
-\DoxyCodeLine{583 xbUInt32 ulFirstFreePage; \textcolor{comment}{// page number corresponding to the next free block}}
-\DoxyCodeLine{584 xbUInt32 ulNoOfBlockAvail; \textcolor{comment}{// might be improperly named?? not sure how it is used}}
-\DoxyCodeLine{585 \textcolor{keywordtype}{char} cUpdateYY;}
-\DoxyCodeLine{586 \textcolor{keywordtype}{char} cUpdateMM;}
-\DoxyCodeLine{587 \textcolor{keywordtype}{char} cUpdateDD;}
-\DoxyCodeLine{588 \textcolor{comment}{// end of MDX Header fields}}
+\DoxyCodeLine{530 xbMdxTag *mdxTagTbl;}
+\DoxyCodeLine{531 }
+\DoxyCodeLine{532 \textcolor{comment}{// MDX File Header Fields}}
+\DoxyCodeLine{533 \textcolor{keywordtype}{char} cVersion;}
+\DoxyCodeLine{534 \textcolor{keywordtype}{char} cCreateYY;}
+\DoxyCodeLine{535 \textcolor{keywordtype}{char} cCreateMM;}
+\DoxyCodeLine{536 \textcolor{keywordtype}{char} cCreateDD;}
+\DoxyCodeLine{537 xbString sFileName;}
+\DoxyCodeLine{538 xbInt16 iBlockFactor; \textcolor{comment}{// 1-\/32 \#of 512 byte segments in a block}}
+\DoxyCodeLine{539 }
+\DoxyCodeLine{540 \textcolor{comment}{// use file version}}
+\DoxyCodeLine{541 \textcolor{comment}{// xbInt16 iBlockSize; // Stored at the xbFile level}}
+\DoxyCodeLine{542 }
+\DoxyCodeLine{543 \textcolor{keywordtype}{char} cProdIxFlag;}
+\DoxyCodeLine{544 \textcolor{keywordtype}{char} cTagEntryCnt;}
+\DoxyCodeLine{545 xbInt16 iTagLen;}
+\DoxyCodeLine{546 xbInt16 iTagUseCnt;}
+\DoxyCodeLine{547 \textcolor{keywordtype}{char} cNextTag; \textcolor{comment}{// byte 28 +1}}
+\DoxyCodeLine{548 \textcolor{keywordtype}{char} c1B; \textcolor{comment}{// always 0x1B}}
+\DoxyCodeLine{549 xbUInt32 ulPageCnt; \textcolor{comment}{// number of 512 byte pages in the mdx file}}
+\DoxyCodeLine{550 xbUInt32 ulFirstFreePage; \textcolor{comment}{// page number corresponding to the next free block}}
+\DoxyCodeLine{551 xbUInt32 ulNoOfBlockAvail; \textcolor{comment}{// might be improperly named?? not sure how it is used}}
+\DoxyCodeLine{552 \textcolor{keywordtype}{char} cUpdateYY;}
+\DoxyCodeLine{553 \textcolor{keywordtype}{char} cUpdateMM;}
+\DoxyCodeLine{554 \textcolor{keywordtype}{char} cUpdateDD;}
+\DoxyCodeLine{555 \textcolor{comment}{// end of MDX Header fields}}
+\DoxyCodeLine{556 }
+\DoxyCodeLine{557 }
+\DoxyCodeLine{558 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bReuseEmptyNodes; \textcolor{comment}{// Reuese empty MDX nodes when all keys deleted?}}
+\DoxyCodeLine{559 \textcolor{comment}{// DBase 7.x and MS ODBC drivers do not reuse empty nodes, leaves them stranded in the file}}
+\DoxyCodeLine{560 \textcolor{comment}{// Codebase 6.x reuses empty nodes.}}
+\DoxyCodeLine{561 \textcolor{comment}{// Setting this to True will reuse empty nodes in the same manner Codebase 6.x reuses them.}}
+\DoxyCodeLine{562 }
+\DoxyCodeLine{563 }
+\DoxyCodeLine{564 \textcolor{keyword}{private}:}
+\DoxyCodeLine{565 xbInt16 AddKeyNewRoot( xbMdxTag *npTag, xbIxNode *npLeft, xbIxNode *npRight );}
+\DoxyCodeLine{566 \textcolor{keywordtype}{void} AppendNodeChain( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode );}
+\DoxyCodeLine{567 xbUInt32 BlockToPage( xbUInt32 ulBlockNo );}
+\DoxyCodeLine{568 xbMdxTag *ClearTagTable();}
+\DoxyCodeLine{569 xbInt16 DumpBlock( xbInt16 iOpt, xbUInt32 ulBlockNo, xbMdxTag * mpTag );}
+\DoxyCodeLine{570 xbInt16 GetDbfPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulDbfPtr ) \textcolor{keyword}{const};}
+\DoxyCodeLine{571 xbInt16 GetKeyPtr( \textcolor{keywordtype}{void} *vpTag, xbInt16 iKeyNo, xbIxNode *npNode, xbUInt32 \&ulKeyPtr ) \textcolor{keyword}{const};}
+\DoxyCodeLine{572 xbInt16 GetLastKeyForBlockNo( \textcolor{keywordtype}{void} *vpTag, xbUInt32 ulBlockNo, \textcolor{keywordtype}{char} *cpKeyBuf );}
+\DoxyCodeLine{573 xbInt16 HarvestEmptyNode( xbMdxTag *mpTag, xbIxNode *npNode, xbInt16 iOpt, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bHarvestRoot = \mbox{\hyperlink{xbtypes_8h_adc4b6ca5ad299f63675136d9e03938cc}{xbFalse}} );}
+\DoxyCodeLine{574 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsLeaf( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode ) \textcolor{keyword}{const};}
+\DoxyCodeLine{575 xbInt16 KeySetPosAdd( xbMdxTag *mpTag, xbUInt32 ulAddKeyRecNo );}
+\DoxyCodeLine{576 xbInt16 KeySetPosDel( xbMdxTag *mpTag );}
+\DoxyCodeLine{577 xbInt16 LoadTagDetail( xbInt16 iOption, xbMdxTag *tte );}
+\DoxyCodeLine{578 xbUInt32 PageToBlock( xbUInt32 ulPageNo );}
+\DoxyCodeLine{579 xbInt16 TagSerialNo( xbInt16 iOption, xbMdxTag *mpTag );}
+\DoxyCodeLine{580 xbInt16 UpdateTagSize( xbMdxTag *mpTag, xbUInt32 ulTagSz );}
+\DoxyCodeLine{581 }
+\DoxyCodeLine{582 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{583 xbInt16 PrintKey( \textcolor{keywordtype}{void} *vpTag, xbIxNode *npNode, xbInt16 iKeyNo, xbInt16 iDepth, \textcolor{keywordtype}{char} cType, xbInt16 iOutputOpt );}
+\DoxyCodeLine{584 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{585 }
+\DoxyCodeLine{586 }
+\DoxyCodeLine{587 \};}
+\DoxyCodeLine{588 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{/* XB\_MDX\_SUPPORT */}\textcolor{preprocessor}{}}
\DoxyCodeLine{589 }
\DoxyCodeLine{590 }
-\DoxyCodeLine{591 }
-\DoxyCodeLine{592 xbMdxTag *mdxTagTbl;}
-\DoxyCodeLine{593 }
-\DoxyCodeLine{594 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bReuseEmptyNodes; \textcolor{comment}{// Reuese empty MDX nodes when all keys deleted?}}
-\DoxyCodeLine{595 \textcolor{comment}{// DBase 7.x and MS ODBC drivers do not reuse empty nodes, leaves them stranded in the file}}
-\DoxyCodeLine{596 \textcolor{comment}{// Codebase 6.x reuses empty nodes.}}
-\DoxyCodeLine{597 \textcolor{comment}{// Setting this to True will reuse empty nodes in the same manner Codebase 6.x reuses them.}}
-\DoxyCodeLine{598 }
-\DoxyCodeLine{599 \};}
-\DoxyCodeLine{600 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_MDX\_SUPPORT */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{601 }
-\DoxyCodeLine{602 }
-\DoxyCodeLine{603 \} \textcolor{comment}{/* namespace xb */}}
-\DoxyCodeLine{604 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_INDEX\_SUPPORT */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{605 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_INDEX\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{591 \textcolor{preprocessor}{\#ifdef XB\_TDX\_SUPPORT}}
+\DoxyCodeLine{592 }
+\DoxyCodeLine{593 \textcolor{keyword}{class }XBDLLEXPORT xbIxTdx : \textcolor{keyword}{public} xbIxMdx \{}
+\DoxyCodeLine{594 \textcolor{keyword}{public}:}
+\DoxyCodeLine{595 xbIxTdx( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} * d );}
+\DoxyCodeLine{596 \string~xbIxTdx();}
+\DoxyCodeLine{597 }
+\DoxyCodeLine{598 xbInt16 CreateTag( \textcolor{keyword}{const} xbString \&sName, \textcolor{keyword}{const} xbString \&sKey, \textcolor{keyword}{const} xbString \&sFilter, xbInt16 iDescending, xbInt16 iUnique, xbInt16 iOverlay, \textcolor{keywordtype}{void} **vpTag );}
+\DoxyCodeLine{599 }
+\DoxyCodeLine{600 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{601 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
+\DoxyCodeLine{602 xbInt16 Close();}
+\DoxyCodeLine{603 xbInt16 DeleteTag( \textcolor{keywordtype}{void} *vpTag );}
+\DoxyCodeLine{604 }
+\DoxyCodeLine{605 \textcolor{keyword}{private}:}
+\DoxyCodeLine{606 \};}
+\DoxyCodeLine{607 }
+\DoxyCodeLine{608 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_TDX\_SUPPORT */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{609 }
+\DoxyCodeLine{610 }
+\DoxyCodeLine{611 \} \textcolor{comment}{/* namespace xb */}}
+\DoxyCodeLine{612 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{/* XB\_INDEX\_SUPPORT */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{613 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_INDEX\_H\_\_ */}\textcolor{preprocessor}{}}
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbinsert_8cpp.tex b/docs/doxygen/latex/xbinsert_8cpp.tex
index 9f7c740..89624aa 100644
--- a/docs/doxygen/latex/xbinsert_8cpp.tex
+++ b/docs/doxygen/latex/xbinsert_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbinsert_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbinsert.cpp File Reference}
-\label{xbinsert_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbinsert.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbinsert.cpp}}
+\hypertarget{xbinsert_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbinsert.cpp File Reference}
+\label{xbinsert_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbinsert.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbinsert.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbixbase_8cpp.tex b/docs/doxygen/latex/xbixbase_8cpp.tex
index da7e909..ea21642 100644
--- a/docs/doxygen/latex/xbixbase_8cpp.tex
+++ b/docs/doxygen/latex/xbixbase_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbixbase_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbixbase.cpp File Reference}
-\label{xbixbase_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbixbase.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbixbase.cpp}}
+\hypertarget{xbixbase_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbixbase.cpp File Reference}
+\label{xbixbase_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixbase.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixbase.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbixmdx_8cpp.tex b/docs/doxygen/latex/xbixmdx_8cpp.tex
index ecab55f..cc0f82b 100644
--- a/docs/doxygen/latex/xbixmdx_8cpp.tex
+++ b/docs/doxygen/latex/xbixmdx_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbixmdx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbixmdx.cpp File Reference}
-\label{xbixmdx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbixmdx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbixmdx.cpp}}
+\hypertarget{xbixmdx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbixmdx.cpp File Reference}
+\label{xbixmdx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixmdx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixmdx.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbixndx_8cpp.tex b/docs/doxygen/latex/xbixndx_8cpp.tex
index c25c6b6..a866f1e 100644
--- a/docs/doxygen/latex/xbixndx_8cpp.tex
+++ b/docs/doxygen/latex/xbixndx_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbixndx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbixndx.cpp File Reference}
-\label{xbixndx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbixndx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbixndx.cpp}}
+\hypertarget{xbixndx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbixndx.cpp File Reference}
+\label{xbixndx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixndx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixndx.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbixtdx_8cpp.tex b/docs/doxygen/latex/xbixtdx_8cpp.tex
new file mode 100644
index 0000000..403fb98
--- /dev/null
+++ b/docs/doxygen/latex/xbixtdx_8cpp.tex
@@ -0,0 +1,3 @@
+\hypertarget{xbixtdx_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbixtdx.cpp File Reference}
+\label{xbixtdx_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixtdx.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbixtdx.cpp}}
+{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xblnklst_8h.tex b/docs/doxygen/latex/xblnklst_8h.tex
index 6ae38d4..24c4c5f 100644
--- a/docs/doxygen/latex/xblnklst_8h.tex
+++ b/docs/doxygen/latex/xblnklst_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xblnklst_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklst.h File Reference}
-\label{xblnklst_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklst.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklst.h}}
+\hypertarget{xblnklst_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklst.h File Reference}
+\label{xblnklst_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklst.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklst.h}}
diff --git a/docs/doxygen/latex/xblnklst_8h_source.tex b/docs/doxygen/latex/xblnklst_8h_source.tex
index 536e0ab..7afdfce 100644
--- a/docs/doxygen/latex/xblnklst_8h_source.tex
+++ b/docs/doxygen/latex/xblnklst_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xblnklst_8h_source}{}\doxysection{xblnklst.\+h}
-\label{xblnklst_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklst.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklst.h}}
+\label{xblnklst_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklst.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklst.h}}
\mbox{\hyperlink{xblnklst_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xblnklst.h}}
diff --git a/docs/doxygen/latex/xblnklstord_8h.tex b/docs/doxygen/latex/xblnklstord_8h.tex
index 6facabb..a5a3847 100644
--- a/docs/doxygen/latex/xblnklstord_8h.tex
+++ b/docs/doxygen/latex/xblnklstord_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xblnklstord_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklstord.h File Reference}
-\label{xblnklstord_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklstord.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklstord.h}}
+\hypertarget{xblnklstord_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklstord.h File Reference}
+\label{xblnklstord_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklstord.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklstord.h}}
diff --git a/docs/doxygen/latex/xblnklstord_8h_source.tex b/docs/doxygen/latex/xblnklstord_8h_source.tex
index a94bd82..ab66e9c 100644
--- a/docs/doxygen/latex/xblnklstord_8h_source.tex
+++ b/docs/doxygen/latex/xblnklstord_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xblnklstord_8h_source}{}\doxysection{xblnklstord.\+h}
-\label{xblnklstord_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklstord.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnklstord.h}}
+\label{xblnklstord_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklstord.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnklstord.h}}
\mbox{\hyperlink{xblnklstord_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xblnklstord.h}}
diff --git a/docs/doxygen/latex/xblnknod_8h.tex b/docs/doxygen/latex/xblnknod_8h.tex
index cc23e56..cccd96b 100644
--- a/docs/doxygen/latex/xblnknod_8h.tex
+++ b/docs/doxygen/latex/xblnknod_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xblnknod_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xblnknod.h File Reference}
-\label{xblnknod_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnknod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnknod.h}}
+\hypertarget{xblnknod_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xblnknod.h File Reference}
+\label{xblnknod_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnknod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnknod.h}}
diff --git a/docs/doxygen/latex/xblnknod_8h_source.tex b/docs/doxygen/latex/xblnknod_8h_source.tex
index 4127b84..911fcbc 100644
--- a/docs/doxygen/latex/xblnknod_8h_source.tex
+++ b/docs/doxygen/latex/xblnknod_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xblnknod_8h_source}{}\doxysection{xblnknod.\+h}
-\label{xblnknod_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnknod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblnknod.h}}
+\label{xblnknod_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnknod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblnknod.h}}
\mbox{\hyperlink{xblnknod_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xblnknod.h}}
diff --git a/docs/doxygen/latex/xblog_8cpp.tex b/docs/doxygen/latex/xblog_8cpp.tex
index 1a69ec7..38f3fb7 100644
--- a/docs/doxygen/latex/xblog_8cpp.tex
+++ b/docs/doxygen/latex/xblog_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xblog_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xblog.cpp File Reference}
-\label{xblog_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xblog.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xblog.cpp}}
+\hypertarget{xblog_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xblog.cpp File Reference}
+\label{xblog_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xblog.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xblog.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xblog_8h.tex b/docs/doxygen/latex/xblog_8h.tex
index 9ad1cb8..1317096 100644
--- a/docs/doxygen/latex/xblog_8h.tex
+++ b/docs/doxygen/latex/xblog_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xblog_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xblog.h File Reference}
-\label{xblog_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblog.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblog.h}}
+\hypertarget{xblog_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xblog.h File Reference}
+\label{xblog_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblog.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblog.h}}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xblog_8h_source.tex b/docs/doxygen/latex/xblog_8h_source.tex
index 03a4094..bd8ac89 100644
--- a/docs/doxygen/latex/xblog_8h_source.tex
+++ b/docs/doxygen/latex/xblog_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xblog_8h_source}{}\doxysection{xblog.\+h}
-\label{xblog_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblog.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xblog.h}}
+\label{xblog_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblog.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xblog.h}}
\mbox{\hyperlink{xblog_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xblog.h}}
@@ -35,25 +35,26 @@
\DoxyCodeLine{44 \mbox{\hyperlink{namespacexb_a4a31fbe9110c9e55495ce71e642d785c}{xbLog}}( \textcolor{keyword}{const} xbString \&sLogFileName );}
\DoxyCodeLine{45 \string~xbLog();}
\DoxyCodeLine{46 }
-\DoxyCodeLine{47 xbInt16 LogClose ();}
-\DoxyCodeLine{48 xbInt16 LogGetStatus ();}
-\DoxyCodeLine{49 xbInt16 LogOpen ();}
-\DoxyCodeLine{50 \textcolor{keywordtype}{void} LogSetStatus ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLogStatus );}
-\DoxyCodeLine{51 \textcolor{keywordtype}{void} LogSetLogSize( \textcolor{keywordtype}{size\_t} lSize ); \textcolor{comment}{// \{ LogSize = size; \}}}
-\DoxyCodeLine{52 xbInt16 LogWrite ( \textcolor{keyword}{const} xbString \&LogEntry, xbInt16 iOutputOption = 0 );}
-\DoxyCodeLine{53 xbInt16 LogWriteBytes( xbUInt32 lByteCnt, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p );}
-\DoxyCodeLine{54 }
-\DoxyCodeLine{55 \textcolor{keyword}{private}:}
-\DoxyCodeLine{56 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLoggingStatus; \textcolor{comment}{// false = logging off}}
-\DoxyCodeLine{57 \textcolor{comment}{// true = logging on}}
-\DoxyCodeLine{58 \textcolor{keywordtype}{size\_t} lLogSize;}
-\DoxyCodeLine{59 xbInt16 iShareMode;}
-\DoxyCodeLine{60 \};}
-\DoxyCodeLine{61 }
-\DoxyCodeLine{62 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_LOGGING\_SUPPORT}}
-\DoxyCodeLine{63 \} \textcolor{comment}{// namespace}}
-\DoxyCodeLine{64 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_XBLOG\_H\_\_}}
-\DoxyCodeLine{65 }
+\DoxyCodeLine{47 xbInt16 LogClose ();}
+\DoxyCodeLine{48 xbInt16 LogGetStatus ();}
+\DoxyCodeLine{49 xbInt16 LogOpen ();}
+\DoxyCodeLine{50 \textcolor{keywordtype}{void} LogSetStatus ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLogStatus );}
+\DoxyCodeLine{51 \textcolor{keywordtype}{void} LogSetLogSize( \textcolor{keywordtype}{size\_t} lSize ); \textcolor{comment}{// \{ LogSize = size; \}}}
+\DoxyCodeLine{52 xbInt16 LogWrite ( \textcolor{keyword}{const} xbString \&LogEntry, xbInt16 iOutputOption = 0 );}
+\DoxyCodeLine{53 xbInt16 LogWriteBytes( xbUInt32 lByteCnt, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p );}
+\DoxyCodeLine{54 \textcolor{keywordtype}{size\_t} LogGetLogSize()\textcolor{keyword}{ const }\{ \textcolor{keywordflow}{return} lLogSize; \}}
+\DoxyCodeLine{55 }
+\DoxyCodeLine{56 \textcolor{keyword}{private}:}
+\DoxyCodeLine{57 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bLoggingStatus; \textcolor{comment}{// false = logging off}}
+\DoxyCodeLine{58 \textcolor{comment}{// true = logging on}}
+\DoxyCodeLine{59 \textcolor{keywordtype}{size\_t} lLogSize;}
+\DoxyCodeLine{60 xbInt16 iShareMode;}
+\DoxyCodeLine{61 \};}
+\DoxyCodeLine{62 }
+\DoxyCodeLine{63 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_LOGGING\_SUPPORT}}
+\DoxyCodeLine{64 \} \textcolor{comment}{// namespace}}
+\DoxyCodeLine{65 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_XBLOG\_H\_\_}}
\DoxyCodeLine{66 }
+\DoxyCodeLine{67 }
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbmemo3_8cpp.tex b/docs/doxygen/latex/xbmemo3_8cpp.tex
index 9697fff..5301f05 100644
--- a/docs/doxygen/latex/xbmemo3_8cpp.tex
+++ b/docs/doxygen/latex/xbmemo3_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbmemo3_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo3.cpp File Reference}
-\label{xbmemo3_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo3.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo3.cpp}}
+\hypertarget{xbmemo3_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo3.cpp File Reference}
+\label{xbmemo3_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo3.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo3.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbmemo4_8cpp.tex b/docs/doxygen/latex/xbmemo4_8cpp.tex
index 7f0a348..ab18a1c 100644
--- a/docs/doxygen/latex/xbmemo4_8cpp.tex
+++ b/docs/doxygen/latex/xbmemo4_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbmemo4_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo4.cpp File Reference}
-\label{xbmemo4_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo4.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo4.cpp}}
+\hypertarget{xbmemo4_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo4.cpp File Reference}
+\label{xbmemo4_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo4.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo4.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbmemo_8cpp.tex b/docs/doxygen/latex/xbmemo_8cpp.tex
index c62dee8..1ba2932 100644
--- a/docs/doxygen/latex/xbmemo_8cpp.tex
+++ b/docs/doxygen/latex/xbmemo_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbmemo_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo.cpp File Reference}
-\label{xbmemo_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbmemo.cpp}}
+\hypertarget{xbmemo_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo.cpp File Reference}
+\label{xbmemo_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbmemo.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbmemo_8h.tex b/docs/doxygen/latex/xbmemo_8h.tex
index c9771e4..fed4cff 100644
--- a/docs/doxygen/latex/xbmemo_8h.tex
+++ b/docs/doxygen/latex/xbmemo_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbmemo_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbmemo.h File Reference}
-\label{xbmemo_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbmemo.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbmemo.h}}
+\hypertarget{xbmemo_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbmemo.h File Reference}
+\label{xbmemo_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbmemo.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbmemo.h}}
diff --git a/docs/doxygen/latex/xbmemo_8h_source.tex b/docs/doxygen/latex/xbmemo_8h_source.tex
index e46386c..a394de6 100644
--- a/docs/doxygen/latex/xbmemo_8h_source.tex
+++ b/docs/doxygen/latex/xbmemo_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbmemo_8h_source}{}\doxysection{xbmemo.\+h}
-\label{xbmemo_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbmemo.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbmemo.h}}
+\label{xbmemo_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbmemo.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbmemo.h}}
\mbox{\hyperlink{xbmemo_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbmemo.h}}
diff --git a/docs/doxygen/latex/xbretcod_8h.tex b/docs/doxygen/latex/xbretcod_8h.tex
index fc7d89e..ee2e1fc 100644
--- a/docs/doxygen/latex/xbretcod_8h.tex
+++ b/docs/doxygen/latex/xbretcod_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbretcod_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbretcod.h File Reference}
-\label{xbretcod_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbretcod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbretcod.h}}
+\hypertarget{xbretcod_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbretcod.h File Reference}
+\label{xbretcod_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbretcod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbretcod.h}}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
@@ -14,6 +14,8 @@ namespace \mbox{\hyperlink{namespacexb}{xb}}
\item
\#define \mbox{\hyperlink{xbretcod_8h_af1cd0baf346cad686fa4dd11f700012a}{XB\+\_\+\+INVALID\+\_\+\+OPTION}}~-\/101
\item
+\#define \mbox{\hyperlink{xbretcod_8h_a1b78533ada854b4185c51ad8a5ce9f02}{XB\+\_\+\+INVALID\+\_\+\+PARAMETER}}~-\/102
+\item
\#define \mbox{\hyperlink{xbretcod_8h_ac18036408d10e5eee1bf76cf92352b95}{XB\+\_\+\+DUP\+\_\+\+TABLE\+\_\+\+OR\+\_\+\+ALIAS}}~-\/110
\item
\#define \mbox{\hyperlink{xbretcod_8h_a13e6876470bd34c8c4e5533f115e04eb}{XB\+\_\+\+INVALID\+\_\+\+NODELINK}}~-\/120
@@ -329,6 +331,12 @@ namespace \mbox{\hyperlink{namespacexb}{xb}}
\doxysubsubsection{\texorpdfstring{XB\_INVALID\_PAGE}{XB\_INVALID\_PAGE}}
{\footnotesize\ttfamily \#define XB\+\_\+\+INVALID\+\_\+\+PAGE~-\/603}
+\mbox{\Hypertarget{xbretcod_8h_a1b78533ada854b4185c51ad8a5ce9f02}\label{xbretcod_8h_a1b78533ada854b4185c51ad8a5ce9f02}}
+\index{xbretcod.h@{xbretcod.h}!XB\_INVALID\_PARAMETER@{XB\_INVALID\_PARAMETER}}
+\index{XB\_INVALID\_PARAMETER@{XB\_INVALID\_PARAMETER}!xbretcod.h@{xbretcod.h}}
+\doxysubsubsection{\texorpdfstring{XB\_INVALID\_PARAMETER}{XB\_INVALID\_PARAMETER}}
+{\footnotesize\ttfamily \#define XB\+\_\+\+INVALID\+\_\+\+PARAMETER~-\/102}
+
\mbox{\Hypertarget{xbretcod_8h_a4cedf96581c9cbc9c14d07494143702d}\label{xbretcod_8h_a4cedf96581c9cbc9c14d07494143702d}}
\index{xbretcod.h@{xbretcod.h}!XB\_INVALID\_PARM@{XB\_INVALID\_PARM}}
\index{XB\_INVALID\_PARM@{XB\_INVALID\_PARM}!xbretcod.h@{xbretcod.h}}
diff --git a/docs/doxygen/latex/xbretcod_8h_source.tex b/docs/doxygen/latex/xbretcod_8h_source.tex
index 48e4cbd..54e20a0 100644
--- a/docs/doxygen/latex/xbretcod_8h_source.tex
+++ b/docs/doxygen/latex/xbretcod_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbretcod_8h_source}{}\doxysection{xbretcod.\+h}
-\label{xbretcod_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbretcod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbretcod.h}}
+\label{xbretcod_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbretcod.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbretcod.h}}
\mbox{\hyperlink{xbretcod_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbretcod.h}}
@@ -28,76 +28,77 @@
\DoxyCodeLine{24 \textcolor{preprocessor}{ \#define XB\_NO\_ERROR 0 }\textcolor{comment}{// general}}
\DoxyCodeLine{25 \textcolor{preprocessor}{ \#define XB\_NO\_MEMORY -\/100 }\textcolor{comment}{// general}}
\DoxyCodeLine{26 \textcolor{preprocessor}{ \#define XB\_INVALID\_OPTION -\/101 }\textcolor{comment}{// general}}
-\DoxyCodeLine{27 \textcolor{preprocessor}{ \#define XB\_DUP\_TABLE\_OR\_ALIAS -\/110 }\textcolor{comment}{// table manager}}
-\DoxyCodeLine{28 \textcolor{preprocessor}{ \#define XB\_INVALID\_NODELINK -\/120 }\textcolor{comment}{// linklist}}
-\DoxyCodeLine{29 \textcolor{preprocessor}{ \#define XB\_KEY\_NOT\_UNIQUE -\/121 }\textcolor{comment}{// linklist}}
-\DoxyCodeLine{30 \textcolor{preprocessor}{ \#define XB\_MEMCPY\_ERROR -\/122 }\textcolor{comment}{// memcpy failure}}
-\DoxyCodeLine{31 }
-\DoxyCodeLine{32 \textcolor{preprocessor}{ \#define XB\_FILE\_EXISTS -\/200 }\textcolor{comment}{// file}}
-\DoxyCodeLine{33 \textcolor{preprocessor}{ \#define XB\_ALREADY\_OPEN -\/201 }\textcolor{comment}{// file}}
-\DoxyCodeLine{34 \textcolor{preprocessor}{ \#define XB\_DBF\_FILE\_NOT\_OPEN -\/202 }\textcolor{comment}{// file}}
-\DoxyCodeLine{35 \textcolor{preprocessor}{ \#define XB\_FILE\_NOT\_FOUND -\/203 }\textcolor{comment}{// file}}
-\DoxyCodeLine{36 \textcolor{preprocessor}{ \#define XB\_FILE\_TYPE\_NOT\_SUPPORTED -\/204 }\textcolor{comment}{// file}}
-\DoxyCodeLine{37 \textcolor{preprocessor}{ \#define XB\_RENAME\_ERROR -\/205 }\textcolor{comment}{// file}}
-\DoxyCodeLine{38 \textcolor{preprocessor}{ \#define XB\_INVALID\_OBJECT -\/206 }\textcolor{comment}{// file}}
-\DoxyCodeLine{39 \textcolor{preprocessor}{ \#define XB\_NOT\_OPEN -\/207 }\textcolor{comment}{// file}}
-\DoxyCodeLine{40 \textcolor{preprocessor}{ \#define XB\_NOT\_FOUND -\/208 }\textcolor{comment}{// file}}
-\DoxyCodeLine{41 \textcolor{preprocessor}{ \#define XB\_OPEN\_ERROR -\/209 }\textcolor{comment}{// file}}
-\DoxyCodeLine{42 \textcolor{preprocessor}{ \#define XB\_CLOSE\_ERROR -\/210 }\textcolor{comment}{// file}}
-\DoxyCodeLine{43 \textcolor{preprocessor}{ \#define XB\_SEEK\_ERROR -\/211 }\textcolor{comment}{// file}}
-\DoxyCodeLine{44 \textcolor{preprocessor}{ \#define XB\_READ\_ERROR -\/212 }\textcolor{comment}{// file}}
-\DoxyCodeLine{45 \textcolor{preprocessor}{ \#define XB\_WRITE\_ERROR -\/213 }\textcolor{comment}{// file}}
-\DoxyCodeLine{46 \textcolor{preprocessor}{ \#define XB\_EOF -\/214 }\textcolor{comment}{// file}}
-\DoxyCodeLine{47 \textcolor{preprocessor}{ \#define XB\_BOF -\/215 }\textcolor{comment}{// file}}
-\DoxyCodeLine{48 \textcolor{preprocessor}{ \#define XB\_INVALID\_BLOCK\_SIZE -\/216 }\textcolor{comment}{// file}}
-\DoxyCodeLine{49 \textcolor{preprocessor}{ \#define XB\_INVALID\_BLOCK\_NO -\/217 }\textcolor{comment}{// file}}
-\DoxyCodeLine{50 \textcolor{preprocessor}{ \#define XB\_INVALID\_RECORD -\/218 }\textcolor{comment}{// file}}
-\DoxyCodeLine{51 \textcolor{preprocessor}{ \#define XB\_DELETE\_FAILED -\/219 }\textcolor{comment}{// file}}
-\DoxyCodeLine{52 \textcolor{preprocessor}{ \#define XB\_INVALID\_TABLE\_NAME -\/220 }\textcolor{comment}{// file}}
-\DoxyCodeLine{53 \textcolor{preprocessor}{ \#define XB\_EMPTY -\/221 }\textcolor{comment}{// file}}
-\DoxyCodeLine{54 \textcolor{preprocessor}{ \#define XB\_LIMIT\_REACHED -\/222 }\textcolor{comment}{// file}}
-\DoxyCodeLine{55 \textcolor{preprocessor}{ \#define XB\_BLOCKREAD\_NOT\_ENABLED -\/223 }\textcolor{comment}{// file}}
-\DoxyCodeLine{56 \textcolor{preprocessor}{ \#define XB\_DIRECTORY\_ERROR -\/224 }\textcolor{comment}{// file}}
-\DoxyCodeLine{57 }
-\DoxyCodeLine{58 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_TYPE -\/300 }\textcolor{comment}{// field}}
-\DoxyCodeLine{59 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_NO -\/301 }\textcolor{comment}{// field}}
-\DoxyCodeLine{60 \textcolor{preprocessor}{ \#define XB\_INVALID\_DATA -\/302 }\textcolor{comment}{// field}}
-\DoxyCodeLine{61 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_NAME -\/303 }\textcolor{comment}{// field}}
-\DoxyCodeLine{62 \textcolor{preprocessor}{ \#define XB\_INVALID\_MEMO\_FIELD -\/304 }\textcolor{comment}{// field}}
-\DoxyCodeLine{63 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD -\/305 }\textcolor{comment}{// field}}
-\DoxyCodeLine{64 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_LEN -\/306 }\textcolor{comment}{// field}}
-\DoxyCodeLine{65 \textcolor{preprocessor}{ \#define XB\_INVALID\_DATE -\/307 }\textcolor{comment}{// date field}}
-\DoxyCodeLine{66 }
-\DoxyCodeLine{67 \textcolor{preprocessor}{ \#define XB\_INVALID\_LOCK\_OPTION -\/400 }\textcolor{comment}{// lock}}
-\DoxyCodeLine{68 \textcolor{preprocessor}{ \#define XB\_LOCK\_FAILED -\/401 }\textcolor{comment}{// lock}}
-\DoxyCodeLine{69 \textcolor{preprocessor}{ \#define XB\_TABLE\_NOT\_LOCKED -\/402 }\textcolor{comment}{// lock -\/ need table locked for operation}}
-\DoxyCodeLine{70 }
-\DoxyCodeLine{71 \textcolor{preprocessor}{ \#define XB\_PARSE\_ERROR -\/500 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{72 \textcolor{preprocessor}{ \#define XB\_INVALID\_FUNCTION -\/501 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{73 \textcolor{preprocessor}{ \#define XB\_INVALID\_PARM -\/502 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{74 \textcolor{preprocessor}{ \#define XB\_INCONSISTENT\_PARM\_LENS -\/503 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{75 \textcolor{preprocessor}{ \#define XB\_INCOMPATIBLE\_OPERANDS -\/504 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{76 \textcolor{preprocessor}{ \#define XB\_UNBALANCED\_PARENS -\/505 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{77 \textcolor{preprocessor}{ \#define XB\_UNBALANCED\_QUOTES -\/506 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{78 \textcolor{preprocessor}{ \#define XB\_INVALID\_EXPRESSION -\/507 }\textcolor{comment}{// expression}}
-\DoxyCodeLine{79 }
-\DoxyCodeLine{80 \textcolor{preprocessor}{ \#define XB\_INVALID\_KEYNO -\/600 }\textcolor{comment}{// index}}
-\DoxyCodeLine{81 \textcolor{preprocessor}{ \#define XB\_INVALID\_INDEX -\/601 }\textcolor{comment}{// index file error}}
-\DoxyCodeLine{82 \textcolor{preprocessor}{ \#define XB\_INVALID\_TAG -\/602 }\textcolor{comment}{// invalid index tag name, must be <= 10 bytes}}
-\DoxyCodeLine{83 \textcolor{preprocessor}{ \#define XB\_INVALID\_PAGE -\/603 }\textcolor{comment}{// invalid index page}}
-\DoxyCodeLine{84 }
+\DoxyCodeLine{27 \textcolor{preprocessor}{ \#define XB\_INVALID\_PARAMETER -\/102 }\textcolor{comment}{// general}}
+\DoxyCodeLine{28 \textcolor{preprocessor}{ \#define XB\_DUP\_TABLE\_OR\_ALIAS -\/110 }\textcolor{comment}{// table manager}}
+\DoxyCodeLine{29 \textcolor{preprocessor}{ \#define XB\_INVALID\_NODELINK -\/120 }\textcolor{comment}{// linklist}}
+\DoxyCodeLine{30 \textcolor{preprocessor}{ \#define XB\_KEY\_NOT\_UNIQUE -\/121 }\textcolor{comment}{// linklist, index}}
+\DoxyCodeLine{31 \textcolor{preprocessor}{ \#define XB\_MEMCPY\_ERROR -\/122 }\textcolor{comment}{// memcpy failure}}
+\DoxyCodeLine{32 }
+\DoxyCodeLine{33 \textcolor{preprocessor}{ \#define XB\_FILE\_EXISTS -\/200 }\textcolor{comment}{// file}}
+\DoxyCodeLine{34 \textcolor{preprocessor}{ \#define XB\_ALREADY\_OPEN -\/201 }\textcolor{comment}{// file}}
+\DoxyCodeLine{35 \textcolor{preprocessor}{ \#define XB\_DBF\_FILE\_NOT\_OPEN -\/202 }\textcolor{comment}{// file}}
+\DoxyCodeLine{36 \textcolor{preprocessor}{ \#define XB\_FILE\_NOT\_FOUND -\/203 }\textcolor{comment}{// file}}
+\DoxyCodeLine{37 \textcolor{preprocessor}{ \#define XB\_FILE\_TYPE\_NOT\_SUPPORTED -\/204 }\textcolor{comment}{// file}}
+\DoxyCodeLine{38 \textcolor{preprocessor}{ \#define XB\_RENAME\_ERROR -\/205 }\textcolor{comment}{// file}}
+\DoxyCodeLine{39 \textcolor{preprocessor}{ \#define XB\_INVALID\_OBJECT -\/206 }\textcolor{comment}{// file}}
+\DoxyCodeLine{40 \textcolor{preprocessor}{ \#define XB\_NOT\_OPEN -\/207 }\textcolor{comment}{// file}}
+\DoxyCodeLine{41 \textcolor{preprocessor}{ \#define XB\_NOT\_FOUND -\/208 }\textcolor{comment}{// file}}
+\DoxyCodeLine{42 \textcolor{preprocessor}{ \#define XB\_OPEN\_ERROR -\/209 }\textcolor{comment}{// file}}
+\DoxyCodeLine{43 \textcolor{preprocessor}{ \#define XB\_CLOSE\_ERROR -\/210 }\textcolor{comment}{// file}}
+\DoxyCodeLine{44 \textcolor{preprocessor}{ \#define XB\_SEEK\_ERROR -\/211 }\textcolor{comment}{// file}}
+\DoxyCodeLine{45 \textcolor{preprocessor}{ \#define XB\_READ\_ERROR -\/212 }\textcolor{comment}{// file}}
+\DoxyCodeLine{46 \textcolor{preprocessor}{ \#define XB\_WRITE\_ERROR -\/213 }\textcolor{comment}{// file}}
+\DoxyCodeLine{47 \textcolor{preprocessor}{ \#define XB\_EOF -\/214 }\textcolor{comment}{// file}}
+\DoxyCodeLine{48 \textcolor{preprocessor}{ \#define XB\_BOF -\/215 }\textcolor{comment}{// file}}
+\DoxyCodeLine{49 \textcolor{preprocessor}{ \#define XB\_INVALID\_BLOCK\_SIZE -\/216 }\textcolor{comment}{// file}}
+\DoxyCodeLine{50 \textcolor{preprocessor}{ \#define XB\_INVALID\_BLOCK\_NO -\/217 }\textcolor{comment}{// file}}
+\DoxyCodeLine{51 \textcolor{preprocessor}{ \#define XB\_INVALID\_RECORD -\/218 }\textcolor{comment}{// file}}
+\DoxyCodeLine{52 \textcolor{preprocessor}{ \#define XB\_DELETE\_FAILED -\/219 }\textcolor{comment}{// file}}
+\DoxyCodeLine{53 \textcolor{preprocessor}{ \#define XB\_INVALID\_TABLE\_NAME -\/220 }\textcolor{comment}{// file}}
+\DoxyCodeLine{54 \textcolor{preprocessor}{ \#define XB\_EMPTY -\/221 }\textcolor{comment}{// file}}
+\DoxyCodeLine{55 \textcolor{preprocessor}{ \#define XB\_LIMIT\_REACHED -\/222 }\textcolor{comment}{// file}}
+\DoxyCodeLine{56 \textcolor{preprocessor}{ \#define XB\_BLOCKREAD\_NOT\_ENABLED -\/223 }\textcolor{comment}{// file}}
+\DoxyCodeLine{57 \textcolor{preprocessor}{ \#define XB\_DIRECTORY\_ERROR -\/224 }\textcolor{comment}{// file}}
+\DoxyCodeLine{58 }
+\DoxyCodeLine{59 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_TYPE -\/300 }\textcolor{comment}{// field}}
+\DoxyCodeLine{60 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_NO -\/301 }\textcolor{comment}{// field}}
+\DoxyCodeLine{61 \textcolor{preprocessor}{ \#define XB\_INVALID\_DATA -\/302 }\textcolor{comment}{// field}}
+\DoxyCodeLine{62 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_NAME -\/303 }\textcolor{comment}{// field}}
+\DoxyCodeLine{63 \textcolor{preprocessor}{ \#define XB\_INVALID\_MEMO\_FIELD -\/304 }\textcolor{comment}{// field}}
+\DoxyCodeLine{64 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD -\/305 }\textcolor{comment}{// field}}
+\DoxyCodeLine{65 \textcolor{preprocessor}{ \#define XB\_INVALID\_FIELD\_LEN -\/306 }\textcolor{comment}{// field}}
+\DoxyCodeLine{66 \textcolor{preprocessor}{ \#define XB\_INVALID\_DATE -\/307 }\textcolor{comment}{// date field}}
+\DoxyCodeLine{67 }
+\DoxyCodeLine{68 \textcolor{preprocessor}{ \#define XB\_INVALID\_LOCK\_OPTION -\/400 }\textcolor{comment}{// lock}}
+\DoxyCodeLine{69 \textcolor{preprocessor}{ \#define XB\_LOCK\_FAILED -\/401 }\textcolor{comment}{// lock}}
+\DoxyCodeLine{70 \textcolor{preprocessor}{ \#define XB\_TABLE\_NOT\_LOCKED -\/402 }\textcolor{comment}{// lock -\/ need table locked for operation}}
+\DoxyCodeLine{71 }
+\DoxyCodeLine{72 \textcolor{preprocessor}{ \#define XB\_PARSE\_ERROR -\/500 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{73 \textcolor{preprocessor}{ \#define XB\_INVALID\_FUNCTION -\/501 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{74 \textcolor{preprocessor}{ \#define XB\_INVALID\_PARM -\/502 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{75 \textcolor{preprocessor}{ \#define XB\_INCONSISTENT\_PARM\_LENS -\/503 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{76 \textcolor{preprocessor}{ \#define XB\_INCOMPATIBLE\_OPERANDS -\/504 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{77 \textcolor{preprocessor}{ \#define XB\_UNBALANCED\_PARENS -\/505 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{78 \textcolor{preprocessor}{ \#define XB\_UNBALANCED\_QUOTES -\/506 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{79 \textcolor{preprocessor}{ \#define XB\_INVALID\_EXPRESSION -\/507 }\textcolor{comment}{// expression}}
+\DoxyCodeLine{80 }
+\DoxyCodeLine{81 \textcolor{preprocessor}{ \#define XB\_INVALID\_KEYNO -\/600 }\textcolor{comment}{// index}}
+\DoxyCodeLine{82 \textcolor{preprocessor}{ \#define XB\_INVALID\_INDEX -\/601 }\textcolor{comment}{// index file error}}
+\DoxyCodeLine{83 \textcolor{preprocessor}{ \#define XB\_INVALID\_TAG -\/602 }\textcolor{comment}{// invalid index tag name, must be <= 10 bytes}}
+\DoxyCodeLine{84 \textcolor{preprocessor}{ \#define XB\_INVALID\_PAGE -\/603 }\textcolor{comment}{// invalid index page}}
\DoxyCodeLine{85 }
-\DoxyCodeLine{86 \textcolor{preprocessor}{ \#define XB\_SYNTAX\_ERROR -\/700 }\textcolor{comment}{// sql syntax error}}
-\DoxyCodeLine{87 }
+\DoxyCodeLine{86 }
+\DoxyCodeLine{87 \textcolor{preprocessor}{ \#define XB\_SYNTAX\_ERROR -\/700 }\textcolor{comment}{// sql syntax error}}
\DoxyCodeLine{88 }
-\DoxyCodeLine{89 \textcolor{preprocessor}{ \#define XB\_MAX\_ERROR\_NO -\/999}}
-\DoxyCodeLine{90 }
+\DoxyCodeLine{89 }
+\DoxyCodeLine{90 \textcolor{preprocessor}{ \#define XB\_MAX\_ERROR\_NO -\/999}}
\DoxyCodeLine{91 }
-\DoxyCodeLine{92 \textcolor{comment}{/* when updating this table, also need to update messages in xbssv.cpp */}}
-\DoxyCodeLine{93 }
+\DoxyCodeLine{92 }
+\DoxyCodeLine{93 \textcolor{comment}{/* when updating this table, also need to update messages in xbssv.cpp */}}
\DoxyCodeLine{94 }
-\DoxyCodeLine{95 \} \textcolor{comment}{/* namespace */}}
-\DoxyCodeLine{96 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_RETCODES\_H\_\_ */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{97 }
+\DoxyCodeLine{95 }
+\DoxyCodeLine{96 \} \textcolor{comment}{/* namespace */}}
+\DoxyCodeLine{97 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_RETCODES\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{98 }
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbselect_8cpp.tex b/docs/doxygen/latex/xbselect_8cpp.tex
index 921de45..220f74f 100644
--- a/docs/doxygen/latex/xbselect_8cpp.tex
+++ b/docs/doxygen/latex/xbselect_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbselect_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbselect.cpp File Reference}
-\label{xbselect_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbselect.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbselect.cpp}}
+\hypertarget{xbselect_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbselect.cpp File Reference}
+\label{xbselect_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbselect.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbselect.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbset_8cpp.tex b/docs/doxygen/latex/xbset_8cpp.tex
index ea5e5a3..173e7aa 100644
--- a/docs/doxygen/latex/xbset_8cpp.tex
+++ b/docs/doxygen/latex/xbset_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbset_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbset.cpp File Reference}
-\label{xbset_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbset.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbset.cpp}}
+\hypertarget{xbset_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbset.cpp File Reference}
+\label{xbset_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbset.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbset.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbsql_8cpp.tex b/docs/doxygen/latex/xbsql_8cpp.tex
index e6c9503..7838282 100644
--- a/docs/doxygen/latex/xbsql_8cpp.tex
+++ b/docs/doxygen/latex/xbsql_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbsql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbsql.cpp File Reference}
-\label{xbsql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbsql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbsql.cpp}}
+\hypertarget{xbsql_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbsql.cpp File Reference}
+\label{xbsql_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbsql.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbsql.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbsql_8h.tex b/docs/doxygen/latex/xbsql_8h.tex
index c1b5903..aa01591 100644
--- a/docs/doxygen/latex/xbsql_8h.tex
+++ b/docs/doxygen/latex/xbsql_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbsql_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbsql.h File Reference}
-\label{xbsql_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbsql.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbsql.h}}
+\hypertarget{xbsql_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbsql.h File Reference}
+\label{xbsql_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbsql.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbsql.h}}
diff --git a/docs/doxygen/latex/xbsql_8h_source.tex b/docs/doxygen/latex/xbsql_8h_source.tex
index f52325d..44b5335 100644
--- a/docs/doxygen/latex/xbsql_8h_source.tex
+++ b/docs/doxygen/latex/xbsql_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbsql_8h_source}{}\doxysection{xbsql.\+h}
-\label{xbsql_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbsql.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbsql.h}}
+\label{xbsql_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbsql.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbsql.h}}
\mbox{\hyperlink{xbsql_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbsql.h}}
diff --git a/docs/doxygen/latex/xbssv_8cpp.tex b/docs/doxygen/latex/xbssv_8cpp.tex
index 01484f2..a9556e1 100644
--- a/docs/doxygen/latex/xbssv_8cpp.tex
+++ b/docs/doxygen/latex/xbssv_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbssv_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbssv.cpp File Reference}
-\label{xbssv_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbssv.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbssv.cpp}}
+\hypertarget{xbssv_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbssv.cpp File Reference}
+\label{xbssv_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbssv.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbssv.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbssv_8h.tex b/docs/doxygen/latex/xbssv_8h.tex
index ebb8ef1..d903266 100644
--- a/docs/doxygen/latex/xbssv_8h.tex
+++ b/docs/doxygen/latex/xbssv_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbssv_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbssv.h File Reference}
-\label{xbssv_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbssv.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbssv.h}}
+\hypertarget{xbssv_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbssv.h File Reference}
+\label{xbssv_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbssv.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbssv.h}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbssv_8h_source.tex b/docs/doxygen/latex/xbssv_8h_source.tex
index 0ffe764..df22666 100644
--- a/docs/doxygen/latex/xbssv_8h_source.tex
+++ b/docs/doxygen/latex/xbssv_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbssv_8h_source}{}\doxysection{xbssv.\+h}
-\label{xbssv_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbssv.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbssv.h}}
+\label{xbssv_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbssv.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbssv.h}}
\mbox{\hyperlink{xbssv_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbssv.h}}
@@ -55,124 +55,133 @@
\DoxyCodeLine{64 \textcolor{keywordtype}{void} DisplayError ( xbInt16 ErrorCode ) \textcolor{keyword}{const};}
\DoxyCodeLine{65 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetDefaultDateFormat () \textcolor{keyword}{const};}
\DoxyCodeLine{66 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetDataDirectory () \textcolor{keyword}{const};}
-\DoxyCodeLine{67 xbInt16 GetEndianType () \textcolor{keyword}{const};}
+\DoxyCodeLine{67 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetTempDirectory () \textcolor{keyword}{const};}
\DoxyCodeLine{68 }
-\DoxyCodeLine{69 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *GetErrorMessage ( xbInt16 ErrorCode ) \textcolor{keyword}{const};}
-\DoxyCodeLine{70 \textcolor{keywordtype}{void} SetDataDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDataDirectory );}
-\DoxyCodeLine{71 \textcolor{keywordtype}{void} SetDefaultDateFormat ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDefaultDateFormat );}
-\DoxyCodeLine{72 }
-\DoxyCodeLine{73 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} BitSet ( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} c, xbInt16 iBitNo ) \textcolor{keyword}{const};}
-\DoxyCodeLine{74 \textcolor{keywordtype}{void} BitDump ( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} c ) \textcolor{keyword}{const};}
-\DoxyCodeLine{75 \textcolor{keywordtype}{void} BitDump ( \textcolor{keywordtype}{char} c ) \textcolor{keyword}{const};}
-\DoxyCodeLine{76 }
-\DoxyCodeLine{77 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetDefaultAutoCommit () \textcolor{keyword}{const};}
-\DoxyCodeLine{78 \textcolor{keywordtype}{void} SetDefaultAutoCommit ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bDefaultAutoCommit );}
+\DoxyCodeLine{69 \textcolor{keywordtype}{void} GetHomeDir ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sHomeDirOut );}
+\DoxyCodeLine{70 }
+\DoxyCodeLine{71 }
+\DoxyCodeLine{72 xbInt16 GetEndianType () \textcolor{keyword}{const};}
+\DoxyCodeLine{73 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *GetErrorMessage ( xbInt16 ErrorCode ) \textcolor{keyword}{const};}
+\DoxyCodeLine{74 \textcolor{keywordtype}{char} GetPathSeparator () \textcolor{keyword}{const};}
+\DoxyCodeLine{75 }
+\DoxyCodeLine{76 \textcolor{keywordtype}{void} SetDataDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDataDirectory );}
+\DoxyCodeLine{77 \textcolor{keywordtype}{void} SetDefaultDateFormat ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDefaultDateFormat );}
+\DoxyCodeLine{78 \textcolor{keywordtype}{void} SetTempDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTempDirectory );}
\DoxyCodeLine{79 }
-\DoxyCodeLine{80 \textcolor{keywordtype}{void} GetHomeDir ( \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sHomeDirOut );}
-\DoxyCodeLine{81 }
-\DoxyCodeLine{82 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetLogDirectory () \textcolor{keyword}{const};}
-\DoxyCodeLine{83 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetLogFileName () \textcolor{keyword}{const};}
-\DoxyCodeLine{84 \textcolor{keywordtype}{void} SetLogDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogDirectory );}
-\DoxyCodeLine{85 }
-\DoxyCodeLine{86 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMultiUser () \textcolor{keyword}{const};}
-\DoxyCodeLine{87 \textcolor{keywordtype}{void} SetMultiUser ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bMultiUser );}
-\DoxyCodeLine{88 }
-\DoxyCodeLine{89 \textcolor{preprocessor}{ \#if defined (XB\_NDX\_SUPPORT) || defined (XB\_MDX\_SUPPORT)}}
-\DoxyCodeLine{90 xbInt16 GetUniqueKeyOpt () \textcolor{keyword}{const};}
-\DoxyCodeLine{91 xbInt16 SetUniqueKeyOpt ( xbInt16 iUniqueKeyOpt );}
-\DoxyCodeLine{92 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// (XB\_NDX\_SUPPORT) || defined (XB\_MDX\_SUPPORT)}}
+\DoxyCodeLine{80 }
+\DoxyCodeLine{81 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} BitSet ( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} c, xbInt16 iBitNo ) \textcolor{keyword}{const};}
+\DoxyCodeLine{82 \textcolor{keywordtype}{void} BitDump ( \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} c ) \textcolor{keyword}{const};}
+\DoxyCodeLine{83 \textcolor{keywordtype}{void} BitDump ( \textcolor{keywordtype}{char} c ) \textcolor{keyword}{const};}
+\DoxyCodeLine{84 }
+\DoxyCodeLine{85 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetDefaultAutoCommit () \textcolor{keyword}{const};}
+\DoxyCodeLine{86 \textcolor{keywordtype}{void} SetDefaultAutoCommit ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bDefaultAutoCommit );}
+\DoxyCodeLine{87 }
+\DoxyCodeLine{88 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetLogDirectory () \textcolor{keyword}{const};}
+\DoxyCodeLine{89 \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& GetLogFileName () \textcolor{keyword}{const};}
+\DoxyCodeLine{90 \textcolor{keywordtype}{void} SetLogDirectory ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogDirectory );}
+\DoxyCodeLine{91 \textcolor{keywordtype}{void} SetLogFileName ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogFileName );}
+\DoxyCodeLine{92 }
\DoxyCodeLine{93 }
-\DoxyCodeLine{94 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{95 xbInt16 GetDefaultLockRetries () \textcolor{keyword}{const};}
-\DoxyCodeLine{96 \textcolor{keywordtype}{void} SetDefaultLockRetries ( xbInt16 iRetryCount );}
-\DoxyCodeLine{97 xbInt32 GetDefaultLockWait () \textcolor{keyword}{const};}
-\DoxyCodeLine{98 \textcolor{keywordtype}{void} SetDefaultLockWait ( xbInt32 lRetryWait );}
-\DoxyCodeLine{99 xbInt16 GetDefaultLockFlavor () \textcolor{keyword}{const};}
-\DoxyCodeLine{100 \textcolor{keywordtype}{void} SetDefaultLockFlavor ( xbInt16 iLockFlavor );}
-\DoxyCodeLine{101 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetDefaultAutoLock () \textcolor{keyword}{const};}
-\DoxyCodeLine{102 \textcolor{keywordtype}{void} SetDefaultAutoLock ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bAutoLock );}
-\DoxyCodeLine{103 \textcolor{keywordtype}{void} EnableDefaultAutoLock ();}
-\DoxyCodeLine{104 \textcolor{keywordtype}{void} DisableDefaultAutoLock ();}
-\DoxyCodeLine{105 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{106 }
-\DoxyCodeLine{107 \textcolor{preprocessor}{ \#ifdef XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{108 xbInt16 GetCreateMdxBlockSize() \textcolor{keyword}{const};}
-\DoxyCodeLine{109 xbInt16 SetCreateMdxBlockSize( xbInt16 ulBlockSize );}
-\DoxyCodeLine{110 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{111 }
-\DoxyCodeLine{112 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{113 xbUInt32 GetDefaultBlockReadSize() \textcolor{keyword}{const};}
-\DoxyCodeLine{114 \textcolor{keywordtype}{void} SetDefaultBlockReadSize( xbUInt32 ulDfltBlockReadSize );}
-\DoxyCodeLine{115 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{116 }
-\DoxyCodeLine{117 }
-\DoxyCodeLine{118 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{94 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMultiUser () \textcolor{keyword}{const};}
+\DoxyCodeLine{95 \textcolor{keywordtype}{void} SetMultiUser ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bMultiUser );}
+\DoxyCodeLine{96 }
+\DoxyCodeLine{97 \textcolor{preprocessor}{ \#if defined (XB\_NDX\_SUPPORT) || defined (XB\_MDX\_SUPPORT)}}
+\DoxyCodeLine{98 xbInt16 GetUniqueKeyOpt () \textcolor{keyword}{const};}
+\DoxyCodeLine{99 xbInt16 SetUniqueKeyOpt ( xbInt16 iUniqueKeyOpt );}
+\DoxyCodeLine{100 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// (XB\_NDX\_SUPPORT) || defined (XB\_MDX\_SUPPORT)}}
+\DoxyCodeLine{101 }
+\DoxyCodeLine{102 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{103 xbInt16 GetDefaultLockRetries () \textcolor{keyword}{const};}
+\DoxyCodeLine{104 \textcolor{keywordtype}{void} SetDefaultLockRetries ( xbInt16 iRetryCount );}
+\DoxyCodeLine{105 xbInt32 GetDefaultLockWait () \textcolor{keyword}{const};}
+\DoxyCodeLine{106 \textcolor{keywordtype}{void} SetDefaultLockWait ( xbInt32 lRetryWait );}
+\DoxyCodeLine{107 xbInt16 GetDefaultLockFlavor () \textcolor{keyword}{const};}
+\DoxyCodeLine{108 \textcolor{keywordtype}{void} SetDefaultLockFlavor ( xbInt16 iLockFlavor );}
+\DoxyCodeLine{109 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetDefaultAutoLock () \textcolor{keyword}{const};}
+\DoxyCodeLine{110 \textcolor{keywordtype}{void} SetDefaultAutoLock ( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bAutoLock );}
+\DoxyCodeLine{111 \textcolor{keywordtype}{void} EnableDefaultAutoLock ();}
+\DoxyCodeLine{112 \textcolor{keywordtype}{void} DisableDefaultAutoLock ();}
+\DoxyCodeLine{113 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{114 }
+\DoxyCodeLine{115 \textcolor{preprocessor}{ \#ifdef XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{116 xbInt16 GetCreateMdxBlockSize() \textcolor{keyword}{const};}
+\DoxyCodeLine{117 xbInt16 SetCreateMdxBlockSize( xbInt16 ulBlockSize );}
+\DoxyCodeLine{118 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_MDX\_SUPPORT}}
\DoxyCodeLine{119 }
-\DoxyCodeLine{120 \textcolor{keywordtype}{void} SetEndianType ();}
-\DoxyCodeLine{121 }
-\DoxyCodeLine{122 \textcolor{keyword}{static} xbInt16 \mbox{\hyperlink{classxb_1_1xbSsv_a5849e813f5e8e1cd180f0366637adbf3}{iEndianType}}; \textcolor{comment}{// B=Big Endian L=Little Endian}}
-\DoxyCodeLine{123 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \mbox{\hyperlink{classxb_1_1xbSsv_a9dec3164c3b264882df634915ecf21da}{sNullString}}; \textcolor{comment}{// Null String}}
+\DoxyCodeLine{120 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{121 xbUInt32 GetDefaultBlockReadSize() \textcolor{keyword}{const};}
+\DoxyCodeLine{122 \textcolor{keywordtype}{void} SetDefaultBlockReadSize( xbUInt32 ulDfltBlockReadSize );}
+\DoxyCodeLine{123 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
\DoxyCodeLine{124 }
\DoxyCodeLine{125 }
-\DoxyCodeLine{126 \textcolor{keyword}{private}:}
+\DoxyCodeLine{126 \textcolor{keyword}{protected}:}
\DoxyCodeLine{127 }
-\DoxyCodeLine{128 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDefaultDateFormat;}
-\DoxyCodeLine{129 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDataDirectory; \textcolor{comment}{//Data file directory}}
-\DoxyCodeLine{130 }
-\DoxyCodeLine{131 \textcolor{preprocessor}{ \#ifdef XB\_LOGGING\_SUPPORT}}
-\DoxyCodeLine{132 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sLogDirectory; \textcolor{comment}{//Default location to store log files}}
-\DoxyCodeLine{133 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sLogFileName; \textcolor{comment}{//Default LogFileName}}
-\DoxyCodeLine{134 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{128 \textcolor{keywordtype}{void} SetEndianType ();}
+\DoxyCodeLine{129 }
+\DoxyCodeLine{130 \textcolor{keyword}{static} xbInt16 \mbox{\hyperlink{classxb_1_1xbSsv_a5849e813f5e8e1cd180f0366637adbf3}{iEndianType}}; \textcolor{comment}{// B=Big Endian L=Little Endian}}
+\DoxyCodeLine{131 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \mbox{\hyperlink{classxb_1_1xbSsv_a9dec3164c3b264882df634915ecf21da}{sNullString}}; \textcolor{comment}{// Null String}}
+\DoxyCodeLine{132 }
+\DoxyCodeLine{133 }
+\DoxyCodeLine{134 \textcolor{keyword}{private}:}
\DoxyCodeLine{135 }
-\DoxyCodeLine{136 \textcolor{keyword}{static} xbInt16 iDefaultFileVersion; \textcolor{comment}{// 3 = DBase 3}}
-\DoxyCodeLine{137 \textcolor{comment}{// 4 = DBase 4}}
-\DoxyCodeLine{138 \textcolor{comment}{// default version used in CreateTable command}}
-\DoxyCodeLine{139 \textcolor{comment}{// can be over ridden at the Xbase level, or table level}}
-\DoxyCodeLine{140 \textcolor{comment}{// Different versions can be open simultaneously}}
-\DoxyCodeLine{141 }
-\DoxyCodeLine{142 \textcolor{keyword}{static} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bDefaultAutoCommit; \textcolor{comment}{// Default dbf auto commit switch}}
-\DoxyCodeLine{143 }
-\DoxyCodeLine{144 \textcolor{keyword}{static} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bMultiUser; \textcolor{comment}{// True if multi user mode is turned on}}
-\DoxyCodeLine{145 \textcolor{comment}{// Turn this off for better performance in single user mode}}
-\DoxyCodeLine{146 \textcolor{comment}{// This needs to be turned on or off before any data tables are opened}}
-\DoxyCodeLine{147 \textcolor{comment}{// turning this on after tables are opened, can result in out of date}}
-\DoxyCodeLine{148 \textcolor{comment}{// file buffers if multiple users are sharing the files}}
-\DoxyCodeLine{149 }
-\DoxyCodeLine{150 \textcolor{preprocessor}{\#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{151 \textcolor{keyword}{static} xbInt32 lDefaultLockWait; \textcolor{comment}{// Number of milliseconds between lock retries}}
-\DoxyCodeLine{152 \textcolor{keyword}{static} xbInt16 iDefaultLockRetries; \textcolor{comment}{// Number of times to retry a lock before conceding}}
-\DoxyCodeLine{153 \textcolor{keyword}{static} xbInt16 bDefaultAutoLock; \textcolor{comment}{// Autolocking enabled?}}
-\DoxyCodeLine{154 \textcolor{keyword}{static} xbInt16 iDefaultLockFlavor; \textcolor{comment}{// 1 = DBase}}
-\DoxyCodeLine{155 \textcolor{comment}{// 2 = Clipper -\/ not developed yet}}
-\DoxyCodeLine{156 \textcolor{comment}{// 3 = FoxPro -\/ not developed yet}}
-\DoxyCodeLine{157 \textcolor{comment}{// 9 = Xbase64 -\/ not developed yet}}
-\DoxyCodeLine{158 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{159 }
-\DoxyCodeLine{160 }
-\DoxyCodeLine{161 \textcolor{preprocessor}{\#if defined (XB\_NDX\_SUPPORT) || defined (XB\_MDX\_SUPPORT)}}
-\DoxyCodeLine{162 }
-\DoxyCodeLine{163 \textcolor{keyword}{static} xbInt16 iUniqueKeyOpt;}
-\DoxyCodeLine{164 }
-\DoxyCodeLine{165 \textcolor{comment}{// is one of:}}
-\DoxyCodeLine{166 \textcolor{comment}{// XB\_HALT\_ON\_DUPKEY}}
-\DoxyCodeLine{167 \textcolor{comment}{// XB\_EMULATE\_DBASE}}
+\DoxyCodeLine{136 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDefaultDateFormat;}
+\DoxyCodeLine{137 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDataDirectory; \textcolor{comment}{//Data file directory}}
+\DoxyCodeLine{138 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sTempDirectory; \textcolor{comment}{//Temp file directory}}
+\DoxyCodeLine{139 }
+\DoxyCodeLine{140 \textcolor{preprocessor}{ \#ifdef XB\_LOGGING\_SUPPORT}}
+\DoxyCodeLine{141 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sLogDirectory; \textcolor{comment}{//Default location to store log files}}
+\DoxyCodeLine{142 \textcolor{keyword}{static} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sLogFileName; \textcolor{comment}{//Default LogFileName}}
+\DoxyCodeLine{143 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{144 }
+\DoxyCodeLine{145 \textcolor{keyword}{static} xbInt16 iDefaultFileVersion; \textcolor{comment}{// 3 = DBase 3}}
+\DoxyCodeLine{146 \textcolor{comment}{// 4 = DBase 4}}
+\DoxyCodeLine{147 \textcolor{comment}{// default version used in CreateTable command}}
+\DoxyCodeLine{148 \textcolor{comment}{// can be over ridden at the Xbase level, or table level}}
+\DoxyCodeLine{149 \textcolor{comment}{// Different versions can be open simultaneously}}
+\DoxyCodeLine{150 }
+\DoxyCodeLine{151 \textcolor{keyword}{static} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bDefaultAutoCommit; \textcolor{comment}{// Default dbf auto commit switch}}
+\DoxyCodeLine{152 }
+\DoxyCodeLine{153 \textcolor{keyword}{static} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bMultiUser; \textcolor{comment}{// True if multi user mode is turned on}}
+\DoxyCodeLine{154 \textcolor{comment}{// Turn this off for better performance in single user mode}}
+\DoxyCodeLine{155 \textcolor{comment}{// This needs to be turned on or off before any data tables are opened}}
+\DoxyCodeLine{156 \textcolor{comment}{// turning this on after tables are opened, can result in out of date}}
+\DoxyCodeLine{157 \textcolor{comment}{// file buffers if multiple users are sharing the files}}
+\DoxyCodeLine{158 }
+\DoxyCodeLine{159 \textcolor{preprocessor}{\#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{160 \textcolor{keyword}{static} xbInt32 lDefaultLockWait; \textcolor{comment}{// Number of milliseconds between lock retries}}
+\DoxyCodeLine{161 \textcolor{keyword}{static} xbInt16 iDefaultLockRetries; \textcolor{comment}{// Number of times to retry a lock before conceding}}
+\DoxyCodeLine{162 \textcolor{keyword}{static} xbInt16 bDefaultAutoLock; \textcolor{comment}{// Autolocking enabled?}}
+\DoxyCodeLine{163 \textcolor{keyword}{static} xbInt16 iDefaultLockFlavor; \textcolor{comment}{// 1 = DBase}}
+\DoxyCodeLine{164 \textcolor{comment}{// 2 = Clipper -\/ not developed yet}}
+\DoxyCodeLine{165 \textcolor{comment}{// 3 = FoxPro -\/ not developed yet}}
+\DoxyCodeLine{166 \textcolor{comment}{// 9 = Xbase64 -\/ not developed yet}}
+\DoxyCodeLine{167 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{168 }
-\DoxyCodeLine{169 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{170 }
+\DoxyCodeLine{169 }
+\DoxyCodeLine{170 \textcolor{preprocessor}{\#if defined (XB\_NDX\_SUPPORT) || defined (XB\_MDX\_SUPPORT)}}
\DoxyCodeLine{171 }
-\DoxyCodeLine{172 \textcolor{preprocessor}{\#ifdef XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{173 \textcolor{keyword}{static} xbInt16 iCreateMdxBlockSize; \textcolor{comment}{// System level Mdx Block Size}}
-\DoxyCodeLine{174 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_MDX\_SUPPORT}}
-\DoxyCodeLine{175 }
-\DoxyCodeLine{176 }
-\DoxyCodeLine{177 \textcolor{preprocessor}{\#ifdef XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{178 \textcolor{keyword}{static} xbUInt32 ulDefaultBlockReadSize;}
-\DoxyCodeLine{179 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{172 \textcolor{keyword}{static} xbInt16 iUniqueKeyOpt;}
+\DoxyCodeLine{173 }
+\DoxyCodeLine{174 \textcolor{comment}{// is one of:}}
+\DoxyCodeLine{175 \textcolor{comment}{// XB\_HALT\_ON\_DUPKEY}}
+\DoxyCodeLine{176 \textcolor{comment}{// XB\_EMULATE\_DBASE}}
+\DoxyCodeLine{177 }
+\DoxyCodeLine{178 \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{179 }
\DoxyCodeLine{180 }
-\DoxyCodeLine{181 }
-\DoxyCodeLine{182 \};}
-\DoxyCodeLine{183 }
-\DoxyCodeLine{184 \} \textcolor{comment}{/* namespace xb */}}
-\DoxyCodeLine{185 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_XBSSV\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{181 \textcolor{preprocessor}{\#ifdef XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{182 \textcolor{keyword}{static} xbInt16 iCreateMdxBlockSize; \textcolor{comment}{// System level Mdx Block Size}}
+\DoxyCodeLine{183 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_MDX\_SUPPORT}}
+\DoxyCodeLine{184 }
+\DoxyCodeLine{185 }
+\DoxyCodeLine{186 \textcolor{preprocessor}{\#ifdef XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{187 \textcolor{keyword}{static} xbUInt32 ulDefaultBlockReadSize;}
+\DoxyCodeLine{188 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{189 }
+\DoxyCodeLine{190 }
+\DoxyCodeLine{191 \};}
+\DoxyCodeLine{192 }
+\DoxyCodeLine{193 \} \textcolor{comment}{/* namespace xb */}}
+\DoxyCodeLine{194 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_XBSSV\_H\_\_ */}\textcolor{preprocessor}{}}
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbstmt_8cpp.tex b/docs/doxygen/latex/xbstmt_8cpp.tex
index b0c7d3b..2063cf2 100644
--- a/docs/doxygen/latex/xbstmt_8cpp.tex
+++ b/docs/doxygen/latex/xbstmt_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbstmt_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/sql/xbstmt.cpp File Reference}
-\label{xbstmt_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbstmt.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/sql/xbstmt.cpp}}
+\hypertarget{xbstmt_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/sql/xbstmt.cpp File Reference}
+\label{xbstmt_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbstmt.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/sql/xbstmt.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbstring_8cpp.tex b/docs/doxygen/latex/xbstring_8cpp.tex
index b789259..9523d9f 100644
--- a/docs/doxygen/latex/xbstring_8cpp.tex
+++ b/docs/doxygen/latex/xbstring_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbstring_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbstring.cpp File Reference}
-\label{xbstring_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbstring.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbstring.cpp}}
+\hypertarget{xbstring_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbstring.cpp File Reference}
+\label{xbstring_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbstring.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbstring.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbstring_8h.tex b/docs/doxygen/latex/xbstring_8h.tex
index 7736618..f941482 100644
--- a/docs/doxygen/latex/xbstring_8h.tex
+++ b/docs/doxygen/latex/xbstring_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbstring_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbstring.h File Reference}
-\label{xbstring_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbstring.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbstring.h}}
+\hypertarget{xbstring_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbstring.h File Reference}
+\label{xbstring_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbstring.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbstring.h}}
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
{\ttfamily \#include $<$iostream$>$}\newline
\doxysubsection*{Data Structures}
diff --git a/docs/doxygen/latex/xbstring_8h_source.tex b/docs/doxygen/latex/xbstring_8h_source.tex
index fb0f08e..522d37f 100644
--- a/docs/doxygen/latex/xbstring_8h_source.tex
+++ b/docs/doxygen/latex/xbstring_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbstring_8h_source}{}\doxysection{xbstring.\+h}
-\label{xbstring_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbstring.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbstring.h}}
+\label{xbstring_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbstring.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbstring.h}}
\mbox{\hyperlink{xbstring_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbstring.h}}
@@ -79,8 +79,8 @@
\DoxyCodeLine{95 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Append(\textcolor{keywordtype}{char} c);}
\DoxyCodeLine{96 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Assign(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *srcStr, xbUInt32 lStartPos, xbUInt32 lCopyLen );}
\DoxyCodeLine{97 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Assign(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *srcStr, xbUInt32 lStartPos );}
-\DoxyCodeLine{98 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Assign(\textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, xbUInt32 pos, xbUInt32 lCopyLen );}
-\DoxyCodeLine{99 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Assign(\textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, xbUInt32 lCopyLen );}
+\DoxyCodeLine{98 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Assign(\textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, xbUInt32 ulStartPos, xbUInt32 lCopyLen );}
+\DoxyCodeLine{99 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Assign(\textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, xbUInt32 ulStartPos );}
\DoxyCodeLine{100 }
\DoxyCodeLine{101 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} Copy() \textcolor{keyword}{const};}
\DoxyCodeLine{102 xbUInt32 CountChar( \textcolor{keywordtype}{char} c ) \textcolor{keyword}{const};}
@@ -96,77 +96,79 @@
\DoxyCodeLine{112 \textcolor{keywordtype}{void} DumpHex( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *title ) \textcolor{keyword}{const};}
\DoxyCodeLine{113 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{114 }
-\DoxyCodeLine{115 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ExtractElement(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *src, \textcolor{keywordtype}{char} delim, xbUInt32 iCnt, xbInt16 iOpt = 0 );}
-\DoxyCodeLine{116 \textcolor{keywordtype}{char} GetCharacter( xbUInt32 lPos ) \textcolor{keyword}{const};}
-\DoxyCodeLine{117 xbUInt32 GetLastPos(\textcolor{keywordtype}{char} c) \textcolor{keyword}{const};}
-\DoxyCodeLine{118 xbUInt32 GetLastPos(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s) \textcolor{keyword}{const};}
-\DoxyCodeLine{119 \textcolor{keywordtype}{char} GetPathSeparator() \textcolor{keyword}{const};}
-\DoxyCodeLine{120 xbUInt32 GetSize() \textcolor{keyword}{const};}
-\DoxyCodeLine{121 }
-\DoxyCodeLine{122 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} HasAlphaChars() \textcolor{keyword}{const};}
-\DoxyCodeLine{123 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsEmpty() \textcolor{keyword}{const};}
-\DoxyCodeLine{124 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsNull() \textcolor{keyword}{const};}
-\DoxyCodeLine{125 }
-\DoxyCodeLine{126 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Left( xbUInt32 ulLen );}
-\DoxyCodeLine{127 xbUInt32 Len() \textcolor{keyword}{const}; \textcolor{comment}{// returns the length of the string}}
-\DoxyCodeLine{128 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Ltrim();}
-\DoxyCodeLine{129 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Ltrunc( xbUInt32 ulCnt );}
-\DoxyCodeLine{130 }
-\DoxyCodeLine{131 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Mid(xbUInt32 ulPos, xbUInt32 lLen );}
-\DoxyCodeLine{132 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&PadLeft( \textcolor{keywordtype}{char} c, xbUInt32 ulLen );}
-\DoxyCodeLine{133 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&PadRight( \textcolor{keywordtype}{char} c, xbUInt32 ulLen );}
-\DoxyCodeLine{134 }
-\DoxyCodeLine{135 xbUInt32 Pos(\textcolor{keywordtype}{char} c, xbUInt32 ulStartPos ) \textcolor{keyword}{const};}
-\DoxyCodeLine{136 xbUInt32 Pos(\textcolor{keywordtype}{char} c) \textcolor{keyword}{const};}
-\DoxyCodeLine{137 xbUInt32 Pos(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s) \textcolor{keyword}{const};}
-\DoxyCodeLine{138 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&PutAt(xbUInt32 ulPos, \textcolor{keywordtype}{char} c);}
-\DoxyCodeLine{139 }
-\DoxyCodeLine{140 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Remove( xbUInt32 ulPos, xbUInt32 ulN );}
-\DoxyCodeLine{141 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Replace( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sReplace, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sReplaceWith, xbInt16 iOpt = 0 );}
-\DoxyCodeLine{142 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Resize( xbUInt32 lSize );}
-\DoxyCodeLine{143 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Rtrim();}
-\DoxyCodeLine{144 }
-\DoxyCodeLine{145 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Set( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *s );}
-\DoxyCodeLine{146 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Set( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s );}
-\DoxyCodeLine{147 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Set( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *s, xbUInt32 ulSize );}
-\DoxyCodeLine{148 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&SetNum( xbInt32 lNum );}
-\DoxyCodeLine{149 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Sprintf(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *format, ...);}
-\DoxyCodeLine{150 }
-\DoxyCodeLine{151 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *Str() \textcolor{keyword}{const};}
-\DoxyCodeLine{152 \textcolor{keywordtype}{char} *strncpy( \textcolor{keywordtype}{char} * cDest, xbUInt32 n ) \textcolor{keyword}{const};}
-\DoxyCodeLine{153 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&SwapChars( \textcolor{keywordtype}{char} from, \textcolor{keywordtype}{char} to );}
-\DoxyCodeLine{154 }
-\DoxyCodeLine{155 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ToLowerCase();}
-\DoxyCodeLine{156 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ToUpperCase();}
-\DoxyCodeLine{157 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Trim();}
-\DoxyCodeLine{158 }
-\DoxyCodeLine{159 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} ValidLogicalValue() \textcolor{keyword}{const};}
-\DoxyCodeLine{160 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} ValidNumericValue() \textcolor{keyword}{const};}
-\DoxyCodeLine{161 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ZapChar( \textcolor{keywordtype}{char} c );}
-\DoxyCodeLine{162 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ZapLeadingChar( \textcolor{keywordtype}{char} c );}
-\DoxyCodeLine{163 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ZapTrailingChar( \textcolor{keywordtype}{char} c );}
-\DoxyCodeLine{164 }
-\DoxyCodeLine{165 \textcolor{keyword}{friend} std::ostream\& \mbox{\hyperlink{namespacexb_ad27f348219e895c44f74addba8e1889a}{operator<< }}( std::ostream\& os, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& s );}
+\DoxyCodeLine{115 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ExtractElement(\mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \textcolor{keywordtype}{char} delim, xbUInt32 iCnt, xbInt16 iOpt = 0 );}
+\DoxyCodeLine{116 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ExtractElement(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *src, \textcolor{keywordtype}{char} delim, xbUInt32 iCnt, xbInt16 iOpt = 0 );}
+\DoxyCodeLine{117 }
+\DoxyCodeLine{118 \textcolor{keywordtype}{char} GetCharacter( xbUInt32 lPos ) \textcolor{keyword}{const};}
+\DoxyCodeLine{119 xbUInt32 GetLastPos(\textcolor{keywordtype}{char} c) \textcolor{keyword}{const};}
+\DoxyCodeLine{120 xbUInt32 GetLastPos(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s) \textcolor{keyword}{const};}
+\DoxyCodeLine{121 \textcolor{keywordtype}{char} GetPathSeparator() \textcolor{keyword}{const};}
+\DoxyCodeLine{122 xbUInt32 GetSize() \textcolor{keyword}{const};}
+\DoxyCodeLine{123 }
+\DoxyCodeLine{124 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} HasAlphaChars() \textcolor{keyword}{const};}
+\DoxyCodeLine{125 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsEmpty() \textcolor{keyword}{const};}
+\DoxyCodeLine{126 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} IsNull() \textcolor{keyword}{const};}
+\DoxyCodeLine{127 }
+\DoxyCodeLine{128 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Left( xbUInt32 ulLen );}
+\DoxyCodeLine{129 xbUInt32 Len() \textcolor{keyword}{const}; \textcolor{comment}{// returns the length of the string}}
+\DoxyCodeLine{130 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Ltrim();}
+\DoxyCodeLine{131 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Ltrunc( xbUInt32 ulCnt );}
+\DoxyCodeLine{132 }
+\DoxyCodeLine{133 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Mid(xbUInt32 ulPos, xbUInt32 lLen );}
+\DoxyCodeLine{134 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&PadLeft( \textcolor{keywordtype}{char} c, xbUInt32 ulLen );}
+\DoxyCodeLine{135 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&PadRight( \textcolor{keywordtype}{char} c, xbUInt32 ulLen );}
+\DoxyCodeLine{136 }
+\DoxyCodeLine{137 xbUInt32 Pos(\textcolor{keywordtype}{char} c, xbUInt32 ulStartPos ) \textcolor{keyword}{const};}
+\DoxyCodeLine{138 xbUInt32 Pos(\textcolor{keywordtype}{char} c) \textcolor{keyword}{const};}
+\DoxyCodeLine{139 xbUInt32 Pos(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s) \textcolor{keyword}{const};}
+\DoxyCodeLine{140 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&PutAt(xbUInt32 ulPos, \textcolor{keywordtype}{char} c);}
+\DoxyCodeLine{141 }
+\DoxyCodeLine{142 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Remove( xbUInt32 ulPos, xbUInt32 ulN );}
+\DoxyCodeLine{143 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Replace( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sReplace, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sReplaceWith, xbInt16 iOpt = 0 );}
+\DoxyCodeLine{144 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Resize( xbUInt32 lSize );}
+\DoxyCodeLine{145 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Rtrim();}
+\DoxyCodeLine{146 }
+\DoxyCodeLine{147 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Set( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *s );}
+\DoxyCodeLine{148 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Set( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s );}
+\DoxyCodeLine{149 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Set( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *s, xbUInt32 ulSize );}
+\DoxyCodeLine{150 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&SetNum( xbInt32 lNum );}
+\DoxyCodeLine{151 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Sprintf(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *format, ...);}
+\DoxyCodeLine{152 }
+\DoxyCodeLine{153 \textcolor{keyword}{const} \textcolor{keywordtype}{char} *Str() \textcolor{keyword}{const};}
+\DoxyCodeLine{154 \textcolor{keywordtype}{char} *strncpy( \textcolor{keywordtype}{char} * cDest, xbUInt32 n ) \textcolor{keyword}{const};}
+\DoxyCodeLine{155 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&SwapChars( \textcolor{keywordtype}{char} from, \textcolor{keywordtype}{char} to );}
+\DoxyCodeLine{156 }
+\DoxyCodeLine{157 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ToLowerCase();}
+\DoxyCodeLine{158 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ToUpperCase();}
+\DoxyCodeLine{159 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Trim();}
+\DoxyCodeLine{160 }
+\DoxyCodeLine{161 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} ValidLogicalValue() \textcolor{keyword}{const};}
+\DoxyCodeLine{162 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} ValidNumericValue() \textcolor{keyword}{const};}
+\DoxyCodeLine{163 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ZapChar( \textcolor{keywordtype}{char} c );}
+\DoxyCodeLine{164 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ZapLeadingChar( \textcolor{keywordtype}{char} c );}
+\DoxyCodeLine{165 \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&ZapTrailingChar( \textcolor{keywordtype}{char} c );}
\DoxyCodeLine{166 }
-\DoxyCodeLine{167 \textcolor{keyword}{private}:}
+\DoxyCodeLine{167 \textcolor{keyword}{friend} std::ostream\& \mbox{\hyperlink{namespacexb_ad27f348219e895c44f74addba8e1889a}{operator<< }}( std::ostream\& os, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}}\& s );}
\DoxyCodeLine{168 }
-\DoxyCodeLine{169 \textcolor{keyword}{static} \textcolor{keyword}{const} \textcolor{keywordtype}{char} * NullString;}
-\DoxyCodeLine{170 \textcolor{keyword}{static} \textcolor{keywordtype}{char} cJunkBuf;}
-\DoxyCodeLine{171 }
-\DoxyCodeLine{172 \textcolor{keywordtype}{char} *data; \textcolor{comment}{// pointer to actual string data}}
-\DoxyCodeLine{173 xbUInt32 size; \textcolor{comment}{// size of string plus null terminating byte}}
-\DoxyCodeLine{174 }
-\DoxyCodeLine{175 \textcolor{keywordtype}{void} ctor(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s);}
-\DoxyCodeLine{176 \textcolor{comment}{// xbUInt32 CalcSprintfBufSize(const char *format, ...);}}
-\DoxyCodeLine{177 }
-\DoxyCodeLine{178 \textcolor{comment}{// char * xb\_realloc( char *pIn, xbUInt32 iLen );}}
+\DoxyCodeLine{169 \textcolor{keyword}{private}:}
+\DoxyCodeLine{170 }
+\DoxyCodeLine{171 \textcolor{keyword}{static} \textcolor{keyword}{const} \textcolor{keywordtype}{char} * NullString;}
+\DoxyCodeLine{172 \textcolor{keyword}{static} \textcolor{keywordtype}{char} cJunkBuf;}
+\DoxyCodeLine{173 }
+\DoxyCodeLine{174 \textcolor{keywordtype}{char} *data; \textcolor{comment}{// pointer to actual string data}}
+\DoxyCodeLine{175 xbUInt32 size; \textcolor{comment}{// size of string plus null terminating byte}}
+\DoxyCodeLine{176 }
+\DoxyCodeLine{177 \textcolor{keywordtype}{void} ctor(\textcolor{keyword}{const} \textcolor{keywordtype}{char} *s);}
+\DoxyCodeLine{178 \textcolor{comment}{// xbUInt32 CalcSprintfBufSize(const char *format, ...);}}
\DoxyCodeLine{179 }
-\DoxyCodeLine{180 \textcolor{comment}{// next routine could result in buffer over runs if used with improperly sized buffers}}
-\DoxyCodeLine{181 \textcolor{keywordtype}{char} * xb\_strcpy ( \textcolor{keywordtype}{char} *target, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *source);}
-\DoxyCodeLine{182 }
-\DoxyCodeLine{183 \};}
+\DoxyCodeLine{180 \textcolor{comment}{// char * xb\_realloc( char *pIn, xbUInt32 iLen );}}
+\DoxyCodeLine{181 }
+\DoxyCodeLine{182 \textcolor{comment}{// next routine could result in buffer over runs if used with improperly sized buffers}}
+\DoxyCodeLine{183 \textcolor{keywordtype}{char} * xb\_strcpy ( \textcolor{keywordtype}{char} *target, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *source);}
\DoxyCodeLine{184 }
-\DoxyCodeLine{185 \} \textcolor{comment}{/* namespace */}}
-\DoxyCodeLine{186 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XBSTRING\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{185 \};}
+\DoxyCodeLine{186 }
+\DoxyCodeLine{187 \} \textcolor{comment}{/* namespace */}}
+\DoxyCodeLine{188 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XBSTRING\_H\_\_ */}\textcolor{preprocessor}{}}
\end{DoxyCode}
diff --git a/docs/doxygen/latex/xbtag_8cpp.tex b/docs/doxygen/latex/xbtag_8cpp.tex
index 562d678..2b469eb 100644
--- a/docs/doxygen/latex/xbtag_8cpp.tex
+++ b/docs/doxygen/latex/xbtag_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbtag_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbtag.cpp File Reference}
-\label{xbtag_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbtag.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbtag.cpp}}
+\hypertarget{xbtag_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbtag.cpp File Reference}
+\label{xbtag_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbtag.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbtag.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbtag_8h.tex b/docs/doxygen/latex/xbtag_8h.tex
index be28a4a..f625c69 100644
--- a/docs/doxygen/latex/xbtag_8h.tex
+++ b/docs/doxygen/latex/xbtag_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbtag_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbtag.h File Reference}
-\label{xbtag_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtag.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtag.h}}
+\hypertarget{xbtag_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbtag.h File Reference}
+\label{xbtag_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtag.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtag.h}}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbtag_8h_source.tex b/docs/doxygen/latex/xbtag_8h_source.tex
index f15f79d..48fa14d 100644
--- a/docs/doxygen/latex/xbtag_8h_source.tex
+++ b/docs/doxygen/latex/xbtag_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbtag_8h_source}{}\doxysection{xbtag.\+h}
-\label{xbtag_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtag.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtag.h}}
+\label{xbtag_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtag.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtag.h}}
\mbox{\hyperlink{xbtag_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbtag.h}}
diff --git a/docs/doxygen/latex/xbtblmgr_8cpp.tex b/docs/doxygen/latex/xbtblmgr_8cpp.tex
index 6c3f849..0b658f5 100644
--- a/docs/doxygen/latex/xbtblmgr_8cpp.tex
+++ b/docs/doxygen/latex/xbtblmgr_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbtblmgr_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbtblmgr.cpp File Reference}
-\label{xbtblmgr_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbtblmgr.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbtblmgr.cpp}}
+\hypertarget{xbtblmgr_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbtblmgr.cpp File Reference}
+\label{xbtblmgr_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbtblmgr.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbtblmgr.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbtblmgr_8h.tex b/docs/doxygen/latex/xbtblmgr_8h.tex
index b53c99a..4c0555b 100644
--- a/docs/doxygen/latex/xbtblmgr_8h.tex
+++ b/docs/doxygen/latex/xbtblmgr_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbtblmgr_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbtblmgr.h File Reference}
-\label{xbtblmgr_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtblmgr.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtblmgr.h}}
+\hypertarget{xbtblmgr_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbtblmgr.h File Reference}
+\label{xbtblmgr_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtblmgr.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtblmgr.h}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbtblmgr_8h_source.tex b/docs/doxygen/latex/xbtblmgr_8h_source.tex
index e735784..7a51811 100644
--- a/docs/doxygen/latex/xbtblmgr_8h_source.tex
+++ b/docs/doxygen/latex/xbtblmgr_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbtblmgr_8h_source}{}\doxysection{xbtblmgr.\+h}
-\label{xbtblmgr_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtblmgr.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtblmgr.h}}
+\label{xbtblmgr_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtblmgr.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtblmgr.h}}
\mbox{\hyperlink{xbtblmgr_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbtblmgr.h}}
diff --git a/docs/doxygen/latex/xbtypes_8h.tex b/docs/doxygen/latex/xbtypes_8h.tex
index a198f39..7317374 100644
--- a/docs/doxygen/latex/xbtypes_8h.tex
+++ b/docs/doxygen/latex/xbtypes_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbtypes_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbtypes.h File Reference}
-\label{xbtypes_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtypes.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtypes.h}}
+\hypertarget{xbtypes_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbtypes.h File Reference}
+\label{xbtypes_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtypes.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtypes.h}}
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbtypes_8h_source.tex b/docs/doxygen/latex/xbtypes_8h_source.tex
index c6e7a1d..cf28e55 100644
--- a/docs/doxygen/latex/xbtypes_8h_source.tex
+++ b/docs/doxygen/latex/xbtypes_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbtypes_8h_source}{}\doxysection{xbtypes.\+h}
-\label{xbtypes_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtypes.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbtypes.h}}
+\label{xbtypes_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtypes.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbtypes.h}}
\mbox{\hyperlink{xbtypes_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbtypes.h}}
diff --git a/docs/doxygen/latex/xbuda_8cpp.tex b/docs/doxygen/latex/xbuda_8cpp.tex
index 63b3515..ff2ea98 100644
--- a/docs/doxygen/latex/xbuda_8cpp.tex
+++ b/docs/doxygen/latex/xbuda_8cpp.tex
@@ -1,3 +1,3 @@
-\hypertarget{xbuda_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbuda.cpp File Reference}
-\label{xbuda_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbuda.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbuda.cpp}}
+\hypertarget{xbuda_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbuda.cpp File Reference}
+\label{xbuda_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbuda.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbuda.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
diff --git a/docs/doxygen/latex/xbuda_8h.tex b/docs/doxygen/latex/xbuda_8h.tex
index 19d5f8e..2f35030 100644
--- a/docs/doxygen/latex/xbuda_8h.tex
+++ b/docs/doxygen/latex/xbuda_8h.tex
@@ -1,2 +1,2 @@
-\hypertarget{xbuda_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbuda.h File Reference}
-\label{xbuda_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbuda.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbuda.h}}
+\hypertarget{xbuda_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbuda.h File Reference}
+\label{xbuda_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbuda.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbuda.h}}
diff --git a/docs/doxygen/latex/xbuda_8h_source.tex b/docs/doxygen/latex/xbuda_8h_source.tex
index eb5a738..326797c 100644
--- a/docs/doxygen/latex/xbuda_8h_source.tex
+++ b/docs/doxygen/latex/xbuda_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbuda_8h_source}{}\doxysection{xbuda.\+h}
-\label{xbuda_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbuda.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbuda.h}}
+\label{xbuda_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbuda.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbuda.h}}
\mbox{\hyperlink{xbuda_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbuda.h}}
diff --git a/docs/doxygen/latex/xbxbase_8cpp.tex b/docs/doxygen/latex/xbxbase_8cpp.tex
index 97797d5..8ad01f7 100644
--- a/docs/doxygen/latex/xbxbase_8cpp.tex
+++ b/docs/doxygen/latex/xbxbase_8cpp.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbxbase_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/core/xbxbase.cpp File Reference}
-\label{xbxbase_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbxbase.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/core/xbxbase.cpp}}
+\hypertarget{xbxbase_8cpp}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/core/xbxbase.cpp File Reference}
+\label{xbxbase_8cpp}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbxbase.cpp@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/core/xbxbase.cpp}}
{\ttfamily \#include \char`\"{}xbase.\+h\char`\"{}}\newline
\doxysubsection*{Namespaces}
\begin{DoxyCompactItemize}
diff --git a/docs/doxygen/latex/xbxbase_8h.tex b/docs/doxygen/latex/xbxbase_8h.tex
index 12bb276..4a8de8f 100644
--- a/docs/doxygen/latex/xbxbase_8h.tex
+++ b/docs/doxygen/latex/xbxbase_8h.tex
@@ -1,5 +1,5 @@
-\hypertarget{xbxbase_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h File Reference}
-\label{xbxbase_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h}}
+\hypertarget{xbxbase_8h}{}\doxysection{/mnt/1\+Tdata/xbase/xbase64-\/4.1.4/src/include/xbxbase.h File Reference}
+\label{xbxbase_8h}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbxbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbxbase.h}}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item
diff --git a/docs/doxygen/latex/xbxbase_8h_source.tex b/docs/doxygen/latex/xbxbase_8h_source.tex
index 5b803b6..e208317 100644
--- a/docs/doxygen/latex/xbxbase_8h_source.tex
+++ b/docs/doxygen/latex/xbxbase_8h_source.tex
@@ -1,5 +1,5 @@
\hypertarget{xbxbase_8h_source}{}\doxysection{xbxbase.\+h}
-\label{xbxbase_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.0/src/include/xbxbase.h}}
+\label{xbxbase_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbxbase.h@{/mnt/1Tdata/xbase/xbase64-\/4.1.4/src/include/xbxbase.h}}
\mbox{\hyperlink{xbxbase_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbxbase.h}}
@@ -126,107 +126,112 @@
\DoxyCodeLine{126 \mbox{\hyperlink{classxb_1_1xbXBase}{\string~xbXBase}}();}
\DoxyCodeLine{127 }
\DoxyCodeLine{128 xbInt16 CloseAllTables();}
-\DoxyCodeLine{129 \textcolor{keywordtype}{void} DisableMsgLogging();}
-\DoxyCodeLine{130 \textcolor{keywordtype}{void} EnableMsgLogging ();}
-\DoxyCodeLine{131 xbInt16 FlushLog();}
-\DoxyCodeLine{132 }
-\DoxyCodeLine{133 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogDirectory () \textcolor{keyword}{const};}
-\DoxyCodeLine{134 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogFileName () \textcolor{keyword}{const};}
-\DoxyCodeLine{135 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogFqFileName() \textcolor{keyword}{const};}
-\DoxyCodeLine{136 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetLogStatus () \textcolor{keyword}{const};}
-\DoxyCodeLine{137 }
-\DoxyCodeLine{138 xbInt16 \mbox{\hyperlink{classxb_1_1xbXBase_aa957eb502ecd076e5df89e7415cb094b}{OpenHighestVersion}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} \&dbf, \textcolor{keywordtype}{int} dummy );}
-\DoxyCodeLine{139 xbInt16 OpenHighestVersion( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} **dbf );}
-\DoxyCodeLine{140 }
-\DoxyCodeLine{141 \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * Open( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, xbInt16 \&iRc );}
-\DoxyCodeLine{142 \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * 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, xbInt16 iVersion, xbInt16 \&iRc );}
-\DoxyCodeLine{143 \textcolor{keywordtype}{void} SetLogDirectory( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogFileDirectory );}
-\DoxyCodeLine{144 \textcolor{keywordtype}{void} SetLogFileName ( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogFileName );}
-\DoxyCodeLine{145 \textcolor{keywordtype}{void} SetLogSize ( \textcolor{keywordtype}{size\_t} lSize );}
-\DoxyCodeLine{146 xbInt16 WriteLogMessage( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogMessage, xbInt16 iOutputOpt = 0 );}
-\DoxyCodeLine{147 xbInt16 WriteLogBytes ( xbUInt32 lCnt, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p );}
-\DoxyCodeLine{148 }
-\DoxyCodeLine{149 \textcolor{keywordtype}{void} xbSleep ( xbInt32 lMillisecs );}
+\DoxyCodeLine{129 xbInt16 CreateFqn( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sDirIn, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sNameIn, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExtIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFqfnOut );}
+\DoxyCodeLine{130 \textcolor{keywordtype}{void} DisableMsgLogging();}
+\DoxyCodeLine{131 \textcolor{keywordtype}{void} EnableMsgLogging ();}
+\DoxyCodeLine{132 xbInt16 FlushLog();}
+\DoxyCodeLine{133 }
+\DoxyCodeLine{134 \textcolor{comment}{//const xbString \&GetLogDirectory () const;}}
+\DoxyCodeLine{135 \textcolor{comment}{//const xbString \&GetLogFileName () const;}}
+\DoxyCodeLine{136 \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&GetLogFqFileName() \textcolor{keyword}{const};}
+\DoxyCodeLine{137 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetLogStatus () \textcolor{keyword}{const};}
+\DoxyCodeLine{138 }
+\DoxyCodeLine{139 xbInt16 \mbox{\hyperlink{classxb_1_1xbXBase_aa957eb502ecd076e5df89e7415cb094b}{OpenHighestVersion}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} \&dbf, \textcolor{keywordtype}{int} dummy );}
+\DoxyCodeLine{140 xbInt16 OpenHighestVersion( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sAlias, \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} **dbf );}
+\DoxyCodeLine{141 }
+\DoxyCodeLine{142 \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * Open( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTableName, xbInt16 \&iRc );}
+\DoxyCodeLine{143 \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * 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, xbInt16 iVersion, xbInt16 \&iRc );}
+\DoxyCodeLine{144 }
+\DoxyCodeLine{145 \textcolor{comment}{// next three methods moved to xbssv for consistency}}
+\DoxyCodeLine{146 \textcolor{comment}{// void SetLogDirectory( const xbString \&sLogFileDirectory );}}
+\DoxyCodeLine{147 \textcolor{comment}{// void SetLogFileName ( const xbString \&sLogFileName );}}
+\DoxyCodeLine{148 \textcolor{keywordtype}{void} SetLogSize ( \textcolor{keywordtype}{size\_t} lSize );}
+\DoxyCodeLine{149 \textcolor{keywordtype}{size\_t} \mbox{\hyperlink{classxb_1_1xbXBase_aedb4c2aa2c90e4529915198a2305b355}{GetLogSize}} () \textcolor{keyword}{const};}
\DoxyCodeLine{150 }
-\DoxyCodeLine{151 xbInt16 GetCmdLineOpt ( xbInt32 lArgc, \textcolor{keywordtype}{char} **argv, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sOptRqst, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sParmOut );}
-\DoxyCodeLine{152 xbInt16 GetCmdLineOpt ( xbInt32 lArgc, \textcolor{keywordtype}{char} **argv, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOptRqst, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sParmOut );}
+\DoxyCodeLine{151 xbInt16 WriteLogMessage( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sLogMessage, xbInt16 iOutputOpt = 0 );}
+\DoxyCodeLine{152 xbInt16 WriteLogBytes ( xbUInt32 lCnt, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *p );}
\DoxyCodeLine{153 }
-\DoxyCodeLine{154 }
-\DoxyCodeLine{155 \textcolor{comment}{/* xbase functions */}}
-\DoxyCodeLine{156 \textcolor{preprocessor}{ \#ifdef XB\_FUNCTION\_SUPPORT}}
-\DoxyCodeLine{157 xbInt16 ABS( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{158 xbInt16 ALLTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{159 xbInt16 ASC( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dAscOut );}
-\DoxyCodeLine{160 xbInt16 AT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sSrchFor, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sBase, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dPos );}
-\DoxyCodeLine{161 xbInt16 CDOW( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutDow );}
-\DoxyCodeLine{162 xbInt16 CHR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dAsciCd, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{163 xbInt16 CMONTH( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutMonth );}
-\DoxyCodeLine{164 xbInt16 CTOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sInDate, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
-\DoxyCodeLine{165 xbInt16 DATE( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
-\DoxyCodeLine{166 xbInt16 DAY( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOutDay );}
-\DoxyCodeLine{167 xbInt16 DEL( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut, xbInt16 iRecBufSw = 0 );}
-\DoxyCodeLine{168 xbInt16 DELETED( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bOut, xbInt16 iRecBufSw = 0 );}
-\DoxyCodeLine{169 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{170 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
-\DoxyCodeLine{171 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dsOut );}
-\DoxyCodeLine{172 xbInt16 DOW( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&sInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dDowOut );}
-\DoxyCodeLine{173 xbInt16 DTOC( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutFmtDate );}
-\DoxyCodeLine{174 xbInt16 DTOS( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutFmtDate );}
-\DoxyCodeLine{175 xbInt16 EXP( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{176 xbInt16 IIF( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bResult, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTrueResult, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFalseResult, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sResult );}
-\DoxyCodeLine{177 xbInt16 INT( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{178 xbInt16 ISALPHA( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
-\DoxyCodeLine{179 xbInt16 ISLOWER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
-\DoxyCodeLine{180 xbInt16 ISUPPER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
-\DoxyCodeLine{181 xbInt16 LEFT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 lCharCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{182 xbInt16 LEN( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dLen );}
-\DoxyCodeLine{183 xbInt16 LOG( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{184 xbInt16 LOWER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{185 xbInt16 LTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sOut );}
-\DoxyCodeLine{186 xbInt16 MAX( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn1, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn2, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{187 xbInt16 MIN( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn1, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn2, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{188 xbInt16 MONTH( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dMonthOut );}
-\DoxyCodeLine{189 xbInt16 RECCOUNT( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dRecOut );}
-\DoxyCodeLine{190 xbInt16 RECNO( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dRecOut );}
-\DoxyCodeLine{191 xbInt16 REPLICATE( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 ulRepCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{192 xbInt16 RIGHT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 iCharCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{193 xbInt16 RTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{194 xbInt16 SPACE( xbInt32 lCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{195 xbInt16 SQRT( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dBase, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dSqrRt );}
-\DoxyCodeLine{196 xbInt16 STOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&sDateOut );}
-\DoxyCodeLine{197 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{198 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{199 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{200 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sPadChar, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{201 xbInt16 STRZERO( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{202 xbInt16 SUBSTR( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 ulStartPos, xbUInt32 ulLen, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{203 xbInt16 TRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{204 xbInt16 UPPER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
-\DoxyCodeLine{205 xbInt16 VAL( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
-\DoxyCodeLine{206 xbInt16 YEAR( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOutYear );}
-\DoxyCodeLine{207 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{208 }
-\DoxyCodeLine{209 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{210 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBcd;}
-\DoxyCodeLine{211 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbExp;}
-\DoxyCodeLine{212 }
-\DoxyCodeLine{213 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{214 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBlockRead;}
-\DoxyCodeLine{215 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
-\DoxyCodeLine{216 }
+\DoxyCodeLine{154 \textcolor{keywordtype}{void} xbSleep ( xbInt32 lMillisecs );}
+\DoxyCodeLine{155 }
+\DoxyCodeLine{156 xbInt16 GetCmdLineOpt ( xbInt32 lArgc, \textcolor{keywordtype}{char} **argv, \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sOptRqst, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sParmOut );}
+\DoxyCodeLine{157 xbInt16 GetCmdLineOpt ( xbInt32 lArgc, \textcolor{keywordtype}{char} **argv, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOptRqst, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sParmOut );}
+\DoxyCodeLine{158 }
+\DoxyCodeLine{159 }
+\DoxyCodeLine{160 \textcolor{comment}{/* xbase functions */}}
+\DoxyCodeLine{161 \textcolor{preprocessor}{ \#ifdef XB\_FUNCTION\_SUPPORT}}
+\DoxyCodeLine{162 xbInt16 ABS( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{163 xbInt16 ALLTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{164 xbInt16 ASC( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dAscOut );}
+\DoxyCodeLine{165 xbInt16 AT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sSrchFor, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sBase, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dPos );}
+\DoxyCodeLine{166 xbInt16 CDOW( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutDow );}
+\DoxyCodeLine{167 xbInt16 CHR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dAsciCd, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{168 xbInt16 CMONTH( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutMonth );}
+\DoxyCodeLine{169 xbInt16 CTOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sInDate, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
+\DoxyCodeLine{170 xbInt16 DATE( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
+\DoxyCodeLine{171 xbInt16 DAY( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOutDay );}
+\DoxyCodeLine{172 xbInt16 DEL( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut, xbInt16 iRecBufSw = 0 );}
+\DoxyCodeLine{173 xbInt16 DELETED( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bOut, xbInt16 iRecBufSw = 0 );}
+\DoxyCodeLine{174 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{175 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dOutDate );}
+\DoxyCodeLine{176 xbInt16 DESCEND( \textcolor{keyword}{const} \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dsOut );}
+\DoxyCodeLine{177 xbInt16 DOW( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&sInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dDowOut );}
+\DoxyCodeLine{178 xbInt16 DTOC( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutFmtDate );}
+\DoxyCodeLine{179 xbInt16 DTOS( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOutFmtDate );}
+\DoxyCodeLine{180 xbInt16 EXP( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{181 xbInt16 IIF( \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bResult, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sTrueResult, \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sFalseResult, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sResult );}
+\DoxyCodeLine{182 xbInt16 INT( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{183 xbInt16 ISALPHA( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
+\DoxyCodeLine{184 xbInt16 ISLOWER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
+\DoxyCodeLine{185 xbInt16 ISUPPER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&s, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bResult );}
+\DoxyCodeLine{186 xbInt16 LEFT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 lCharCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{187 xbInt16 LEN( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dLen );}
+\DoxyCodeLine{188 xbInt16 LOG( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{189 xbInt16 LOWER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{190 xbInt16 LTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \& sOut );}
+\DoxyCodeLine{191 xbInt16 MAX( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn1, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn2, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{192 xbInt16 MIN( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn1, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn2, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{193 xbInt16 MONTH( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dMonthOut );}
+\DoxyCodeLine{194 xbInt16 RECCOUNT( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dRecOut );}
+\DoxyCodeLine{195 xbInt16 RECNO( \mbox{\hyperlink{classxb_1_1xbDbf}{xbDbf}} * d, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dRecOut );}
+\DoxyCodeLine{196 xbInt16 REPLICATE( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 ulRepCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{197 xbInt16 RIGHT( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 iCharCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{198 xbInt16 RTRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{199 xbInt16 SPACE( xbInt32 lCnt, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{200 xbInt16 SQRT( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dBase, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dSqrRt );}
+\DoxyCodeLine{201 xbInt16 STOD( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&sDateOut );}
+\DoxyCodeLine{202 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{203 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{204 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{205 xbInt16 STR( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sPadChar, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{206 xbInt16 STRZERO( \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} dIn, xbUInt32 ulLen, xbUInt32 ulDec, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{207 xbInt16 SUBSTR( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, xbUInt32 ulStartPos, xbUInt32 ulLen, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{208 xbInt16 TRIM( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{209 xbInt16 UPPER( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sOut );}
+\DoxyCodeLine{210 xbInt16 VAL( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sIn, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOut );}
+\DoxyCodeLine{211 xbInt16 YEAR( \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} \&dInDate, \mbox{\hyperlink{namespacexb_a25f47b226ce924a5c78f97989b0744a2}{xbDouble}} \&dOutYear );}
+\DoxyCodeLine{212 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{213 }
+\DoxyCodeLine{214 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{215 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBcd;}
+\DoxyCodeLine{216 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbExp;}
\DoxyCodeLine{217 }
-\DoxyCodeLine{218 xbInt16 \mbox{\hyperlink{classxb_1_1xbXBase_ae52e53340593b4253936c1372ec15ee1}{GetFunctionInfo}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExpLine, \textcolor{keywordtype}{char} \&cReturnType, xbInt16 \&iReturnLenCalc, xbInt32 \&lReturnLenVal ) \textcolor{keyword}{const};}
-\DoxyCodeLine{219 \textcolor{keyword}{static} xbInt16 xbMemcmp( \textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *s1, \textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *s2, \textcolor{keywordtype}{size\_t} n );}
-\DoxyCodeLine{220 }
-\DoxyCodeLine{221 \textcolor{keyword}{private}:}
+\DoxyCodeLine{218 \textcolor{preprocessor}{ \#ifdef XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{219 \textcolor{keyword}{friend} \textcolor{keyword}{class }xbBlockRead;}
+\DoxyCodeLine{220 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_BLOCKREAD\_SUPPORT}}
+\DoxyCodeLine{221 }
\DoxyCodeLine{222 }
-\DoxyCodeLine{223 \textcolor{preprocessor}{\#ifdef XB\_LOGGING\_SUPPORT}}
-\DoxyCodeLine{224 \mbox{\hyperlink{namespacexb_a4a31fbe9110c9e55495ce71e642d785c}{xbLog}} *xLog;}
-\DoxyCodeLine{225 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{226 }
-\DoxyCodeLine{227 \};}
-\DoxyCodeLine{228 }
-\DoxyCodeLine{229 \} \textcolor{comment}{/* namespace xb */}}
-\DoxyCodeLine{230 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_DBLIST\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{223 xbInt16 \mbox{\hyperlink{classxb_1_1xbXBase_ae52e53340593b4253936c1372ec15ee1}{GetFunctionInfo}}( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&sExpLine, \textcolor{keywordtype}{char} \&cReturnType, xbInt16 \&iReturnLenCalc, xbInt32 \&lReturnLenVal ) \textcolor{keyword}{const};}
+\DoxyCodeLine{224 \textcolor{keyword}{static} xbInt16 xbMemcmp( \textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *s1, \textcolor{keyword}{const} \textcolor{keywordtype}{unsigned} \textcolor{keywordtype}{char} *s2, \textcolor{keywordtype}{size\_t} n );}
+\DoxyCodeLine{225 }
+\DoxyCodeLine{226 \textcolor{keyword}{private}:}
+\DoxyCodeLine{227 }
+\DoxyCodeLine{228 \textcolor{preprocessor}{\#ifdef XB\_LOGGING\_SUPPORT}}
+\DoxyCodeLine{229 \mbox{\hyperlink{namespacexb_a4a31fbe9110c9e55495ce71e642d785c}{xbLog}} *xLog;}
+\DoxyCodeLine{230 \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{231 }
+\DoxyCodeLine{232 \};}
+\DoxyCodeLine{233 }
+\DoxyCodeLine{234 \} \textcolor{comment}{/* namespace xb */}}
+\DoxyCodeLine{235 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_DBLIST\_H\_\_ */}\textcolor{preprocessor}{}}
\end{DoxyCode}