ICU 71.1 71.1

tztrans.h
Go to the documentation of this file.
1 // © 2016 and later: Unicode, Inc. and others.
2 // License & terms of use: http://www.unicode.org/copyright.html
3 /*
4 *******************************************************************************
5 * Copyright (C) 2007-2008, International Business Machines Corporation and *
6 * others. All Rights Reserved. *
7 *******************************************************************************
8 */
9 #ifndef TZTRANS_H
10 #define TZTRANS_H
11
17 #include "unicode/utypes.h"
18
19 #if U_SHOW_CPLUSPLUS_API
20
21 #if !UCONFIG_NO_FORMATTING
22
23 #include "unicode/uobject.h"
24
25 U_NAMESPACE_BEGIN
26
27 // Forward declaration
28 class TimeZoneRule;
29
35 class U_I18N_API TimeZoneTransition : public UObject {
36 public:
46 TimeZoneTransition(UDate time, const TimeZoneRule& from, const TimeZoneRule& to);
47
52 TimeZoneTransition();
53
59 TimeZoneTransition(const TimeZoneTransition& source);
60
65 ~TimeZoneTransition();
66
73 TimeZoneTransition* clone() const;
74
80 TimeZoneTransition& operator=(const TimeZoneTransition& right);
81
89 bool operator==(const TimeZoneTransition& that) const;
90
98 bool operator!=(const TimeZoneTransition& that) const;
99
105 UDate getTime(void) const;
106
112 void setTime(UDate time);
113
119 const TimeZoneRule* getFrom(void) const;
120
127 void setFrom(const TimeZoneRule& from);
128
135 void adoptFrom(TimeZoneRule* from);
136
143 void setTo(const TimeZoneRule& to);
144
151 void adoptTo(TimeZoneRule* to);
152
158 const TimeZoneRule* getTo(void) const;
159
160 private:
161 UDate fTime;
162 TimeZoneRule* fFrom;
163 TimeZoneRule* fTo;
164
165 public:
177 static UClassID U_EXPORT2 getStaticClassID(void);
178
190 virtual UClassID getDynamicClassID(void) const override;
191 };
192
193 U_NAMESPACE_END
194
195 #endif /* #if !UCONFIG_NO_FORMATTING */
196
197 #endif /* U_SHOW_CPLUSPLUS_API */
198
199 #endif // TZTRANS_H
200
201 //eof
utypes.h
Basic definitions for ICU, for both C and C++ APIs.
U_I18N_API
#define U_I18N_API
Definition: utypes.h:301
icu::operator==
U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)
Global operator == for StringPiece.
icu::TimeZoneRule
TimeZoneRule is a class representing a rule for time zone.
Definition: tzrule.h:36
icu::UObject
UObject is the common ICU "boilerplate" class.
Definition: uobject.h:223
UClassID
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition: uobject.h:96
icu::UObject::getDynamicClassID
virtual UClassID getDynamicClassID() const
ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.
icu::operator!=
bool operator!=(const StringPiece &x, const StringPiece &y)
Global operator != for StringPiece.
Definition: stringpiece.h:335
icu::TimeZoneTransition
TimeZoneTransition is a class representing a time zone transition.
Definition: tztrans.h:35
UDate
double UDate
Date and Time data type.
Definition: utypes.h:203
uobject.h
C++ API: Common ICU base class UObject.