Time Class Reference

The Time class uses a integer representation of the current time. More...

#include <datetime.h>

Inheritance diagram for Time:
Inheritance graph
[legend]

Public Member Functions

const char * get (char *buffer) const
long get (void) const
 Get current time in seconds from midnight.
int getHour (void) const
int getMinute (void) const
int getSecond (void) const
int hour (void) const
 Get hours from midnight.
bool is_valid (void) const
 Check if time object had valid value.
bool isValid (void) const
int minute (void) const
 Get minutes from current hour.
 operator bool () const
 Check if time object has valid value for is() operator.
 operator long ()
 Get time in seconds.
bool operator! () const
 Check if time object has valid value for ! operator.
bool operator!= (const Time &time) const
 Compare time with another time to see if not same time.
String operator() () const
 Convert to standard 24 hour time string.
long operator* () const
 Get object time in seconds.
Time operator+ (long seconds)
 Add seconds to the current time, wrap if 24 hours.
Timeoperator++ ()
 Incrememnt time by 1 second, wrap on 24 hour period.
Timeoperator+= (long seconds)
 Increment time by specified seconds.
Time operator- (long seconds)
 Subtract seconds to the current time, wrap if 24 hours.
long operator- (const Time &reference)
 Get difference (in seconds) between two times.
Timeoperator-- ()
 Decrement time by 1 second, wrap on 24 hour period.
Timeoperator-= (long seconds)
 Decrement time by specified seconds.
bool operator< (const Time &time) const
 Compare time if earlier than another time.
bool operator<= (const Time &time) const
 Compare time if earlier than or equal to another time.
Timeoperator= (const Time &time)
 Assign a time as a copy of another time.
bool operator== (const Time &time) const
 Compare time with another time to see if same time.
bool operator> (const Time &time) const
 Compare time if later than another time.
bool operator>= (const Time &time) const
 Compare time if later than or equal to another time.
const char * put (char *buffer) const
 Get a hh:mm:ss formatted string for current time.
int second (void) const
 Get seconds from current minute.
void set (const char *pointer, size_t size=0)
 Set time from a hh:mm:ss formatted string.
void set (void)
 Set (update) the time with current time.
void set (int hour, int minute=0, int second=0)
 Time (int h, int m, int s)
 Time (const char *ptr, size_t size)
 Time (tm_t *object)
 Time (time_t value)
 Time ()
 Create a time from current time.
 Time (const Time &object)
 Create a time object from another object.
 Time (int hour, int minute, int second)
 Create a time from hours (0-23), minutes (0-59), and seconds (0-59).
 Time (const char *pointer, size_t size=0)
 Create a time from a hh:mm:ss formatted time string.
 Time (tm_t *object)
 Create a time from the time portion of a date and time object.
 Time (time_t value)
 Create a time from the time portion of a time_t.
virtual ~Time ()
 Destroy time object.

Static Public Attributes

static const long c_day
 Constant for number of seconds in a day.
static const long c_hour
 Constant for number of seconds in a hour.
static const long c_week
 Constant for number of seconds in a week.
static const size_t sz_string
 Size of time string field.

Protected Member Functions

void fromSeconds (char *buf) const
void toSeconds (int h, int m=0, int s=0)
virtual void update (void)

Protected Attributes

long seconds

Detailed Description

The Time class uses a integer representation of the current time.

This is then manipulated in several forms and may be exported as needed. The time object can represent an instance in time (hours, minutes, and seconds) in a 24 hour period or can represent a duration. Millisecond accuracy can be offered.

Author:
Marcelo Dalmas <mad@brasmap.com.br> and David Sugar <dyfet@gnutelephony.org> Integer based time class.

Definition at line 345 of file datetime.h.


Constructor & Destructor Documentation

Time::Time ( time_t  value  ) 

Create a time from the time portion of a time_t.

Parameters:
value of time_t to use.
Time::Time ( tm_t object  ) 

Create a time from the time portion of a date and time object.

Parameters:
object from DateTime::glt() or gmt().
Time::Time ( const char *  pointer,
size_t  size = 0 
)

Create a time from a hh:mm:ss formatted time string.

Parameters:
pointer to formatted time field.
size of field if not null terminated.
Time::Time ( int  hour,
int  minute,
int  second 
)

Create a time from hours (0-23), minutes (0-59), and seconds (0-59).

Parameters:
hour of time.
minute of time.
second of time.
Time::Time ( const Time object  ) 

Create a time object from another object.

Parameters:
object to copy.

Member Function Documentation

long Time::get ( void   )  const

Get current time in seconds from midnight.

Returns:
seconds from midnight.

Reimplemented in DateTime.

int Time::hour ( void   )  const

Get hours from midnight.

Returns:
hours from midnight.
bool Time::is_valid ( void   )  const

Check if time object had valid value.

Returns:
true if object is valid.

Reimplemented in DateTime.

int Time::minute ( void   )  const

Get minutes from current hour.

Returns:
minutes from current hour.
Time::operator bool (  )  const [inline]

Check if time object has valid value for is() operator.

Returns:
true if object is valid.

Reimplemented in DateTime.

Definition at line 472 of file datetime.h.

Time::operator long (  )  [inline]

Get time in seconds.

Returns:
seconds.

Definition at line 507 of file datetime.h.

bool Time::operator! (  )  const [inline]

Check if time object has valid value for ! operator.

Returns:
true if object is not valid.

Reimplemented in DateTime.

Definition at line 479 of file datetime.h.

bool Time::operator!= ( const Time time  )  const

Compare time with another time to see if not same time.

Parameters:
time to compare with.
Returns:
true if not same time.

Reimplemented in DateTime.

String Time::operator() (  )  const

Convert to standard 24 hour time string.

Returns:
time string.
long Time::operator* (  )  const [inline]

Get object time in seconds.

Returns:
time in seconds.

Definition at line 514 of file datetime.h.

Time Time::operator+ ( long  seconds  ) 

Add seconds to the current time, wrap if 24 hours.

Parameters:
seconds to add.
Returns:
new time object with modified value.

Reimplemented in DateTime.

Time& Time::operator++ (  ) 

Incrememnt time by 1 second, wrap on 24 hour period.

Returns:
modified instance of current time object.

Reimplemented in DateTime.

Time& Time::operator+= ( long  seconds  ) 

Increment time by specified seconds.

Wraps on 24 hour period.

Parameters:
seconds to add to current time.
Returns:
modified instance of current time object.

Reimplemented in DateTime.

Time Time::operator- ( long  seconds  ) 

Subtract seconds to the current time, wrap if 24 hours.

Parameters:
seconds to subtract.
Returns:
new time object with modified value.

Reimplemented in DateTime.

long Time::operator- ( const Time reference  ) 

Get difference (in seconds) between two times.

Parameters:
reference time to get difference from.
Returns:
difference in seconds.

Reimplemented in DateTime.

Time& Time::operator-- (  ) 

Decrement time by 1 second, wrap on 24 hour period.

Returns:
modified instance of current time object.

Reimplemented in DateTime.

Time& Time::operator-= ( long  seconds  ) 

Decrement time by specified seconds.

Wraps on 24 hour period.

Parameters:
seconds to subtract from current time.
Returns:
modified instance of current time object.

Reimplemented in DateTime.

bool Time::operator< ( const Time time  )  const

Compare time if earlier than another time.

Parameters:
time object to compare with.
Returns:
true if earlier than object.

Reimplemented in DateTime.

bool Time::operator<= ( const Time time  )  const

Compare time if earlier than or equal to another time.

Parameters:
time object to compare with.
Returns:
true if earlier or same as object.

Reimplemented in DateTime.

Time& Time::operator= ( const Time time  ) 

Assign a time as a copy of another time.

Parameters:
time to assign from.
Returns:
time object that was assigned.

Reimplemented in DateTime.

bool Time::operator== ( const Time time  )  const

Compare time with another time to see if same time.

Parameters:
time to compare with.
Returns:
true if same time.

Reimplemented in DateTime.

bool Time::operator> ( const Time time  )  const

Compare time if later than another time.

Parameters:
time object to compare with.
Returns:
true if later than object.

Reimplemented in DateTime.

bool Time::operator>= ( const Time time  )  const

Compare time if later than or equal to another time.

Parameters:
time object to compare with.
Returns:
true if later than or same as object.

Reimplemented in DateTime.

const char* Time::put ( char *  buffer  )  const

Get a hh:mm:ss formatted string for current time.

Parameters:
buffer to store time string in.
Returns:
time string buffer or NULL if invalid.

Reimplemented in DateTime.

int Time::second ( void   )  const

Get seconds from current minute.

Returns:
seconds from current minute.
void Time::set ( const char *  pointer,
size_t  size = 0 
)

Set time from a hh:mm:ss formatted string.

Parameters:
pointer to time field.
size of field if not null terminated.

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

Generated on 24 Sep 2014 for ucommon by  doxygen 1.6.1