AnnualTimeZoneRule is a class used for representing a time zone rule which takes effect annually.
More...
#include <tzrule.h>

Public Member Functions | |
| AnnualTimeZoneRule (const UnicodeString &name, int32_t rawOffset, int32_t dstSavings, const DateTimeRule &dateTimeRule, int32_t startYear, int32_t endYear) | |
Constructs a AnnualTimeZoneRule with the name, the GMT offset of its standard time, the amount of daylight saving offset adjustment, the annual start time rule and the start/until years. | |
| AnnualTimeZoneRule (const UnicodeString &name, int32_t rawOffset, int32_t dstSavings, DateTimeRule *dateTimeRule, int32_t startYear, int32_t endYear) | |
Constructs a AnnualTimeZoneRule with the name, the GMT offset of its standard time, the amount of daylight saving offset adjustment, the annual start time rule and the start/until years. | |
| AnnualTimeZoneRule (const AnnualTimeZoneRule &source) | |
| Copy constructor. | |
| virtual | ~AnnualTimeZoneRule () |
| Destructor. | |
| virtual AnnualTimeZoneRule * | clone (void) const |
| Clone this AnnualTimeZoneRule object polymorphically. | |
| AnnualTimeZoneRule & | operator= (const AnnualTimeZoneRule &right) |
| Assignment operator. | |
| virtual UBool | operator== (const TimeZoneRule &that) const |
Return true if the given TimeZoneRule objects are semantically equal. | |
| virtual UBool | operator!= (const TimeZoneRule &that) const |
Return true if the given TimeZoneRule objects are semantically unequal. | |
| const DateTimeRule * | getRule (void) const |
| Gets the start date/time rule used by this rule. | |
| int32_t | getStartYear (void) const |
| Gets the first year when this rule takes effect. | |
| int32_t | getEndYear (void) const |
| Gets the end year when this rule takes effect. | |
| UBool | getStartInYear (int32_t year, int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const |
| Gets the time when this rule takes effect in the given year. | |
| virtual UBool | isEquivalentTo (const TimeZoneRule &that) const |
| Returns if this rule represents the same rule and offsets as another. | |
| virtual UBool | getFirstStart (int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const |
| Gets the very first time when this rule takes effect. | |
| virtual UBool | getFinalStart (int32_t prevRawOffset, int32_t prevDSTSavings, UDate &result) const |
| Gets the final time when this rule takes effect. | |
| virtual UBool | getNextStart (UDate base, int32_t prevRawOffset, int32_t prevDSTSavings, UBool inclusive, UDate &result) const |
| Gets the first time when this rule takes effect after the specified time. | |
| virtual UBool | getPreviousStart (UDate base, int32_t prevRawOffset, int32_t prevDSTSavings, UBool inclusive, UDate &result) const |
| Gets the most recent time when this rule takes effect before the specified time. | |
| virtual UClassID | getDynamicClassID (void) const |
| Returns a unique class ID POLYMORPHICALLY. | |
Static Public Member Functions | |
| static UClassID | getStaticClassID (void) |
| Return the class ID for this class. | |
Static Public Attributes | |
| static const int32_t | MAX_YEAR |
| The constant representing the maximum year used for designating a rule is permanent. | |
AnnualTimeZoneRule is a class used for representing a time zone rule which takes effect annually.
The calenday system used for the rule is is based on Gregorian calendar
Definition at line 376 of file tzrule.h.
| AnnualTimeZoneRule::AnnualTimeZoneRule | ( | const UnicodeString & | name, | |
| int32_t | rawOffset, | |||
| int32_t | dstSavings, | |||
| const DateTimeRule & | dateTimeRule, | |||
| int32_t | startYear, | |||
| int32_t | endYear | |||
| ) |
Constructs a AnnualTimeZoneRule with the name, the GMT offset of its standard time, the amount of daylight saving offset adjustment, the annual start time rule and the start/until years.
The input DateTimeRule is copied by this constructor, so the caller remains responsible for deleting the object.
| name | The time zone name. | |
| rawOffset | The GMT offset of its standard time in milliseconds. | |
| dstSavings | The amount of daylight saving offset adjustment in milliseconds. If this ia a rule for standard time, the value of this argument is 0. | |
| dateTimeRule | The start date/time rule repeated annually. | |
| startYear | The first year when this rule takes effect. | |
| endYear | The last year when this rule takes effect. If this rule is effective forever in future, specify MAX_YEAR. |
| AnnualTimeZoneRule::AnnualTimeZoneRule | ( | const UnicodeString & | name, | |
| int32_t | rawOffset, | |||
| int32_t | dstSavings, | |||
| DateTimeRule * | dateTimeRule, | |||
| int32_t | startYear, | |||
| int32_t | endYear | |||
| ) |
Constructs a AnnualTimeZoneRule with the name, the GMT offset of its standard time, the amount of daylight saving offset adjustment, the annual start time rule and the start/until years.
The input DateTimeRule object is adopted by this object, therefore, the caller must not delete the object.
| name | The time zone name. | |
| rawOffset | The GMT offset of its standard time in milliseconds. | |
| dstSavings | The amount of daylight saving offset adjustment in milliseconds. If this ia a rule for standard time, the value of this argument is 0. | |
| dateTimeRule | The start date/time rule repeated annually. | |
| startYear | The first year when this rule takes effect. | |
| endYear | The last year when this rule takes effect. If this rule is effective forever in future, specify MAX_YEAR. |
| AnnualTimeZoneRule::AnnualTimeZoneRule | ( | const AnnualTimeZoneRule & | source | ) |
| virtual AnnualTimeZoneRule::~AnnualTimeZoneRule | ( | ) | [virtual] |
| virtual AnnualTimeZoneRule* AnnualTimeZoneRule::clone | ( | void | ) | const [virtual] |
Clone this AnnualTimeZoneRule object polymorphically.
The caller owns the result and should delete it when done.
Implements TimeZoneRule.
| virtual UClassID AnnualTimeZoneRule::getDynamicClassID | ( | void | ) | const [virtual] |
Returns a unique class ID POLYMORPHICALLY.
Pure virtual override. This method is to implement a simple version of RTTI, since not all C++ compilers support genuine RTTI. Polymorphic operator==() and clone() methods call this method.
Implements UObject.
| int32_t AnnualTimeZoneRule::getEndYear | ( | void | ) | const |
Gets the end year when this rule takes effect.
| virtual UBool AnnualTimeZoneRule::getFinalStart | ( | int32_t | prevRawOffset, | |
| int32_t | prevDSTSavings, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the final time when this rule takes effect.
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| result | Receives the final time when this rule takes effect. |
Implements TimeZoneRule.
| virtual UBool AnnualTimeZoneRule::getFirstStart | ( | int32_t | prevRawOffset, | |
| int32_t | prevDSTSavings, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the very first time when this rule takes effect.
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| result | Receives the very first time when this rule takes effect. |
Implements TimeZoneRule.
| virtual UBool AnnualTimeZoneRule::getNextStart | ( | UDate | base, | |
| int32_t | prevRawOffset, | |||
| int32_t | prevDSTSavings, | |||
| UBool | inclusive, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the first time when this rule takes effect after the specified time.
| base | The first start time after this base time will be returned. | |
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| inclusive | Whether the base time is inclusive or not. | |
| result | Receives The first time when this rule takes effect after the specified base time. |
Implements TimeZoneRule.
| virtual UBool AnnualTimeZoneRule::getPreviousStart | ( | UDate | base, | |
| int32_t | prevRawOffset, | |||
| int32_t | prevDSTSavings, | |||
| UBool | inclusive, | |||
| UDate & | result | |||
| ) | const [virtual] |
Gets the most recent time when this rule takes effect before the specified time.
| base | The most recent time before this base time will be returned. | |
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| inclusive | Whether the base time is inclusive or not. | |
| result | Receives The most recent time when this rule takes effect before the specified base time. |
Implements TimeZoneRule.
| const DateTimeRule* AnnualTimeZoneRule::getRule | ( | void | ) | const |
Gets the start date/time rule used by this rule.
AnnualDateTimeRule which represents the start date/time rule used by this time zone rule. | UBool AnnualTimeZoneRule::getStartInYear | ( | int32_t | year, | |
| int32_t | prevRawOffset, | |||
| int32_t | prevDSTSavings, | |||
| UDate & | result | |||
| ) | const |
Gets the time when this rule takes effect in the given year.
| year | The Gregorian year, with 0 == 1 BCE, -1 == 2 BCE, etc. | |
| prevRawOffset | The standard time offset from UTC before this rule takes effect in milliseconds. | |
| prevDSTSavings | The amount of daylight saving offset from the standard time. | |
| result | Receives the start time in the year. |
| int32_t AnnualTimeZoneRule::getStartYear | ( | void | ) | const |
Gets the first year when this rule takes effect.
| static UClassID AnnualTimeZoneRule::getStaticClassID | ( | void | ) | [static] |
Return the class ID for this class.
This is useful only for comparing to a return value from getDynamicClassID(). For example:
. Base* polymorphic_pointer = createPolymorphicObject(); . if (polymorphic_pointer->getDynamicClassID() == . erived::getStaticClassID()) ...
| virtual UBool AnnualTimeZoneRule::isEquivalentTo | ( | const TimeZoneRule & | that | ) | const [virtual] |
Returns if this rule represents the same rule and offsets as another.
When two TimeZoneRule objects differ only its names, this method returns true.
| that | The TimeZoneRule object to be compared with. |
TimeZoneRule is equivalent to this one. Reimplemented from TimeZoneRule.
| virtual UBool AnnualTimeZoneRule::operator!= | ( | const TimeZoneRule & | that | ) | const [virtual] |
Return true if the given TimeZoneRule objects are semantically unequal.
Objects of different subclasses are considered unequal.
| that | The object to be compared with. |
TimeZoneRule objects are semantically unequal. Reimplemented from TimeZoneRule.
| AnnualTimeZoneRule& AnnualTimeZoneRule::operator= | ( | const AnnualTimeZoneRule & | right | ) |
| virtual UBool AnnualTimeZoneRule::operator== | ( | const TimeZoneRule & | that | ) | const [virtual] |
Return true if the given TimeZoneRule objects are semantically equal.
Objects of different subclasses are considered unequal.
| that | The object to be compared with. |
TimeZoneRule objects are semantically equal. Reimplemented from TimeZoneRule.
1.5.7.1