00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #ifndef COMMONCPP_NUMBERS_H_
00039 #define COMMONCPP_NUMBERS_H_
00040
00041 #ifndef COMMONCPP_CONFIG_H_
00042 #include <commoncpp/config.h>
00043 #endif
00044
00045 #ifndef COMMONCPP_STRING_H_
00046 #include <commoncpp/string.h>
00047 #endif
00048
00049 typedef ucommon::DateTimeString DateTimeString;
00050 typedef ucommon::DateNumber DateNumber;
00051
00052 class __EXPORT Date : public ucommon::Date
00053 {
00054 protected:
00055 inline void toJulian(long year, long month, long day)
00056 {ucommon::Date::set(year, month, day);}
00057
00058 inline void fromJulian(char *buf) const
00059 {put(buf);}
00060
00061 public:
00062 inline Date(time_t value) : ucommon::Date(value) {};
00063
00064 inline Date(struct tm *object) : ucommon::Date(object) {};
00065
00066 inline Date(const char *ptr, size_t size = 0) : ucommon::Date(ptr, size) {};
00067
00068 inline Date(int y, unsigned m, unsigned d) : ucommon::Date(y, m, d) {};
00069
00070 inline Date(const Date& object) : ucommon::Date(object) {};
00071
00072 inline Date() : ucommon::Date() {};
00073
00074 inline int getYear(void) const
00075 {return year();}
00076
00077 inline unsigned getMonth(void) const
00078 {return month();}
00079
00080 inline unsigned getDay(void) const
00081 {return day();}
00082
00083 inline unsigned getDayOfWeek(void) const
00084 {return dow();}
00085
00086 inline long getJulian(void) const
00087 {return julian;}
00088
00089 inline const char *get(char *buffer) const
00090 {return put(buffer);}
00091
00092 inline time_t getTime(void) const
00093 {return timeref();}
00094
00095 inline bool isValid(void) const
00096 {return is_valid();}
00097 };
00098
00099 class __EXPORT Time : public ucommon::Time
00100 {
00101 protected:
00102 inline void toSeconds(int h, int m = 0, int s = 0)
00103 {set(h, m, s);}
00104
00105 inline void fromSeconds(char *buf) const
00106 {put(buf);}
00107
00108 public:
00109 inline Time(time_t value) : ucommon::Time(value) {};
00110
00111 inline Time(tm_t *object) : ucommon::Time(object) {};
00112
00113 inline Time(const char *ptr, size_t size) : ucommon::Time(ptr, size) {};
00114
00115 inline Time(int h, int m, int s) : ucommon::Time(h, m, s) {};
00116
00117 inline Time() : ucommon::Time() {};
00118
00119 inline int getHour(void) const
00120 {return hour();}
00121
00122 inline int getMinute(void) const
00123 {return minute();}
00124
00125 inline int getSecond(void) const
00126 {return second();}
00127
00128 inline const char *get(char *buffer) const
00129 {return put(buffer);}
00130
00131 inline bool isValid(void) const
00132 {return is_valid();}
00133
00134 };
00135
00136 class __EXPORT DateTime : public ucommon::DateTime
00137 {
00138 public:
00139 inline DateTime(time_t time) : ucommon::DateTime(time) {};
00140
00141 inline DateTime(struct tm *dt) : ucommon::DateTime(dt) {};
00142
00143
00144 inline DateTime(int year, unsigned month, unsigned day,
00145 int hour = 0, int minute = 0, int second = 0) :
00146 ucommon::DateTime(year, month, day, hour, minute, second) {};
00147
00148 inline DateTime(const char *ptr, size_t size) :
00149 ucommon::DateTime(ptr, size) {};
00150
00151 inline DateTime(const DateTime& obj) : ucommon::DateTime(obj) {};
00152
00153 inline DateTime() : ucommon::DateTime() {};
00154
00155 inline int getYear(void) const
00156 {return year();}
00157
00158 inline unsigned getMonth(void) const
00159 {return month();}
00160
00161 inline unsigned getDay(void) const
00162 {return day();}
00163
00164 inline unsigned getDayOfWeek(void) const
00165 {return dow();}
00166
00167 inline long getJulian(void) const
00168 {return julian;}
00169
00170 inline const char *get(char *buffer) const
00171 {return ucommon::DateTime::put(buffer);}
00172
00173 inline time_t getTime(void) const
00174 {return ucommon::DateTime::timeref();}
00175
00176 inline bool isValid(void) const
00177 {return ucommon::DateTime::is_valid();}
00178
00179 inline int getHour(void) const
00180 {return hour();}
00181
00182 inline int getMinute(void) const
00183 {return minute();}
00184
00185 inline int getSecond(void) const
00186 {return second();}
00187
00188 inline static tm_t *glt(time_t *time = NULL)
00189 {return ucommon::DateTime::local(time);}
00190 };
00191
00192 #endif
00193