00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef TOOL_MICROSECONDS_STAMP_HXX_
00023 # define TOOL_MICROSECONDS_STAMP_HXX_
00024
00025 # include "microseconds_stamp.hh"
00026
00027 namespace wpl
00028 {
00029
00030 namespace tool
00031 {
00032
00033 template <class T>
00034 microseconds_stamp<T>::
00035 microseconds_stamp(const tool::microseconds& microseconds,
00036 const T& super):
00037 T (super),
00038 microseconds_ (microseconds)
00039 {
00040 }
00041
00042 template <class T>
00043 template <class U>
00044 microseconds_stamp<T>::
00045 microseconds_stamp(const microseconds_stamp<U>& msst):
00046 T (msst),
00047 microseconds_ (msst.microseconds())
00048 {
00049 }
00050
00051 template <class T>
00052 const tool::microseconds&
00053 microseconds_stamp<T>::microseconds() const
00054 {
00055 return microseconds_;
00056 }
00057
00058 template <class T>
00059 tool::microseconds&
00060 microseconds_stamp<T>::microseconds()
00061 {
00062 return microseconds_;
00063 }
00064
00065 template <class T>
00066 bool
00067 microseconds_stamp<T>::operator == (const microseconds_stamp& rhs) const
00068 {
00069 return T::operator == (rhs);
00070 }
00071
00072 template <class T>
00073 bool
00074 microseconds_stamp<T>::operator != (const microseconds_stamp& rhs) const
00075 {
00076 return T::operator != (rhs);
00077 }
00078
00079 }
00080
00081 }
00082
00083 WP_HASH_NAMESPACE_BEGIN
00084
00085 template <class T>
00086 size_t
00087 hash< wpl::tool::microseconds_stamp<T> >::
00088 operator () (const wpl::tool::microseconds_stamp<T>& s) const
00089 {
00090 return hash<T>::operator () (s);
00091 }
00092
00093 WP_HASH_NAMESPACE_END
00094
00095 #endif // TOOL_MICROSECONDS_STAMP_HXX_