Representation of a precise moment in time, including the date. More...
#include <time.hpp>
Public Types | |
typedef T | time_type |
typedef time_system::time_rep_type | time_rep_type |
typedef time_system::date_type | date_type |
typedef time_system::date_duration_type | date_duration_type |
typedef time_system::time_duration_type | time_duration_type |
Public Member Functions | |
base_time (const date_type &day, const time_duration_type &td, dst_flags dst=not_dst) | |
base_time (special_values sv) | |
base_time (const time_rep_type &rhs) | |
date_type | date () const |
time_duration_type | time_of_day () const |
std::string | zone_name (bool=false) const |
Optional bool parameter will return time zone as an offset (ie "+07:00"). More... | |
std::string | zone_abbrev (bool=false) const |
Optional bool parameter will return time zone as an offset (ie "+07:00"). More... | |
std::string | zone_as_posix_string () const |
An empty string is returned for classes that do not use a time_zone. More... | |
bool | is_not_a_date_time () const |
check to see if date is not a value More... | |
bool | is_infinity () const |
check to see if date is one of the infinity values More... | |
bool | is_pos_infinity () const |
check to see if date is greater than all possible dates More... | |
bool | is_neg_infinity () const |
check to see if date is greater than all possible dates More... | |
bool | is_special () const |
check to see if time is a special value More... | |
bool | operator== (const time_type &rhs) const |
Equality operator – others generated by boost::equality_comparable. More... | |
bool | operator< (const time_type &rhs) const |
Equality operator – others generated by boost::less_than_comparable. More... | |
time_duration_type | operator- (const time_type &rhs) const |
difference between two times More... | |
time_type | operator+ (const date_duration_type &dd) const |
add date durations More... | |
time_type | operator+= (const date_duration_type &dd) |
time_type | operator- (const date_duration_type &dd) const |
subtract date durations More... | |
time_type | operator-= (const date_duration_type &dd) |
time_type | operator+ (const time_duration_type &td) const |
add time durations More... | |
time_type | operator+= (const time_duration_type &td) |
time_type | operator- (const time_duration_type &rhs) const |
subtract time durations More... | |
time_type | operator-= (const time_duration_type &td) |
Protected Attributes | |
time_rep_type | time_ |
Representation of a precise moment in time, including the date.
This class is a skeleton for the interface of a temporal type with a resolution that is higher than a day. It is intended that this class be the base class and that the actual time class be derived using the BN pattern. In this way, the derived class can make decisions such as 'should there be a default constructor' and what should it set its value to, should there be optional constructors say allowing only an time_durations that generate a time from a clock,etc. So, in fact multiple time types can be created for a time_system with different construction policies, and all of them can perform basic operations by only writing a copy constructor. Finally, compiler errors are also shorter.
The real behavior of the time class is provided by the time_system template parameter. This class must provide all the logic for addition, subtraction, as well as define all the interface types.
typedef time_system::date_duration_type boost::date_time::base_time< T, time_system >::date_duration_type |
typedef time_system::date_type boost::date_time::base_time< T, time_system >::date_type |
typedef time_system::time_duration_type boost::date_time::base_time< T, time_system >::time_duration_type |
typedef time_system::time_rep_type boost::date_time::base_time< T, time_system >::time_rep_type |
typedef T boost::date_time::base_time< T, time_system >::time_type |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by boost::posix_time::operator+(), boost::posix_time::operator+=(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator+=(), boost::posix_time::operator-(), boost::posix_time::operator-=(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator-=(), boost::serialization::save(), boost::posix_time::to_iso_extended_string_type(), boost::posix_time::to_iso_string_type(), boost::posix_time::to_simple_string_type(), and boost::posix_time::to_tm().
|
inline |
check to see if date is one of the infinity values
Referenced by boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_special().
|
inline |
check to see if date is greater than all possible dates
Referenced by boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_infinity().
|
inline |
check to see if date is not a value
Referenced by boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_special().
|
inline |
check to see if date is greater than all possible dates
Referenced by boost::detail::get_milliseconds_until(), and boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_infinity().
|
inline |
check to see if time is a special value
Referenced by boost::serialization::save().
|
inline |
add date durations
|
inline |
add time durations
|
inline |
|
inline |
|
inline |
difference between two times
|
inline |
subtract date durations
|
inline |
subtract time durations
|
inline |
|
inline |
|
inline |
Equality operator – others generated by boost::less_than_comparable.
|
inline |
Equality operator – others generated by boost::equality_comparable.
|
inline |
Referenced by boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator+=(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator-=(), boost::serialization::save(), boost::posix_time::to_iso_extended_string_type(), boost::posix_time::to_iso_string_type(), boost::posix_time::to_simple_string_type(), and boost::posix_time::to_tm().
|
inline |
Optional bool parameter will return time zone as an offset (ie "+07:00").
Empty string is returned for classes that do not use a time_zone
|
inline |
An empty string is returned for classes that do not use a time_zone.
|
inline |
Optional bool parameter will return time zone as an offset (ie "+07:00").
Empty string is returned for classes that do not use a time_zone
|
protected |
Referenced by boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::date(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_neg_infinity(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_not_a_date_time(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::is_pos_infinity(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator+(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator+=(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator-(), boost::local_time::local_date_time_base< utc_time_, tz_type >::operator-(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator-=(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator<(), boost::local_time::local_date_time_base< utc_time_, tz_type >::operator<(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::operator==(), boost::local_time::local_date_time_base< utc_time_, tz_type >::operator==(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::time_of_day(), boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::zone_abbrev(), and boost::date_time::base_time< utc_time_, boost::posix_time::posix_time_system >::zone_name().