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
00021
00022 #ifndef _TZONE_HPP
00023 #define _TZONE_HPP
00024
00025 #include <xqilla/framework/XQillaExport.hpp>
00026 #include <xqilla/framework/ReferenceCounted.hpp>
00027 #include <xqilla/items/ATDurationOrDerived.hpp>
00028 #include <xqilla/mapm/m_apm.h>
00029
00030 #include <xercesc/util/XercesDefs.hpp>
00031
00032 class DynamicContext;
00033
00034 class XQILLA_API Timezone : public ReferenceCounted
00035 {
00036 public :
00037 typedef RefCountPointer<const Timezone> Ptr;
00038
00042 Timezone(const MAPM &seconds);
00043
00047 Timezone(const ATDurationOrDerived::Ptr &duration, const DynamicContext* context);
00048
00052 bool equals(const Timezone::Ptr &other) const;
00053
00054 ATDurationOrDerived::Ptr asDayTimeDuration(const DynamicContext* context) const;
00055
00060 const XMLCh* asString(const DynamicContext* context) const;
00061
00065 const MAPM &asSeconds() const { return seconds_; }
00066
00067 static MAPM convert(bool positive, int hour, int minute);
00068
00069 static void validate(const MAPM &tz);
00070
00071 private:
00072 MAPM seconds_;
00073 };
00074
00075 #endif // _TZONE_HPP
00076
00077