UCommon
Public Types | Public Member Functions | Protected Member Functions
ucommon::DateTimeString Class Reference

A DateTime string class. More...

#include <datetime.h>

Inheritance diagram for ucommon::DateTimeString:
Inheritance graph
[legend]
Collaboration diagram for ucommon::DateTimeString:
Collaboration graph
[legend]

Public Types

enum  mode_t { DATE, TIME, BOTH }
 Specify string buffer mode. More...
- Public Types inherited from ucommon::DateTime
enum  index_t {
  year = Date::year, month = Date::month, day = Date::day, dow = Date::dow,
  hour = Time::hour, minute = Time::minute, second = Time::second
}
 Index to components we can access.
- Public Types inherited from ucommon::Date
- Public Types inherited from ucommon::Time

Public Member Functions

char * c_str (void)
 Extract char from string.
 DateTimeString (time_t time)
 Construct a date and time from C libraray time_t type.
 DateTimeString (tm_t *tm)
 Construct a date and time from C library time structure.
 DateTimeString (char *pointer, size_t size=0)
 Construct a date and time from ISO string buffer.
 DateTimeString (int year, unsigned month, unsigned day, int hour=0, int minute=0, int second=0)
 Construct a date and time object from explicit date and time values.
 DateTimeString (DateTimeString &object)
 Create a datetime object from another object.
 DateTimeString (mode_t string=DateTimeString::BOTH)
 Construct a new date and time object with current date and time.
 operator char * (void)
 Cast to string.
void set (void)
 Set (update) the date and time with current date and time.
void set (mode_t string)
 Set the string mode.
virtual ~DateTimeString ()
 Destroy date time string.
- Public Member Functions inherited from ucommon::DateTime
 DateTime (time_t time)
 Construct a date and time from C library time_t type.
 DateTime (tm_t *tm)
 Construct a date and time from C library time structure.
 DateTime (char *pointer, size_t size=0)
 Construct a date and time from ISO string buffer.
 DateTime (int year, unsigned month, unsigned day, int hour=0, int minute=0, int second=0)
 Construct a date and time object from explicit date and time values.
 DateTime (DateTime &object)
 Create a datetime object from another object.
 DateTime ()
 Construct a new date and time object with current date and time.
String format (char *strftime)
 Return date and time formatted using strftime format values.
char * get (char *buffer)
 Get a ISO formatted date and time string for current object.
time_t get (void)
 Get C library time_t type if object in C library epoch range.
bool isValid (void)
 Test if object is valid.
 operator bool ()
 Test is date and time is valid for is() operator.
 operator double ()
 Convert date and time to julian day number.
 operator long ()
 Casting operator to return date as number.
bool operator! ()
 Check if date and time is not valid.
bool operator!= (DateTime &datetime)
 Compare date and time with another date and time to see if not same.
DateTime operator+ (long seconds)
 Add seconds to datetime in an expression.
DateTimeoperator++ ()
 Add a day from the current date and time.
DateTimeoperator+= (long seconds)
 Add seconds to the current datetime object.
long operator- (DateTime &datetime)
 Operator to compute number of days between two dates.
DateTime operator- (long seconds)
 Subtract seconds from datetime in an expression.
DateTimeoperator-- ()
 Subtract a day from the current date and time.
DateTimeoperator-= (long seconds)
 Subtract seconds from current datetime object.
bool operator< (DateTime &datetime)
 Compare date and time with another date and time to see if earlier.
bool operator<= (DateTime &datetime)
 Compare date and time with another date and time to see if earlier or the same.
DateTimeoperator= (DateTime &datetime)
 Assign date and time from another datetime object.
bool operator== (DateTime &datetime)
 Compare date and time with another date and time to see if the same.
bool operator> (DateTime &datetime)
 Compare date and time with another date and time to see if later.
bool operator>= (DateTime &datetime)
 Compare date and time with another date and time to see if later or the same.
int operator[] (index_t component)
 Access time components.
virtual ~DateTime ()
 Destroy date and time object.
- Public Member Functions inherited from ucommon::Date
 Date (time_t value)
 Create a julian date from a time_t type.
 Date (struct tm *object)
 Create a julian date from a local or gmt date and time.
 Date (char *pointer, size_t size=0)
 Create a julian date from a ISO date string of a specified size.
 Date (int year, unsigned month=1, unsigned day=1)
 Create a julian date from an arbitrary year, month, and day.
 Date (Date &object)
 Create a julian date object from another object.
 Date ()
 Construct a new julian date with today's date.
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 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.
long operator- (Date &date)
 Operator to compute number of days between two dates.
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.
Dateoperator= (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.
void set (char *pointer, size_t size=0)
 Set the julian date based on an ISO date string of specified size.
virtual ~Date ()
 Destroy julian date object.
- Public Member Functions inherited from ucommon::Time
int getHour (void)
 Get hours from midnight.
int getMinute (void)
 Get minutes from current hour.
int getSecond (void)
 Get seconds from current minute.
bool operator!= (Time &time)
 Compare time with another time to see if not same time.
String operator() ()
 Convert to standard 24 hour time string.
long operator* ()
 Get object time in seconds.
long operator- (Time &reference)
 Get difference (in seconds) between two times.
bool operator< (Time &time)
 Compare time if earlier than another time.
bool operator<= (Time &time)
 Compare time if earlier than or equal to another time.
Timeoperator= (Time &time)
 Assign a time as a copy of another time.
bool operator== (Time &time)
 Compare time with another time to see if same time.
bool operator> (Time &time)
 Compare time if later than another time.
bool operator>= (Time &time)
 Compare time if later than or equal to another time.
int operator[] (index_t component)
 Get component of time object.
void set (char *pointer, size_t size=0)
 Set time from a hh:mm:ss formatted string.
 Time (time_t value)
 Create a time from the time portion of a time_t.
 Time (tm_t *object)
 Create a time from the time portion of a date and time object.
 Time (char *pointer, size_t size=0)
 Create a time from a hh:mm:ss formatted time string.
 Time (int hour, int minute, int second)
 Create a time from hours (0-23), minutes (0-59), and seconds (0-59).
 Time (Time &object)
 Create a time object from another object.
 Time ()
 Create a time from current time.
virtual ~Time ()
 Destroy time object.

Protected Member Functions

void update (void)
 A method to use to "post" any changed values when shadowing a mixed object class.

Additional Inherited Members

- Static Public Member Functions inherited from ucommon::DateTime
static tm_tglt (time_t *time=((void *) 0))
 Fetch an instance of time converted to local time.
static tm_tgmt (time_t *time=((void *) 0))
 Fetch an instance of time converted to gmt.
static void release (tm_t *object)
 Release a struct tm object from glt or gmt.
- Static Public Attributes inherited from ucommon::DateTime
static long c_day
 Constant for number of seconds in a day.
static long c_hour
 Constant for number of seconds in a hour.
static long c_week
 Constant for number of seconds in a week.
static size_t sz_string
 Size of datetime string field.
- Static Public Attributes inherited from ucommon::Date
- Static Public Attributes inherited from ucommon::Time

Detailed Description

A DateTime string class.

This can be used to access the date and time as a standard string without requiring an external buffer.

Author:
David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org a datetime class that returns strings.

Definition at line 899 of file datetime.h.


Member Enumeration Documentation

Specify string buffer mode.

By default we form a string with date and time.

Definition at line 906 of file datetime.h.


Constructor & Destructor Documentation

ucommon::DateTimeString::DateTimeString ( time_t  time)

Construct a date and time from C libraray time_t type.

Parameters:
timetype to make date and time from.
ucommon::DateTimeString::DateTimeString ( tm_t tm)

Construct a date and time from C library time structure.

Parameters:
tmstructure from C library (from glt or gmt).
ucommon::DateTimeString::DateTimeString ( char *  pointer,
size_t  size = 0 
)

Construct a date and time from ISO string buffer.

Parameters:
pointerto string field holding date and time.
sizeof field if not null terminated string.
ucommon::DateTimeString::DateTimeString ( int  year,
unsigned  month,
unsigned  day,
int  hour = 0,
int  minute = 0,
int  second = 0 
)

Construct a date and time object from explicit date and time values.

Parameters:
yearof object.
monthof object (1-12).
dayof month of object (1-31).
hourof object (0-23).
minuteof object (0-59).
secondof object (0-59).
ucommon::DateTimeString::DateTimeString ( DateTimeString object)

Create a datetime object from another object.

Parameters:
objectto copy.

Member Function Documentation

char* ucommon::DateTimeString::c_str ( void  )
inline

Extract char from string.

Returns:
string of datetime.

Definition at line 969 of file datetime.h.

ucommon::DateTimeString::operator char * ( void  )
inline

Cast to string.

Returns:
string of datetime.

Definition at line 977 of file datetime.h.

void ucommon::DateTimeString::set ( mode_t  string)

Set the string mode.

Parameters:
stringmode to use.
void ucommon::DateTimeString::update ( void  )
protectedvirtual

A method to use to "post" any changed values when shadowing a mixed object class.

This is used by DateNumber and string classes.

Reimplemented from ucommon::DateTime.


The documentation for this class was generated from the following file: