<!-- This comment will put IE 6, 7 and 8 in quirks mode --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>ICU 4.4: gregocal.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javaScript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body onload='searchBox.OnSelectItem(0);'> <!-- Generated by Doxygen 1.6.1 --> <script type="text/javascript"><!-- var searchBox = new SearchBox("searchBox", "search",false,'Search'); --></script> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <img id="MSearchSelect" src="search/search.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </div> </li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <h1>gregocal.h</h1><a href="gregocal_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span> <a name="l00002"></a>00002 <span class="comment">* Copyright (C) 1997-2009, International Business Machines Corporation and others.</span> <a name="l00003"></a>00003 <span class="comment">* All Rights Reserved.</span> <a name="l00004"></a>00004 <span class="comment">********************************************************************************</span> <a name="l00005"></a>00005 <span class="comment">*</span> <a name="l00006"></a>00006 <span class="comment">* File GREGOCAL.H</span> <a name="l00007"></a>00007 <span class="comment">*</span> <a name="l00008"></a>00008 <span class="comment">* Modification History:</span> <a name="l00009"></a>00009 <span class="comment">*</span> <a name="l00010"></a>00010 <span class="comment">* Date Name Description</span> <a name="l00011"></a>00011 <span class="comment">* 04/22/97 aliu Overhauled header.</span> <a name="l00012"></a>00012 <span class="comment">* 07/28/98 stephen Sync with JDK 1.2</span> <a name="l00013"></a>00013 <span class="comment">* 09/04/98 stephen Re-sync with JDK 8/31 putback</span> <a name="l00014"></a>00014 <span class="comment">* 09/14/98 stephen Changed type of kOneDay, kOneWeek to double.</span> <a name="l00015"></a>00015 <span class="comment">* Fixed bug in roll()</span> <a name="l00016"></a>00016 <span class="comment">* 10/15/99 aliu Fixed j31, incorrect WEEK_OF_YEAR computation.</span> <a name="l00017"></a>00017 <span class="comment">* Added documentation of WEEK_OF_YEAR computation.</span> <a name="l00018"></a>00018 <span class="comment">* 10/15/99 aliu Fixed j32, cannot set date to Feb 29 2000 AD.</span> <a name="l00019"></a>00019 <span class="comment">* {JDK bug 4210209 4209272}</span> <a name="l00020"></a>00020 <span class="comment">* 11/07/2003 srl Update, clean up documentation.</span> <a name="l00021"></a>00021 <span class="comment">********************************************************************************</span> <a name="l00022"></a>00022 <span class="comment">*/</span> <a name="l00023"></a>00023 <a name="l00024"></a>00024 <span class="preprocessor">#ifndef GREGOCAL_H</span> <a name="l00025"></a>00025 <span class="preprocessor"></span><span class="preprocessor">#define GREGOCAL_H</span> <a name="l00026"></a>00026 <span class="preprocessor"></span> <a name="l00027"></a>00027 <span class="preprocessor">#include "<a class="code" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">unicode/utypes.h</a>"</span> <a name="l00028"></a>00028 <a name="l00029"></a>00029 <span class="preprocessor">#if !UCONFIG_NO_FORMATTING</span> <a name="l00030"></a>00030 <span class="preprocessor"></span> <a name="l00031"></a>00031 <span class="preprocessor">#include "<a class="code" href="calendar_8h.html" title="C++ API: Calendar object.">unicode/calendar.h</a>"</span> <a name="l00032"></a>00032 <a name="l00038"></a>00038 <a class="code" href="uversion_8h.html#a7d9374e037299886d4192b763b4c5e8b" title="This is used to begin a declaration of a public ICU C++ API.">U_NAMESPACE_BEGIN</a> <a name="l00039"></a>00039 <a name="l00149"></a><a class="code" href="classGregorianCalendar.html">00149</a> <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a" title="Set to export library symbols from inside the i18n library, and to import them from...">U_I18N_API</a> <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>: <span class="keyword">public</span> <a class="code" href="classCalendar.html" title="Calendar is an abstract base class for converting between a UDate object and a set...">Calendar</a> { <a name="l00150"></a>00150 <span class="keyword">public</span>: <a name="l00151"></a>00151 <a name="l00156"></a><a class="code" href="classGregorianCalendar.html#afeedaf0d04321220e77c46ba69b78619">00156</a> <span class="keyword">enum</span> <a class="code" href="classGregorianCalendar.html#afeedaf0d04321220e77c46ba69b78619" title="Useful constants for GregorianCalendar and TimeZone.">EEras</a> { <a name="l00157"></a>00157 BC, <a name="l00158"></a>00158 AD <a name="l00159"></a>00159 }; <a name="l00160"></a>00160 <a name="l00169"></a>00169 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00170"></a>00170 <a name="l00181"></a>00181 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<a class="code" href="classTimeZone.html" title="TimeZone represents a time zone offset, and also figures out daylight savings.">TimeZone</a>* zoneToAdopt, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00182"></a>00182 <a name="l00192"></a>00192 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<span class="keyword">const</span> <a class="code" href="classTimeZone.html" title="TimeZone represents a time zone offset, and also figures out daylight savings.">TimeZone</a>& zone, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00193"></a>00193 <a name="l00203"></a>00203 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region...">Locale</a>& aLocale, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00204"></a>00204 <a name="l00216"></a>00216 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<a class="code" href="classTimeZone.html" title="TimeZone represents a time zone offset, and also figures out daylight savings.">TimeZone</a>* zoneToAdopt, <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region...">Locale</a>& aLocale, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00217"></a>00217 <a name="l00228"></a>00228 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<span class="keyword">const</span> <a class="code" href="classTimeZone.html" title="TimeZone represents a time zone offset, and also figures out daylight savings.">TimeZone</a>& zone, <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region...">Locale</a>& aLocale, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00229"></a>00229 <a name="l00242"></a>00242 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(int32_t year, int32_t month, int32_t date, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00243"></a>00243 <a name="l00258"></a>00258 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(int32_t year, int32_t month, int32_t date, int32_t hour, int32_t minute, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00259"></a>00259 <a name="l00275"></a>00275 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(int32_t year, int32_t month, int32_t date, int32_t hour, int32_t minute, int32_t second, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00276"></a>00276 <a name="l00281"></a>00281 <span class="keyword">virtual</span> ~<a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(); <a name="l00282"></a>00282 <a name="l00288"></a>00288 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(<span class="keyword">const</span> <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>& source); <a name="l00289"></a>00289 <a name="l00295"></a>00295 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>& <a class="code" href="classCalendar.html#ac3bcbd2497e977c8324cc0b089879c3a" title="Default assignment operator.">operator=</a>(<span class="keyword">const</span> <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>& right); <a name="l00296"></a>00296 <a name="l00302"></a>00302 <span class="keyword">virtual</span> <a class="code" href="classCalendar.html" title="Calendar is an abstract base class for converting between a UDate object and a set...">Calendar</a>* <a class="code" href="classCalendar.html#a369327438e076e64c99ec1d669919957" title="Create and return a polymorphic copy of this calendar.">clone</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00303"></a>00303 <a name="l00313"></a>00313 <span class="keywordtype">void</span> setGregorianChange(<a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> date, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& success); <a name="l00314"></a>00314 <a name="l00323"></a>00323 <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> getGregorianChange(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00324"></a>00324 <a name="l00340"></a>00340 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> isLeapYear(int32_t year) <span class="keyword">const</span>; <a name="l00341"></a>00341 <a name="l00349"></a>00349 <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classCalendar.html#a50ab4c5aa1f93959282c71de04625935" title="Returns TRUE if the given Calendar object is equivalent to this one.">isEquivalentTo</a>(<span class="keyword">const</span> <a class="code" href="classCalendar.html" title="Calendar is an abstract base class for converting between a UDate object and a set...">Calendar</a>& other) <span class="keyword">const</span>; <a name="l00350"></a>00350 <a name="l00362"></a>00362 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCalendar.html#a98e5b80bb733a6e8dec95b8ac0225a68" title="Time Field Rolling function.">roll</a>(EDateFields field, int32_t amount, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& status); <a name="l00363"></a>00363 <a name="l00375"></a>00375 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCalendar.html#a98e5b80bb733a6e8dec95b8ac0225a68" title="Time Field Rolling function.">roll</a>(<a class="code" href="ucal_8h.html#a02fe23bf33319052733c00c7a09ea912" title="Possible fields in a UCalendar.">UCalendarDateFields</a> field, int32_t amount, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& status); <a name="l00376"></a>00376 <a name="l00384"></a>00384 int32_t <a class="code" href="classCalendar.html#a4e67d27df4e1579ce031de5e6ea05a2e" title="Return the minimum value that this field could have, given the current date.">getActualMinimum</a>(EDateFields field) <span class="keyword">const</span>; <a name="l00385"></a>00385 <a name="l00394"></a>00394 int32_t <a class="code" href="classCalendar.html#a4e67d27df4e1579ce031de5e6ea05a2e" title="Return the minimum value that this field could have, given the current date.">getActualMinimum</a>(EDateFields field, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& status) <span class="keyword">const</span>; <a name="l00395"></a>00395 <a name="l00404"></a>00404 int32_t <a class="code" href="classCalendar.html#a4e67d27df4e1579ce031de5e6ea05a2e" title="Return the minimum value that this field could have, given the current date.">getActualMinimum</a>(<a class="code" href="ucal_8h.html#a02fe23bf33319052733c00c7a09ea912" title="Possible fields in a UCalendar.">UCalendarDateFields</a> field, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a> &status) <span class="keyword">const</span>; <a name="l00405"></a>00405 <a name="l00415"></a>00415 int32_t <a class="code" href="classCalendar.html#a62c65424820ca64e850b346212eb35a7" title="Return the maximum value that this field could have, given the current date.">getActualMaximum</a>(EDateFields field) <span class="keyword">const</span>; <a name="l00416"></a>00416 <a name="l00427"></a>00427 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#a62c65424820ca64e850b346212eb35a7" title="Return the maximum value that this field could have, given the current date.">getActualMaximum</a>(<a class="code" href="ucal_8h.html#a02fe23bf33319052733c00c7a09ea912" title="Possible fields in a UCalendar.">UCalendarDateFields</a> field, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& status) <span class="keyword">const</span>; <a name="l00428"></a>00428 <a name="l00438"></a>00438 <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classCalendar.html#a8199d459b6d2171fb62620fab29b8668" title="Queries if the current date for this Calendar is in Daylight Savings Time.">inDaylightTime</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& status) <span class="keyword">const</span>; <a name="l00439"></a>00439 <a name="l00440"></a>00440 <span class="keyword">public</span>: <a name="l00441"></a>00441 <a name="l00452"></a>00452 <span class="keyword">virtual</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported...">UClassID</a> <a class="code" href="classCalendar.html#a13e235c4396d92fc3b129d6a07e6076a" title="Returns a unique class ID POLYMORPHICALLY.">getDynamicClassID</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00453"></a>00453 <a name="l00465"></a>00465 <span class="keyword">static</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported...">UClassID</a> <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> getStaticClassID(<span class="keywordtype">void</span>); <a name="l00466"></a>00466 <a name="l00473"></a>00473 <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="classCalendar.html#a46741d547451faae02591381593d127b" title="Returns the resource key string used for this calendar type.">getType</a>() <span class="keyword">const</span>; <a name="l00474"></a>00474 <a name="l00475"></a>00475 <span class="keyword">protected</span>: <a name="l00476"></a>00476 <a name="l00483"></a>00483 <span class="keyword">private</span>: <a name="l00484"></a>00484 <a class="code" href="classGregorianCalendar.html" title="Concrete class which provides the standard calendar used by most of the world.">GregorianCalendar</a>(); <span class="comment">// default constructor not implemented</span> <a name="l00485"></a>00485 <a name="l00486"></a>00486 <span class="keyword">protected</span>: <a name="l00493"></a>00493 <span class="keyword">virtual</span> int32_t internalGetEra() <span class="keyword">const</span>; <a name="l00494"></a>00494 <a name="l00508"></a>00508 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#addb140c1bca76059b1a4084433ab67db" title="Return the Julian day number of day before the first day of the given month in the...">handleComputeMonthStart</a>(int32_t eyear, int32_t month, <a name="l00509"></a>00509 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> useMonth) <span class="keyword">const</span>; <a name="l00510"></a>00510 <a name="l00519"></a>00519 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#afd953ab4dc160ffc1b586c627c2c6ad9" title="Subclasses may override this.">handleComputeJulianDay</a>(<a class="code" href="ucal_8h.html#a02fe23bf33319052733c00c7a09ea912" title="Possible fields in a UCalendar.">UCalendarDateFields</a> bestField) ; <a name="l00520"></a>00520 <a name="l00528"></a>00528 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#aaa7b064d37f1ac4b66dc57fef6481cda" title="Return the number of days in the given month of the given extended year of this calendar...">handleGetMonthLength</a>(int32_t extendedYear, int32_t month) <span class="keyword">const</span>; <a name="l00529"></a>00529 <a name="l00537"></a>00537 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#acb983bdeebcfb0441ed46256b0f444cc" title="Return the number of days in the given extended year of this calendar system.">handleGetYearLength</a>(int32_t eyear) <span class="keyword">const</span>; <a name="l00538"></a>00538 <a name="l00545"></a>00545 <span class="keyword">virtual</span> int32_t monthLength(int32_t month) <span class="keyword">const</span>; <a name="l00546"></a>00546 <a name="l00554"></a>00554 <span class="keyword">virtual</span> int32_t monthLength(int32_t month, int32_t year) <span class="keyword">const</span>; <a name="l00555"></a>00555 <a name="l00562"></a>00562 int32_t yearLength(int32_t year) <span class="keyword">const</span>; <a name="l00563"></a>00563 <a name="l00569"></a>00569 int32_t yearLength(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00570"></a>00570 <a name="l00578"></a>00578 <span class="keywordtype">void</span> pinDayOfMonth(<span class="keywordtype">void</span>); <a name="l00579"></a>00579 <a name="l00587"></a>00587 <span class="keyword">virtual</span> <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> getEpochDay(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a>& status); <a name="l00588"></a>00588 <a name="l00610"></a>00610 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#afd43a5f74be144b5ac90bc57a2f9cede" title="Subclass API for defining limits of different types.">handleGetLimit</a>(<a class="code" href="ucal_8h.html#a02fe23bf33319052733c00c7a09ea912" title="Possible fields in a UCalendar.">UCalendarDateFields</a> field, ELimitType limitType) <span class="keyword">const</span>; <a name="l00611"></a>00611 <a name="l00620"></a>00620 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#a465fbc6494f2126892dcd694217697f4" title="Return the extended year defined by the current fields.">handleGetExtendedYear</a>(); <a name="l00621"></a>00621 <a name="l00630"></a>00630 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#a116247236ceda5f3d5424767d3c3c561" title="Subclasses must override this to convert from week fields (YEAR_WOY and WEEK_OF_YEAR)...">handleGetExtendedYearFromWeekFields</a>(int32_t yearWoy, int32_t woy); <a name="l00631"></a>00631 <a name="l00632"></a>00632 <a name="l00648"></a>00648 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classCalendar.html#a195fad36b525b46df8934aca312db35e" title="Subclasses may override this method to compute several fields specific to each calendar...">handleComputeFields</a>(int32_t julianDay, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all...">UErrorCode</a> &status); <a name="l00649"></a>00649 <a name="l00650"></a>00650 <span class="keyword">private</span>: <a name="l00658"></a>00658 <span class="keyword">static</span> <span class="keywordtype">double</span> computeJulianDayOfYear(<a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> isGregorian, int32_t year, <a name="l00659"></a>00659 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a>& isLeap); <a name="l00660"></a>00660 <a name="l00665"></a>00665 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> validateFields(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00666"></a>00666 <a name="l00670"></a>00670 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> boundsCheck(int32_t value, <a class="code" href="ucal_8h.html#a02fe23bf33319052733c00c7a09ea912" title="Possible fields in a UCalendar.">UCalendarDateFields</a> field) <span class="keyword">const</span>; <a name="l00671"></a>00671 <a name="l00681"></a>00681 int32_t aggregateStamp(int32_t stamp_a, int32_t stamp_b); <a name="l00682"></a>00682 <a name="l00691"></a>00691 <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> fGregorianCutover; <a name="l00692"></a>00692 <a name="l00696"></a>00696 int32_t fCutoverJulianDay; <a name="l00697"></a>00697 <a name="l00703"></a>00703 <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> fNormalizedGregorianCutover;<span class="comment">// = gregorianCutover;</span> <a name="l00704"></a>00704 <a name="l00709"></a>00709 int32_t fGregorianCutoverYear;<span class="comment">// = 1582;</span> <a name="l00710"></a>00710 <a name="l00715"></a>00715 int32_t fGregorianCutoverJulianDay;<span class="comment">// = 2299161;</span> <a name="l00716"></a>00716 <a name="l00724"></a>00724 <span class="keyword">static</span> <span class="keywordtype">double</span> millisToJulianDay(<a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> millis); <a name="l00725"></a>00725 <a name="l00733"></a>00733 <span class="keyword">static</span> <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> julianDayToMillis(<span class="keywordtype">double</span> julian); <a name="l00734"></a>00734 <a name="l00739"></a>00739 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> fIsGregorian; <a name="l00740"></a>00740 <a name="l00746"></a>00746 <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> fInvertGregorian; <a name="l00747"></a>00747 <a name="l00748"></a>00748 <a name="l00749"></a>00749 <span class="keyword">public</span>: <span class="comment">// internal implementation</span> <a name="l00750"></a>00750 <a name="l00755"></a>00755 <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classCalendar.html#ae5bb9c44ecea69ad64d813fe41de6efa">haveDefaultCentury</a>() <span class="keyword">const</span>; <a name="l00756"></a>00756 <a name="l00761"></a>00761 <span class="keyword">virtual</span> <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> <a class="code" href="classCalendar.html#a745cdbb7e0477cb7c3bb2b29bd0b4350">defaultCenturyStart</a>() <span class="keyword">const</span>; <a name="l00762"></a>00762 <a name="l00767"></a>00767 <span class="keyword">virtual</span> int32_t <a class="code" href="classCalendar.html#a4fa3cf26747f8decdb71d2f3786e9a34">defaultCenturyStartYear</a>() <span class="keyword">const</span>; <a name="l00768"></a>00768 <a name="l00769"></a>00769 <span class="keyword">private</span>: <a name="l00776"></a>00776 <span class="keyword">static</span> <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> fgSystemDefaultCenturyStart; <a name="l00777"></a>00777 <a name="l00781"></a>00781 <span class="keyword">static</span> int32_t fgSystemDefaultCenturyStartYear; <a name="l00782"></a>00782 <a name="l00786"></a>00786 <span class="keyword">static</span> <span class="keyword">const</span> int32_t fgSystemDefaultCenturyYear; <a name="l00787"></a>00787 <a name="l00791"></a>00791 <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> fgSystemDefaultCentury; <a name="l00792"></a>00792 <a name="l00799"></a>00799 <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039" title="Date and Time data type.">UDate</a> internalGetDefaultCenturyStart(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00800"></a>00800 <a name="l00807"></a>00807 int32_t internalGetDefaultCenturyStartYear(<span class="keywordtype">void</span>) <span class="keyword">const</span>; <a name="l00808"></a>00808 <a name="l00813"></a>00813 <span class="keyword">static</span> <span class="keywordtype">void</span> initializeSystemDefaultCentury(<span class="keywordtype">void</span>); <a name="l00814"></a>00814 <a name="l00815"></a>00815 }; <a name="l00816"></a>00816 <a name="l00817"></a>00817 <a class="code" href="uversion_8h.html#a3da1f00f3b02976ac53c014a3e4c0933" title="This is used to end a declaration of a public ICU C++ API.">U_NAMESPACE_END</a> <a name="l00818"></a>00818 <a name="l00819"></a>00819 <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_FORMATTING */</span> <a name="l00820"></a>00820 <a name="l00821"></a>00821 <span class="preprocessor">#endif // _GREGOCAL</span> <a name="l00822"></a>00822 <span class="preprocessor"></span><span class="comment">//eof</span> <a name="l00823"></a>00823 </pre></div></div> <!--- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Defines</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <hr size="1"/><address style="text-align: right;"><small>Generated on 16 Mar 2010 for ICU 4.4 by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address> </body> </html>