CodePorting.Translator Cs2Cpp
CodePorting.Translator.Cs2Cpp.Framework
chinese_lunisolar_calendar.h
1
2#pragma once
3
4#include <system/globalization/east_asian_lunisolar_calendar.h>
5
6namespace System { namespace Globalization {
7
8class ChineseLunisolarCalendar;
11
16class ASPOSECPP_SHARED_CLASS ChineseLunisolarCalendar : public EastAsianLunisolarCalendar
17{
19 RTTI_INFO(System::Globalization::ChineseLunisolarCalendar, ::System::BaseTypesInfo<System::Globalization::EastAsianLunisolarCalendar>)
20
21public:
28
30 static constexpr int ChineseEra = 1;
31
33 ASPOSECPP_SHARED_API ChineseLunisolarCalendar();
34
35 ASPOSECPP_SHARED_API ArrayPtr<int> get_Eras() const override;
36 ASPOSECPP_SHARED_API DateTime get_MaxSupportedDateTime() const override;
37 ASPOSECPP_SHARED_API DateTime get_MinSupportedDateTime() const override;
38 ASPOSECPP_SHARED_API int GetMonthsInYear(int year, int era) const override;
39 ASPOSECPP_SHARED_API int GetDaysInMonth(int year, int month, int era) const override;
40 ASPOSECPP_SHARED_API int GetEra(DateTime time) const override;
41 ASPOSECPP_SHARED_API int GetLeapMonth(int year, int era) const override;
42 ASPOSECPP_SHARED_API bool IsLeapYear(int year, int era) const override;
43 ASPOSECPP_SHARED_API bool IsLeapMonth(int year, int month, int era) const override;
44 ASPOSECPP_SHARED_API bool IsLeapDay(int year, int month, int day, int era) const override;
45
46 ASPOSECPP_SHARED_API SharedPtr<Object> Clone() override;
47
48protected:
49 Details::CalendarId get_ID() const override;
50
51private:
52 void VerifyYear(int year, int era) const override;
53 void VerifyMonth(int year, int month, int era) const override;
54 void VerifyDate(int year, int month, int day, int era) const override;
55
56 int EraToIcuEra(int era) const override;
57 int IcuEraToEra(int icu_era) const override;
58};
59
60}} // namespace System::Globalization
Represents a specific date and time value on the time continuum. This type should be allocated on sta...
Definition: date_time.h:50
virtual int GetDaysInMonth(int year, int month) const
Gets number of days in specific month.
virtual int GetLeapMonth(int year) const
Gets the leap month for the specified year.
virtual bool IsLeapDay(int year, int month, int day) const
Checks if the day is leap.
virtual int GetMonthsInYear(int year) const
Gets number of months in the specified year.
virtual bool IsLeapMonth(int year, int month) const
Checks if the month is leap.
virtual bool IsLeapYear(int year) const
Checks if the year is leap.
Chinese lunisolar calendar. Objects of this class should only be allocated using System::MakeObject()...
Definition: chinese_lunisolar_calendar.h:17
Details::CalendarId get_ID() const override
Gets calendar identifier.
DateTime get_MinSupportedDateTime() const override
Minimal point in time that is supported by the calendar.
int GetDaysInMonth(int year, int month, int era) const override
Gets number of days in specific month.
int GetEra(DateTime time) const override
Gets era for the specified time point.
bool IsLeapYear(int year, int era) const override
Checks if the year is leap.
bool IsLeapMonth(int year, int month, int era) const override
Checks if the month is leap.
bool IsLeapDay(int year, int month, int day, int era) const override
Checks if the day is leap.
SharedPtr< Object > Clone() override
Creates a copy of the current object and returns a shared pointer to it.
int GetLeapMonth(int year, int era) const override
Gets the leap month for the specified year.
int GetMonthsInYear(int year, int era) const override
Gets number of months in the specified year.
ArrayPtr< int > get_Eras() const override
Gets list of eras existing in calendar.
DateTime get_MaxSupportedDateTime() const override
Maximal point in time that is supported by the calendar.
East-asian lunisolar calendar. Objects of this class should only be allocated using System::MakeObjec...
Definition: east_asian_lunisolar_calendar.h:17
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
CalendarId
Identifiers of known calendars.
Definition: calendar_id.h:8
SharedPtr< ChineseLunisolarCalendar > ChineseLunisolarCalendarPtr
ChineseLunisolarCalendar pointer type.
Definition: chinese_lunisolar_calendar.h:10
Definition: db_command.h:9