summaryrefslogtreecommitdiff
path: root/docs/API/structXMP__DateTime.html
blob: 0731d7bcce7f9e315b42e713fffb351721696406 (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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>XMP-Toolkit-SDK-CC201411-17: XMP_DateTime Struct Reference</title>
<link href="xmp.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<img src="xmp_tagline_small.jpg" width="125" height="50" border="0"><p>
<!-- Generated by Doxygen 1.6.3 -->
<script type="text/javascript">
<!--
function changeDisplayState (e){
  var num=this.id.replace(/[^[0-9]/g,'');
  var button=this.firstChild;
  var sectionDiv=document.getElementById('dynsection'+num);
  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
    sectionDiv.style.display='block';
    button.src='open.gif';
  }else{
    sectionDiv.style.display='none';
    button.src='closed.gif';
  }
}
function initDynSections(){
  var divs=document.getElementsByTagName('div');
  var sectionCounter=1;
  for(var i=0;i<divs.length-1;i++){
    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
      var header=divs[i];
      var section=divs[i+1];
      var button=header.firstChild;
      if (button!='IMG'){
        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
        button=document.createElement('img');
        divs[i].insertBefore(button,divs[i].firstChild);
      }
      header.style.cursor='pointer';
      header.onclick=changeDisplayState;
      header.id='dynheader'+sectionCounter;
      button.src='closed.gif';
      section.id='dynsection'+sectionCounter;
      section.style.display='none';
      section.style.marginLeft='14px';
      sectionCounter++;
    }
  }
}
window.onload = initDynSections;
-->
</script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>XMP_DateTime Struct Reference</h1><!-- doxytag: class="XMP_DateTime" -->
<p>The expanded type for a date and time.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="XMP__Const_8h_source.html">XMP_Const.h</a>&gt;</code></p>

<p><a href="structXMP__DateTime-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2db713deacfd5a5cb2deea660ca2ccad"></a><!-- doxytag: member="XMP_DateTime::year" ref="a2db713deacfd5a5cb2deea660ca2ccad" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a2db713deacfd5a5cb2deea660ca2ccad">year</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The year, can be negative. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4b71c1a54879d7da1b4135e23d5446f"></a><!-- doxytag: member="XMP_DateTime::month" ref="ab4b71c1a54879d7da1b4135e23d5446f" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#ab4b71c1a54879d7da1b4135e23d5446f">month</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The month in the range 1..12. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58496718277eea9dc5e3e19d80a69094"></a><!-- doxytag: member="XMP_DateTime::day" ref="a58496718277eea9dc5e3e19d80a69094" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a58496718277eea9dc5e3e19d80a69094">day</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The day of the month in the range 1..31. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc79cdca8cfa5df6583279e3f3e70e9f"></a><!-- doxytag: member="XMP_DateTime::hour" ref="abc79cdca8cfa5df6583279e3f3e70e9f" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#abc79cdca8cfa5df6583279e3f3e70e9f">hour</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The hour in the range 0..23. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae84965f3296a9c106d1f6c88aa6a7bdf"></a><!-- doxytag: member="XMP_DateTime::minute" ref="ae84965f3296a9c106d1f6c88aa6a7bdf" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#ae84965f3296a9c106d1f6c88aa6a7bdf">minute</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The minute in the range 0..59. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a675313c70a7e05b7ca50d21300b7d81b"></a><!-- doxytag: member="XMP_DateTime::second" ref="a675313c70a7e05b7ca50d21300b7d81b" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a675313c70a7e05b7ca50d21300b7d81b">second</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The second in the range 0..59. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62e0f39edef2a82749feed46b16572e8"></a><!-- doxytag: member="XMP_DateTime::hasDate" ref="a62e0f39edef2a82749feed46b16572e8" args="" -->
XMP_Bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a62e0f39edef2a82749feed46b16572e8">hasDate</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Is the date portion meaningful? <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c7f3d493a78f6b3fc7978992308d268"></a><!-- doxytag: member="XMP_DateTime::hasTime" ref="a2c7f3d493a78f6b3fc7978992308d268" args="" -->
XMP_Bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a2c7f3d493a78f6b3fc7978992308d268">hasTime</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Is the time portion meaningful? <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1dd34cdab96f55c120b3289db32bdd1e"></a><!-- doxytag: member="XMP_DateTime::hasTimeZone" ref="a1dd34cdab96f55c120b3289db32bdd1e" args="" -->
XMP_Bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a1dd34cdab96f55c120b3289db32bdd1e">hasTimeZone</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Is the time zone meaningful? <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">XMP_Int8&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a2b26282b9f1ab9920a8f05008c776ddb">tzSign</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6045133feeef41ac1f78c4664ab13db4"></a><!-- doxytag: member="XMP_DateTime::tzHour" ref="a6045133feeef41ac1f78c4664ab13db4" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a6045133feeef41ac1f78c4664ab13db4">tzHour</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The time zone hour in the range 0..23. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45baa70f30a3dc9f88819886cfb91aa1"></a><!-- doxytag: member="XMP_DateTime::tzMinute" ref="a45baa70f30a3dc9f88819886cfb91aa1" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a45baa70f30a3dc9f88819886cfb91aa1">tzMinute</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The time zone minute in the range 0..59. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a190c2a19f01e90997ec2973aec37712c"></a><!-- doxytag: member="XMP_DateTime::nanoSecond" ref="a190c2a19f01e90997ec2973aec37712c" args="" -->
XMP_Int32&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structXMP__DateTime.html#a190c2a19f01e90997ec2973aec37712c">nanoSecond</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Nanoseconds within a second, often left as zero. <br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>The expanded type for a date and time. </p>
<p>Dates and time in the serialized XMP are ISO 8601 strings. The <code><a class="el" href="structXMP__DateTime.html" title="The expanded type for a date and time.">XMP_DateTime</a></code> struct allows easy conversion with other formats.</p>
<p>All of the fields are 32 bit, even though most could be 8 bit. This avoids overflow when doing carries for arithmetic or normalization. All fields have signed values for the same reasons.</p>
<p>Date-time values are occasionally used with only a date or only a time component. A date without a time has zeros in the <code><a class="el" href="structXMP__DateTime.html" title="The expanded type for a date and time.">XMP_DateTime</a></code> struct for all time fields. A time without a date has zeros for all date fields (year, month, and day).</p>
<p><code><a class="el" href="classTXMPUtils.html" title="API for access to the XMP Toolkit utility services.">TXMPUtils</a></code> provides utility functions for manipulating date-time values.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><code><a class="el" href="classTXMPUtils.html#a60d33e6ce30286028acca47b2b6e7a0b" title="ConvertToDate() converts a string to a date/time value.">TXMPUtils::ConvertToDate()</a></code>, <code><a class="el" href="classTXMPUtils.html#a6146a522a3974b4088d6e8241e9cd223" title="ConvertFromDate() converts a date/time value to a string.">TXMPUtils::ConvertFromDate()</a></code>, <code><a class="el" href="classTXMPUtils.html#a9fc7f1771032f59f9020aeda4f91991d" title="CompareDateTime() compares the order of two date/time values.">TXMPUtils::CompareDateTime()</a></code>, <code><a class="el" href="classTXMPUtils.html#a61852aaba494c8fbad5a6c0c4caf21f5" title="ConvertToLocalTime() ensures that a time is local.">TXMPUtils::ConvertToLocalTime()</a></code>, <code><a class="el" href="classTXMPUtils.html#abbd4d691c83287ea2fc6b1e33e5858b8" title="ConvertToUTCTime() ensures that a time is UTC.">TXMPUtils::ConvertToUTCTime()</a></code>, <code><a class="el" href="classTXMPUtils.html#ac83f0b963ea64d7eee0b481e15a8439c" title="CurrentDateTime() obtains the current date and time.">TXMPUtils::CurrentDateTime()</a></code>, <code><a class="el" href="classTXMPUtils.html#a96bcc45febac55f6c49951815b7de2ef" title="SetTimeZone() sets the time zone in a date/time value to the local time zone.">TXMPUtils::SetTimeZone()</a></code> </dd></dl>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a2b26282b9f1ab9920a8f05008c776ddb"></a><!-- doxytag: member="XMP_DateTime::tzSign" ref="a2b26282b9f1ab9920a8f05008c776ddb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">XMP_Int8 <a class="el" href="structXMP__DateTime.html#a2b26282b9f1ab9920a8f05008c776ddb">XMP_DateTime::tzSign</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The "sign" of the time zone, <code><a class="el" href="XMP__Const_8h.html#adf764cbdea00d65edcd07bb9953ad2b7a3f41be55491204982acb39c9f6c7ad13" title="UTC time.">kXMP_TimeIsUTC</a></code> (0) means UTC, <code><a class="el" href="XMP__Const_8h.html#adf764cbdea00d65edcd07bb9953ad2b7a511551ce156d5fd96c26ad464b837801" title="Time zone is west of UTC.">kXMP_TimeWestOfUTC</a></code> (-1) is west, <code><a class="el" href="XMP__Const_8h.html#adf764cbdea00d65edcd07bb9953ad2b7a68851b70cc1d2346fa21bc0b0ae6cfec" title="Time zone is east of UTC.">kXMP_TimeEastOfUTC</a></code> (+1) is east. </p>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="XMP__Const_8h_source.html">XMP_Const.h</a></li>
</ul>
</div>
<hr size="1"><address style="text-align: right;"><small>
XMP-Toolkit-SDK-CC201411-17 documentation generated by&nbsp;<a href="http://www.doxygen.org/index.html">doxygen</a> 1.6.3</small></address>
</body>
</html>