summaryrefslogtreecommitdiff
path: root/apidocs/icaltimezone_8c.html
diff options
context:
space:
mode:
Diffstat (limited to 'apidocs/icaltimezone_8c.html')
-rw-r--r--apidocs/icaltimezone_8c.html1281
1 files changed, 1281 insertions, 0 deletions
diff --git a/apidocs/icaltimezone_8c.html b/apidocs/icaltimezone_8c.html
new file mode 100644
index 00000000..15769997
--- /dev/null
+++ b/apidocs/icaltimezone_8c.html
@@ -0,0 +1,1281 @@
+<!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.3.1"/>
+<title>Libical: icaltimezone.c File 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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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 style="padding-left: 0.5em;">
+ <div id="projectname">Libical
+ &#160;<span id="projectnumber">1.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <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="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b7a0ea939f6e83384f3c571d31a84be9.html">libical</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">icaltimezone.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>implementation of timezone handling routines
+<a href="#details">More...</a></p>
+<div class="textblock"><code>#include &lt;ctype.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;string.h&gt;</code><br/>
+<code>#include &quot;icalproperty.h&quot;</code><br/>
+<code>#include &quot;<a class="el" href="icalarray_8h_source.html">icalarray.h</a>&quot;</code><br/>
+<code>#include &quot;icalerror.h&quot;</code><br/>
+<code>#include &quot;<a class="el" href="icalparser_8h_source.html">icalparser.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="icaltimezone_8h_source.html">icaltimezone.h</a>&quot;</code><br/>
+<code>#include &quot;icaltimezoneimpl.h&quot;</code><br/>
+<code>#include &quot;icaltz-util.h&quot;</code><br/>
+<code>#include &lt;sys/stat.h&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct__icaltimezonechange.html">_icaltimezonechange</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ad3f96da2c45c082276497fb1722f3236"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ad3f96da2c45c082276497fb1722f3236">ICALTIMEZONE_EXTRA_COVERAGE</a>&#160;&#160;&#160;5</td></tr>
+<tr class="separator:ad3f96da2c45c082276497fb1722f3236"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a484ed3b6e3a11cd73200d1b2f0af8257"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a484ed3b6e3a11cd73200d1b2f0af8257">ICALTIMEZONE_MAX_YEAR</a>&#160;&#160;&#160;2037</td></tr>
+<tr class="separator:a484ed3b6e3a11cd73200d1b2f0af8257"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8b1ce568d73c98da030590d283b950b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#aa8b1ce568d73c98da030590d283b950b">ZONEINFO_DIRECTORY</a>&#160;&#160;&#160;PACKAGE_DATA_DIR &quot;/zoneinfo&quot;</td></tr>
+<tr class="separator:aa8b1ce568d73c98da030590d283b950b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45262c0e5a1a34bc6b77da5b7b6367a6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a45262c0e5a1a34bc6b77da5b7b6367a6">ZONES_TAB_FILENAME</a>&#160;&#160;&#160;&quot;zones.tab&quot;</td></tr>
+<tr class="separator:a45262c0e5a1a34bc6b77da5b7b6367a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2d295012bc628da0779ceb01996b965c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d295012bc628da0779ceb01996b965c"></a>
+typedef struct <a class="el" href="struct__icaltimezonechange.html">_icaltimezonechange</a>&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezonechange</b></td></tr>
+<tr class="separator:a2d295012bc628da0779ceb01996b965c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a47a63052f768c6c2004d053159dd9498"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47a63052f768c6c2004d053159dd9498"></a>
+static int&#160;</td><td class="memItemRight" valign="bottom"><b>fetch_lat_long_from_string</b> (const char *str, int *latitude_degrees, int *latitude_minutes, int *latitude_seconds, int *longitude_degrees, int *longitude_minutes, int *longitude_seconds, char *location)</td></tr>
+<tr class="separator:a47a63052f768c6c2004d053159dd9498"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac69fb1aed5cb9778039293e9a666af44"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ac69fb1aed5cb9778039293e9a666af44">format_utc_offset</a> (int utc_offset, char *buffer, size_t buffer_size)</td></tr>
+<tr class="separator:ac69fb1aed5cb9778039293e9a666af44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a431f7b425ec073cdd490431d4285f294"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a431f7b425ec073cdd490431d4285f294">free_zone_directory</a> (void)</td></tr>
+<tr class="separator:a431f7b425ec073cdd490431d4285f294"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a8dcdf9f9f6c64b2ae17b39ae10e7e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a8dcdf9f9f6c64b2ae17b39ae10e7e8"></a>
+static int&#160;</td><td class="memItemRight" valign="bottom"><b>get_offset</b> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:a5a8dcdf9f9f6c64b2ae17b39ae10e7e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5b7379334197ff2db36a4252c444289"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5b7379334197ff2db36a4252c444289"></a>
+static const char *&#160;</td><td class="memItemRight" valign="bottom"><b>get_zone_directory</b> (void)</td></tr>
+<tr class="separator:aa5b7379334197ff2db36a4252c444289"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c1b8e9b9583197b0276cb6912987f3e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a2c1b8e9b9583197b0276cb6912987f3e">icaltimezone_adjust_change</a> (<a class="el" href="struct__icaltimezonechange.html">icaltimezonechange</a> *tt, int days, int hours, int minutes, int seconds)</td></tr>
+<tr class="separator:a2c1b8e9b9583197b0276cb6912987f3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe6dd6b2d7421e20b26b448e05947bc8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe6dd6b2d7421e20b26b448e05947bc8"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_array_append_from_vtimezone</b> (<a class="el" href="struct__icalarray.html">icalarray</a> *timezones, <a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *child)</td></tr>
+<tr class="separator:abe6dd6b2d7421e20b26b448e05947bc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05bf1ca4e3c3a13af28331a7f0ddbe7e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05bf1ca4e3c3a13af28331a7f0ddbe7e"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_array_free</b> (<a class="el" href="struct__icalarray.html">icalarray</a> *timezones)</td></tr>
+<tr class="separator:a05bf1ca4e3c3a13af28331a7f0ddbe7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bfe00a48ea2014976c31c39f079f0d7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9bfe00a48ea2014976c31c39f079f0d7"></a>
+<a class="el" href="struct__icalarray.html">icalarray</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_array_new</b> (void)</td></tr>
+<tr class="separator:a9bfe00a48ea2014976c31c39f079f0d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8581acee35f3ddc756e0c8af24619538"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a8581acee35f3ddc756e0c8af24619538">icaltimezone_compare_change_fn</a> (const void *elem1, const void *elem2)</td></tr>
+<tr class="separator:a8581acee35f3ddc756e0c8af24619538"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2d1ee1c58825d3308713fc71387fda8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ad2d1ee1c58825d3308713fc71387fda8">icaltimezone_convert_time</a> (struct <a class="el" href="structicaltimetype.html">icaltimetype</a> *tt, <a class="el" href="struct__icaltimezone.html">icaltimezone</a> *from_zone, <a class="el" href="struct__icaltimezone.html">icaltimezone</a> *to_zone)</td></tr>
+<tr class="separator:ad2d1ee1c58825d3308713fc71387fda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc822de0fdb9f92367a7b8fc0f55699a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc822de0fdb9f92367a7b8fc0f55699a"></a>
+<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_copy</b> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *originalzone)</td></tr>
+<tr class="separator:afc822de0fdb9f92367a7b8fc0f55699a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12c7192c39744d49e4c23249926ae22a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a12c7192c39744d49e4c23249926ae22a">icaltimezone_dump_changes</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, int max_year, FILE *fp)</td></tr>
+<tr class="separator:a12c7192c39744d49e4c23249926ae22a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71c93505d7b53fae2f42123f21ec9363"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71c93505d7b53fae2f42123f21ec9363"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_ensure_coverage</b> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, int end_year)</td></tr>
+<tr class="separator:a71c93505d7b53fae2f42123f21ec9363"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1721b3240b8f5b3e66190c6f83160e6b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1721b3240b8f5b3e66190c6f83160e6b"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_expand_changes</b> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, int end_year)</td></tr>
+<tr class="separator:a1721b3240b8f5b3e66190c6f83160e6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d320b905428da62ace8b58454bb3adc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d320b905428da62ace8b58454bb3adc"></a>
+static void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_expand_vtimezone</b> (<a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *comp, int end_year, <a class="el" href="struct__icalarray.html">icalarray</a> *changes)</td></tr>
+<tr class="separator:a1d320b905428da62ace8b58454bb3adc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8e6f8c174532a4e3214dafd925dd0eb"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#af8e6f8c174532a4e3214dafd925dd0eb">icaltimezone_find_nearby_change</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, <a class="el" href="struct__icaltimezonechange.html">icaltimezonechange</a> *change)</td></tr>
+<tr class="separator:af8e6f8c174532a4e3214dafd925dd0eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa96c3397fd8bcce74e1f220ca3fc333d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#aa96c3397fd8bcce74e1f220ca3fc333d">icaltimezone_free</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, int free_struct)</td></tr>
+<tr class="separator:aa96c3397fd8bcce74e1f220ca3fc333d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7596677c1f0c38bac7e687f37e19e397"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a7596677c1f0c38bac7e687f37e19e397">icaltimezone_free_builtin_timezones</a> (void)</td></tr>
+<tr class="separator:a7596677c1f0c38bac7e687f37e19e397"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd59a944189a01a0f6544401a70f8262"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#acd59a944189a01a0f6544401a70f8262">icaltimezone_get_builtin_timezone</a> (const char *location)</td></tr>
+<tr class="separator:acd59a944189a01a0f6544401a70f8262"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7433cb4ebc6cb07579a1140261c6f555"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a7433cb4ebc6cb07579a1140261c6f555">icaltimezone_get_builtin_timezone_from_offset</a> (int offset, const char *tzname)</td></tr>
+<tr class="separator:a7433cb4ebc6cb07579a1140261c6f555"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af54e0abc7f5d934864f3c06c9beb59cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#af54e0abc7f5d934864f3c06c9beb59cd">icaltimezone_get_builtin_timezone_from_tzid</a> (const char *tzid)</td></tr>
+<tr class="separator:af54e0abc7f5d934864f3c06c9beb59cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acad626a5835066667c38aac0894e798c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct__icalarray.html">icalarray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#acad626a5835066667c38aac0894e798c">icaltimezone_get_builtin_timezones</a> (void)</td></tr>
+<tr class="separator:acad626a5835066667c38aac0894e798c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac61539c2df5b4f58a453ac3377d5ad6b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac61539c2df5b4f58a453ac3377d5ad6b"></a>
+int&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_get_builtin_tzdata</b> (void)</td></tr>
+<tr class="separator:ac61539c2df5b4f58a453ac3377d5ad6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a096d18647de1113c19d2309a1f4c2931"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a096d18647de1113c19d2309a1f4c2931">icaltimezone_get_component</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:a096d18647de1113c19d2309a1f4c2931"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac32053bf56b415c44d7527bc89318757"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac32053bf56b415c44d7527bc89318757"></a>
+const char *&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_get_display_name</b> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:ac32053bf56b415c44d7527bc89318757"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfc51cb64dcc62ff668df02073c803d6"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#acfc51cb64dcc62ff668df02073c803d6">icaltimezone_get_latitude</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:acfc51cb64dcc62ff668df02073c803d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2fbe5451e417f7ec50f346bbde8247d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ac2fbe5451e417f7ec50f346bbde8247d">icaltimezone_get_location</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:ac2fbe5451e417f7ec50f346bbde8247d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1b7970981bd2e2fee3034732463571d"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#af1b7970981bd2e2fee3034732463571d">icaltimezone_get_location_from_vtimezone</a> (<a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *component)</td></tr>
+<tr class="separator:af1b7970981bd2e2fee3034732463571d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a346caee2838d8dfbeb07bc9c66b04e2b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a346caee2838d8dfbeb07bc9c66b04e2b">icaltimezone_get_longitude</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:a346caee2838d8dfbeb07bc9c66b04e2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f2ba5baf0d556ab8ea8f5eb81e5af29"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a1f2ba5baf0d556ab8ea8f5eb81e5af29">icaltimezone_get_tzid</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:a1f2ba5baf0d556ab8ea8f5eb81e5af29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7448438384fd57d93edf5e3ea632c90"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ab7448438384fd57d93edf5e3ea632c90">icaltimezone_get_tznames</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:ab7448438384fd57d93edf5e3ea632c90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dfbdea26d976e0b210b9eda247d9dae"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a1dfbdea26d976e0b210b9eda247d9dae">icaltimezone_get_tznames_from_vtimezone</a> (<a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *component)</td></tr>
+<tr class="separator:a1dfbdea26d976e0b210b9eda247d9dae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ebe99e4975a461da82f4add92ca01d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a1ebe99e4975a461da82f4add92ca01d4">icaltimezone_get_utc_offset</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, struct <a class="el" href="structicaltimetype.html">icaltimetype</a> *tt, int *is_daylight)</td></tr>
+<tr class="separator:a1ebe99e4975a461da82f4add92ca01d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6c4b7dc1e0c056bfbbd0f833d039b5d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#af6c4b7dc1e0c056bfbbd0f833d039b5d">icaltimezone_get_utc_offset_of_utc_time</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, struct <a class="el" href="structicaltimetype.html">icaltimetype</a> *tt, int *is_daylight)</td></tr>
+<tr class="separator:af6c4b7dc1e0c056bfbbd0f833d039b5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a993ceafd420a2c46651db1503d1adc9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a993ceafd420a2c46651db1503d1adc9a">icaltimezone_get_utc_timezone</a> (void)</td></tr>
+<tr class="separator:a993ceafd420a2c46651db1503d1adc9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad602859b329896a19f2129b975cd07bc"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ad602859b329896a19f2129b975cd07bc">icaltimezone_get_vtimezone_properties</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, <a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *component)</td></tr>
+<tr class="separator:ad602859b329896a19f2129b975cd07bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b3fd57b0a02974047cd531693f7009b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a9b3fd57b0a02974047cd531693f7009b">icaltimezone_init</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:a9b3fd57b0a02974047cd531693f7009b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa843c1dbf6d4b4b9438895535f557646"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#aa843c1dbf6d4b4b9438895535f557646">icaltimezone_init_builtin_timezones</a> (void)</td></tr>
+<tr class="separator:aa843c1dbf6d4b4b9438895535f557646"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a410bf60f17216422e00250affa6b86bb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a410bf60f17216422e00250affa6b86bb">icaltimezone_load_builtin_timezone</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:a410bf60f17216422e00250affa6b86bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f9d8a3cafffdf8d7784d0908076d61c"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a9f9d8a3cafffdf8d7784d0908076d61c">icaltimezone_load_get_line_fn</a> (char *s, size_t size, void *data)</td></tr>
+<tr class="separator:a9f9d8a3cafffdf8d7784d0908076d61c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3a8d8fa9901d42ab989f1a1e746956c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ac3a8d8fa9901d42ab989f1a1e746956c">icaltimezone_new</a> (void)</td></tr>
+<tr class="separator:ac3a8d8fa9901d42ab989f1a1e746956c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f575319945d7f8cc475e629ecb2fc25"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a6f575319945d7f8cc475e629ecb2fc25">icaltimezone_parse_zone_tab</a> (void)</td></tr>
+<tr class="separator:a6f575319945d7f8cc475e629ecb2fc25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab04e61bc742f6fb07472b682d838822c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab04e61bc742f6fb07472b682d838822c"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_release_zone_tab</b> (void)</td></tr>
+<tr class="separator:ab04e61bc742f6fb07472b682d838822c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9382b7102006cfd93f2323335cbcc5f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#aa9382b7102006cfd93f2323335cbcc5f">icaltimezone_reset</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone)</td></tr>
+<tr class="separator:aa9382b7102006cfd93f2323335cbcc5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74df462127727a146144d1eb80067c72"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74df462127727a146144d1eb80067c72"></a>
+void&#160;</td><td class="memItemRight" valign="bottom"><b>icaltimezone_set_builtin_tzdata</b> (int set)</td></tr>
+<tr class="separator:a74df462127727a146144d1eb80067c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06a9a060f021b7f4bdff282b2638357"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ac06a9a060f021b7f4bdff282b2638357">icaltimezone_set_component</a> (<a class="el" href="struct__icaltimezone.html">icaltimezone</a> *zone, <a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *comp)</td></tr>
+<tr class="separator:ac06a9a060f021b7f4bdff282b2638357"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04849ce67c1a529f19d695b74cb238fe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a04849ce67c1a529f19d695b74cb238fe">icaltimezone_set_tzid_prefix</a> (const char *new_prefix)</td></tr>
+<tr class="separator:a04849ce67c1a529f19d695b74cb238fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8022792f3805335773dfb0a328ef5085"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8022792f3805335773dfb0a328ef5085"></a>
+static int&#160;</td><td class="memItemRight" valign="bottom"><b>parse_coord</b> (char *coord, int len, int *degrees, int *minutes, int *seconds)</td></tr>
+<tr class="separator:a8022792f3805335773dfb0a328ef5085"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae092d58274440c01b8fc8a25eab9fab6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ae092d58274440c01b8fc8a25eab9fab6">set_zone_directory</a> (char *path)</td></tr>
+<tr class="separator:ae092d58274440c01b8fc8a25eab9fab6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7cd42cf92a023d97c2a55073e64d700"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7cd42cf92a023d97c2a55073e64d700"></a>
+static struct <a class="el" href="structicaltimetype.html">icaltimetype</a>&#160;</td><td class="memItemRight" valign="bottom"><b>tm_to_icaltimetype</b> (struct tm *tm)</td></tr>
+<tr class="separator:aa7cd42cf92a023d97c2a55073e64d700"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a04061cd0947b953741c201a09f36dc2f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="struct__icalarray.html">icalarray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#a04061cd0947b953741c201a09f36dc2f">builtin_timezones</a> = NULL</td></tr>
+<tr class="separator:a04061cd0947b953741c201a09f36dc2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aace4e5b5699a9f5dd3e8f3cfecd89bc8"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#aace4e5b5699a9f5dd3e8f3cfecd89bc8">ical_tzid_prefix</a> = &quot;/freeassociation.sourceforge.net/&quot;</td></tr>
+<tr class="separator:aace4e5b5699a9f5dd3e8f3cfecd89bc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f2bdb16146340750acd2aa6b1db630e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f2bdb16146340750acd2aa6b1db630e"></a>
+static int&#160;</td><td class="memItemRight" valign="bottom"><b>use_builtin_tzdata</b> = 0</td></tr>
+<tr class="separator:a1f2bdb16146340750acd2aa6b1db630e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1ac985f9033bef545ed03bdb6ff1a31"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="struct__icaltimezone.html">icaltimezone</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="icaltimezone_8c.html#ac1ac985f9033bef545ed03bdb6ff1a31">utc_timezone</a> = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }</td></tr>
+<tr class="separator:ac1ac985f9033bef545ed03bdb6ff1a31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2718834e5b79a38360163c28c7c03018"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2718834e5b79a38360163c28c7c03018"></a>
+static char *&#160;</td><td class="memItemRight" valign="bottom"><b>zone_files_directory</b> = NULL</td></tr>
+<tr class="separator:a2718834e5b79a38360163c28c7c03018"><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>implementation of timezone handling routines </p>
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ad3f96da2c45c082276497fb1722f3236"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ICALTIMEZONE_EXTRA_COVERAGE&#160;&#160;&#160;5</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>This is the number of years of extra coverage we do when expanding the timezone changes. </p>
+
+</div>
+</div>
+<a class="anchor" id="a484ed3b6e3a11cd73200d1b2f0af8257"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ICALTIMEZONE_MAX_YEAR&#160;&#160;&#160;2037</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>This is the maximum year we will expand to, since 32-bit time_t values only go up to the start of 2038. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa8b1ce568d73c98da030590d283b950b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ZONEINFO_DIRECTORY&#160;&#160;&#160;PACKAGE_DATA_DIR &quot;/zoneinfo&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>This is the toplevel directory where the timezone data is installed in. </p>
+
+</div>
+</div>
+<a class="anchor" id="a45262c0e5a1a34bc6b77da5b7b6367a6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ZONES_TAB_FILENAME&#160;&#160;&#160;&quot;zones.tab&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>This is the filename of the file containing the city names and coordinates of all the builtin timezones. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ac69fb1aed5cb9778039293e9a666af44"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void format_utc_offset </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>utc_offset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>buffer_size</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">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>This formats a UTC offset as "+HHMM" or "+HHMMSS". buffer should have space for 8 characters. </p>
+
+</div>
+</div>
+<a class="anchor" id="a431f7b425ec073cdd490431d4285f294"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void free_zone_directory </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Free memory dedicated to the zonefile directory </p>
+
+</div>
+</div>
+<a class="anchor" id="a2c1b8e9b9583197b0276cb6912987f3e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void icaltimezone_adjust_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezonechange.html">icaltimezonechange</a> *&#160;</td>
+ <td class="paramname"><em>tt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>days</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>hours</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>minutes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>seconds</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">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Adds (or subtracts) a time from a icaltimezonechange. NOTE: This function is exactly the same as <a class="el" href="icaltime_8h.html#aeeff97a90d535fd004d93057e49e8663" title="Internal, shouldn&#39;t be part of the public API.">icaltime_adjust()</a> except for the type of the first parameter. </p>
+
+</div>
+</div>
+<a class="anchor" id="a8581acee35f3ddc756e0c8af24619538"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int icaltimezone_compare_change_fn </td>
+ <td>(</td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>elem1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>elem2</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">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>A function to compare 2 icaltimezonechange elements, used for qsort(). </p>
+
+</div>
+</div>
+<a class="anchor" id="ad2d1ee1c58825d3308713fc71387fda8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icaltimezone_convert_time </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structicaltimetype.html">icaltimetype</a> *&#160;</td>
+ <td class="paramname"><em>tt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>from_zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>to_zone</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="section user"><dt>Converting times between timezones.</dt><dd></dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a12c7192c39744d49e4c23249926ae22a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int icaltimezone_dump_changes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_year</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">FILE *&#160;</td>
+ <td class="paramname"><em>fp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>This outputs a list of timezone changes for the given timezone to the given file, up to the maximum year given. We compare this output with the output from 'vzic &ndash;dump-changes' to make sure that we are consistent. (vzic is the Olson timezone database to VTIMEZONE converter.)</p>
+<p>The output format is: </p>
+<pre class="fragment"> Zone-Name [tab] Date [tab] Time [tab] UTC-Offset
+</pre><p>The Date and Time fields specify the time change in UTC.</p>
+<p>The UTC Offset is for local (wall-clock) time. It is the amount of time to add to UTC to get local time. </p>
+
+</div>
+</div>
+<a class="anchor" id="af8e6f8c174532a4e3214dafd925dd0eb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int icaltimezone_find_nearby_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezonechange.html">icaltimezonechange</a> *&#160;</td>
+ <td class="paramname"><em>change</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">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Returns the index of a timezone change which is close to the time given in change. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa96c3397fd8bcce74e1f220ca3fc333d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icaltimezone_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>free_struct</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Frees all memory used for the icaltimezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7596677c1f0c38bac7e687f37e19e397"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icaltimezone_free_builtin_timezones </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Release builtin timezone memory </p>
+
+</div>
+</div>
+<a class="anchor" id="acd59a944189a01a0f6544401a70f8262"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icaltimezone.html">icaltimezone</a>* icaltimezone_get_builtin_timezone </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>location</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns a single builtin timezone, given its Olson city name. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7433cb4ebc6cb07579a1140261c6f555"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icaltimezone.html">icaltimezone</a>* icaltimezone_get_builtin_timezone_from_offset </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>offset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>tzname</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns a single builtin timezone, given its offset from UTC </p>
+
+</div>
+</div>
+<a class="anchor" id="af54e0abc7f5d934864f3c06c9beb59cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icaltimezone.html">icaltimezone</a>* icaltimezone_get_builtin_timezone_from_tzid </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>tzid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns a single builtin timezone, given its TZID. </p>
+
+</div>
+</div>
+<a class="anchor" id="acad626a5835066667c38aac0894e798c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icalarray.html">icalarray</a>* icaltimezone_get_builtin_timezones </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns an icalarray of icaltimezone structs, one for each builtin timezone. This will load and parse the zones.tab file to get the timezone names and their coordinates. It will not load the VTIMEZONE data for any timezones. </p>
+
+</div>
+</div>
+<a class="anchor" id="a096d18647de1113c19d2309a1f4c2931"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structicalcomponent__impl.html">icalcomponent</a>* icaltimezone_get_component </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the VTIMEZONE component of a timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="acfc51cb64dcc62ff668df02073c803d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double icaltimezone_get_latitude </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the latitude of a builtin timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac2fbe5451e417f7ec50f346bbde8247d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* icaltimezone_get_location </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the city name of a timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="af1b7970981bd2e2fee3034732463571d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static char * icaltimezone_get_location_from_vtimezone </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *&#160;</td>
+ <td class="paramname"><em>component</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Gets the LOCATION or X-LIC-LOCATION property from a VTIMEZONE. </p>
+
+</div>
+</div>
+<a class="anchor" id="a346caee2838d8dfbeb07bc9c66b04e2b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double icaltimezone_get_longitude </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the longitude of a builtin timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1f2ba5baf0d556ab8ea8f5eb81e5af29"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* icaltimezone_get_tzid </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the TZID of a timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab7448438384fd57d93edf5e3ea632c90"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* icaltimezone_get_tznames </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the TZNAME properties used in the latest STANDARD and DAYLIGHT components. If they are the same it will return just one, e.g. "LMT". If they are different it will format them like "EST/EDT". Note that this may also return NULL. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1dfbdea26d976e0b210b9eda247d9dae"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static char * icaltimezone_get_tznames_from_vtimezone </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *&#160;</td>
+ <td class="paramname"><em>component</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Gets the TZNAMEs used for the last STANDARD &amp; DAYLIGHT components in a VTIMEZONE. If both STANDARD and DAYLIGHT components use the same TZNAME, it returns that. If they use different TZNAMEs, it formats them like "EST/EDT". The returned string should be freed by the caller. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1ebe99e4975a461da82f4add92ca01d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int icaltimezone_get_utc_offset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structicaltimetype.html">icaltimetype</a> *&#160;</td>
+ <td class="paramname"><em>tt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>is_daylight</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>This API wasn't updated when we changed icaltimetype to contain its own timezone. Also, this takes a pointer instead of the struct. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="af6c4b7dc1e0c056bfbbd0f833d039b5d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int icaltimezone_get_utc_offset_of_utc_time </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structicaltimetype.html">icaltimetype</a> *&#160;</td>
+ <td class="paramname"><em>tt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>is_daylight</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000002">Deprecated:</a></b></dt><dd>This API wasn't updated when we changed icaltimetype to contain its own timezone. Also, this takes a pointer instead of the struct. </dd></dl>
+<p>Calculates the UTC offset of a given UTC time in the given timezone. It is the number of seconds to add to UTC to get local time. The is_daylight flag is set to 1 if the time is in daylight-savings time. </p>
+
+</div>
+</div>
+<a class="anchor" id="a993ceafd420a2c46651db1503d1adc9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icaltimezone.html">icaltimezone</a>* icaltimezone_get_utc_timezone </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Returns the special UTC timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad602859b329896a19f2129b975cd07bc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int icaltimezone_get_vtimezone_properties </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *&#160;</td>
+ <td class="paramname"><em>component</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">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Gets the TZID, LOCATION/X-LIC-LOCATION, and TZNAME properties from the VTIMEZONE component and places them in the icaltimezone. It returns 1 on success, or 0 if the TZID can't be found.</p>
+<p>Gets the TZID, LOCATION/X-LIC-LOCATION and TZNAME properties of the VTIMEZONE component and stores them in the icaltimezone. It returns 1 on success, or 0 if the TZID can't be found. Note that it expects the zone to be initialized or reset - it doesn't free any old values. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9b3fd57b0a02974047cd531693f7009b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void icaltimezone_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Initializes an icaltimezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa843c1dbf6d4b4b9438895535f557646"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void icaltimezone_init_builtin_timezones </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>This initializes the builtin timezone data, i.e. the builtin_timezones array and the special UTC timezone. It should be called before any code that uses the timezone functions. </p>
+
+</div>
+</div>
+<a class="anchor" id="a410bf60f17216422e00250affa6b86bb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void icaltimezone_load_builtin_timezone </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Loads the builtin VTIMEZONE data for the given timezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9f9d8a3cafffdf8d7784d0908076d61c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static char * icaltimezone_load_get_line_fn </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>data</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">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Callback used from <a class="el" href="icalparser_8h.html#a089ac94c0ce97aa60dcb0b52031b0c05">icalparser_parse()</a> </p>
+
+</div>
+</div>
+<a class="anchor" id="ac3a8d8fa9901d42ab989f1a1e746956c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icaltimezone.html">icaltimezone</a>* icaltimezone_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Creates a new icaltimezone. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6f575319945d7f8cc475e629ecb2fc25"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void icaltimezone_parse_zone_tab </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>This parses the zones.tab file containing the names and locations of the builtin timezones. It creates the builtin_timezones array which is an icalarray of icaltimezone structs. It only fills in the location, latitude and longtude fields; the rest are left blank. The VTIMEZONE component is loaded later if it is needed. The timezones in the zones.tab file are sorted by their name, which is useful for binary searches. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa9382b7102006cfd93f2323335cbcc5f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void icaltimezone_reset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Resets the icaltimezone to the initial state, freeing most of the fields. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac06a9a060f021b7f4bdff282b2638357"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int icaltimezone_set_component </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> *&#160;</td>
+ <td class="paramname"><em>zone</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structicalcomponent__impl.html">icalcomponent</a> *&#160;</td>
+ <td class="paramname"><em>comp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Sets the VTIMEZONE component of an icaltimezone, initializing the tzid, location &amp; tzname fields. It returns 1 on success or 0 on failure, i.e. no TZID was found. </p>
+
+</div>
+</div>
+<a class="anchor" id="a04849ce67c1a529f19d695b74cb238fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void icaltimezone_set_tzid_prefix </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>new_prefix</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Sets the prefix to be used for tzid's generated from system tzdata. Must be globally unique (such as a domain name owned by the developer of the calling application), and begin and end with forward slashes. Do not change or de-allocate the string buffer after calling this. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae092d58274440c01b8fc8a25eab9fab6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void set_zone_directory </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>path</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Set the directory to look for the zonefiles </p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a04061cd0947b953741c201a09f36dc2f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icalarray.html">icalarray</a>* builtin_timezones = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>An array of icaltimezones for the builtin timezones. </p>
+
+</div>
+</div>
+<a class="anchor" id="aace4e5b5699a9f5dd3e8f3cfecd89bc8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* ical_tzid_prefix = &quot;/freeassociation.sourceforge.net/&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>The prefix we use to uniquely identify TZIDs. It must begin and end with forward slashes. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac1ac985f9033bef545ed03bdb6ff1a31"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="struct__icaltimezone.html">icaltimezone</a> utc_timezone = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>This is the special UTC timezone, which isn't in builtin_timezones. </p>
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.3.1
+</small></address>
+</body>
+</html>