summaryrefslogtreecommitdiff
path: root/docs/doxygen/latex/xbmemo_8h_source.tex
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/latex/xbmemo_8h_source.tex')
-rw-r--r--docs/doxygen/latex/xbmemo_8h_source.tex265
1 files changed, 133 insertions, 132 deletions
diff --git a/docs/doxygen/latex/xbmemo_8h_source.tex b/docs/doxygen/latex/xbmemo_8h_source.tex
index a948e02..f9628c6 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.0.2/src/include/xbmemo.h@{/mnt/1Tdata/xbase/xbase64-\/4.0.2/src/include/xbmemo.h}}
+\label{xbmemo_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.0.3/src/include/xbmemo.h@{/mnt/1Tdata/xbase/xbase64-\/4.0.3/src/include/xbmemo.h}}
\mbox{\hyperlink{xbmemo_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/* xbmemo.h}}
@@ -42,145 +42,146 @@
\DoxyCodeLine{59 }
\DoxyCodeLine{60 \textcolor{comment}{/* virtual methods */}}
\DoxyCodeLine{61 \textcolor{keyword}{virtual} \string~xbMemo();}
-\DoxyCodeLine{62 \textcolor{keyword}{virtual} xbInt16 Abort () = 0;}
-\DoxyCodeLine{63 \textcolor{keyword}{virtual} xbInt16 CloseMemoFile ();}
-\DoxyCodeLine{64 \textcolor{keyword}{virtual} xbInt16 Commit () = 0;}
-\DoxyCodeLine{65 }
-\DoxyCodeLine{66 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{67 \textcolor{keyword}{virtual} xbInt16 LockMemo ( xbInt16 iLockFunction );}
-\DoxyCodeLine{68 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMemoLocked () \textcolor{keyword}{const};}
-\DoxyCodeLine{69 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{70 }
-\DoxyCodeLine{71 \textcolor{comment}{/* pure virtual methods */}}
-\DoxyCodeLine{72 \textcolor{keyword}{virtual} xbInt16 CreateMemoFile () = 0;}
-\DoxyCodeLine{73 }
-\DoxyCodeLine{74 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFieldNo, xbString \&sMemoData ) = 0;}
-\DoxyCodeLine{75 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen ) = 0;}
-\DoxyCodeLine{76 \textcolor{keyword}{virtual} xbInt16 OpenMemoFile () = 0;}
-\DoxyCodeLine{77 \textcolor{keyword}{virtual} xbInt16 GetMemoFileType();}
-\DoxyCodeLine{78 \textcolor{keyword}{virtual} xbInt16 PackMemo ( \textcolor{keywordtype}{void} (*memoStatusFunc)(xbUInt32 ulItemNum, xbUInt32 ulNumItems)) = 0;}
-\DoxyCodeLine{79 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField( xbInt16 iFieldNo, \textcolor{keyword}{const} xbString \&sMemoData ) = 0;}
+\DoxyCodeLine{62 \textcolor{keyword}{virtual} xbInt16 Abort () = 0;}
+\DoxyCodeLine{63 \textcolor{keyword}{virtual} xbInt16 CloseMemoFile ();}
+\DoxyCodeLine{64 \textcolor{keyword}{virtual} xbInt16 Commit () = 0;}
+\DoxyCodeLine{65 \textcolor{keyword}{virtual} xbInt16 CreateMemoFile () = 0;}
+\DoxyCodeLine{66 }
+\DoxyCodeLine{67 \textcolor{keyword}{virtual} xbInt16 DumpMemoHeader () = 0;}
+\DoxyCodeLine{68 }
+\DoxyCodeLine{69 }
+\DoxyCodeLine{70 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFieldNo, xbString \&sMemoData ) = 0;}
+\DoxyCodeLine{71 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen ) = 0;}
+\DoxyCodeLine{72 \textcolor{keyword}{virtual} xbInt16 OpenMemoFile () = 0;}
+\DoxyCodeLine{73 \textcolor{keyword}{virtual} xbInt16 GetMemoFileType ();}
+\DoxyCodeLine{74 \textcolor{keyword}{virtual} xbInt16 PackMemo ( \textcolor{keywordtype}{void} (*memoStatusFunc)(xbUInt32 ulItemNum, xbUInt32 ulNumItems)) = 0;}
+\DoxyCodeLine{75 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( xbInt16 iFieldNo, \textcolor{keyword}{const} xbString \&sMemoData ) = 0;}
+\DoxyCodeLine{76 }
+\DoxyCodeLine{77 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{78 \textcolor{keyword}{virtual} xbInt16 DumpMemoFreeChain() = 0;}
+\DoxyCodeLine{79 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{80 }
-\DoxyCodeLine{81 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{82 \textcolor{keyword}{virtual} xbInt16 DumpMemoFreeChain() = 0;}
-\DoxyCodeLine{83 \textcolor{keyword}{virtual} xbInt16 DumpMemoHeader () = 0;}
+\DoxyCodeLine{81 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{82 \textcolor{keyword}{virtual} xbInt16 LockMemo ( xbInt16 iLockFunction );}
+\DoxyCodeLine{83 \textcolor{keyword}{virtual} \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} GetMemoLocked () \textcolor{keyword}{const};}
\DoxyCodeLine{84 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{85 }
-\DoxyCodeLine{86 \textcolor{comment}{// *********** FIXME *************}}
-\DoxyCodeLine{87 \textcolor{comment}{// next two methods should be protected but are called in the xb\_test\_xxxx programs testing routines}}
-\DoxyCodeLine{88 \textcolor{comment}{// so for now, they are kept as public}}
-\DoxyCodeLine{89 \textcolor{keyword}{virtual} xbInt16 CalcLastDataBlock ( xbUInt32 \&lLastDataBlock );}
-\DoxyCodeLine{90 \textcolor{keyword}{virtual} xbInt16 GetHdrNextBlock ( xbUInt32 \&ulBlockNo );}
-\DoxyCodeLine{91 }
-\DoxyCodeLine{92 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{93 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
-\DoxyCodeLine{94 }
-\DoxyCodeLine{95 \textcolor{keyword}{virtual} xbInt16 ReadDbtHeader ( xbInt16 iOption ) = 0;}
-\DoxyCodeLine{96 \textcolor{keyword}{virtual} xbInt16 UpdateHeaderName () = 0;}
-\DoxyCodeLine{97 \textcolor{keyword}{virtual} xbInt16 UpdateHeadNextNode();}
-\DoxyCodeLine{98 \textcolor{keyword}{virtual} xbInt16 Zap () = 0;}
-\DoxyCodeLine{99 }
-\DoxyCodeLine{100 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf; \textcolor{comment}{/* pointer to related dbf instance */}}
-\DoxyCodeLine{101 \textcolor{keywordtype}{char} cVersion; \textcolor{comment}{/* byte 16 off the header block, 0x03 for V3, version IV -\/ ? */}}
-\DoxyCodeLine{102 xbInt16 iMemoFileType; \textcolor{comment}{/* 3 = version III, 4 = version IV */}}
-\DoxyCodeLine{103 xbUInt32 ulHdrNextBlock; \textcolor{comment}{/* next available block , bytes 0-\/3 of the memo header */}}
-\DoxyCodeLine{104 \textcolor{keywordtype}{void} * mbb; \textcolor{comment}{/* memo block buffer */}}
-\DoxyCodeLine{105 }
-\DoxyCodeLine{106 }
-\DoxyCodeLine{107 \textcolor{keyword}{private}:}
+\DoxyCodeLine{86 }
+\DoxyCodeLine{87 }
+\DoxyCodeLine{88 \textcolor{comment}{// *********** FIXME *************}}
+\DoxyCodeLine{89 \textcolor{comment}{// next two methods should be protected but are called in the xb\_test\_xxxx programs testing routines}}
+\DoxyCodeLine{90 \textcolor{comment}{// so for now, they are kept as public}}
+\DoxyCodeLine{91 \textcolor{keyword}{virtual} xbInt16 CalcLastDataBlock ( xbUInt32 \&lLastDataBlock );}
+\DoxyCodeLine{92 \textcolor{keyword}{virtual} xbInt16 GetHdrNextBlock ( xbUInt32 \&ulBlockNo );}
+\DoxyCodeLine{93 }
+\DoxyCodeLine{94 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{95 \textcolor{keyword}{friend} \textcolor{keyword}{class }\mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}};}
+\DoxyCodeLine{96 }
+\DoxyCodeLine{97 \textcolor{keyword}{virtual} xbInt16 ReadDbtHeader ( xbInt16 iOption ) = 0;}
+\DoxyCodeLine{98 \textcolor{keyword}{virtual} xbInt16 UpdateHeaderName () = 0;}
+\DoxyCodeLine{99 \textcolor{keyword}{virtual} xbInt16 UpdateHeadNextNode();}
+\DoxyCodeLine{100 \textcolor{keyword}{virtual} xbInt16 Zap () = 0;}
+\DoxyCodeLine{101 }
+\DoxyCodeLine{102 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf; \textcolor{comment}{/* pointer to related dbf instance */}}
+\DoxyCodeLine{103 \textcolor{keywordtype}{char} cVersion; \textcolor{comment}{/* byte 16 off the header block, 0x03 for V3, version IV -\/ ? */}}
+\DoxyCodeLine{104 xbInt16 iMemoFileType; \textcolor{comment}{/* 3 = version III, 4 = version IV */}}
+\DoxyCodeLine{105 xbUInt32 ulHdrNextBlock; \textcolor{comment}{/* next available block , bytes 0-\/3 of the memo header */}}
+\DoxyCodeLine{106 \textcolor{keywordtype}{void} * mbb; \textcolor{comment}{/* memo block buffer */}}
+\DoxyCodeLine{107 }
\DoxyCodeLine{108 }
-\DoxyCodeLine{109 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
-\DoxyCodeLine{110 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFileLocked; \textcolor{comment}{/* memo file locked */}}
-\DoxyCodeLine{111 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{112 }
-\DoxyCodeLine{113 \};}
+\DoxyCodeLine{109 \textcolor{keyword}{private}:}
+\DoxyCodeLine{110 }
+\DoxyCodeLine{111 \textcolor{preprocessor}{ \#ifdef XB\_LOCKING\_SUPPORT}}
+\DoxyCodeLine{112 \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} bFileLocked; \textcolor{comment}{/* memo file locked */}}
+\DoxyCodeLine{113 \textcolor{preprocessor}{ \#endif}}
\DoxyCodeLine{114 }
-\DoxyCodeLine{115 }
+\DoxyCodeLine{115 \};}
\DoxyCodeLine{116 }
-\DoxyCodeLine{117 \textcolor{preprocessor}{\#ifdef XB\_DBF3\_SUPPORT}}
-\DoxyCodeLine{119 }
-\DoxyCodeLine{131 \textcolor{keyword}{class }XBDLLEXPORT xbMemoDbt3 : \textcolor{keyword}{public} xbMemo \{}
-\DoxyCodeLine{132 \textcolor{keyword}{public}:}
-\DoxyCodeLine{133 xbMemoDbt3( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf, xbString \textcolor{keyword}{const} \&sFileName );}
-\DoxyCodeLine{134 \string~xbMemoDbt3();}
-\DoxyCodeLine{135 \textcolor{keyword}{virtual} xbInt16 Abort ();}
-\DoxyCodeLine{136 \textcolor{keyword}{virtual} xbInt16 Commit ();}
-\DoxyCodeLine{137 \textcolor{keyword}{virtual} xbInt16 CreateMemoFile ();}
-\DoxyCodeLine{138 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFieldNo, xbString \&sMemoData );}
-\DoxyCodeLine{139 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen );}
-\DoxyCodeLine{140 \textcolor{keyword}{virtual} xbInt16 OpenMemoFile ();}
-\DoxyCodeLine{141 \textcolor{keyword}{virtual} xbInt16 PackMemo ( \textcolor{keywordtype}{void} (*memoStatusFunc) (xbUInt32 ulItemNum, xbUInt32 ulNumItems));}
-\DoxyCodeLine{142 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField( xbInt16 iFieldNo, \textcolor{keyword}{const} xbString \&sMemoData );}
-\DoxyCodeLine{143 }
-\DoxyCodeLine{144 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{145 \textcolor{keyword}{virtual} xbInt16 DumpMemoFreeChain();}
-\DoxyCodeLine{146 \textcolor{keyword}{virtual} xbInt16 DumpMemoHeader ();}
-\DoxyCodeLine{147 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{148 }
-\DoxyCodeLine{149 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{150 \textcolor{keyword}{virtual} xbInt16 ReadDbtHeader( xbInt16 iOption );}
-\DoxyCodeLine{151 \textcolor{keyword}{virtual} xbInt16 UpdateHeaderName();}
-\DoxyCodeLine{152 \textcolor{keyword}{virtual} xbInt16 Zap();}
-\DoxyCodeLine{153 }
-\DoxyCodeLine{154 \textcolor{keyword}{private}:}
-\DoxyCodeLine{155 \};}
-\DoxyCodeLine{156 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{157 }
-\DoxyCodeLine{158 }
-\DoxyCodeLine{159 \textcolor{preprocessor}{\#ifdef XB\_DBF4\_SUPPORT}}
+\DoxyCodeLine{117 }
+\DoxyCodeLine{118 }
+\DoxyCodeLine{119 \textcolor{preprocessor}{\#ifdef XB\_DBF3\_SUPPORT}}
+\DoxyCodeLine{121 }
+\DoxyCodeLine{133 \textcolor{keyword}{class }XBDLLEXPORT xbMemoDbt3 : \textcolor{keyword}{public} xbMemo \{}
+\DoxyCodeLine{134 \textcolor{keyword}{public}:}
+\DoxyCodeLine{135 xbMemoDbt3( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf, xbString \textcolor{keyword}{const} \&sFileName );}
+\DoxyCodeLine{136 \string~xbMemoDbt3();}
+\DoxyCodeLine{137 \textcolor{keyword}{virtual} xbInt16 Abort ();}
+\DoxyCodeLine{138 \textcolor{keyword}{virtual} xbInt16 Commit ();}
+\DoxyCodeLine{139 \textcolor{keyword}{virtual} xbInt16 CreateMemoFile ();}
+\DoxyCodeLine{140 \textcolor{keyword}{virtual} xbInt16 DumpMemoHeader ();}
+\DoxyCodeLine{141 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFieldNo, xbString \&sMemoData );}
+\DoxyCodeLine{142 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen );}
+\DoxyCodeLine{143 \textcolor{keyword}{virtual} xbInt16 OpenMemoFile ();}
+\DoxyCodeLine{144 \textcolor{keyword}{virtual} xbInt16 PackMemo ( \textcolor{keywordtype}{void} (*memoStatusFunc) (xbUInt32 ulItemNum, xbUInt32 ulNumItems));}
+\DoxyCodeLine{145 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField( xbInt16 iFieldNo, \textcolor{keyword}{const} xbString \&sMemoData );}
+\DoxyCodeLine{146 }
+\DoxyCodeLine{147 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{148 \textcolor{keyword}{virtual} xbInt16 DumpMemoFreeChain();}
+\DoxyCodeLine{149 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{150 }
+\DoxyCodeLine{151 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{152 \textcolor{keyword}{virtual} xbInt16 ReadDbtHeader( xbInt16 iOption );}
+\DoxyCodeLine{153 \textcolor{keyword}{virtual} xbInt16 UpdateHeaderName();}
+\DoxyCodeLine{154 \textcolor{keyword}{virtual} xbInt16 Zap();}
+\DoxyCodeLine{155 }
+\DoxyCodeLine{156 \textcolor{keyword}{private}:}
+\DoxyCodeLine{157 \};}
+\DoxyCodeLine{158 \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{159 }
\DoxyCodeLine{160 }
+\DoxyCodeLine{161 \textcolor{preprocessor}{\#ifdef XB\_DBF4\_SUPPORT}}
\DoxyCodeLine{162 }
-\DoxyCodeLine{172 \textcolor{keyword}{class }XBDLLEXPORT xbMemoDbt4 : \textcolor{keyword}{public} xbMemo \{}
-\DoxyCodeLine{173 \textcolor{keyword}{public}:}
-\DoxyCodeLine{174 xbMemoDbt4( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf, xbString \textcolor{keyword}{const} \&sFileName );}
-\DoxyCodeLine{175 \string~xbMemoDbt4();}
-\DoxyCodeLine{176 \textcolor{keyword}{virtual} xbInt16 Abort ();}
-\DoxyCodeLine{177 \textcolor{keyword}{virtual} xbInt16 Commit ();}
-\DoxyCodeLine{178 \textcolor{keyword}{virtual} xbInt16 CreateMemoFile ();}
-\DoxyCodeLine{179 }
-\DoxyCodeLine{180 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFieldNo, xbString \&sMemoData );}
-\DoxyCodeLine{181 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen );}
-\DoxyCodeLine{182 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen, xbUInt32 \&lBlockNo );}
-\DoxyCodeLine{183 \textcolor{keyword}{virtual} xbInt16 OpenMemoFile ();}
-\DoxyCodeLine{184 \textcolor{keyword}{virtual} xbInt16 PackMemo ( \textcolor{keywordtype}{void} (*memoStatusFunc) (xbUInt32 ulItemNum, xbUInt32 ulNumItems));}
-\DoxyCodeLine{185 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( xbInt16 iFieldNo, \textcolor{keyword}{const} xbString \&sMemoData );}
-\DoxyCodeLine{186 }
-\DoxyCodeLine{187 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
-\DoxyCodeLine{188 \textcolor{keyword}{virtual} xbInt16 DumpMemoFreeChain ();}
-\DoxyCodeLine{189 \textcolor{keyword}{virtual} xbInt16 DumpMemoHeader ();}
-\DoxyCodeLine{190 \textcolor{keyword}{virtual} xbInt16 DumpMemoInternals ();}
-\DoxyCodeLine{191 \textcolor{keyword}{virtual} xbInt16 ReadFreeBlockHeader( xbUInt32 ulBlockNo, xbUInt32 \&ulNextBlock, xbUInt32 \&ulFreeBlockCnt );}
-\DoxyCodeLine{192 \textcolor{preprocessor}{ \#endif}}
-\DoxyCodeLine{193 }
-\DoxyCodeLine{194 \textcolor{keyword}{protected}:}
-\DoxyCodeLine{195 \textcolor{keyword}{virtual} xbInt16 FindBlockSetInChain( xbUInt32 ulBlocksNeeded, xbUInt32 \&ulLastDataBlock, xbUInt32 \&ulLocation, xbUInt32 \&ulPrevNode, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bFound );}
-\DoxyCodeLine{196 \textcolor{keyword}{virtual} xbInt16 FreeMemoBlockChain( xbUInt32 ulBlockNo );}
-\DoxyCodeLine{197 \textcolor{keyword}{virtual} xbInt16 FreeMemoBlockChain( xbUInt32 ulBlockNo, xbUInt32 \&ulLastDataBlock );}
-\DoxyCodeLine{198 \textcolor{keyword}{virtual} xbInt16 GetBlockSetFromChain( xbUInt32 ulBlocksNeeded, xbUInt32 ulLocation, xbUInt32 ulPrevNode );}
-\DoxyCodeLine{199 \textcolor{keyword}{virtual} xbInt16 ReadDbtHeader( xbInt16 iOption );}
-\DoxyCodeLine{200 \textcolor{keyword}{virtual} xbInt16 ReadBlockHeader( xbUInt32 ulBlockNo, xbInt16 iOption );}
-\DoxyCodeLine{201 \textcolor{keyword}{virtual} xbInt16 UpdateHeaderName ();}
-\DoxyCodeLine{202 \textcolor{keyword}{virtual} xbInt16 WriteBlockHeader( xbUInt32 ulBlockNo, xbInt16 iOption );}
-\DoxyCodeLine{203 \textcolor{keyword}{virtual} xbInt16 Zap();}
-\DoxyCodeLine{204 }
-\DoxyCodeLine{205 \textcolor{keyword}{private}:}
-\DoxyCodeLine{206 xbString sDbfFileNameWoExt;}
-\DoxyCodeLine{207 xbUInt32 ulNextFreeBlock;}
-\DoxyCodeLine{208 xbUInt32 ulFreeBlockCnt;}
-\DoxyCodeLine{209 xbInt16 iField1;}
-\DoxyCodeLine{210 xbInt16 iStartPos;}
-\DoxyCodeLine{211 xbUInt32 ulFieldLen;}
-\DoxyCodeLine{212 }
-\DoxyCodeLine{213 xbLinkList<xbUInt32> llOldBlocks; \textcolor{comment}{// list of previously used memo blocks for field, used by Commit() / Abort()}}
-\DoxyCodeLine{214 xbLinkList<xbUInt32> llNewBlocks; \textcolor{comment}{// list of newly updated memo blocks for field, used by Commit() / Abort()}}
-\DoxyCodeLine{215 }
-\DoxyCodeLine{216 \};}
-\DoxyCodeLine{217 \textcolor{preprocessor}{\#endif}}
-\DoxyCodeLine{218 }
+\DoxyCodeLine{164 }
+\DoxyCodeLine{174 \textcolor{keyword}{class }XBDLLEXPORT xbMemoDbt4 : \textcolor{keyword}{public} xbMemo \{}
+\DoxyCodeLine{175 \textcolor{keyword}{public}:}
+\DoxyCodeLine{176 xbMemoDbt4( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf, xbString \textcolor{keyword}{const} \&sFileName );}
+\DoxyCodeLine{177 \string~xbMemoDbt4();}
+\DoxyCodeLine{178 \textcolor{keyword}{virtual} xbInt16 Abort ();}
+\DoxyCodeLine{179 \textcolor{keyword}{virtual} xbInt16 Commit ();}
+\DoxyCodeLine{180 \textcolor{keyword}{virtual} xbInt16 CreateMemoFile ();}
+\DoxyCodeLine{181 \textcolor{keyword}{virtual} xbInt16 DumpMemoHeader ();}
+\DoxyCodeLine{182 \textcolor{keyword}{virtual} xbInt16 GetMemoField ( xbInt16 iFieldNo, xbString \&sMemoData );}
+\DoxyCodeLine{183 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen );}
+\DoxyCodeLine{184 \textcolor{keyword}{virtual} xbInt16 GetMemoFieldLen ( xbInt16 iFieldNo, xbUInt32 \&ulMemoFieldLen, xbUInt32 \&lBlockNo );}
+\DoxyCodeLine{185 \textcolor{keyword}{virtual} xbInt16 OpenMemoFile ();}
+\DoxyCodeLine{186 \textcolor{keyword}{virtual} xbInt16 PackMemo ( \textcolor{keywordtype}{void} (*memoStatusFunc) (xbUInt32 ulItemNum, xbUInt32 ulNumItems));}
+\DoxyCodeLine{187 \textcolor{keyword}{virtual} xbInt16 UpdateMemoField ( xbInt16 iFieldNo, \textcolor{keyword}{const} xbString \&sMemoData );}
+\DoxyCodeLine{188 }
+\DoxyCodeLine{189 \textcolor{preprocessor}{ \#ifdef XB\_DEBUG\_SUPPORT}}
+\DoxyCodeLine{190 \textcolor{keyword}{virtual} xbInt16 DumpMemoFreeChain ();}
+\DoxyCodeLine{191 \textcolor{keyword}{virtual} xbInt16 DumpMemoInternals ();}
+\DoxyCodeLine{192 \textcolor{keyword}{virtual} xbInt16 ReadFreeBlockHeader( xbUInt32 ulBlockNo, xbUInt32 \&ulNextBlock, xbUInt32 \&ulFreeBlockCnt );}
+\DoxyCodeLine{193 \textcolor{preprocessor}{ \#endif}}
+\DoxyCodeLine{194 }
+\DoxyCodeLine{195 \textcolor{keyword}{protected}:}
+\DoxyCodeLine{196 \textcolor{keyword}{virtual} xbInt16 FindBlockSetInChain( xbUInt32 ulBlocksNeeded, xbUInt32 \&ulLastDataBlock, xbUInt32 \&ulLocation, xbUInt32 \&ulPrevNode, \mbox{\hyperlink{namespacexb_ab1a750481dd487f0d384aa1d200dff0f}{xbBool}} \&bFound );}
+\DoxyCodeLine{197 \textcolor{keyword}{virtual} xbInt16 FreeMemoBlockChain( xbUInt32 ulBlockNo );}
+\DoxyCodeLine{198 \textcolor{keyword}{virtual} xbInt16 FreeMemoBlockChain( xbUInt32 ulBlockNo, xbUInt32 \&ulLastDataBlock );}
+\DoxyCodeLine{199 \textcolor{keyword}{virtual} xbInt16 GetBlockSetFromChain( xbUInt32 ulBlocksNeeded, xbUInt32 ulLocation, xbUInt32 ulPrevNode );}
+\DoxyCodeLine{200 \textcolor{keyword}{virtual} xbInt16 ReadDbtHeader( xbInt16 iOption );}
+\DoxyCodeLine{201 \textcolor{keyword}{virtual} xbInt16 ReadBlockHeader( xbUInt32 ulBlockNo, xbInt16 iOption );}
+\DoxyCodeLine{202 \textcolor{keyword}{virtual} xbInt16 UpdateHeaderName ();}
+\DoxyCodeLine{203 \textcolor{keyword}{virtual} xbInt16 WriteBlockHeader( xbUInt32 ulBlockNo, xbInt16 iOption );}
+\DoxyCodeLine{204 \textcolor{keyword}{virtual} xbInt16 Zap();}
+\DoxyCodeLine{205 }
+\DoxyCodeLine{206 \textcolor{keyword}{private}:}
+\DoxyCodeLine{207 xbString sDbfFileNameWoExt;}
+\DoxyCodeLine{208 xbUInt32 ulNextFreeBlock;}
+\DoxyCodeLine{209 xbUInt32 ulFreeBlockCnt;}
+\DoxyCodeLine{210 xbInt16 iField1;}
+\DoxyCodeLine{211 xbInt16 iStartPos;}
+\DoxyCodeLine{212 xbUInt32 ulFieldLen;}
+\DoxyCodeLine{213 }
+\DoxyCodeLine{214 xbLinkList<xbUInt32> llOldBlocks; \textcolor{comment}{// list of previously used memo blocks for field, used by Commit() / Abort()}}
+\DoxyCodeLine{215 xbLinkList<xbUInt32> llNewBlocks; \textcolor{comment}{// list of newly updated memo blocks for field, used by Commit() / Abort()}}
+\DoxyCodeLine{216 }
+\DoxyCodeLine{217 \};}
+\DoxyCodeLine{218 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{219 }
-\DoxyCodeLine{220 \} \textcolor{comment}{/* namespace xb */}}
-\DoxyCodeLine{221 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_MEMO\_SUPPORT */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{222 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_MEMO\_H\_\_ */}\textcolor{preprocessor}{}}
-\DoxyCodeLine{223 }
+\DoxyCodeLine{220 }
+\DoxyCodeLine{221 \} \textcolor{comment}{/* namespace xb */}}
+\DoxyCodeLine{222 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_MEMO\_SUPPORT */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{223 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XB\_MEMO\_H\_\_ */}\textcolor{preprocessor}{}}
+\DoxyCodeLine{224 }
\end{DoxyCode}