ICU 62.1 62.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 !UCONFIG_NO_FORMATTING
20
21#include "unicode/uobject.h"
22
24
25// Forward declaration
26class TimeZoneRule;
27
34public:
45
51
58
64
72
79
88
97
103 UDate getTime(void) const;
104
111
117 const TimeZoneRule* getFrom(void) const;
118
126
134
141 void setTo(const TimeZoneRule& to);
142
150
156 const TimeZoneRule* getTo(void) const;
157
158private:
159 UDate fTime;
160 TimeZoneRule* fFrom;
161 TimeZoneRule* fTo;
162
163public:
176
188 virtual UClassID getDynamicClassID(void) const;
189};
190
192
193#endif /* #if !UCONFIG_NO_FORMATTING */
194
195#endif // TZTRANS_H
196
197//eof
"Smart pointer" base class; do not use directly: use LocalPointer etc.
TimeZoneRule is a class representing a rule for time zone.
Definition tzrule.h:34
TimeZoneTransition is a class representing a time zone transition.
Definition tztrans.h:33
TimeZoneTransition(UDate time, const TimeZoneRule &from, const TimeZoneRule &to)
Constructs a TimeZoneTransition with the time and the rules before/after the transition.
TimeZoneTransition()
Constructs an empty TimeZoneTransition
virtual UClassID getDynamicClassID(void) const
Returns a unique class ID POLYMORPHICALLY.
void setTo(const TimeZoneRule &to)
Sets the rule used after the transition.
void setFrom(const TimeZoneRule &from)
Sets the rule used before the transition.
const TimeZoneRule * getFrom(void) const
Returns the rule used before the transition.
TimeZoneTransition(const TimeZoneTransition &source)
Copy constructor.
UBool operator==(const TimeZoneTransition &that) const
Return true if the given TimeZoneTransition objects are semantically equal.
TimeZoneTransition * clone(void) const
Clone this TimeZoneTransition object polymorphically.
UDate getTime(void) const
Returns the time of transition in milliseconds.
UBool operator!=(const TimeZoneTransition &that) const
Return true if the given TimeZoneTransition objects are semantically unequal.
void adoptTo(TimeZoneRule *to)
Adopts the rule used after the transition.
void adoptFrom(TimeZoneRule *from)
Adopts the rule used before the transition.
void setTime(UDate time)
Sets the time of transition in milliseconds.
const TimeZoneRule * getTo(void) const
Returns the rule used after the transition.
TimeZoneTransition & operator=(const TimeZoneTransition &right)
Assignment operator.
~TimeZoneTransition()
Destructor.
static UClassID getStaticClassID(void)
Return the class ID for this class.
UObject is the common ICU "boilerplate" class.
Definition uobject.h:223
int8_t UBool
The ICU boolean type.
Definition umachine.h:236
C++ API: Common ICU base class UObject.
void * UClassID
UClassID is used to identify classes without using the compiler's RTTI.
Definition uobject.h:93
Basic definitions for ICU, for both C and C++ APIs.
#define U_I18N_API
Set to export library symbols from inside the i18n library, and to import them from outside.
Definition utypes.h:360
double UDate
Date and Time data type.
Definition utypes.h:203
#define U_NAMESPACE_END
This is used to end a declaration of a public ICU C++ API.
Definition uversion.h:138
#define U_NAMESPACE_BEGIN
This is used to begin a declaration of a public ICU C++ API.
Definition uversion.h:137