frepple::utils::Date Class Reference

This class represents a date and time with an accuracy of one second. More...

#include <utils.h>

List of all members.

Public Member Functions

 Date (int year, int month, int day, int hr=0, int min=0, int sec=0)
 Date (const char *s)
 Date ()
time_t getTicks () const
 operator bool () const
 operator string () const
bool operator! () const
bool operator!= (const Date &b) const
Date operator+ (const TimePeriod &l) const
void operator+= (const TimePeriod &l)
TimePeriod operator- (const Date &l) const
Date operator- (const TimePeriod &l) const
void operator-= (const TimePeriod &l)
bool operator< (const Date &b) const
bool operator<= (const Date &b) const
void operator= (const Date &b)
bool operator== (const Date &b) const
bool operator> (const Date &b) const
bool operator>= (const Date &b) const
void parse (const char *, const string &=format)
size_t toCharBuffer (char *) const

Static Public Member Functions

static string getFormat ()
static Date now ()
static void setFormat (const string &n)

Static Public Attributes

static const Date infiniteFuture
static const Date infinitePast

Friends

ostream & operator<< (ostream &, const Date &)

Detailed Description

This class represents a date and time with an accuracy of one second.

Definition at line 1584 of file utils.h.


Constructor & Destructor Documentation

frepple::utils::Date::Date (  )  [inline]

Default constructor.

Definition at line 1635 of file utils.h.

frepple::utils::Date::Date ( const char *  s  )  [inline]

Constructor initialized with a string. The string needs to be in the format specified by the "format".

Definition at line 1642 of file utils.h.

frepple::utils::Date::Date ( int  year,
int  month,
int  day,
int  hr = 0,
int  min = 0,
int  sec = 0 
)

Constructor with year, month and day as arguments. Hours, minutes and seconds can optionally be passed too.

Definition at line 247 of file date.cpp.


Member Function Documentation

static string frepple::utils::Date::getFormat (  )  [inline, static]

Retrieves the default date format.

Definition at line 1739 of file utils.h.

time_t frepple::utils::Date::getTicks (  )  const [inline]

Return the seconds since the epoch, which is also the internal representation of a date.

Definition at line 1730 of file utils.h.

static Date frepple::utils::Date::now (  )  [inline, static]

Static function returns a date object initialized with the current Date and time.

Definition at line 1709 of file utils.h.

frepple::utils::Date::operator bool (  )  const [inline]

Check whether the date has been initialized.

Definition at line 1705 of file utils.h.

frepple::utils::Date::operator string (  )  const [inline]

Converts the date to a string. The format can be controlled by the setFormat() function.

Definition at line 1713 of file utils.h.

bool frepple::utils::Date::operator! (  )  const [inline]

Check whether the date has been initialized.

Definition at line 1702 of file utils.h.

bool frepple::utils::Date::operator!= ( const Date b  )  const [inline]

Inequality of dates.

Definition at line 1661 of file utils.h.

Date frepple::utils::Date::operator+ ( const TimePeriod l  )  const [inline]

Adding a time to a date returns a new date.

Definition at line 1681 of file utils.h.

void frepple::utils::Date::operator+= ( const TimePeriod l  )  [inline]

Adds some time to this date.

Definition at line 1673 of file utils.h.

TimePeriod frepple::utils::Date::operator- ( const Date l  )  const [inline]

Subtracting two date values returns the time difference in a TimePeriod object.

Definition at line 1698 of file utils.h.

Date frepple::utils::Date::operator- ( const TimePeriod l  )  const [inline]

Subtracting a time from a date returns a new date.

Definition at line 1689 of file utils.h.

void frepple::utils::Date::operator-= ( const TimePeriod l  )  [inline]

Subtracts some time to this date.

Definition at line 1677 of file utils.h.

bool frepple::utils::Date::operator< ( const Date b  )  const [inline]

Comparison between dates.

Definition at line 1652 of file utils.h.

bool frepple::utils::Date::operator<= ( const Date b  )  const [inline]

Comparison between dates.

Definition at line 1667 of file utils.h.

void frepple::utils::Date::operator= ( const Date b  )  [inline]

Assignment operator.

Definition at line 1670 of file utils.h.

bool frepple::utils::Date::operator== ( const Date b  )  const [inline]

Equality of dates.

Definition at line 1658 of file utils.h.

bool frepple::utils::Date::operator> ( const Date b  )  const [inline]

Comparison between dates.

Definition at line 1655 of file utils.h.

bool frepple::utils::Date::operator>= ( const Date b  )  const [inline]

Comparison between dates.

Definition at line 1664 of file utils.h.

void frepple::utils::Date::parse ( const char *  s,
const string &  fmt = format 
)

Function that parses a string according to the format string.

Definition at line 230 of file date.cpp.

static void frepple::utils::Date::setFormat ( const string &  n  )  [inline, static]

Updates the default date format.

Definition at line 1736 of file utils.h.

size_t frepple::utils::Date::toCharBuffer ( char *  str  )  const

This function fills a character buffer with a text representation of the date.
The character buffer passed is expected to have room for at least 30 characters. 30 characters should be sufficient for even the most funky date format.

Definition at line 124 of file date.cpp.


Friends And Related Function Documentation

ostream& operator<< ( ostream &  os,
const Date d 
) [friend]

Prints a date to the outputstream.

Definition at line 1761 of file utils.h.


Member Data Documentation

A constant representing the infinite future, i.e. the latest time which we can represent.
This value is currently set to 2030-12-31T00:00:00.

Definition at line 1751 of file utils.h.

A constant representing the infinite past, i.e. the earliest time which we can represent.
This value is normally 1971-01-01T00:00:00.

Definition at line 1745 of file utils.h.


The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.2-20100208