| Home | Libraries | People | FAQ | More

## Class template split_timedate_system

boost::date_time::split_timedate_system — An unadjusted time system implementation.

## Synopsis

    template<typename config, boost::int32_t ticks_per_second>
    class split_timedate_system {
    public:
      // types
      typedef config::time_rep_type                                                                            time_rep_type;
      typedef config::date_type                                                                                date_type;
      typedef config::time_duration_type                                                                       time_duration_type;
      typedef config::date_duration_type                                                                       date_duration_type;
      typedef config::int_type                                                                                 int_type;
      typedef config::resolution_traits                                                                        resolution_traits;
      typedef date_time::wrapping_int< int_type, INT64_C(86400)*ticks_per_second                               wrap_int_type;
      typedef date_time::wrapping_int< split_timedate_system::int_type, split_timedate_system::ticks_per_day > wrap_int_type;
      typedef date_time::wrapping_int< int_type, ticks_per_day >                                               wrap_int_type;

      // public static functions
      static time_rep_type get_time_rep(special_values) ;
      static time_rep_type
      get_time_rep(const date_type &, const time_duration_type &,
                   date_time::dst_flags = not_dst) ;
      static date_type get_date(const time_rep_type &) ;
      static time_duration_type get_time_of_day(const time_rep_type &) ;
      static std::string zone_name(const time_rep_type &) ;
      static bool is_equal(const time_rep_type &, const time_rep_type &) ;
      static bool is_less(const time_rep_type &, const time_rep_type &) ;
      static time_rep_type
      add_days(const time_rep_type &, const date_duration_type &) ;
      static time_rep_type
      subtract_days(const time_rep_type &, const date_duration_type &) ;
      static time_rep_type
      subtract_time_duration(const time_rep_type &, const time_duration_type &) ;
      static time_rep_type
      add_time_duration(const time_rep_type &, time_duration_type) ;
      static time_duration_type
      subtract_times(const time_rep_type &, const time_rep_type &) ;

      // private member functions
       BOOST_STATIC_CONSTANT(int_type,
                             ticks_per_day = INT64_C(86400)*config::tick_per_second) ;
    };

## Description

### `split_timedate_system` public static functions

1.     static time_rep_type get_time_rep(special_values sv) ;

2.     static time_rep_type
       get_time_rep(const date_type & day, const time_duration_type & tod,
                    date_time::dst_flags dst = not_dst) ;

3.     static date_type get_date(const time_rep_type & val) ;

4.     static time_duration_type get_time_of_day(const time_rep_type & val) ;

5.     static std::string zone_name(const time_rep_type &) ;

6.     static bool is_equal(const time_rep_type & lhs, const time_rep_type & rhs) ;

7.     static bool is_less(const time_rep_type & lhs, const time_rep_type & rhs) ;

8.     static time_rep_type
       add_days(const time_rep_type & base, const date_duration_type & dd) ;

9.     static time_rep_type
       subtract_days(const time_rep_type & base, const date_duration_type & dd) ;

10.     static time_rep_type
        subtract_time_duration(const time_rep_type & base,
                               const time_duration_type & td) ;

11.     static time_rep_type
        add_time_duration(const time_rep_type & base, time_duration_type td) ;

12.     static time_duration_type
        subtract_times(const time_rep_type & lhs, const time_rep_type & rhs) ;

### `split_timedate_system` private member functions

1.      BOOST_STATIC_CONSTANT(int_type,
                              ticks_per_day = INT64_C(86400)*config::tick_per_second) ;

| Copyright © 2001-2005 CrystalClear Software, Inc