blob: 2a7f4042a98f7d4489fe0c6ed159373fd0af1c2d [file] [log] [blame]
<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Boost.Locale: boost::locale::abstract_calendar Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
</head>
<body>
<div id="top"><!-- do not remove this div! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="boost-small.png"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">Boost.Locale
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.7.6.1 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li><a href="examples.html"><span>Examples</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
initNavTree('classboost_1_1locale_1_1abstract__calendar.html','');
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> </div>
<div class="headertitle">
<div class="title">boost::locale::abstract_calendar Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="boost::locale::abstract_calendar" -->
<p><code>#include &lt;<a class="el" href="date__time__facet_8hpp_source.html">boost/locale/date_time_facet.hpp</a>&gt;</code></p>
<p><a href="classboost_1_1locale_1_1abstract__calendar-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5">value_type</a> { <br/>
&#160;&#160;<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5a28694319e58f559df9ca41b22f03427e">absolute_minimum</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5a5aa2c2d439c6e801e3bc48a35972932b">actual_minimum</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5a75e80e0a10af4b2b8eb2fcab72e4b200">greatest_minimum</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5a83d87ff10ff6107dfd0405f1e8757ef8">current</a>,
<br/>
&#160;&#160;<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5a388661725182373d2f92b709034f85c9">least_maximum</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5a3d2648e95466623ba20502281e0208af">actual_maximum</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5ab5d1af0b2698fee942a1486dfcc6552b">absolute_maximum</a>
<br/>
}</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a92cf9485b91d60b70ef00e183bdf4e95">update_type</a> { <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a92cf9485b91d60b70ef00e183bdf4e95aac5f9cb6e12a121b47b51434a3655c81">move</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a92cf9485b91d60b70ef00e183bdf4e95a704e0e917603c2a88de22f3426a3e20b">roll</a>
}</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5">calendar_option_type</a> { <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5add910815d1ad0e97275b781223e869a9">is_gregorian</a>,
<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5a69f0c20e321e3b914883869466122c61">is_dst</a>
}</td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a73bc2d023be4c6ac6a6f441f74ded2f9">clone</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a15067ccf90a19e640051a30a6d3a2a7f">set_value</a> (<a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a> p, int value)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa06fef77acaa6104e3cd2bc80ccc76d9">normalize</a> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a7eacfa5d8f37dfc839d0239c2fcdf64e">get_value</a> (<a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a> p, <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5">value_type</a> v) const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#acb01268c84f27a8a736b715ab9e9557a">set_time</a> (<a class="el" href="structboost_1_1locale_1_1posix__time.html">posix_time</a> const &amp;p)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structboost_1_1locale_1_1posix__time.html">posix_time</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a8900097c0b687393b053bc0420070815">get_time</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a9265206013005d9ac30cf723a7ffe032">set_option</a> (<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5">calendar_option_type</a> opt, int v)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a0c034dd6f135b7d9b6faad08d49715a8">get_option</a> (<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5">calendar_option_type</a> opt) const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#afb8e3a4d2ad93274ec119dc3dd0b103a">adjust_value</a> (<a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a> p, <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a92cf9485b91d60b70ef00e183bdf4e95">update_type</a> u, int <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a7bd4c26f5a4260f6d9c91c615efc4b46">difference</a>)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a7bd4c26f5a4260f6d9c91c615efc4b46">difference</a> (<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a> const *other, <a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a> p) const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa17f0fd2e88d3da8fe7b12e98ad2d6c3">set_timezone</a> (std::string const &amp;tz)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a51f4b91d0dc2f9afa3920a771307d92f">get_timezone</a> () const =0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa20ae19bca185cc0fa4ab69d7f3c5883">same</a> (<a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a> const *other) const =0</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>This class defines generic calendar class, it is used by <a class="el" href="classboost_1_1locale_1_1date__time.html" title="this class represents a date time and allows to perform various operation according to the locale set...">date_time</a> and calendar objects internally. It is less useful for end users, but it is build for localization backend implementation </p>
</div><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a5f1927f4c71fafa4712265e6b68958b5"></a><!-- doxytag: member="boost::locale::abstract_calendar::calendar_option_type" ref="a5f1927f4c71fafa4712265e6b68958b5" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5">boost::locale::abstract_calendar::calendar_option_type</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Information about calendar </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a5f1927f4c71fafa4712265e6b68958b5add910815d1ad0e97275b781223e869a9"></a><!-- doxytag: member="is_gregorian" ref="a5f1927f4c71fafa4712265e6b68958b5add910815d1ad0e97275b781223e869a9" args="" -->is_gregorian</em>&nbsp;</td><td>
<p>Check if the calendar is Gregorian. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a5f1927f4c71fafa4712265e6b68958b5a69f0c20e321e3b914883869466122c61"></a><!-- doxytag: member="is_dst" ref="a5f1927f4c71fafa4712265e6b68958b5a69f0c20e321e3b914883869466122c61" args="" -->is_dst</em>&nbsp;</td><td>
<p>Check if the current time is in daylight time savings. </p>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a92cf9485b91d60b70ef00e183bdf4e95"></a><!-- doxytag: member="boost::locale::abstract_calendar::update_type" ref="a92cf9485b91d60b70ef00e183bdf4e95" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a92cf9485b91d60b70ef00e183bdf4e95">boost::locale::abstract_calendar::update_type</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>A way to update the value </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a92cf9485b91d60b70ef00e183bdf4e95aac5f9cb6e12a121b47b51434a3655c81"></a><!-- doxytag: member="move" ref="a92cf9485b91d60b70ef00e183bdf4e95aac5f9cb6e12a121b47b51434a3655c81" args="" -->move</em>&nbsp;</td><td>
<p>Change the value up or down effecting others for example 1990-12-31 + 1 day = 1991-01-01. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a92cf9485b91d60b70ef00e183bdf4e95a704e0e917603c2a88de22f3426a3e20b"></a><!-- doxytag: member="roll" ref="a92cf9485b91d60b70ef00e183bdf4e95a704e0e917603c2a88de22f3426a3e20b" args="" -->roll</em>&nbsp;</td><td>
<p>Change the value up or down not effecting others for example 1990-12-31 + 1 day = 1990-12-01. </p>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5"></a><!-- doxytag: member="boost::locale::abstract_calendar::value_type" ref="af786b3e65294d70769f2826ef95c7bd5" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5">boost::locale::abstract_calendar::value_type</a></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Type that defines how to fetch the value </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a28694319e58f559df9ca41b22f03427e"></a><!-- doxytag: member="absolute_minimum" ref="af786b3e65294d70769f2826ef95c7bd5a28694319e58f559df9ca41b22f03427e" args="" -->absolute_minimum</em>&nbsp;</td><td>
<p>Absolute possible minimum for the value, for example for day is 1. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a5aa2c2d439c6e801e3bc48a35972932b"></a><!-- doxytag: member="actual_minimum" ref="af786b3e65294d70769f2826ef95c7bd5a5aa2c2d439c6e801e3bc48a35972932b" args="" -->actual_minimum</em>&nbsp;</td><td>
<p>Actual minimal value for this period. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a75e80e0a10af4b2b8eb2fcab72e4b200"></a><!-- doxytag: member="greatest_minimum" ref="af786b3e65294d70769f2826ef95c7bd5a75e80e0a10af4b2b8eb2fcab72e4b200" args="" -->greatest_minimum</em>&nbsp;</td><td>
<p>Maximal minimum value that can be for this period. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a83d87ff10ff6107dfd0405f1e8757ef8"></a><!-- doxytag: member="current" ref="af786b3e65294d70769f2826ef95c7bd5a83d87ff10ff6107dfd0405f1e8757ef8" args="" -->current</em>&nbsp;</td><td>
<p>Current value of this period. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a388661725182373d2f92b709034f85c9"></a><!-- doxytag: member="least_maximum" ref="af786b3e65294d70769f2826ef95c7bd5a388661725182373d2f92b709034f85c9" args="" -->least_maximum</em>&nbsp;</td><td>
<p>The last maximal value for this period, For example for Gregorian calendar day it is 28 </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a3d2648e95466623ba20502281e0208af"></a><!-- doxytag: member="actual_maximum" ref="af786b3e65294d70769f2826ef95c7bd5a3d2648e95466623ba20502281e0208af" args="" -->actual_maximum</em>&nbsp;</td><td>
<p>Actual maximum, for it can be 28, 29, 30, 31 for day according to current month. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5ab5d1af0b2698fee942a1486dfcc6552b"></a><!-- doxytag: member="absolute_maximum" ref="af786b3e65294d70769f2826ef95c7bd5ab5d1af0b2698fee942a1486dfcc6552b" args="" -->absolute_maximum</em>&nbsp;</td><td>
<p>Maximal value, for Gregorian day it would be 31. </p>
</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="afb8e3a4d2ad93274ec119dc3dd0b103a"></a><!-- doxytag: member="boost::locale::abstract_calendar::adjust_value" ref="afb8e3a4d2ad93274ec119dc3dd0b103a" args="(period::marks::period_mark p, update_type u, int difference)=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#afb8e3a4d2ad93274ec119dc3dd0b103a">boost::locale::abstract_calendar::adjust_value</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a>&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a92cf9485b91d60b70ef00e183bdf4e95">update_type</a>&#160;</td>
<td class="paramname"><em>u</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>difference</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td><code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Adjust period's <em>p</em> value by <em>difference</em> items using a update_type <em>u</em>. Note: not all values are adjustable </p>
</div>
</div>
<a class="anchor" id="a73bc2d023be4c6ac6a6f441f74ded2f9"></a><!-- doxytag: member="boost::locale::abstract_calendar::clone" ref="a73bc2d023be4c6ac6a6f441f74ded2f9" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a>* <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a73bc2d023be4c6ac6a6f441f74ded2f9">boost::locale::abstract_calendar::clone</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Make a polymorphic copy of the calendar </p>
</div>
</div>
<a class="anchor" id="a7bd4c26f5a4260f6d9c91c615efc4b46"></a><!-- doxytag: member="boost::locale::abstract_calendar::difference" ref="a7bd4c26f5a4260f6d9c91c615efc4b46" args="(abstract_calendar const *other, period::marks::period_mark p) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a7bd4c26f5a4260f6d9c91c615efc4b46">boost::locale::abstract_calendar::difference</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a> const *&#160;</td>
<td class="paramname"><em>other</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a>&#160;</td>
<td class="paramname"><em>p</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Calculate the difference between this calendar and <em>other</em> in <em>p</em> units </p>
</div>
</div>
<a class="anchor" id="a0c034dd6f135b7d9b6faad08d49715a8"></a><!-- doxytag: member="boost::locale::abstract_calendar::get_option" ref="a0c034dd6f135b7d9b6faad08d49715a8" args="(calendar_option_type opt) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a0c034dd6f135b7d9b6faad08d49715a8">boost::locale::abstract_calendar::get_option</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5">calendar_option_type</a>&#160;</td>
<td class="paramname"><em>opt</em></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get option for calendar, currently only check if it is Gregorian calendar </p>
</div>
</div>
<a class="anchor" id="a8900097c0b687393b053bc0420070815"></a><!-- doxytag: member="boost::locale::abstract_calendar::get_time" ref="a8900097c0b687393b053bc0420070815" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual <a class="el" href="structboost_1_1locale_1_1posix__time.html">posix_time</a> <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a8900097c0b687393b053bc0420070815">boost::locale::abstract_calendar::get_time</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get current time point </p>
</div>
</div>
<a class="anchor" id="a51f4b91d0dc2f9afa3920a771307d92f"></a><!-- doxytag: member="boost::locale::abstract_calendar::get_timezone" ref="a51f4b91d0dc2f9afa3920a771307d92f" args="() const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual std::string <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a51f4b91d0dc2f9afa3920a771307d92f">boost::locale::abstract_calendar::get_timezone</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get current time zone, empty - system one </p>
</div>
</div>
<a class="anchor" id="a7eacfa5d8f37dfc839d0239c2fcdf64e"></a><!-- doxytag: member="boost::locale::abstract_calendar::get_value" ref="a7eacfa5d8f37dfc839d0239c2fcdf64e" args="(period::marks::period_mark p, value_type v) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual int <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a7eacfa5d8f37dfc839d0239c2fcdf64e">boost::locale::abstract_calendar::get_value</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a>&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#af786b3e65294d70769f2826ef95c7bd5">value_type</a>&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Get specific value for period <em>p</em> according to a value_type <em>v</em> </p>
</div>
</div>
<a class="anchor" id="aa06fef77acaa6104e3cd2bc80ccc76d9"></a><!-- doxytag: member="boost::locale::abstract_calendar::normalize" ref="aa06fef77acaa6104e3cd2bc80ccc76d9" args="()=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa06fef77acaa6104e3cd2bc80ccc76d9">boost::locale::abstract_calendar::normalize</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td><code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Recalculate all periods after setting them, should be called after use of <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a15067ccf90a19e640051a30a6d3a2a7f">set_value()</a> function. </p>
</div>
</div>
<a class="anchor" id="aa20ae19bca185cc0fa4ab69d7f3c5883"></a><!-- doxytag: member="boost::locale::abstract_calendar::same" ref="aa20ae19bca185cc0fa4ab69d7f3c5883" args="(abstract_calendar const *other) const =0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual bool <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa20ae19bca185cc0fa4ab69d7f3c5883">boost::locale::abstract_calendar::same</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a> const *&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const<code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Check of two calendars have same rules </p>
</div>
</div>
<a class="anchor" id="a9265206013005d9ac30cf723a7ffe032"></a><!-- doxytag: member="boost::locale::abstract_calendar::set_option" ref="a9265206013005d9ac30cf723a7ffe032" args="(calendar_option_type opt, int v)=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a9265206013005d9ac30cf723a7ffe032">boost::locale::abstract_calendar::set_option</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a5f1927f4c71fafa4712265e6b68958b5">calendar_option_type</a>&#160;</td>
<td class="paramname"><em>opt</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td><code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Set option for calendar, for future use </p>
</div>
</div>
<a class="anchor" id="acb01268c84f27a8a736b715ab9e9557a"></a><!-- doxytag: member="boost::locale::abstract_calendar::set_time" ref="acb01268c84f27a8a736b715ab9e9557a" args="(posix_time const &amp;p)=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#acb01268c84f27a8a736b715ab9e9557a">boost::locale::abstract_calendar::set_time</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structboost_1_1locale_1_1posix__time.html">posix_time</a> const &amp;&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td><code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Set current time point </p>
</div>
</div>
<a class="anchor" id="aa17f0fd2e88d3da8fe7b12e98ad2d6c3"></a><!-- doxytag: member="boost::locale::abstract_calendar::set_timezone" ref="aa17f0fd2e88d3da8fe7b12e98ad2d6c3" args="(std::string const &amp;tz)=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa17f0fd2e88d3da8fe7b12e98ad2d6c3">boost::locale::abstract_calendar::set_timezone</a> </td>
<td>(</td>
<td class="paramtype">std::string const &amp;&#160;</td>
<td class="paramname"><em>tz</em></td><td>)</td>
<td><code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Set time zone, empty - use system </p>
</div>
</div>
<a class="anchor" id="a15067ccf90a19e640051a30a6d3a2a7f"></a><!-- doxytag: member="boost::locale::abstract_calendar::set_value" ref="a15067ccf90a19e640051a30a6d3a2a7f" args="(period::marks::period_mark p, int value)=0" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#a15067ccf90a19e640051a30a6d3a2a7f">boost::locale::abstract_calendar::set_value</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceboost_1_1locale_1_1period_1_1marks.html#a1536eaff4b2a880782128fc127f40d3a">period::marks::period_mark</a>&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td><code> [pure virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Set specific <em>value</em> for period <em>p</em>, note not all values are settable.</p>
<p>After call of set_value you may want to call <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa06fef77acaa6104e3cd2bc80ccc76d9">normalize()</a> function to make sure vall periods are updated, if you set sereral fields that are part of single date/time representation you should call set_value several times and then call <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa06fef77acaa6104e3cd2bc80ccc76d9">normalize()</a>.</p>
<p>If <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html#aa06fef77acaa6104e3cd2bc80ccc76d9">normalize()</a> is not called after set_value, the behavior is undefined </p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>boost/locale/<a class="el" href="date__time__facet_8hpp_source.html">date_time_facet.hpp</a></li>
</ul>
</div><!-- contents -->
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>boost</b> </li>
<li class="navelem"><a class="el" href="namespaceboost_1_1locale.html">locale</a> </li>
<li class="navelem"><a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a> </li>
<li class="footer">
&copy; Copyright 2009-2012 Artyom Beilis, Distributed under the <a href="http://www.boost.org/LICENSE_1_0.txt">Boost Software License</a>, Version 1.0.
</li>
</ul>
</div>
</body>
</html>