Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _TZONE_HPP
00021 #define _TZONE_HPP
00022
00023 #include <xqilla/framework/XQillaExport.hpp>
00024 #include <xqilla/framework/ReferenceCounted.hpp>
00025 #include <xqilla/items/ATDurationOrDerived.hpp>
00026 #include <xqilla/mapm/m_apm.h>
00027
00028 #include <xercesc/util/XercesDefs.hpp>
00029
00030 class DynamicContext;
00031
00032 class XQILLA_API Timezone : public ReferenceCounted
00033 {
00034 public :
00035 typedef RefCountPointer<const Timezone> Ptr;
00036
00040 Timezone(const MAPM &seconds);
00041
00045 Timezone(const ATDurationOrDerived::Ptr &duration, const DynamicContext* context);
00046
00050 bool equals(const Timezone::Ptr &other) const;
00051
00052 ATDurationOrDerived::Ptr asDayTimeDuration(const DynamicContext* context) const;
00053
00058 const XMLCh* asString(const DynamicContext* context) const;
00059
00063 const MAPM &asSeconds() const { return seconds_; }
00064
00065 static MAPM convert(bool positive, int hour, int minute);
00066
00067 static void validate(const MAPM &tz);
00068
00069 private:
00070 MAPM seconds_;
00071 };
00072
00073 #endif // _TZONE_HPP
00074
00075