bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
|
#include <DODS_Date_Time.h>
Public Member Functions | |
Constructors | |
DODS_Date_Time () | |
DODS_Date_Time (DODS_Date d, DODS_Time t) | |
DODS_Date_Time (string date_time) | |
DODS_Date_Time (BaseType *date_time) | |
DODS_Date_Time (int y, int m, int d, int hh, int mm=0, double ss=0.0, bool gmt=false) | |
DODS_Date_Time (int y, int yd, int hh, int mm=0, double ss=0.0, bool gmt=false) | |
Assignment | |
void | set (DODS_Date d, DODS_Time t) |
void | set (string date_time) |
void | set (BaseType *date_time) |
void | set (int y, int m, int d, int hh, int mm=0, double ss=0.0, bool gmt=false) |
void | set (int y, int yd, int hh, int mm=0, double ss=0.0, bool gmt=false) |
Access | |
int | year () const |
int | month () const |
int | day () const |
int | day_number () const |
int | hours () const |
int | minutes () const |
double | seconds () const |
bool | gmt () const |
string | get (date_format format=ymd, bool gmt=true) const |
double | julian_day () const |
time_t | unix_time () const |
Relational operators | |
double | get_epsilon () const |
void | set_epsilon (double eps) |
bool | OK () const |
int | operator== (DODS_Date_Time &t1, DODS_Date_Time &t2) |
Equality. | |
int | operator!= (DODS_Date_Time &t1, DODS_Date_Time &t2) |
Inequality. | |
int | operator< (DODS_Date_Time &t1, DODS_Date_Time &t2) |
Less-than. | |
int | operator> (DODS_Date_Time &t1, DODS_Date_Time &t2) |
Greater-than. | |
int | operator<= (DODS_Date_Time &t1, DODS_Date_Time &t2) |
Less-than or Equal-to. | |
int | operator>= (DODS_Date_Time &t1, DODS_Date_Time &t2) |
Greater-than or Equal-to. | |
The DODS Date/Time class is used to represent and compute with combined date and time values.
Definition at line 47 of file DODS_Date_Time.h.
DODS_Date_Time::DODS_Date_Time | ( | ) |
Create an empty instance. Will not pass the class invariant.
Definition at line 89 of file DODS_Date_Time.cc.
DODS_Date_Time::DODS_Date_Time | ( | string | date_time | ) |
Create an instance using the string representation of a DODS_Date_Time.
date_time | The date/time string. |
Definition at line 98 of file DODS_Date_Time.cc.
DODS_Date_Time::DODS_Date_Time | ( | BaseType * | date_time | ) |
Create an instance using the string representation of a DODS_Date_Time contained in a DODS Str.
date_time | The date/time string (in a DODS Str pointer). |
Definition at line 103 of file DODS_Date_Time.cc.
DODS_Date_Time::DODS_Date_Time | ( | int | y, |
int | m, | ||
int | d, | ||
int | hh, | ||
int | mm = 0, | ||
double | ss = 0.0, | ||
bool | gmt = false ) |
Create an instance using numeric values for the year, ..., seconds.
y | The year number, 1 is 1 A.D. |
m | The month, 1 is January, ..., 12 is December. |
d | The day. |
hh | The hour, 0...23. |
mm | The minute, 0...59. |
ss | The seconds, 0.0, ..., 59.999... |
gmt | True if the time is a GMT time, false otherwise. |
Definition at line 108 of file DODS_Date_Time.cc.
DODS_Date_Time::DODS_Date_Time | ( | int | y, |
int | yd, | ||
int | hh, | ||
int | mm = 0, | ||
double | ss = 0.0, | ||
bool | gmt = false ) |
Create an instance using numeric values for the year, ..., seconds.
y | The year number, 1 is 1 A.D. |
yd | The year-day, 1 is 1 January, 365/366 is 31 December. |
hh | The hour, 0...23. |
mm | The minute, 0...59. |
ss | The seconds, 0.0, ..., 59.999... |
gmt | True if the time is a GMT time, false otherwise. |
Definition at line 114 of file DODS_Date_Time.cc.
int DODS_Date_Time::day | ( | ) | const |
Definition at line 259 of file DODS_Date_Time.cc.
int DODS_Date_Time::day_number | ( | ) | const |
Definition at line 265 of file DODS_Date_Time.cc.
Get the string representation of the date/time. If #format# is ymd#, return the date-time using yyyy/mm/dd:hh:mm:ss notation, if it is yd#, use yyyy/ddd... notation. If gmt# is true, append GMT to times that are GMT times, if false, don't (ever) append the GMT suffix.
format | The format of the date-part. |
gmt | Append the GMT suffix to GMT times. |
Definition at line 295 of file DODS_Date_Time.cc.
double DODS_Date_Time::get_epsilon | ( | ) | const |
Get the value of epsilon used for equality tests of time.
Definition at line 344 of file DODS_Date_Time.cc.
bool DODS_Date_Time::gmt | ( | ) | const |
Definition at line 289 of file DODS_Date_Time.cc.
int DODS_Date_Time::hours | ( | ) | const |
Definition at line 271 of file DODS_Date_Time.cc.
double DODS_Date_Time::julian_day | ( | ) | const |
Definition at line 323 of file DODS_Date_Time.cc.
int DODS_Date_Time::minutes | ( | ) | const |
Definition at line 277 of file DODS_Date_Time.cc.
int DODS_Date_Time::month | ( | ) | const |
Definition at line 253 of file DODS_Date_Time.cc.
bool DODS_Date_Time::OK | ( | ) | const |
Class invariant.
Definition at line 84 of file DODS_Date_Time.cc.
double DODS_Date_Time::seconds | ( | ) | const |
Definition at line 283 of file DODS_Date_Time.cc.
void DODS_Date_Time::set | ( | BaseType * | date_time | ) |
Set an instance using the string representation of a DODS_Date_Time contained in a DODS Str.
date_time | The date/time string (in a DODS Str pointer). |
Definition at line 223 of file DODS_Date_Time.cc.
void DODS_Date_Time::set | ( | int | y, |
int | m, | ||
int | d, | ||
int | hh, | ||
int | mm = 0, | ||
double | ss = 0.0, | ||
bool | gmt = false ) |
Set an instance using numeric values for the year, ..., seconds.
y | The year number, 1 is 1 A.D. |
m | The month, 1 is January, ..., 12 is December. |
d | The day. |
hh | The hour, 0...23. |
mm | The minute, 0...59. |
ss | The seconds, 0.0, ..., 59.999... |
gmt | True if the time is a GMT time, false otherwise. |
Definition at line 229 of file DODS_Date_Time.cc.
Set an instance using numeric values for the year, ..., seconds.
y | The year number, 1 is 1 A.D. |
yd | The year-day, 1 is 1 January, 365/366 is 31 December. |
hh | The hour, 0...23. |
mm | The minute, 0...59. |
ss | The seconds, 0.0, ..., 59.999... |
gmt | True if the time is a GMT time, false otherwise. |
Definition at line 238 of file DODS_Date_Time.cc.
void DODS_Date_Time::set | ( | string | date_time | ) |
Set an instance using the string representation of a DODS_Date_Time.
date_time | The date/time string. |
Definition at line 203 of file DODS_Date_Time.cc.
void DODS_Date_Time::set_epsilon | ( | double | eps | ) |
Set the value of epsilon used for equality tests of time. By default the value is 0.000001 (10e-6).
NB: This should rarely be changed.
Definition at line 350 of file DODS_Date_Time.cc.
time_t DODS_Date_Time::unix_time | ( | ) | const |
Return the number of seconds since 00:00:00 UTC 1 Jan 1970. If the date is before 1 Jan 1970, return DODS_UINT_MAX. If the date is too late to represent as seconds since 1 Jan 1970, return DODS_UINT_MAX. Each day starts at 00:00:00 UTC.
Definition at line 329 of file DODS_Date_Time.cc.
int DODS_Date_Time::year | ( | ) | const |
Definition at line 247 of file DODS_Date_Time.cc.
|
friend |
Inequality.
Definition at line 362 of file DODS_Date_Time.cc.
|
friend |
Less-than.
Definition at line 367 of file DODS_Date_Time.cc.
|
friend |
Less-than or Equal-to.
Definition at line 381 of file DODS_Date_Time.cc.
|
friend |
Equality.
Definition at line 356 of file DODS_Date_Time.cc.
|
friend |
Greater-than.
Definition at line 375 of file DODS_Date_Time.cc.
|
friend |
Greater-than or Equal-to.
Definition at line 388 of file DODS_Date_Time.cc.