]>
git.saurik.com Git - apple/icu.git/blob - icuSources/i18n/dangical.h
2 *****************************************************************************
3 * Copyright (C) 2013, International Business Machines Corporation
4 * and others. All Rights Reserved.
5 *****************************************************************************
8 *****************************************************************************
14 #include "unicode/utypes.h"
16 #if !UCONFIG_NO_FORMATTING
18 #include "unicode/calendar.h"
19 #include "unicode/timezone.h"
25 * <p><code>DangiCalendar</code> is a concrete subclass of {@link Calendar}
26 * that implements a traditional Korean lunisolar calendar.</p>
28 * <p>DangiCalendar usually should be instantiated using
29 * {@link com.ibm.icu.util.Calendar#getInstance(ULocale)} passing in a <code>ULocale</code>
30 * with the tag <code>"@calendar=dangi"</code>.</p>
34 class DangiCalendar
: public ChineseCalendar
{
36 //-------------------------------------------------------------------------
38 //-------------------------------------------------------------------------
41 * Constructs a DangiCalendar based on the current time in the default time zone
42 * with the given locale.
44 * @param aLocale The given locale.
45 * @param success Indicates the status of DangiCalendar object construction.
46 * Returns U_ZERO_ERROR if constructed successfully.
49 DangiCalendar(const Locale
& aLocale
, UErrorCode
&success
);
55 DangiCalendar(const DangiCalendar
& other
);
61 virtual ~DangiCalendar();
67 virtual Calendar
* clone() const;
69 //----------------------------------------------------------------------
70 // Internal methods & astronomical calculations
71 //----------------------------------------------------------------------
75 const TimeZone
* getDangiCalZoneAstroCalc(void) const;
80 * @return The class ID for this object. All objects of a given class have the
81 * same class ID. Objects of other classes have different class IDs.
84 virtual UClassID
getDynamicClassID(void) const;
87 * Return the class ID for this class. This is useful only for comparing to a return
88 * value from getDynamicClassID(). For example:
90 * Base* polymorphic_pointer = createPolymorphicObject();
91 * if (polymorphic_pointer->getDynamicClassID() ==
92 * Derived::getStaticClassID()) ...
94 * @return The class ID for all objects of this class.
97 U_I18N_API
static UClassID U_EXPORT2
getStaticClassID(void);
100 * return the calendar type, "dangi".
102 * @return calendar type
105 const char * getType() const;
110 DangiCalendar(); // default constructor not implemented