<!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"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>Boost.Locale: boost::locale::abstract_calendar Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<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>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</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><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){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> &#124;
<a href="classboost_1_1locale_1_1abstract__calendar-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">boost::locale::abstract_calendar Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="date__time__facet_8hpp_source.html">boost/locale/date_time_facet.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:af786b3e65294d70769f2826ef95c7bd5"><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 class="separator:af786b3e65294d70769f2826ef95c7bd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92cf9485b91d60b70ef00e183bdf4e95"><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 class="separator:a92cf9485b91d60b70ef00e183bdf4e95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f1927f4c71fafa4712265e6b68958b5"><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 class="separator:a5f1927f4c71fafa4712265e6b68958b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a73bc2d023be4c6ac6a6f441f74ded2f9"><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 class="separator:a73bc2d023be4c6ac6a6f441f74ded2f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15067ccf90a19e640051a30a6d3a2a7f"><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 class="separator:a15067ccf90a19e640051a30a6d3a2a7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa06fef77acaa6104e3cd2bc80ccc76d9"><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 class="separator:aa06fef77acaa6104e3cd2bc80ccc76d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7eacfa5d8f37dfc839d0239c2fcdf64e"><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 class="separator:a7eacfa5d8f37dfc839d0239c2fcdf64e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb01268c84f27a8a736b715ab9e9557a"><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 class="separator:acb01268c84f27a8a736b715ab9e9557a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8900097c0b687393b053bc0420070815"><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 class="separator:a8900097c0b687393b053bc0420070815"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9265206013005d9ac30cf723a7ffe032"><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 class="separator:a9265206013005d9ac30cf723a7ffe032"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c034dd6f135b7d9b6faad08d49715a8"><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 class="separator:a0c034dd6f135b7d9b6faad08d49715a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb8e3a4d2ad93274ec119dc3dd0b103a"><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 class="separator:afb8e3a4d2ad93274ec119dc3dd0b103a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7bd4c26f5a4260f6d9c91c615efc4b46"><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 class="separator:a7bd4c26f5a4260f6d9c91c615efc4b46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa17f0fd2e88d3da8fe7b12e98ad2d6c3"><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 class="separator:aa17f0fd2e88d3da8fe7b12e98ad2d6c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51f4b91d0dc2f9afa3920a771307d92f"><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 class="separator:a51f4b91d0dc2f9afa3920a771307d92f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20ae19bca185cc0fa4ab69d7f3c5883"><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>
<tr class="separator:aa20ae19bca185cc0fa4ab69d7f3c5883"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">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><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="a5f1927f4c71fafa4712265e6b68958b5"></a>
<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>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a5f1927f4c71fafa4712265e6b68958b5add910815d1ad0e97275b781223e869a9"></a>is_gregorian</em>&#160;</td><td class="fielddoc">
<p>Check if the calendar is Gregorian. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a5f1927f4c71fafa4712265e6b68958b5a69f0c20e321e3b914883869466122c61"></a>is_dst</em>&#160;</td><td class="fielddoc">
<p>Check if the current time is in daylight time savings. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="a92cf9485b91d60b70ef00e183bdf4e95"></a>
<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>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a92cf9485b91d60b70ef00e183bdf4e95aac5f9cb6e12a121b47b51434a3655c81"></a>move</em>&#160;</td><td class="fielddoc">
<p>Change the value up or down effecting others for example 1990-12-31 + 1 day = 1991-01-01. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a92cf9485b91d60b70ef00e183bdf4e95a704e0e917603c2a88de22f3426a3e20b"></a>roll</em>&#160;</td><td class="fielddoc">
<p>Change the value up or down not effecting others for example 1990-12-31 + 1 day = 1990-12-01. </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5"></a>
<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>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a28694319e58f559df9ca41b22f03427e"></a>absolute_minimum</em>&#160;</td><td class="fielddoc">
<p>Absolute possible minimum for the value, for example for day is 1. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a5aa2c2d439c6e801e3bc48a35972932b"></a>actual_minimum</em>&#160;</td><td class="fielddoc">
<p>Actual minimal value for this period. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a75e80e0a10af4b2b8eb2fcab72e4b200"></a>greatest_minimum</em>&#160;</td><td class="fielddoc">
<p>Maximal minimum value that can be for this period. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a83d87ff10ff6107dfd0405f1e8757ef8"></a>current</em>&#160;</td><td class="fielddoc">
<p>Current value of this period. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a388661725182373d2f92b709034f85c9"></a>least_maximum</em>&#160;</td><td class="fielddoc">
<p>The last maximal value for this period, For example for Gregorian calendar day it is 28 </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5a3d2648e95466623ba20502281e0208af"></a>actual_maximum</em>&#160;</td><td class="fielddoc">
<p>Actual maximum, for it can be 28, 29, 30, 31 for day according to current month. </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="af786b3e65294d70769f2826ef95c7bd5ab5d1af0b2698fee942a1486dfcc6552b"></a>absolute_maximum</em>&#160;</td><td class="fielddoc">
<p>Maximal value, for Gregorian day it would be 31. </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="afb8e3a4d2ad93274ec119dc3dd0b103a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void boost::locale::abstract_calendar::adjust_value </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></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </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>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classboost_1_1locale_1_1abstract__calendar.html">abstract_calendar</a>* boost::locale::abstract_calendar::clone </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Make a polymorphic copy of the calendar </p>

</div>
</div>
<a class="anchor" id="a7bd4c26f5a4260f6d9c91c615efc4b46"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int boost::locale::abstract_calendar::difference </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</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </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>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int boost::locale::abstract_calendar::get_option </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</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </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>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structboost_1_1locale_1_1posix__time.html">posix_time</a> boost::locale::abstract_calendar::get_time </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get current time point </p>

</div>
</div>
<a class="anchor" id="a51f4b91d0dc2f9afa3920a771307d92f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual std::string boost::locale::abstract_calendar::get_timezone </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get current time zone, empty - system one </p>

</div>
</div>
<a class="anchor" id="a7eacfa5d8f37dfc839d0239c2fcdf64e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual int boost::locale::abstract_calendar::get_value </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</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </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>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void boost::locale::abstract_calendar::normalize </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </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>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool boost::locale::abstract_calendar::same </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</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Check of two calendars have same rules </p>

</div>
</div>
<a class="anchor" id="a9265206013005d9ac30cf723a7ffe032"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void boost::locale::abstract_calendar::set_option </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></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set option for calendar, for future use </p>

</div>
</div>
<a class="anchor" id="acb01268c84f27a8a736b715ab9e9557a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void boost::locale::abstract_calendar::set_time </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></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set current time point </p>

</div>
</div>
<a class="anchor" id="aa17f0fd2e88d3da8fe7b12e98ad2d6c3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void boost::locale::abstract_calendar::set_timezone </td>
          <td>(</td>
          <td class="paramtype">std::string const &amp;&#160;</td>
          <td class="paramname"><em>tz</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set time zone, empty - use system </p>

</div>
</div>
<a class="anchor" id="a15067ccf90a19e640051a30a6d3a2a7f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void boost::locale::abstract_calendar::set_value </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></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </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><!-- doc-content -->

    <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>
