summaryrefslogtreecommitdiff
path: root/doc/html/boost/local_time/local_date_time_base.html
blob: 098b8377a5cdbbc255a8e75b093a48929824605c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Class template local_date_time_base</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../../date_time/doxy.html#header.boost.date_time.local_time.local_date_time_hpp" title="Header &lt;boost/date_time/local_time/local_date_time.hpp&gt;">
<link rel="prev" href="dst_not_valid.html" title="Struct dst_not_valid">
<link rel="next" href="bad_offset.html" title="Struct bad_offset">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="dst_not_valid.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../date_time/doxy.html#header.boost.date_time.local_time.local_date_time_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="bad_offset.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.local_time.local_date_time_base"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Class template local_date_time_base</span></h2>
<p>boost::local_time::local_date_time_base &#8212; Representation of "wall-clock" time in a particular time zone. </p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../date_time/doxy.html#header.boost.date_time.local_time.local_date_time_hpp" title="Header &lt;boost/date_time/local_time/local_date_time.hpp&gt;">boost/date_time/local_time/local_date_time.hpp</a>&gt;

</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> utc_time_ <span class="special">=</span> <span class="identifier">posix_time</span><span class="special">::</span><span class="identifier">ptime</span><span class="special">,</span> 
         <span class="keyword">typename</span> tz_type <span class="special">=</span> <span class="identifier">date_time</span><span class="special">::</span><span class="identifier">time_zone_base</span><span class="special">&lt;</span><span class="identifier">utc_time_</span><span class="special">,</span><span class="keyword">char</span><span class="special">&gt;</span> <span class="special">&gt;</span> 
<span class="keyword">class</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">{</span>
<span class="keyword">public</span><span class="special">:</span>
  <span class="comment">// types</span>
  <span class="keyword">typedef</span> <span class="identifier">utc_time_</span>                         <a name="boost.local_time.local_date_time_base.utc_time_type"></a><span class="identifier">utc_time_type</span><span class="special">;</span>     
  <span class="keyword">typedef</span> <span class="identifier">utc_time_type</span><span class="special">::</span><span class="identifier">time_duration_type</span> <a name="boost.local_time.local_date_time_base.time_duration_type"></a><span class="identifier">time_duration_type</span><span class="special">;</span>
  <span class="keyword">typedef</span> <span class="identifier">utc_time_type</span><span class="special">::</span><span class="identifier">date_type</span>          <a name="boost.local_time.local_date_time_base.date_type"></a><span class="identifier">date_type</span><span class="special">;</span>         
  <span class="keyword">typedef</span> <span class="identifier">date_type</span><span class="special">::</span><span class="identifier">duration_type</span>          <a name="boost.local_time.local_date_time_base.date_duration_type"></a><span class="identifier">date_duration_type</span><span class="special">;</span>
  <span class="keyword">typedef</span> <span class="identifier">utc_time_type</span><span class="special">::</span><span class="identifier">time_system_type</span>   <a name="boost.local_time.local_date_time_base.time_system_type"></a><span class="identifier">time_system_type</span><span class="special">;</span>  

  <span class="keyword">enum</span> <a name="boost.local_time.local_date_time_base.DST_CALC_OPTIONS"></a>DST_CALC_OPTIONS <span class="special">{</span> EXCEPTION_ON_ERROR, NOT_DATE_TIME_ON_ERROR <span class="special">}</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="local_date_time_base.html#boost.local_time.local_date_time_baseconstruct-copy-destruct">construct/copy/destruct</a></span>
  <a class="link" href="local_date_time_base.html#id692692-bb"><span class="identifier">local_date_time_base</span></a><span class="special">(</span><span class="identifier">utc_time_type</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html#id736846-bb"><span class="identifier">local_date_time_base</span></a><span class="special">(</span><span class="identifier">date_type</span><span class="special">,</span> <span class="identifier">time_duration_type</span><span class="special">,</span> 
                       <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html#id740537-bb"><span class="identifier">local_date_time_base</span></a><span class="special">(</span><span class="identifier">date_type</span><span class="special">,</span> <span class="identifier">time_duration_type</span><span class="special">,</span> 
                       <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">,</span> <span class="identifier">DST_CALC_OPTIONS</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html#id721426-bb"><span class="identifier">local_date_time_base</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
  <span class="keyword">explicit</span> <a class="link" href="local_date_time_base.html#id711320-bb"><span class="identifier">local_date_time_base</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">date_time</span><span class="special">::</span><span class="identifier">special_values</span><span class="special">,</span> 
                                <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html#id721422-bb"><span class="special">~</span><span class="identifier">local_date_time_base</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="local_date_time_base.html#id740017-bb">public member functions</a></span>
  <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> <a class="link" href="local_date_time_base.html#id740021-bb"><span class="identifier">zone</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id740032-bb"><span class="identifier">is_dst</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">utc_time_type</span> <a class="link" href="local_date_time_base.html#id740043-bb"><span class="identifier">utc_time</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">utc_time_type</span> <a class="link" href="local_date_time_base.html#id740054-bb"><span class="identifier">local_time</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a class="link" href="local_date_time_base.html#id363587-bb"><span class="identifier">to_string</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> 
  <a class="link" href="local_date_time_base.html#id363601-bb"><span class="identifier">local_time_in</span></a><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">,</span> 
                <span class="identifier">time_duration_type</span> <span class="special">=</span> <span class="identifier">time_duration_type</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">)</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a class="link" href="local_date_time_base.html#id358497-bb"><span class="identifier">zone_name</span></a><span class="special">(</span><span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a class="link" href="local_date_time_base.html#id429071-bb"><span class="identifier">zone_abbrev</span></a><span class="special">(</span><span class="keyword">bool</span> <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a class="link" href="local_date_time_base.html#id441560-bb"><span class="identifier">zone_as_posix_string</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id441570-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id714786-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id717549-bb"><span class="keyword">operator</span><span class="special">&lt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id717569-bb"><span class="keyword">operator</span><span class="special">&lt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id373453-bb"><span class="keyword">operator</span><span class="special">&gt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <span class="keyword">bool</span> <a class="link" href="local_date_time_base.html#id675669-bb"><span class="keyword">operator</span><span class="special">&gt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id675690-bb"><span class="keyword">operator</span><span class="special">+</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id364954-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id739841-bb"><span class="keyword">operator</span><span class="special">-</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id739859-bb"><span class="keyword">operator</span><span class="special">-=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id739877-bb"><span class="keyword">operator</span><span class="special">+</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id736261-bb"><span class="keyword">operator</span><span class="special">+=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id736278-bb"><span class="keyword">operator</span><span class="special">-</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
  <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a class="link" href="local_date_time_base.html#id721860-bb"><span class="keyword">operator</span><span class="special">-=</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
  <span class="identifier">time_duration_type</span> <a class="link" href="local_date_time_base.html#id683936-bb"><span class="keyword">operator</span><span class="special">-</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="local_date_time_base.html#id700044-bb">public static functions</a></span>
  <span class="keyword">static</span> <span class="identifier">time_is_dst_result</span> 
  <a class="link" href="local_date_time_base.html#id700047-bb"><span class="identifier">check_dst</span></a><span class="special">(</span><span class="identifier">date_type</span><span class="special">,</span> <span class="identifier">time_duration_type</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">)</span><span class="special">;</span>

  <span class="comment">// <a class="link" href="local_date_time_base.html#id735745-bb">private member functions</a></span>
  <span class="identifier">utc_time_type</span> 
  <a class="link" href="local_date_time_base.html#id735748-bb"><span class="identifier">construction_adjustment</span></a><span class="special">(</span><span class="identifier">utc_time_type</span><span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">bool</span><span class="special">)</span><span class="special">;</span>
  <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a class="link" href="local_date_time_base.html#id699685-bb"><span class="identifier">zone_as_offset</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="id1531196"></a><h2>Description</h2>
<p>Representation of "wall-clock" time in a particular time zone Local_date_time_base holds a time value (date and time offset from 00:00) along with a time zone. The time value is stored as UTC and conversions to wall clock time are made as needed. This approach allows for operations between wall-clock times in different time zones, and daylight savings time considerations, to be made. Time zones are required to be in the form of a boost::shared_ptr&lt;time_zone_base&gt;. </p>
<div class="refsect2">
<a name="id1531202"></a><h3>
<a name="boost.local_time.local_date_time_baseconstruct-copy-destruct"></a><code class="computeroutput">local_date_time_base</code> 
        public
       construct/copy/destruct</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><a name="id692692-bb"></a><span class="identifier">local_date_time_base</span><span class="special">(</span><span class="identifier">utc_time_type</span> t<span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> tz<span class="special">)</span><span class="special">;</span></pre>
<p>This constructor interprets the passed time as a UTC time. So, for example, if the passed timezone is UTC-5 then the time will be adjusted back 5 hours. The time zone allows for automatic calculation of whether the particular time is adjusted for daylight savings, etc. If the time zone shared pointer is null then time stays unadjusted. 
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term">Parameters:</span></p></td>
<td><div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><code class="computeroutput">t</code></span></p></td>
<td><p>A UTC time </p></td>
</tr>
<tr>
<td><p><span class="term"><code class="computeroutput">tz</code></span></p></td>
<td><p>Timezone for to adjust the UTC time to. </p></td>
</tr>
</tbody>
</table></div></td>
</tr></tbody>
</table></div>
</li>
<li class="listitem">
<pre class="literallayout"><a name="id736846-bb"></a><span class="identifier">local_date_time_base</span><span class="special">(</span><span class="identifier">date_type</span> d<span class="special">,</span> <span class="identifier">time_duration_type</span> td<span class="special">,</span> 
                     <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> tz<span class="special">,</span> <span class="keyword">bool</span> dst_flag<span class="special">)</span><span class="special">;</span></pre>
<p>This constructs a local time -- the passed time information understood to be in the passed tz. The DST flag must be passed to indicate whether the time is in daylight savings or not. 
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term">Throws:</span></p></td>
<td>-- <a class="link" href="time_label_invalid.html" title="Struct time_label_invalid">time_label_invalid</a> if the time passed does not exist in the given locale. The non-existent case occurs typically during the shift-back from daylight savings time. When the clock is shifted forward a range of times (2 am to 3 am in the US) is skipped and hence is invalid. <a class="link" href="dst_not_valid.html" title="Struct dst_not_valid">dst_not_valid</a> if the DST flag is passed for a period where DST is not active. </td>
</tr></tbody>
</table></div>
</li>
<li class="listitem">
<pre class="literallayout"><a name="id740537-bb"></a><span class="identifier">local_date_time_base</span><span class="special">(</span><span class="identifier">date_type</span> d<span class="special">,</span> <span class="identifier">time_duration_type</span> td<span class="special">,</span> 
                     <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> tz<span class="special">,</span> 
                     <span class="identifier">DST_CALC_OPTIONS</span> calc_option<span class="special">)</span><span class="special">;</span></pre>
<p>This constructs a local time -- the passed time information understood to be in the passed tz. The DST flag is calculated according to the specified rule. </p>
</li>
<li class="listitem">
<pre class="literallayout"><a name="id721426-bb"></a><span class="identifier">local_date_time_base</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span><span class="special">;</span></pre>Copy constructor. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">explicit</span> <a name="id711320-bb"></a><span class="identifier">local_date_time_base</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">date_time</span><span class="special">::</span><span class="identifier">special_values</span> sv<span class="special">,</span> 
                              <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> tz <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre>Special values constructor. </li>
<li class="listitem">
<pre class="literallayout"><a name="id721422-bb"></a><span class="special">~</span><span class="identifier">local_date_time_base</span><span class="special">(</span><span class="special">)</span><span class="special">;</span></pre>Simple destructor, releases time zone if last referrer. </li>
</ol></div>
</div>
<div class="refsect2">
<a name="id1531796"></a><h3>
<a name="id740017-bb"></a><code class="computeroutput">local_date_time_base</code> public member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> <a name="id740021-bb"></a><span class="identifier">zone</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>returns time zone associated with calling instance </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id740032-bb"></a><span class="identifier">is_dst</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>returns false is time_zone is NULL and if time value is a special_value </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">utc_time_type</span> <a name="id740043-bb"></a><span class="identifier">utc_time</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns object's time value as a utc representation. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">utc_time_type</span> <a name="id740054-bb"></a><span class="identifier">local_time</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns object's time value as a local representation. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a name="id363587-bb"></a><span class="identifier">to_string</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns string in the form "2003-Aug-20 05:00:00 EDT". <p>Returns string in the form "2003-Aug-20 05:00:00 EDT". If time_zone is NULL the time zone abbreviation will be "UTC". The time zone abbrev will not be included if calling object is a special_value </p>
</li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> 
<a name="id363601-bb"></a><span class="identifier">local_time_in</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> new_tz<span class="special">,</span> 
              <span class="identifier">time_duration_type</span> td <span class="special">=</span> <span class="identifier">time_duration_type</span><span class="special">(</span><span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">,</span> <span class="number">0</span><span class="special">)</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
<p>returns a <code class="computeroutput"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a></code> in the given time zone with the optional time_duration added. </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a name="id358497-bb"></a><span class="identifier">zone_name</span><span class="special">(</span><span class="keyword">bool</span> as_offset <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns name of associated time zone or "Coordinated Universal Time". <p>Optional bool parameter will return time zone as an offset (ie "+07:00" extended iso format). Empty string is returned for classes that do not use a time_zone </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a name="id429071-bb"></a><span class="identifier">zone_abbrev</span><span class="special">(</span><span class="keyword">bool</span> as_offset <span class="special">=</span> <span class="keyword">false</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Returns abbreviation of associated time zone or "UTC". <p>Optional bool parameter will return time zone as an offset (ie "+0700" iso format). Empty string is returned for classes that do not use a time_zone </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a name="id441560-bb"></a><span class="identifier">zone_as_posix_string</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>returns a posix_time_zone string for the associated time_zone. If no time_zone, "UTC+00" is returned. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id441570-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Equality comparison operator. <p>Equality comparison operator </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id714786-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Non-Equality comparison operator. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id717549-bb"></a><span class="keyword">operator</span><span class="special">&lt;</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Less than comparison operator. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id717569-bb"></a><span class="keyword">operator</span><span class="special">&lt;=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Less than or equal to comparison operator. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id373453-bb"></a><span class="keyword">operator</span><span class="special">&gt;</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Greater than comparison operator. </li>
<li class="listitem">
<pre class="literallayout"><span class="keyword">bool</span> <a name="id675669-bb"></a><span class="keyword">operator</span><span class="special">&gt;=</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Greater than or equal to comparison operator. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id675690-bb"></a><span class="keyword">operator</span><span class="special">+</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span> dd<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Local_date_time + date_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id364954-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span> dd<span class="special">)</span><span class="special">;</span></pre>Local_date_time += date_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id739841-bb"></a><span class="keyword">operator</span><span class="special">-</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span> dd<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Local_date_time - date_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id739859-bb"></a><span class="keyword">operator</span><span class="special">-=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">date_duration_type</span> <span class="special">&amp;</span> dd<span class="special">)</span><span class="special">;</span></pre>Local_date_time -= date_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id739877-bb"></a><span class="keyword">operator</span><span class="special">+</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span> td<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Local_date_time + time_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id736261-bb"></a><span class="keyword">operator</span><span class="special">+=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span> td<span class="special">)</span><span class="special">;</span></pre>Local_date_time += time_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id736278-bb"></a><span class="keyword">operator</span><span class="special">-</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span> td<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>Local_date_time - time_duration. </li>
<li class="listitem">
<pre class="literallayout"><a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <a name="id721860-bb"></a><span class="keyword">operator</span><span class="special">-=</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span> td<span class="special">)</span><span class="special">;</span></pre>Local_date_time -= time_duration. </li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">time_duration_type</span> <a name="id683936-bb"></a><span class="keyword">operator</span><span class="special">-</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="local_date_time_base.html" title="Class template local_date_time_base">local_date_time_base</a> <span class="special">&amp;</span> rhs<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>local_date_time -= local_date_time --&gt; time_duration_type </li>
</ol></div>
</div>
<div class="refsect2">
<a name="id1533377"></a><h3>
<a name="id700044-bb"></a><code class="computeroutput">local_date_time_base</code> public static functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem">
<pre class="literallayout"><span class="keyword">static</span> <span class="identifier">time_is_dst_result</span> 
<a name="id700047-bb"></a><span class="identifier">check_dst</span><span class="special">(</span><span class="identifier">date_type</span> d<span class="special">,</span> <span class="identifier">time_duration_type</span> td<span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> tz<span class="special">)</span><span class="special">;</span></pre>Determines if given time label is in daylight savings for given zone. <p>Determines if given time label is in daylight savings for given zone. Takes a date and time_duration representing a local time, along with time zone, and returns a time_is_dst_result object as result. </p>
</li></ol></div>
</div>
<div class="refsect2">
<a name="id1533495"></a><h3>
<a name="id735745-bb"></a><code class="computeroutput">local_date_time_base</code> private member functions</h3>
<div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<pre class="literallayout"><span class="identifier">utc_time_type</span> 
<a name="id735748-bb"></a><span class="identifier">construction_adjustment</span><span class="special">(</span><span class="identifier">utc_time_type</span> t<span class="special">,</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">shared_ptr</span><span class="special">&lt;</span> <span class="identifier">tz_type</span> <span class="special">&gt;</span> z<span class="special">,</span> 
                        <span class="keyword">bool</span> dst_flag<span class="special">)</span><span class="special">;</span></pre>
<p>Adjust the passed in time to UTC? </p>
</li>
<li class="listitem">
<pre class="literallayout"><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <a name="id699685-bb"></a><span class="identifier">zone_as_offset</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">time_duration_type</span> <span class="special">&amp;</span> td<span class="special">,</span> 
                           <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span> <span class="special">&amp;</span> separator<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
<p>Simple formatting code -- todo remove this? </p>
</li>
</ol></div>
</div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2001-2005 CrystalClear Software, Inc<p>Subject to the Boost Software License, Version 1.0. (See accompanying file
    <code class="filename">LICENSE_1_0.txt</code> or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="dst_not_valid.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../date_time/doxy.html#header.boost.date_time.local_time.local_date_time_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="bad_offset.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>