The Date class uses a julian date representation of the current year, month, and day. More...
#include <datetime.h>
Public Types | |
enum | index_t { year = 10, month, day, dow } |
index elements. | |
Public Member Functions | |
Date () | |
Construct a new julian date with today's date. | |
Date (Date &object) | |
Create a julian date object from another object. | |
Date (int year, unsigned month=1, unsigned day=1) | |
Create a julian date from an arbitrary year, month, and day. | |
Date (char *pointer, size_t size=0) | |
Create a julian date from a ISO date string of a specified size. | |
Date (struct tm *object) | |
Create a julian date from a local or gmt date and time. | |
Date (time_t value) | |
Create a julian date from a time_t type. | |
long | get (void) |
Get the date as a number for the object or 0 if invalid. | |
char * | get (char *buffer) |
Get a ISO string representation of the date (yyyy-mm-dd). | |
unsigned | getDay (void) |
Get the day of the month of the date. | |
unsigned | getDayOfWeek (void) |
Get the day of the week (0-7). | |
long | getJulian (void) |
Get the julian number of a date. | |
unsigned | getMonth (void) |
Get the month of the date (1-12). | |
time_t | getTime (void) |
Get a time_t for the julian date if in time_t epoch. | |
int | getYear (void) |
Get the year of the date. | |
bool | isValid (void) |
Check if date is valid. | |
operator bool () | |
Check if julian date is valid for is() expression. | |
operator long () | |
Casting operator to return date as number. | |
bool | operator! () |
Check if julian date is not valid. | |
bool | operator!= (Date &date) |
Compare julian dates if not same date. | |
String | operator() () |
Expression operator to return an ISO date string for the current julian date. | |
long | operator* () |
Access julian value. | |
Date | operator+ (long days) |
Add days to julian date in an expression. | |
Date & | operator++ () |
Increment date by one day. | |
Date & | operator+= (long offset) |
Increment date by offset. | |
long | operator- (Date &date) |
Operator to compute number of days between two dates. | |
Date | operator- (long days) |
Subtract days from a julian date in an expression. | |
Date & | operator-- () |
Decrement date by one day. | |
Date & | operator-= (long offset) |
Decrement date by offset. | |
bool | operator< (Date &date) |
Compare julian date if earlier than another date. | |
bool | operator<= (Date &date) |
Compare julian date if earlier than or equal to another date. | |
Date & | operator= (Date &date) |
Assign date from another date object. | |
bool | operator== (Date &date) |
Compare julian dates if same date. | |
bool | operator> (Date &date) |
Compare julian date if later than another date. | |
bool | operator>= (Date &date) |
Compare julian date if later than or equal to another date. | |
int | operator[] (index_t component) |
Access numeric components. | |
void | set (char *pointer, size_t size=0) |
Set the julian date based on an ISO date string of specified size. | |
void | set (void) |
Set (update) the date with current date. | |
virtual | ~Date () |
Destroy julian date object. | |
Static Public Attributes | |
static size_t | sz_string |
Size of date string field. | |
Protected Member Functions | |
void | fromJulian (char *buf) |
void | toJulian (long year, long month, long day) |
virtual void | update (void) |
A method to use to "post" any changed values when shadowing a mixed object class. | |
Protected Attributes | |
long | julian |
The Date class uses a julian date representation of the current year, month, and day.
This is then manipulated in several forms and may be exported as needed.
Definition at line 66 of file datetime.h.
ucc::Date::Date | ( | time_t | value | ) |
Create a julian date from a time_t type.
value | from time() |
ucc::Date::Date | ( | struct tm * | object | ) |
Create a julian date from a local or gmt date and time.
object | from DateTime::glt() or gmt(). |
ucc::Date::Date | ( | char * | pointer, | |
size_t | size = 0 | |||
) |
Create a julian date from a ISO date string of a specified size.
pointer | to ISO date string. | |
size | of date field if not null terminated. |
ucc::Date::Date | ( | int | year, | |
unsigned | month = 1 , |
|||
unsigned | day = 1 | |||
) |
Create a julian date from an arbitrary year, month, and day.
year | of date. | |
month | of date (1-12). | |
day | of month (1-31). |
ucc::Date::Date | ( | Date & | object | ) |
Create a julian date object from another object.
object | to copy. |
long ucc::Date::get | ( | void | ) |
Get the date as a number for the object or 0 if invalid.
Reimplemented in ucc::DateTime.
char* ucc::Date::get | ( | char * | buffer | ) |
Get a ISO string representation of the date (yyyy-mm-dd).
buffer | to store string. |
Reimplemented in ucc::DateTime.
unsigned ucc::Date::getDay | ( | void | ) |
Get the day of the month of the date.
unsigned ucc::Date::getDayOfWeek | ( | void | ) |
Get the day of the week (0-7).
long ucc::Date::getJulian | ( | void | ) | [inline] |
unsigned ucc::Date::getMonth | ( | void | ) |
Get the month of the date (1-12).
time_t ucc::Date::getTime | ( | void | ) |
Get a time_t for the julian date if in time_t epoch.
int ucc::Date::getYear | ( | void | ) |
Get the year of the date.
bool ucc::Date::isValid | ( | void | ) |
ucc::Date::operator bool | ( | ) | [inline] |
Check if julian date is valid for is() expression.
Reimplemented in ucc::DateTime.
Definition at line 338 of file datetime.h.
ucc::Date::operator long | ( | ) | [inline] |
Casting operator to return date as number.
Reimplemented in ucc::DateTime.
Definition at line 206 of file datetime.h.
bool ucc::Date::operator! | ( | ) | [inline] |
Check if julian date is not valid.
Reimplemented in ucc::DateTime.
Definition at line 331 of file datetime.h.
bool ucc::Date::operator!= | ( | Date & | date | ) |
Compare julian dates if not same date.
date | to compare with. |
String ucc::Date::operator() | ( | ) |
Expression operator to return an ISO date string for the current julian date.
long ucc::Date::operator* | ( | ) | [inline] |
Date ucc::Date::operator+ | ( | long | days | ) |
Add days to julian date in an expression.
days | to add. |
Reimplemented in ucc::DateTime.
Date& ucc::Date::operator++ | ( | ) |
Date& ucc::Date::operator+= | ( | long | offset | ) |
Increment date by offset.
offset | to add to julian date. |
Reimplemented in ucc::DateTime.
long ucc::Date::operator- | ( | Date & | date | ) | [inline] |
Operator to compute number of days between two dates.
date | offset for computation. |
Definition at line 275 of file datetime.h.
Date ucc::Date::operator- | ( | long | days | ) |
Subtract days from a julian date in an expression.
days | to subtract. |
Reimplemented in ucc::DateTime.
Date& ucc::Date::operator-- | ( | ) |
Date& ucc::Date::operator-= | ( | long | offset | ) |
Decrement date by offset.
offset | to subtract from julian date. |
Reimplemented in ucc::DateTime.
bool ucc::Date::operator< | ( | Date & | date | ) |
Compare julian date if earlier than another date.
date | to compare with. |
bool ucc::Date::operator<= | ( | Date & | date | ) |
Compare julian date if earlier than or equal to another date.
date | to compare with. |
Assign date from another date object.
date | object to assign from. |
bool ucc::Date::operator== | ( | Date & | date | ) |
Compare julian dates if same date.
date | to compare with. |
bool ucc::Date::operator> | ( | Date & | date | ) |
Compare julian date if later than another date.
date | to compare with. |
bool ucc::Date::operator>= | ( | Date & | date | ) |
Compare julian date if later than or equal to another date.
date | to compare with. |
int ucc::Date::operator[] | ( | index_t | component | ) |
Access numeric components.
component | to access. |
Reimplemented in ucc::DateTime.
void ucc::Date::set | ( | char * | pointer, | |
size_t | size = 0 | |||
) |
Set the julian date based on an ISO date string of specified size.
pointer | to date string field. | |
size | of field if not null terminated. |
virtual void ucc::Date::update | ( | void | ) | [protected, virtual] |
A method to use to "post" any changed values when shadowing a mixed object class.
This is used by DateNumber and string classes.
Reimplemented in ucc::DateTime, ucc::DateTimeString, and ucc::DateNumber.