This file is indexed.

/usr/share/doc/libwreport-doc/apidocs/varinfo_8h.html is in libwreport-doc 3.6-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
<!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.11"/>
<title>libwreport: varinfo.h 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="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">libwreport
   &#160;<span id="projectnumber">3.6</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <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="namespaces.html"><span>Namespaces</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>
    </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>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_a77a435eba5a6a11d9ac0a833d87986c.html">wreport</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">varinfo.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Implement fast access to information about WMO variables.  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;cstdint&gt;</code><br />
<code>#include &lt;string&gt;</code><br />
</div>
<p><a href="varinfo_8h_source.html">Go to the source code of this file.</a></p>
<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="structwreport_1_1__Varinfo.html">wreport::_Varinfo</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Information about a variable.  <a href="structwreport_1_1__Varinfo.html#details">More...</a><br /></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="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespacewreport"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html">wreport</a></td></tr>
<tr class="memdesc:namespacewreport"><td class="mdescLeft">&#160;</td><td class="mdescRight">String functions. <br /></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:a2c4904311fb1c39d5279e5076e81d6df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c4904311fb1c39d5279e5076e81d6df"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varinfo_8h.html#a2c4904311fb1c39d5279e5076e81d6df">WR_VAR</a>(f,  x,  y)&#160;&#160;&#160;((<a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05">wreport::Varcode</a>)( ((unsigned)(f)&lt;&lt;14) | ((unsigned)(x)&lt;&lt;8) | (unsigned)(y) ))</td></tr>
<tr class="memdesc:a2c4904311fb1c39d5279e5076e81d6df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a WMO variable code from its F, X and Y components. <br /></td></tr>
<tr class="separator:a2c4904311fb1c39d5279e5076e81d6df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a524809aa474eb7cbfe85f86d6657b17e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varinfo_8h.html#a524809aa474eb7cbfe85f86d6657b17e">WR_STRING_TO_VAR</a>(str)</td></tr>
<tr class="memdesc:a524809aa474eb7cbfe85f86d6657b17e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a XXYYY string to a WMO variable code.  <a href="#a524809aa474eb7cbfe85f86d6657b17e">More...</a><br /></td></tr>
<tr class="separator:a524809aa474eb7cbfe85f86d6657b17e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeda3613fd5af32c0f717876a55a4778b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeda3613fd5af32c0f717876a55a4778b"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varinfo_8h.html#aeda3613fd5af32c0f717876a55a4778b">WR_VAR_F</a>(code)&#160;&#160;&#160;(((code) &gt;&gt; 14) &amp; 0x3)</td></tr>
<tr class="memdesc:aeda3613fd5af32c0f717876a55a4778b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the F part of a WMO variable code. <br /></td></tr>
<tr class="separator:aeda3613fd5af32c0f717876a55a4778b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21ac703c75a89d7161f35867352d4675"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21ac703c75a89d7161f35867352d4675"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varinfo_8h.html#a21ac703c75a89d7161f35867352d4675">WR_VAR_X</a>(code)&#160;&#160;&#160;((code) &gt;&gt; 8 &amp; 0x3f)</td></tr>
<tr class="memdesc:a21ac703c75a89d7161f35867352d4675"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the X part of a WMO variable code. <br /></td></tr>
<tr class="separator:a21ac703c75a89d7161f35867352d4675"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaef8d9af10e2c56e8c1c454d70c227cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaef8d9af10e2c56e8c1c454d70c227cc"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varinfo_8h.html#aaef8d9af10e2c56e8c1c454d70c227cc">WR_VAR_Y</a>(code)&#160;&#160;&#160;((code) &amp; 0xff)</td></tr>
<tr class="memdesc:aaef8d9af10e2c56e8c1c454d70c227cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the Y part of a WMO variable code. <br /></td></tr>
<tr class="separator:aaef8d9af10e2c56e8c1c454d70c227cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96c740d1593bcaf6a06d23eeec121daf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varinfo_8h.html#a96c740d1593bcaf6a06d23eeec121daf">WR_VAR_FXY</a>(code)&#160;&#160;&#160;<a class="el" href="varinfo_8h.html#aeda3613fd5af32c0f717876a55a4778b">WR_VAR_F</a>(code), <a class="el" href="varinfo_8h.html#a21ac703c75a89d7161f35867352d4675">WR_VAR_X</a>(code), <a class="el" href="varinfo_8h.html#aaef8d9af10e2c56e8c1c454d70c227cc">WR_VAR_Y</a>(code)</td></tr>
<tr class="memdesc:a96c740d1593bcaf6a06d23eeec121daf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expands to <a class="el" href="varinfo_8h.html#aeda3613fd5af32c0f717876a55a4778b" title="Get the F part of a WMO variable code. ">WR_VAR_F(code)</a>, <a class="el" href="varinfo_8h.html#a21ac703c75a89d7161f35867352d4675" title="Get the X part of a WMO variable code. ">WR_VAR_X(code)</a>, <a class="el" href="varinfo_8h.html#aaef8d9af10e2c56e8c1c454d70c227cc" title="Get the Y part of a WMO variable code. ">WR_VAR_Y(code)</a>.  <a href="#a96c740d1593bcaf6a06d23eeec121daf">More...</a><br /></td></tr>
<tr class="separator:a96c740d1593bcaf6a06d23eeec121daf"><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:af9fa16e12fde1ccfb4ce11b3988f5b05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9fa16e12fde1ccfb4ce11b3988f5b05"></a>
typedef uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05">wreport::Varcode</a></td></tr>
<tr class="memdesc:af9fa16e12fde1ccfb4ce11b3988f5b05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Holds the WMO variable code of a variable. <br /></td></tr>
<tr class="separator:af9fa16e12fde1ccfb4ce11b3988f5b05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfcbb1367ca9f4166d76f13fbd910be7"><td class="memItemLeft" align="right" valign="top">typedef const _Varinfo *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#acfcbb1367ca9f4166d76f13fbd910be7">wreport::Varinfo</a></td></tr>
<tr class="memdesc:acfcbb1367ca9f4166d76f13fbd910be7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Varinfo reference.  <a href="namespacewreport.html#acfcbb1367ca9f4166d76f13fbd910be7">More...</a><br /></td></tr>
<tr class="separator:acfcbb1367ca9f4166d76f13fbd910be7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a50fae4047ed87dfab88063e6781473dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50fae4047ed87dfab88063e6781473dd"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#a50fae4047ed87dfab88063e6781473dd">wreport::Vartype</a> : unsigned { <b>Integer</b>, 
<b>Decimal</b>, 
<b>String</b>, 
<b>Binary</b>
 }<tr class="memdesc:a50fae4047ed87dfab88063e6781473dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Variable type. <br /></td></tr>
</td></tr>
<tr class="separator:a50fae4047ed87dfab88063e6781473dd"><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:a717ddd344be198e8d473a0a080394f42"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a717ddd344be198e8d473a0a080394f42"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#a717ddd344be198e8d473a0a080394f42">wreport::varcode_format</a> (Varcode code)</td></tr>
<tr class="memdesc:a717ddd344be198e8d473a0a080394f42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Format a varcode into a string. <br /></td></tr>
<tr class="separator:a717ddd344be198e8d473a0a080394f42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1d922b777199d35b60f4e9be24ca732"><td class="memItemLeft" align="right" valign="top">Varcode&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#ae1d922b777199d35b60f4e9be24ca732">wreport::varcode_parse</a> (const char *desc)</td></tr>
<tr class="memdesc:ae1d922b777199d35b60f4e9be24ca732"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert a FXXYYY string descriptor code into its short integer representation.  <a href="namespacewreport.html#ae1d922b777199d35b60f4e9be24ca732">More...</a><br /></td></tr>
<tr class="separator:ae1d922b777199d35b60f4e9be24ca732"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb9c6f3bdc78404df27a6cd5aa811a11"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb9c6f3bdc78404df27a6cd5aa811a11"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#adb9c6f3bdc78404df27a6cd5aa811a11">wreport::vartype_format</a> (Vartype type)</td></tr>
<tr class="memdesc:adb9c6f3bdc78404df27a6cd5aa811a11"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a string description of a Vartype. <br /></td></tr>
<tr class="separator:adb9c6f3bdc78404df27a6cd5aa811a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a003f2de71e43c745bb72fb79bc6b40cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a003f2de71e43c745bb72fb79bc6b40cf"></a>
Vartype&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacewreport.html#a003f2de71e43c745bb72fb79bc6b40cf">wreport::vartype_parse</a> (const char *s)</td></tr>
<tr class="memdesc:a003f2de71e43c745bb72fb79bc6b40cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a Vartype from its string description. <br /></td></tr>
<tr class="separator:a003f2de71e43c745bb72fb79bc6b40cf"><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>Implement fast access to information about WMO variables. </p>
<p>The measured value of a physical quantity has little meaning without specifying what quantity it represents, what units are used to measure it, and how many digits are significant for the value.</p>
<p>This module provides access to all this metadata:</p>
<ul>
<li><b><a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05" title="Holds the WMO variable code of a variable. ">wreport::Varcode</a></b> represents what is the quantity measured, and takes values from the WMO B tables used for BUFR and CREX encodings. The <a class="el" href="varinfo_8h.html#a2c4904311fb1c39d5279e5076e81d6df" title="Create a WMO variable code from its F, X and Y components. ">WR_VAR</a> macro can be used to construct <a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05" title="Holds the WMO variable code of a variable. ">wreport::Varcode</a> values, and the <a class="el" href="varinfo_8h.html#aeda3613fd5af32c0f717876a55a4778b" title="Get the F part of a WMO variable code. ">WR_VAR_F</a>, <a class="el" href="varinfo_8h.html#a21ac703c75a89d7161f35867352d4675" title="Get the X part of a WMO variable code. ">WR_VAR_X</a> and <a class="el" href="varinfo_8h.html#aaef8d9af10e2c56e8c1c454d70c227cc" title="Get the Y part of a WMO variable code. ">WR_VAR_Y</a> macros can be used to access the various parts of the dba_varcode. </li>
<li><b><a class="el" href="namespacewreport.html#acfcbb1367ca9f4166d76f13fbd910be7" title="Varinfo reference. ">wreport::Varinfo</a></b> contains all the expanded information about a variable: its <a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05" title="Holds the WMO variable code of a variable. ">wreport::Varcode</a>, description, measurement units, significant digits, minimum and maximum values it can have and other information useful for serialisation and deserialisation of values.</li>
</ul>
<p>There are many B tables with slight differences used by different meteorological centre or equipment. This module allows to access different vartables using dba_vartable_create().</p>
<p><a class="el" href="structwreport_1_1Vartable.html" title="Holds a variable information table. ">wreport::Vartable</a> and <a class="el" href="namespacewreport.html#acfcbb1367ca9f4166d76f13fbd910be7" title="Varinfo reference. ">wreport::Varinfo</a> have special memory management: they are never deallocated. This is a precise design choice to speed up passing and copying <a class="el" href="namespacewreport.html#acfcbb1367ca9f4166d76f13fbd910be7" title="Varinfo reference. ">wreport::Varinfo</a> values, that are used very intensely as they accompany all the physical values processed by wreport. This behaviour should not be a cause of memory leaks, since a software would only need to access a limited amount of B tables during its lifetime.</p>
<p>To construct a <a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05" title="Holds the WMO variable code of a variable. ">wreport::Varcode</a> value one needs to provide three numbers: F, X and Y.</p>
<ul>
<li><b>F</b> (2 bits) identifies the type of table entry represented by the dba_varcode, and is always 0 for B tables. Different values are only used during encoding and decoding of BUFR and CREX messages and are not in use in other parts of wreport. </li>
<li><b>X</b> (6 bits) identifies a section of the table. </li>
<li><b>Y</b> (8 bits) identifies the value within the section.</li>
</ul>
<p>The normal text representation of a <a class="el" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05" title="Holds the WMO variable code of a variable. ">wreport::Varcode</a> for a WMO B table uses the format Bxxyyy. </p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a524809aa474eb7cbfe85f86d6657b17e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WR_STRING_TO_VAR</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">str</td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05">wreport::Varcode</a>)( \</div><div class="line">        (( ((str)[0] - <span class="charliteral">&#39;0&#39;</span>)*10 + ((str)[1] - <span class="charliteral">&#39;0&#39;</span>) ) &lt;&lt; 8) | \</div><div class="line">        ( ((str)[2] - <span class="charliteral">&#39;0&#39;</span>)*100 + ((str)[3] - <span class="charliteral">&#39;0&#39;</span>)*10 + ((str)[4] - <span class="charliteral">&#39;0&#39;</span>) ) \</div><div class="line">))</div><div class="ttc" id="namespacewreport_html_af9fa16e12fde1ccfb4ce11b3988f5b05"><div class="ttname"><a href="namespacewreport.html#af9fa16e12fde1ccfb4ce11b3988f5b05">wreport::Varcode</a></div><div class="ttdeci">uint16_t Varcode</div><div class="ttdoc">Holds the WMO variable code of a variable. </div><div class="ttdef"><b>Definition:</b> varinfo.h:57</div></div>
</div><!-- fragment -->
<p>Convert a XXYYY string to a WMO variable code. </p>
<p>This is useful only in rare cases, such as when parsing tables; use descriptor_code() to parse proper entry names such as "B01003" or "D21301". </p>

</div>
</div>
<a class="anchor" id="a96c740d1593bcaf6a06d23eeec121daf"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WR_VAR_FXY</td>
          <td>(</td>
          <td class="paramtype">&#160;</td>
          <td class="paramname">code</td><td>)</td>
          <td>&#160;&#160;&#160;<a class="el" href="varinfo_8h.html#aeda3613fd5af32c0f717876a55a4778b">WR_VAR_F</a>(code), <a class="el" href="varinfo_8h.html#a21ac703c75a89d7161f35867352d4675">WR_VAR_X</a>(code), <a class="el" href="varinfo_8h.html#aaef8d9af10e2c56e8c1c454d70c227cc">WR_VAR_Y</a>(code)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Expands to <a class="el" href="varinfo_8h.html#aeda3613fd5af32c0f717876a55a4778b" title="Get the F part of a WMO variable code. ">WR_VAR_F(code)</a>, <a class="el" href="varinfo_8h.html#a21ac703c75a89d7161f35867352d4675" title="Get the X part of a WMO variable code. ">WR_VAR_X(code)</a>, <a class="el" href="varinfo_8h.html#aaef8d9af10e2c56e8c1c454d70c227cc" title="Get the Y part of a WMO variable code. ">WR_VAR_Y(code)</a>. </p>
<p>This is intended as a convenient shortcut to pass a broken down varcode to functions like printf, but not much more than that. Of course it evaluates its argument multiple times. </p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Aug 18 2016 13:32:18 for libwreport by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>