]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/i18n/japancal.h
ICU-62123.0.1.tar.gz
[apple/icu.git] / icuSources / i18n / japancal.h
index 7ae515e952dfab06eed4bc371fcc8aaaf55ba131..f05b2ac9b779eb0caaef19bce84380ba9e54de74 100644 (file)
@@ -1,5 +1,8 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
- * Copyright (C) 2003-2004, International Business Machines Corporation
+ ********************************************************************************
+ * Copyright (C) 2003-2008, International Business Machines Corporation
  * and others. All Rights Reserved.
  ********************************************************************************
  *
@@ -52,14 +55,14 @@ U_NAMESPACE_BEGIN
  * <p>
  * @internal
  */
-class U_I18N_API JapaneseCalendar : public GregorianCalendar {
+class JapaneseCalendar : public GregorianCalendar {
 public:
 
     /**
      * Useful constants for JapaneseCalendar.  
      * @internal
      */
-    static const uint32_t kCurrentEra; // the current era
+    U_I18N_API static uint32_t U_EXPORT2 getCurrentEra(void); // the current era
 
     /**
      * Constructs a JapaneseCalendar based on the current time in the default time zone
@@ -107,6 +110,13 @@ public:
      */
     virtual int32_t handleGetExtendedYear();
 
+    /**
+     * Return the maximum value that this field could have, given the current date.
+     * @internal
+     */
+    virtual int32_t getActualMaximum(UCalendarDateFields field, UErrorCode& status) const;
+
+
 public:
     /**
      * Override Calendar Returns a unique class ID POLYMORPHICALLY. Pure virtual
@@ -131,7 +141,7 @@ public:
      * @return   The class ID for all objects of this class.
      * @internal
      */
-    static UClassID U_EXPORT2 getStaticClassID(void);
+    U_I18N_API static UClassID U_EXPORT2 getStaticClassID(void);
 
     /**
      * return the calendar type, "japanese".
@@ -184,17 +194,20 @@ protected:
      * Called by computeJulianDay.  Returns the default month (0-based) for the year,
      * taking year and era into account.  Will return the first month of the given era, if 
      * the current year is an ascension year.
+     * @param eyear the extended year
      * @internal
      */
-    virtual int32_t getDefaultMonthInYear();
+    virtual int32_t getDefaultMonthInYear(int32_t eyear);
 
     /***
      * Called by computeJulianDay.  Returns the default day (1-based) for the month,
      * taking currently-set year and era into account.  Will return the first day of the given
      * era, if the current month is an ascension year and month.
+     * @param eyear the extended year
+     * @param mon the month in the year
      * @internal
      */
-    virtual int32_t getDefaultDayInMonth(int32_t month);
+    virtual int32_t getDefaultDayInMonth(int32_t eyear, int32_t month);
 };
 
 U_NAMESPACE_END