timestamp_pos.hpp
Go to the documentation of this file.
00001 
00008 /*****************************************************************************
00009 ** Ifdefs
00010 *****************************************************************************/
00011 
00012 #ifndef ECL_TIME_STAMP_POS_HPP_
00013 #define ECL_TIME_STAMP_POS_HPP_
00014 
00015 /*****************************************************************************
00016 ** Platform Check
00017 *****************************************************************************/
00018 
00019 #include <ecl/config.hpp>
00020 #if defined(ECL_IS_POSIX)
00021 #define ECL_HAS_TIMESTAMP
00022 
00023 /*****************************************************************************
00024 ** Includes
00025 *****************************************************************************/
00026 
00027 #include <time.h>
00028 #include <ecl/config/macros.hpp>
00029 #include <ecl/config/portable_types.hpp>
00030 #include <ecl/exceptions/macros.hpp>
00031 #include <ecl/exceptions/standard_exception.hpp>
00032 #include "timestamp_base.hpp"
00033 
00034 /*****************************************************************************
00035 ** Namespaces
00036 *****************************************************************************/
00037 
00038 namespace ecl {
00039 
00040 /*****************************************************************************
00041 ** Interface [Time]
00042 *****************************************************************************/
00043 
00090 class ecl_time_PUBLIC TimeStamp : public TimeStampBase {
00091 public:
00092         /*********************
00093         ** Constructors
00094         **********************/
00104         TimeStamp() ecl_debug_throw_decl(StandardException);
00115         TimeStamp (const double& decimal_time_value) ecl_assert_throw_decl(StandardException);
00126         TimeStamp (const time_t &seconds, const long &nanoseconds) ecl_assert_throw_decl(StandardException);
00136         TimeStamp (const TimeStampBase& base);
00137 
00138         virtual ~TimeStamp() {}
00139 
00140         /******************************************
00141         ** Stamps
00142         *******************************************/
00143         using TimeStampBase::stamp;
00150         const TimeStamp& stamp() ecl_debug_throw_decl(StandardException);
00151 };
00152 }; // namespace ecl
00153 
00154 #ifdef ECL_HAS_EXCEPTIONS
00155 namespace ecl {
00156 namespace time {
00157 
00164 ecl::StandardException throwTimeStampException(const char*loc);
00165 
00166 } // namespace time
00167 }; // namespace ecl
00168 
00169 #endif /* ECL_HAS_EXCEPTIONS */
00170 
00171 
00172 #endif /* ECL_IS_POSIX */
00173 #endif /* ECL_TIME_STAMP_POS_HPP_ */


ecl_time
Author(s): Daniel Stonier
autogenerated on Sun Oct 5 2014 23:35:32