1 /* Copyright (c) 2002,2003 CrystalClear Software, Inc. 2 * Use, modification and distribution is subject to the 3 * Boost Software License, Version 1.0. (See accompanying 4 * file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) 5 * Author: Jeff Garland 6 */ 7 #ifndef POSIX_TIME_TYPES_HPP___ 8 #define POSIX_TIME_TYPES_HPP___ 9 10 #include "boost/date_time/time_clock.hpp" 11 #include "boost/date_time/microsec_time_clock.hpp" 12 #include "boost/date_time/posix_time/ptime.hpp" 13 #if defined(BOOST_DATE_TIME_OPTIONAL_GREGORIAN_TYPES) 14 #include "boost/date_time/posix_time/date_duration_operators.hpp" 15 #endif 16 #include "boost/date_time/posix_time/posix_time_duration.hpp" 17 #include "boost/date_time/posix_time/posix_time_system.hpp" 18 #include "boost/date_time/posix_time/time_period.hpp" 19 #include "boost/date_time/time_iterator.hpp" 20 #include "boost/date_time/dst_rules.hpp" 21 22 namespace boost { 23 24 //!Defines a non-adjusted time system with nano-second resolution and stable calculation properties 25 namespace posix_time { 26 27 //! Iterator over a defined time duration 28 /*! \ingroup time_basics 29 */ 30 typedef date_time::time_itr<ptime> time_iterator; 31 //! A time clock that has a resolution of one second 32 /*! \ingroup time_basics 33 */ 34 typedef date_time::second_clock<ptime> second_clock; 35 36 #ifdef BOOST_DATE_TIME_HAS_HIGH_PRECISION_CLOCK 37 //! A time clock that has a resolution of one microsecond 38 /*! \ingroup time_basics 39 */ 40 typedef date_time::microsec_clock<ptime> microsec_clock; 41 #endif 42 43 //! Define a dst null dst rule for the posix_time system 44 typedef date_time::null_dst_rules<ptime::date_type, time_duration> no_dst; 45 //! Define US dst rule calculator for the posix_time system 46 typedef date_time::us_dst_rules<ptime::date_type, time_duration> us_dst; 47 48 49 } } //namespace posix_time 50 51 52 53 54 #endif 55 56