\hypertarget{xbfilter_8h_source}{}\doxysection{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}} \DoxyCodeLine{2 \textcolor{comment}{}} \DoxyCodeLine{3 \textcolor{comment}{XBase64 Software Library}} \DoxyCodeLine{4 \textcolor{comment}{}} \DoxyCodeLine{5 \textcolor{comment}{Copyright (c) 1997,2003,2014,2022 Gary A Kunkel}} \DoxyCodeLine{6 \textcolor{comment}{}} \DoxyCodeLine{7 \textcolor{comment}{The xb64 software library is covered under the terms of the GPL Version 3, 2007 license.}} \DoxyCodeLine{8 \textcolor{comment}{}} \DoxyCodeLine{9 \textcolor{comment}{Email Contact:}} \DoxyCodeLine{10 \textcolor{comment}{}} \DoxyCodeLine{11 \textcolor{comment}{ XDB-\/devel@lists.sourceforge.net}} \DoxyCodeLine{12 \textcolor{comment}{ XDB-\/users@lists.sourceforge.net}} \DoxyCodeLine{13 \textcolor{comment}{}} \DoxyCodeLine{14 \textcolor{comment}{This class manages the user data area (UDA)}} \DoxyCodeLine{15 \textcolor{comment}{}} \DoxyCodeLine{16 \textcolor{comment}{*/}} \DoxyCodeLine{17 } \DoxyCodeLine{18 } \DoxyCodeLine{19 \textcolor{preprocessor}{\#ifndef \_\_XB\_XBFILTER\_H\_\_}} \DoxyCodeLine{20 \textcolor{preprocessor}{\#define \_\_XB\_XBFILTER\_H\_\_}} \DoxyCodeLine{21 } \DoxyCodeLine{22 \textcolor{preprocessor}{\#ifdef CMAKE\_COMPILER\_IS\_GNUCC}} \DoxyCodeLine{23 \textcolor{preprocessor}{\#pragma interface}} \DoxyCodeLine{24 \textcolor{preprocessor}{\#endif}} \DoxyCodeLine{25 } \DoxyCodeLine{26 } \DoxyCodeLine{27 \textcolor{preprocessor}{\#ifdef XB\_FILTER\_SUPPORT}} \DoxyCodeLine{28 } \DoxyCodeLine{29 } \DoxyCodeLine{30 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespacexb}{xb}}\{} \DoxyCodeLine{31 } \DoxyCodeLine{32 \textcolor{comment}{//\#ifdef XB\_INDEX\_SUPPORT}} \DoxyCodeLine{33 \textcolor{comment}{//class XBDLLEXPORT xbIx;}} \DoxyCodeLine{34 \textcolor{comment}{//\#endif // XB\_INDEX\_SUPPORT}} \DoxyCodeLine{35 } \DoxyCodeLine{36 } \DoxyCodeLine{37 \textcolor{keyword}{class }XBDLLEXPORT xbFilter \{} \DoxyCodeLine{38 } \DoxyCodeLine{39 \textcolor{keyword}{public}:} \DoxyCodeLine{40 xbFilter( \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf );} \DoxyCodeLine{41 \string~xbFilter();} \DoxyCodeLine{42 xbInt16 Set( xbString \&sFilterExpression );} \DoxyCodeLine{43 xbInt16 Set( \textcolor{keyword}{const} \textcolor{keywordtype}{char} *sFilterExpression );} \DoxyCodeLine{44 xbInt16 GetFirstRecord( xbInt16 iOpt = 1 );} \DoxyCodeLine{45 xbInt16 GetNextRecord ( xbInt16 iOpt = 1 );} \DoxyCodeLine{46 xbInt16 GetPrevRecord ( xbInt16 iOpt = 1 );} \DoxyCodeLine{47 xbInt16 GetLastRecord ( xbInt16 iOpt = 1 );} \DoxyCodeLine{48 \textcolor{keywordtype}{void} SetLimit( xbInt32 ulLimit );} \DoxyCodeLine{49 xbInt32 GetLimit() \textcolor{keyword}{const};} \DoxyCodeLine{50 \textcolor{keywordtype}{void} ResetQryCnt();} \DoxyCodeLine{51 xbInt32 GetQryCnt() \textcolor{keyword}{const};} \DoxyCodeLine{52 } \DoxyCodeLine{53 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}} \DoxyCodeLine{54 xbInt16 GetFirstRecordIx( xbInt16 iOpt = 1 );} \DoxyCodeLine{55 xbInt16 GetNextRecordIx ( xbInt16 iOpt = 1 );} \DoxyCodeLine{56 xbInt16 GetPrevRecordIx ( xbInt16 iOpt = 1 );} \DoxyCodeLine{57 xbInt16 GetLastRecordIx ( xbInt16 iOpt = 1 );} \DoxyCodeLine{58 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}} \DoxyCodeLine{59 } \DoxyCodeLine{60 } \DoxyCodeLine{61 \textcolor{keyword}{private}:} \DoxyCodeLine{62 \textcolor{comment}{// xbXBase *xbase;}} \DoxyCodeLine{63 \mbox{\hyperlink{namespacexb_ab2eae4b4732466698a7fdd89d77ba53b}{xbDbf}} *dbf;} \DoxyCodeLine{64 xbExp *exp;} \DoxyCodeLine{65 } \DoxyCodeLine{66 xbInt32 lLimit; \textcolor{comment}{// max number rows returned}} \DoxyCodeLine{67 xbInt32 lCurQryCnt; \textcolor{comment}{// current count of rows returned, neg\# is moving from bottom to top}} \DoxyCodeLine{68 \textcolor{comment}{// pos\# is moving from top to bottom}} \DoxyCodeLine{69 \textcolor{preprocessor}{ \#ifdef XB\_INDEX\_SUPPORT}} \DoxyCodeLine{70 xbIx *pIx; \textcolor{comment}{// if index is set, the class uses the index tag, otherwise table}} \DoxyCodeLine{71 \textcolor{keywordtype}{void} *vpTag;} \DoxyCodeLine{72 \textcolor{preprocessor}{ \#endif }\textcolor{comment}{// XB\_INDEX\_SUPPORT}} \DoxyCodeLine{73 } \DoxyCodeLine{74 } \DoxyCodeLine{75 \};} \DoxyCodeLine{76 \} \textcolor{comment}{/* namespace */}} \DoxyCodeLine{77 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* XB\_FILTER\_SUPPORT */}\textcolor{preprocessor}{}} \DoxyCodeLine{78 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_\_XBFILTER\_H\_\_ */}\textcolor{preprocessor}{}} \end{DoxyCode}