00001 // © 2016 and later: Unicode, Inc. and others. 00002 // License & terms of use: http://www.unicode.org/copyright.html 00003 /* 00004 ******************************************************************************* 00005 * Copyright (C) 2007-2008, International Business Machines Corporation and * 00006 * others. All Rights Reserved. * 00007 ******************************************************************************* 00008 */ 00009 #ifndef TZTRANS_H 00010 #define TZTRANS_H 00011 00017 #include "unicode/utypes.h" 00018 00019 #if !UCONFIG_NO_FORMATTING 00020 00021 #include "unicode/uobject.h" 00022 00023 U_NAMESPACE_BEGIN 00024 00025 // Forward declaration 00026 class TimeZoneRule; 00027 00033 class U_I18N_API TimeZoneTransition : public UObject { 00034 public: 00044 TimeZoneTransition(UDate time, const TimeZoneRule& from, const TimeZoneRule& to); 00045 00050 TimeZoneTransition(); 00051 00057 TimeZoneTransition(const TimeZoneTransition& source); 00058 00063 ~TimeZoneTransition(); 00064 00071 TimeZoneTransition* clone(void) const; 00072 00078 TimeZoneTransition& operator=(const TimeZoneTransition& right); 00079 00087 UBool operator==(const TimeZoneTransition& that) const; 00088 00096 UBool operator!=(const TimeZoneTransition& that) const; 00097 00103 UDate getTime(void) const; 00104 00110 void setTime(UDate time); 00111 00117 const TimeZoneRule* getFrom(void) const; 00118 00125 void setFrom(const TimeZoneRule& from); 00126 00133 void adoptFrom(TimeZoneRule* from); 00134 00141 void setTo(const TimeZoneRule& to); 00142 00149 void adoptTo(TimeZoneRule* to); 00150 00156 const TimeZoneRule* getTo(void) const; 00157 00158 private: 00159 UDate fTime; 00160 TimeZoneRule* fFrom; 00161 TimeZoneRule* fTo; 00162 00163 public: 00175 static UClassID U_EXPORT2 getStaticClassID(void); 00176 00188 virtual UClassID getDynamicClassID(void) const; 00189 }; 00190 00191 U_NAMESPACE_END 00192 00193 #endif /* #if !UCONFIG_NO_FORMATTING */ 00194 00195 #endif // TZTRANS_H 00196 00197 //eof
1.6.1