summaryrefslogtreecommitdiff
path: root/src/include/xbxbase.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/xbxbase.h')
-rwxr-xr-xsrc/include/xbxbase.h230
1 files changed, 0 insertions, 230 deletions
diff --git a/src/include/xbxbase.h b/src/include/xbxbase.h
deleted file mode 100755
index fe1f323..0000000
--- a/src/include/xbxbase.h
+++ /dev/null
@@ -1,230 +0,0 @@
-/* xbxbase.h
-
-XBase64 Software Library
-
-Copyright (c) 1997,2003,2014,2022,2023 Gary A Kunkel
-
-The xb64 software library is covered under the terms of the GPL Version 3, 2007 license.
-
-Email Contact:
-
- XDB-devel@lists.sourceforge.net
- XDB-users@lists.sourceforge.net
-
-*/
-
-
-#ifndef __XB_XBDBLIST_H__
-#define __XB_XBDBLIST_H__
-
-#ifdef CMAKE_COMPILER_IS_GNUCC
-#pragma interface
-#endif
-
-namespace xb{
-
-class XBDLLEXPORT xbLog;
-
-/************************************************************************/
-/*
- Xbase functions
-
- Min Parm Count is the minimum number of input parms needed by the function
-
- Return Type
- C Char or string
- D Date
- L Logical
- N Numeric
- 1 Varies - pull return type from first sibling
- 2 Varies - pull return type from second sibling
-*/
-
-#ifdef XB_FUNCTION_SUPPORT
-
-/*
-struct XBDLLEXPORT xbFunctionInfo {
- const char * FuncName; // function name
- char ReturnType; // return type of function
- xbInt16 iReturnLenCalc; // used to calculate the function return value is
- // 1 = use value specified in iReturnLenVal
- // 2 = use length of operand specified in col 4
- // 3 = use valued of numeric operand specified in col 4
- // 4 = length of parm 1 * numeric value parm
- // 5 = larger length of parm 2 or length of parm 3
- // 6 = if two or more parms, use numeric value from second parm,
- // otherwise use col4 value
- xbInt16 iReturnLenVal; // Used in combination with iReturnLenCalc
-
-};
-*/
-/*
-static xbFunctionInfo FunctionList[] =
-// Func Return -Rtrn Len-
-// Name Type -Calc Val-
-{
- { "ABS", 'N', 1, 4 },
- { "ALLTRIM", 'C', 2, 1 },
- { "ASC", 'N', 1, 4 },
- { "AT", 'N', 1, 4 },
- { "CDOW", 'C', 1, 9 },
- { "CHR", 'C', 1, 1 },
- { "CMONTH", 'C', 1, 9 },
- { "CTOD", 'D', 1, 8 },
- { "DATE", 'D', 1, 8 },
- { "DAY", 'N', 1, 4 },
- { "DEL", 'C', 1, 1 },
- { "DELETED", 'L', 1, 1 },
- { "DESCEND", '1', 2, 1 },
- { "DOW", 'N', 1, 4 },
- { "DTOC", 'C', 1, 8 },
- { "DTOS", 'C', 1, 8 },
- { "EXP", 'N', 1, 4 },
- { "IIF", 'C', 5, 0 },
- { "INT", 'N', 1, 4 },
- { "ISALPHA", 'L', 1, 1 },
- { "ISLOWER", 'L', 1, 1 },
- { "ISUPPER", 'L', 1, 1 },
- { "LEFT", 'C', 3, 2 },
- { "LEN", 'N', 1, 4 },
- { "LOG", 'N', 1, 4 },
- { "LOWER", 'C', 2, 1 },
- { "LTRIM", 'C', 2, 1 },
- { "MAX", 'N', 1, 4 },
- { "MIN", 'N', 1, 4 },
- { "MONTH", 'N', 1, 4 },
- { "RECNO", 'N', 1, 4 },
- { "RECCOUNT", 'N', 1, 4 },
- { "REPLICATE", 'C', 4, 0 },
- { "RIGHT", 'C', 3, 2 },
- { "RTRIM", 'C', 2, 1 },
- { "SPACE", 'C', 3, 1 },
- { "SQRT", 'N', 1, 4 },
- { "STOD", 'D', 1, 8 },
- { "STR", 'C', 6, 10 },
- { "STRZERO", 'C', 3, 2 },
- { "SUBSTR", 'C', 3, 3 },
- { "TRIM", 'C', 2, 1 },
- { "UPPER", 'C', 2, 1 },
- { "VAL", 'N', 1, 4 },
- { "YEAR", 'N', 1, 4 },
- { 0, 0, 0, 0 },
-};
-*/
-#endif
-
-
-
-//! @brief xbXbase class.
-/*!
- The xbXBase class is the core class that needs to be in every application program.
-*/
-
-class XBDLLEXPORT xbXBase : public xbTblMgr{
- public:
- xbXBase();
- ~xbXBase();
-
- xbInt16 CloseAllTables();
- void DisableMsgLogging();
- void EnableMsgLogging ();
- xbInt16 FlushLog();
-
- const xbString &GetLogDirectory () const;
- const xbString &GetLogFileName () const;
- const xbString &GetLogFqFileName() const;
- xbBool GetLogStatus () const;
-
- xbInt16 OpenHighestVersion( const xbString &sTableName, const xbString &sAlias, xbDbf &dbf, int dummy );
- xbInt16 OpenHighestVersion( const xbString &sTableName, const xbString &sAlias, xbDbf **dbf );
-
- xbDbf * Open( const xbString &sTableName, xbInt16 &iRc );
- xbDbf * Open( const xbString &sTableName, const xbString &sAlias, xbInt16 iOpenMode, xbInt16 iShareMode, xbInt16 iVersion, xbInt16 &iRc );
- void SetLogDirectory( const xbString &sLogFileDirectory );
- void SetLogFileName ( const xbString &sLogFileName );
- void SetLogSize ( size_t lSize );
- xbInt16 WriteLogMessage( const xbString &sLogMessage, xbInt16 iOutputOpt = 0 );
- xbInt16 WriteLogBytes ( xbUInt32 lCnt, const char *p );
-
- void xbSleep ( xbInt32 lMillisecs );
-
- xbInt16 GetCmdLineOpt ( xbInt32 lArgc, char **argv, const char *sOptRqst, xbString &sParmOut );
- xbInt16 GetCmdLineOpt ( xbInt32 lArgc, char **argv, xbString &sOptRqst, xbString &sParmOut );
-
-
- /* xbase functions */
- #ifdef XB_FUNCTION_SUPPORT
- xbInt16 ABS( xbDouble dIn, xbDouble &dOut );
- xbInt16 ALLTRIM( const xbString &sIn, xbString &sOut );
- xbInt16 ASC( const xbString &s, xbDouble &dAscOut );
- xbInt16 AT( const xbString &sSrchFor, const xbString &sBase, xbDouble &dPos );
- xbInt16 CDOW( xbDate &dInDate, xbString &sOutDow );
- xbInt16 CHR( xbDouble dAsciCd, xbString &sOut );
- xbInt16 CMONTH( xbDate &dInDate, xbString &sOutMonth );
- xbInt16 CTOD( const xbString &sInDate, xbDate &dOutDate );
- xbInt16 DATE( xbDate &dOutDate );
- xbInt16 DAY( const xbDate &dInDate, xbDouble &dOutDay );
- xbInt16 DEL( xbDbf * d, xbString &sOut, xbInt16 iRecBufSw = 0 );
- xbInt16 DELETED( xbDbf * d, xbBool &bOut, xbInt16 iRecBufSw = 0 );
- xbInt16 DESCEND( const xbString &sIn, xbString &sOut );
- xbInt16 DESCEND( const xbDate &dInDate, xbDate &dOutDate );
- xbInt16 DESCEND( const xbDouble dIn, xbDouble &dsOut );
- xbInt16 DOW( const xbDate &sInDate, xbDouble &dDowOut );
- xbInt16 DTOC( xbDate &dInDate, xbString &sOutFmtDate );
- xbInt16 DTOS( xbDate &dInDate, xbString &sOutFmtDate );
- xbInt16 EXP( xbDouble dIn, xbDouble &dOut );
- xbInt16 IIF( xbBool bResult, const xbString &sTrueResult, const xbString &sFalseResult, xbString &sResult );
- xbInt16 INT( xbDouble dIn, xbDouble &dOut );
- xbInt16 ISALPHA( const xbString &s, xbBool &bResult );
- xbInt16 ISLOWER( const xbString &s, xbBool &bResult );
- xbInt16 ISUPPER( const xbString &s, xbBool &bResult );
- xbInt16 LEFT( const xbString &sIn, xbUInt32 lCharCnt, xbString &sOut );
- xbInt16 LEN( const xbString &sIn, xbDouble &dLen );
- xbInt16 LOG( xbDouble dIn, xbDouble &dOut );
- xbInt16 LOWER( const xbString &sIn, xbString &sOut );
- xbInt16 LTRIM( const xbString &sIn, xbString & sOut );
- xbInt16 MAX( xbDouble dIn1, xbDouble dIn2, xbDouble &dOut );
- xbInt16 MIN( xbDouble dIn1, xbDouble dIn2, xbDouble &dOut );
- xbInt16 MONTH( xbDate &dInDate, xbDouble &dMonthOut );
- xbInt16 RECCOUNT( xbDbf * d, xbDouble &dRecOut );
- xbInt16 RECNO( xbDbf * d, xbDouble &dRecOut );
- xbInt16 REPLICATE( const xbString &sIn, xbUInt32 ulRepCnt, xbString &sOut );
- xbInt16 RIGHT( const xbString &sIn, xbUInt32 iCharCnt, xbString &sOut );
- xbInt16 RTRIM( const xbString &sIn, xbString &sOut );
- xbInt16 SPACE( xbInt32 lCnt, xbString &sOut );
- xbInt16 SQRT( xbDouble dBase, xbDouble &dSqrRt );
- xbInt16 STOD( const xbString &sIn, xbDate &sDateOut );
- xbInt16 STR( xbDouble dIn, xbString &sOut );
- xbInt16 STR( xbDouble dIn, xbUInt32 ulLen, xbString &sOut );
- xbInt16 STR( xbDouble dIn, xbUInt32 ulLen, xbUInt32 ulDec, xbString &sOut );
- xbInt16 STR( xbDouble dIn, xbUInt32 ulLen, xbUInt32 ulDec, xbString &sPadChar, xbString &sOut );
- xbInt16 STRZERO( xbDouble dIn, xbUInt32 ulLen, xbUInt32 ulDec, xbString &sOut );
- xbInt16 SUBSTR( const xbString &sIn, xbUInt32 ulStartPos, xbUInt32 ulLen, xbString &sOut );
- xbInt16 TRIM( const xbString &sIn, xbString &sOut );
- xbInt16 UPPER( const xbString &sIn, xbString &sOut );
- xbInt16 VAL( const xbString &sIn, xbDouble &dOut );
- xbInt16 YEAR( xbDate &dInDate, xbDouble &dOutYear );
- #endif
-
- protected:
- friend class xbBcd;
- friend class xbExp;
-
- #ifdef XB_BLOCKREAD_SUPPORT
- friend class xbBlockRead;
- #endif // XB_BLOCKREAD_SUPPORT
-
-
- xbInt16 GetFunctionInfo( const xbString &sExpLine, char &cReturnType, xbInt16 &iReturnLenCalc, xbInt32 &lReturnLenVal ) const;
- static xbInt16 xbMemcmp( const unsigned char *s1, const unsigned char *s2, size_t n );
-
- private:
-
-#ifdef XB_LOGGING_SUPPORT
- xbLog *xLog;
-#endif
-
-};
-
-} /* namespace xb */
-#endif /* __XB_DBLIST_H__ */ \ No newline at end of file