| Index: icu46/source/i18n/cecal.h
|
| ===================================================================
|
| --- icu46/source/i18n/cecal.h (revision 0)
|
| +++ icu46/source/i18n/cecal.h (revision 0)
|
| @@ -0,0 +1,134 @@
|
| +/*
|
| +*******************************************************************************
|
| +* Copyright (C) 2003 - 2008, International Business Machines Corporation and *
|
| +* others. All Rights Reserved. *
|
| +*******************************************************************************
|
| +*/
|
| +
|
| +#ifndef CECAL_H
|
| +#define CECAL_H
|
| +
|
| +#include "unicode/utypes.h"
|
| +
|
| +#if !UCONFIG_NO_FORMATTING
|
| +
|
| +#include "unicode/calendar.h"
|
| +
|
| +U_NAMESPACE_BEGIN
|
| +
|
| +/**
|
| + * Base class for EthiopicCalendar and CopticCalendar.
|
| + * @internal
|
| + */
|
| +class U_I18N_API CECalendar : public Calendar {
|
| +
|
| +protected:
|
| + //-------------------------------------------------------------------------
|
| + // Constructors...
|
| + //-------------------------------------------------------------------------
|
| +
|
| + /**
|
| + * Constructs a CECalendar based on the current time in the default time zone
|
| + * with the given locale with the Julian epoch offiset
|
| + *
|
| + * @param aLocale The given locale.
|
| + * @param success Indicates the status of CECalendar object construction.
|
| + * Returns U_ZERO_ERROR if constructed successfully.
|
| + * @internal
|
| + */
|
| + CECalendar(const Locale& aLocale, UErrorCode& success);
|
| +
|
| + /**
|
| + * Copy Constructor
|
| + * @internal
|
| + */
|
| + CECalendar (const CECalendar& other);
|
| +
|
| + /**
|
| + * Destructor.
|
| + * @internal
|
| + */
|
| + virtual ~CECalendar();
|
| +
|
| + /**
|
| + * Default assignment operator
|
| + * @param right Calendar object to be copied
|
| + * @internal
|
| + */
|
| + CECalendar& operator=(const CECalendar& right);
|
| +
|
| +protected:
|
| + //-------------------------------------------------------------------------
|
| + // Calendar framework
|
| + //-------------------------------------------------------------------------
|
| +
|
| + /**
|
| + * Return JD of start of given month/extended year
|
| + * @internal
|
| + */
|
| + virtual int32_t handleComputeMonthStart(int32_t eyear, int32_t month, UBool useMonth) const;
|
| +
|
| + /**
|
| + * Calculate the limit for a specified type of limit and field
|
| + * @internal
|
| + */
|
| + virtual int32_t handleGetLimit(UCalendarDateFields field, ELimitType limitType) const;
|
| +
|
| + /**
|
| + * (Overrides Calendar) Return true if the current date for this Calendar is in
|
| + * Daylight Savings Time. Recognizes DST_OFFSET, if it is set.
|
| + *
|
| + * @param status Fill-in parameter which receives the status of this operation.
|
| + * @return True if the current date for this Calendar is in Daylight Savings Time,
|
| + * false, otherwise.
|
| + * @internal
|
| + */
|
| + virtual UBool inDaylightTime(UErrorCode&) const;
|
| +
|
| + /**
|
| + * Returns TRUE because Coptic/Ethiopic Calendar does have a default century
|
| + * @internal
|
| + */
|
| + virtual UBool haveDefaultCentury() const;
|
| +
|
| +protected:
|
| + /**
|
| + * The Coptic and Ethiopic calendars differ only in their epochs.
|
| + * This method must be implemented by CECalendar subclasses to
|
| + * return the date offset from Julian
|
| + * @internal
|
| + */
|
| + virtual int32_t getJDEpochOffset() const = 0;
|
| +
|
| + /**
|
| + * Convert an Coptic/Ethiopic year, month, and day to a Julian day.
|
| + *
|
| + * @param year the extended year
|
| + * @param month the month
|
| + * @param day the day
|
| + * @param jdEpochOffset the epoch offset from Julian epoch
|
| + * @return Julian day
|
| + * @internal
|
| + */
|
| + static int32_t ceToJD(int32_t year, int32_t month, int32_t date,
|
| + int32_t jdEpochOffset);
|
| +
|
| + /**
|
| + * Convert a Julian day to an Coptic/Ethiopic year, month and day
|
| + *
|
| + * @param julianDay the Julian day
|
| + * @param jdEpochOffset the epoch offset from Julian epoch
|
| + * @param year receives the extended year
|
| + * @param month receives the month
|
| + * @param date receives the day
|
| + * @internal
|
| + */
|
| + static void jdToCE(int32_t julianDay, int32_t jdEpochOffset,
|
| + int32_t& year, int32_t& month, int32_t& day);
|
| +};
|
| +
|
| +U_NAMESPACE_END
|
| +
|
| +#endif /* #if !UCONFIG_NO_FORMATTING */
|
| +#endif
|
| +//eof
|
|
|
| Property changes on: icu46/source/i18n/cecal.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|