summaryrefslogtreecommitdiff
path: root/docs/doxygen/latex/xbdate_8h_source.tex
blob: e3c5e257898f627fcae0965525a4eefad64d0cf1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
\hypertarget{xbdate_8h_source}{}\doxysection{xbdate.\+h}
\label{xbdate_8h_source}\index{/mnt/1Tdata/xbase/xbase64-\/4.0.3/src/include/xbdate.h@{/mnt/1Tdata/xbase/xbase64-\/4.0.3/src/include/xbdate.h}}
\mbox{\hyperlink{xbdate_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 \textcolor{comment}{/*  xbdate.h}}
\DoxyCodeLine{2 \textcolor{comment}{}}
\DoxyCodeLine{3 \textcolor{comment}{XBase64 Software Library}}
\DoxyCodeLine{4 \textcolor{comment}{}}
\DoxyCodeLine{5 \textcolor{comment}{Copyright (c) 1997,2003,2014,2022 Gary A Kunkel}}
\DoxyCodeLine{6 \textcolor{comment}{}}
\DoxyCodeLine{7 \textcolor{comment}{The xb64 software library is covered under the terms of the GPL Version 3, 2007 license.}}
\DoxyCodeLine{8 \textcolor{comment}{}}
\DoxyCodeLine{9 \textcolor{comment}{Email Contact:}}
\DoxyCodeLine{10 \textcolor{comment}{}}
\DoxyCodeLine{11 \textcolor{comment}{    XDB-\/devel@lists.sourceforge.net}}
\DoxyCodeLine{12 \textcolor{comment}{    XDB-\/users@lists.sourceforge.net}}
\DoxyCodeLine{13 \textcolor{comment}{}}
\DoxyCodeLine{14 \textcolor{comment}{*/}}
\DoxyCodeLine{15 }
\DoxyCodeLine{16 }
\DoxyCodeLine{17 \textcolor{preprocessor}{\#ifndef \_\_XB\_XBDATE\_H\_\_}}
\DoxyCodeLine{18 \textcolor{preprocessor}{\#define \_\_XB\_XBDATE\_H\_\_}}
\DoxyCodeLine{19 }
\DoxyCodeLine{20 \textcolor{preprocessor}{\#ifdef  CMAKE\_COMPILER\_IS\_GNUCC}}
\DoxyCodeLine{21 \textcolor{preprocessor}{\#pragma interface}}
\DoxyCodeLine{22 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{23 }
\DoxyCodeLine{24 }
\DoxyCodeLine{25 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespacexb}{xb}}\{}
\DoxyCodeLine{26 }
\DoxyCodeLine{27 \textcolor{preprocessor}{\#define XB\_FMT\_WEEK   1}}
\DoxyCodeLine{28 \textcolor{preprocessor}{\#define XB\_FMT\_MONTH  2}}
\DoxyCodeLine{29 \textcolor{preprocessor}{\#define XB\_FMT\_YEAR   3}}
\DoxyCodeLine{30 }
\DoxyCodeLine{31 \textcolor{comment}{// next value is added to the date calculation to match dbase calculation}}
\DoxyCodeLine{32 \textcolor{comment}{// first valid dbase date is 01/01/0001}}
\DoxyCodeLine{33 \textcolor{preprocessor}{\#define JUL\_OFFSET  1721425L}}
\DoxyCodeLine{34 }
\DoxyCodeLine{35 }
\DoxyCodeLine{37 }
\DoxyCodeLine{62 \textcolor{keyword}{class }XBDLLEXPORT \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}} : \textcolor{keyword}{public} \mbox{\hyperlink{classxb_1_1xbSsv}{xbSsv}} \{}
\DoxyCodeLine{63   \textcolor{keyword}{public}:}
\DoxyCodeLine{64 }
\DoxyCodeLine{65   \mbox{\hyperlink{classxb_1_1xbDate}{xbDate}}();}
\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 \textcolor{comment}{//  xbInt16     FormatDate( const char *sFmtIn, xbString \&sFmtOut );}}
\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   xbInt32     JulianDays() \textcolor{keyword}{const};}
\DoxyCodeLine{101   xbInt16     JulToDate8( xbInt32 lJulDate );}
\DoxyCodeLine{102   xbInt16     LastDayOfMonth();}
\DoxyCodeLine{103   xbInt16     MonthOf() \textcolor{keyword}{const};}
\DoxyCodeLine{104   xbInt16     Set( \textcolor{keyword}{const} \mbox{\hyperlink{classxb_1_1xbString}{xbString}} \&Date8 );}
\DoxyCodeLine{105   xbInt16     Sysdate();}
\DoxyCodeLine{106   xbInt16     YearOf() \textcolor{keyword}{const};}
\DoxyCodeLine{107 }
\DoxyCodeLine{108 \textcolor{preprocessor}{\#ifdef XB\_DEBUG\_SUPPORT}}
\DoxyCodeLine{109   \textcolor{keywordtype}{void}        Dump( \textcolor{keyword}{const} \textcolor{keywordtype}{char} * title );}
\DoxyCodeLine{110   \textcolor{keywordtype}{void}        DumpDateTables();}
\DoxyCodeLine{111 \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{112 }
\DoxyCodeLine{113  \textcolor{keyword}{private}:}
\DoxyCodeLine{114   \textcolor{keywordtype}{void} SetDateTables();}
\DoxyCodeLine{115   \mbox{\hyperlink{classxb_1_1xbString}{xbString}} sDate8;              \textcolor{comment}{/* CCYYMMDD date format                       ie; 20140718 */}}
\DoxyCodeLine{116 }
\DoxyCodeLine{117   \textcolor{keyword}{static} \textcolor{keywordtype}{int} iAggregatedDaysInMonths[2][13];}
\DoxyCodeLine{118   \textcolor{keyword}{static} \textcolor{keywordtype}{int} iDaysInMonths[2][13];}
\DoxyCodeLine{119 \};}
\DoxyCodeLine{120 }
\DoxyCodeLine{121 \}         \textcolor{comment}{/* namespace */}}
\DoxyCodeLine{122 \textcolor{preprocessor}{\#endif    }\textcolor{comment}{/*\_\_XB\_XBDATE\_H\_\_ */}\textcolor{preprocessor}{}}
\DoxyCodeLine{123 }

\end{DoxyCode}