wcslib (8.2.2)

(root)/
share/
doc/
wcslib-8.2.2/
html/
wcsunits_8h.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>WCSLIB: wcsunits.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.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 id="projectrow">
  <td id="projectalign">
   <div id="projectname">WCSLIB<span id="projectnumber">&#160;8.2.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_af99bb3c152a306abd27951285ad1127.html">C</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle"><div class="title">wcsunits.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="wcserr_8h_source.html">wcserr.h</a>&quot;</code><br />
</div>
<p><a href="wcsunits_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 id="define-members" name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a6ef9e3ba449b38275c422e454abe3601" id="r_a6ef9e3ba449b38275c422e454abe3601"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a6ef9e3ba449b38275c422e454abe3601">WCSUNITS_PLANE_ANGLE</a>&#160;&#160;&#160;0</td></tr>
<tr class="memdesc:a6ef9e3ba449b38275c422e454abe3601"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for plane angle units type.  <br /></td></tr>
<tr class="separator:a6ef9e3ba449b38275c422e454abe3601"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69241e398126a72e5d095ed3aff156c3" id="r_a69241e398126a72e5d095ed3aff156c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a69241e398126a72e5d095ed3aff156c3">WCSUNITS_SOLID_ANGLE</a>&#160;&#160;&#160;1</td></tr>
<tr class="memdesc:a69241e398126a72e5d095ed3aff156c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for solid angle units type.  <br /></td></tr>
<tr class="separator:a69241e398126a72e5d095ed3aff156c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45b2d15aa5504b7e7e8b7b345d090f32" id="r_a45b2d15aa5504b7e7e8b7b345d090f32"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a45b2d15aa5504b7e7e8b7b345d090f32">WCSUNITS_CHARGE</a>&#160;&#160;&#160;2</td></tr>
<tr class="memdesc:a45b2d15aa5504b7e7e8b7b345d090f32"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for charge units type.  <br /></td></tr>
<tr class="separator:a45b2d15aa5504b7e7e8b7b345d090f32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a807ef7c93e34207776303badf177fa41" id="r_a807ef7c93e34207776303badf177fa41"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a807ef7c93e34207776303badf177fa41">WCSUNITS_MOLE</a>&#160;&#160;&#160;3</td></tr>
<tr class="memdesc:a807ef7c93e34207776303badf177fa41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for mole units type.  <br /></td></tr>
<tr class="separator:a807ef7c93e34207776303badf177fa41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bb521a40223ec7358f85d719834ad7f" id="r_a8bb521a40223ec7358f85d719834ad7f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a8bb521a40223ec7358f85d719834ad7f">WCSUNITS_TEMPERATURE</a>&#160;&#160;&#160;4</td></tr>
<tr class="memdesc:a8bb521a40223ec7358f85d719834ad7f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for temperature units type.  <br /></td></tr>
<tr class="separator:a8bb521a40223ec7358f85d719834ad7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0967644d30d7f98f21b6bb0e68a637c0" id="r_a0967644d30d7f98f21b6bb0e68a637c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a0967644d30d7f98f21b6bb0e68a637c0">WCSUNITS_LUMINTEN</a>&#160;&#160;&#160;5</td></tr>
<tr class="memdesc:a0967644d30d7f98f21b6bb0e68a637c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for luminous intensity units type.  <br /></td></tr>
<tr class="separator:a0967644d30d7f98f21b6bb0e68a637c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f84e63b1fa2003f3438e7cd21231b92" id="r_a8f84e63b1fa2003f3438e7cd21231b92"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a8f84e63b1fa2003f3438e7cd21231b92">WCSUNITS_MASS</a>&#160;&#160;&#160;6</td></tr>
<tr class="memdesc:a8f84e63b1fa2003f3438e7cd21231b92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for mass units type.  <br /></td></tr>
<tr class="separator:a8f84e63b1fa2003f3438e7cd21231b92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59e3354bb9908a4841aa478f2dbd3973" id="r_a59e3354bb9908a4841aa478f2dbd3973"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a59e3354bb9908a4841aa478f2dbd3973">WCSUNITS_LENGTH</a>&#160;&#160;&#160;7</td></tr>
<tr class="memdesc:a59e3354bb9908a4841aa478f2dbd3973"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for length units type.  <br /></td></tr>
<tr class="separator:a59e3354bb9908a4841aa478f2dbd3973"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a347b88663166b66404cbb2f8aac211bb" id="r_a347b88663166b66404cbb2f8aac211bb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a347b88663166b66404cbb2f8aac211bb">WCSUNITS_TIME</a>&#160;&#160;&#160;8</td></tr>
<tr class="memdesc:a347b88663166b66404cbb2f8aac211bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for time units type.  <br /></td></tr>
<tr class="separator:a347b88663166b66404cbb2f8aac211bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11a1284e63c7515fd0240ca8f85fc111" id="r_a11a1284e63c7515fd0240ca8f85fc111"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a11a1284e63c7515fd0240ca8f85fc111">WCSUNITS_BEAM</a>&#160;&#160;&#160;9</td></tr>
<tr class="memdesc:a11a1284e63c7515fd0240ca8f85fc111"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for beam units type.  <br /></td></tr>
<tr class="separator:a11a1284e63c7515fd0240ca8f85fc111"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84fdca1d2c8647a2f33a760578de62c6" id="r_a84fdca1d2c8647a2f33a760578de62c6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a84fdca1d2c8647a2f33a760578de62c6">WCSUNITS_BIN</a>&#160;&#160;&#160;10</td></tr>
<tr class="memdesc:a84fdca1d2c8647a2f33a760578de62c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for bin units type.  <br /></td></tr>
<tr class="separator:a84fdca1d2c8647a2f33a760578de62c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7332ce1c3c715011599d4b9d13e7b760" id="r_a7332ce1c3c715011599d4b9d13e7b760"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a7332ce1c3c715011599d4b9d13e7b760">WCSUNITS_BIT</a>&#160;&#160;&#160;11</td></tr>
<tr class="memdesc:a7332ce1c3c715011599d4b9d13e7b760"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for bit units type.  <br /></td></tr>
<tr class="separator:a7332ce1c3c715011599d4b9d13e7b760"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27df51b1593f3642bfd9833e71c73a34" id="r_a27df51b1593f3642bfd9833e71c73a34"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a27df51b1593f3642bfd9833e71c73a34">WCSUNITS_COUNT</a>&#160;&#160;&#160;12</td></tr>
<tr class="memdesc:a27df51b1593f3642bfd9833e71c73a34"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for count units type.  <br /></td></tr>
<tr class="separator:a27df51b1593f3642bfd9833e71c73a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace657c3f971b4ac9004a2639d142f636" id="r_ace657c3f971b4ac9004a2639d142f636"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#ace657c3f971b4ac9004a2639d142f636">WCSUNITS_MAGNITUDE</a>&#160;&#160;&#160;13</td></tr>
<tr class="memdesc:ace657c3f971b4ac9004a2639d142f636"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for stellar magnitude units type.  <br /></td></tr>
<tr class="separator:ace657c3f971b4ac9004a2639d142f636"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cf5fc976d2663fed07f1f837245f36b" id="r_a2cf5fc976d2663fed07f1f837245f36b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a2cf5fc976d2663fed07f1f837245f36b">WCSUNITS_PIXEL</a>&#160;&#160;&#160;14</td></tr>
<tr class="memdesc:a2cf5fc976d2663fed07f1f837245f36b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for pixel units type.  <br /></td></tr>
<tr class="separator:a2cf5fc976d2663fed07f1f837245f36b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab622892a80194a6a432510665156e4fb" id="r_ab622892a80194a6a432510665156e4fb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#ab622892a80194a6a432510665156e4fb">WCSUNITS_SOLRATIO</a>&#160;&#160;&#160;15</td></tr>
<tr class="memdesc:ab622892a80194a6a432510665156e4fb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for solar mass ratio units type.  <br /></td></tr>
<tr class="separator:ab622892a80194a6a432510665156e4fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a946bca82ae3fb279ad3d86dbc793be07" id="r_a946bca82ae3fb279ad3d86dbc793be07"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a946bca82ae3fb279ad3d86dbc793be07">WCSUNITS_VOXEL</a>&#160;&#160;&#160;16</td></tr>
<tr class="memdesc:a946bca82ae3fb279ad3d86dbc793be07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array index for voxel units type.  <br /></td></tr>
<tr class="separator:a946bca82ae3fb279ad3d86dbc793be07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7daf2b3a5c7e96f2823bca916554cc4b" id="r_a7daf2b3a5c7e96f2823bca916554cc4b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a7daf2b3a5c7e96f2823bca916554cc4b">WCSUNITS_NTYPE</a>&#160;&#160;&#160;17</td></tr>
<tr class="memdesc:a7daf2b3a5c7e96f2823bca916554cc4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of entries in the units array.  <br /></td></tr>
<tr class="separator:a7daf2b3a5c7e96f2823bca916554cc4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a864e6b966575a8c42eb333ba9f14a3ef" id="r_a864e6b966575a8c42eb333ba9f14a3ef"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3ef">wcsunits_errmsg_enum</a> { <br />
&#160;&#160;<a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efac00b91a489f7273d2733f58201b6a723">UNITSERR_SUCCESS</a> = 0
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa4ad61420ee56456d08647b222c4aa8af">UNITSERR_BAD_NUM_MULTIPLIER</a> = 1
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa5ceed55803deb4a34266f23cf6d47274">UNITSERR_DANGLING_BINOP</a> = 2
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efaf7a5cd4ed90aeef7598875cb5bf57a11">UNITSERR_BAD_INITIAL_SYMBOL</a> = 3
, <br />
&#160;&#160;<a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa67b504a215f2d34d1be4956b1e9e55b7">UNITSERR_FUNCTION_CONTEXT</a> = 4
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa0c9333946c5918c15c376f12e9afb086">UNITSERR_BAD_EXPON_SYMBOL</a> = 5
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa367f21cd3b49b178d4fdadaf74f2618d">UNITSERR_UNBAL_BRACKET</a> = 6
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa49231fa8fbeeca036424cd7df0d5a3a8">UNITSERR_UNBAL_PAREN</a> = 7
, <br />
&#160;&#160;<a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa5b8db327b9d6bf09e93e7e0fed910792">UNITSERR_CONSEC_BINOPS</a> = 8
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa116bc901282cf346621b9e56e4676b24">UNITSERR_PARSER_ERROR</a> = 9
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efae9b1b29365d17b25452562f770d44975">UNITSERR_BAD_UNIT_SPEC</a> = 10
, <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efa599ff63ed46928ffb2f5edc07de3ddcc">UNITSERR_BAD_FUNCS</a> = 11
, <br />
&#160;&#160;<a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3efaf6fc9ca59d14a8889809c050c01154ff">UNITSERR_UNSAFE_TRANS</a> = 12
<br />
 }</td></tr>
<tr class="separator:a864e6b966575a8c42eb333ba9f14a3ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a47aa4e0a54f11d7ed5146c00906a3984" id="r_a47aa4e0a54f11d7ed5146c00906a3984"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a47aa4e0a54f11d7ed5146c00906a3984">wcsunitse</a> (const char have[], const char want[], double *scale, double *offset, double *power, struct <a class="el" href="structwcserr.html">wcserr</a> **err)</td></tr>
<tr class="memdesc:a47aa4e0a54f11d7ed5146c00906a3984"><td class="mdescLeft">&#160;</td><td class="mdescRight">FITS units specification conversion.  <br /></td></tr>
<tr class="separator:a47aa4e0a54f11d7ed5146c00906a3984"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ba0f0129e88c6e7c74d4562cf796cd" id="r_a25ba0f0129e88c6e7c74d4562cf796cd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a25ba0f0129e88c6e7c74d4562cf796cd">wcsutrne</a> (int ctrl, char unitstr[], struct <a class="el" href="structwcserr.html">wcserr</a> **err)</td></tr>
<tr class="memdesc:a25ba0f0129e88c6e7c74d4562cf796cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Translation of non-standard unit specifications.  <br /></td></tr>
<tr class="separator:a25ba0f0129e88c6e7c74d4562cf796cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c5f3165e687f60176b7f21fdb42fa1c" id="r_a6c5f3165e687f60176b7f21fdb42fa1c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a6c5f3165e687f60176b7f21fdb42fa1c">wcsulexe</a> (const char unitstr[], int *func, double *scale, double units[<a class="el" href="wcsunits_8h.html#a7daf2b3a5c7e96f2823bca916554cc4b">WCSUNITS_NTYPE</a>], struct <a class="el" href="structwcserr.html">wcserr</a> **err)</td></tr>
<tr class="memdesc:a6c5f3165e687f60176b7f21fdb42fa1c"><td class="mdescLeft">&#160;</td><td class="mdescRight">FITS units specification parser.  <br /></td></tr>
<tr class="separator:a6c5f3165e687f60176b7f21fdb42fa1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef5d64e333f758458b1edaa617911513" id="r_aef5d64e333f758458b1edaa617911513"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#aef5d64e333f758458b1edaa617911513">wcsunits</a> (const char have[], const char want[], double *scale, double *offset, double *power)</td></tr>
<tr class="separator:aef5d64e333f758458b1edaa617911513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a560462cb2a7fa7eae6b4f325c85e7911" id="r_a560462cb2a7fa7eae6b4f325c85e7911"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a560462cb2a7fa7eae6b4f325c85e7911">wcsutrn</a> (int ctrl, char unitstr[])</td></tr>
<tr class="separator:a560462cb2a7fa7eae6b4f325c85e7911"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae4248dc69b440673a8221059e5bd0d4" id="r_aae4248dc69b440673a8221059e5bd0d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex</a> (const char unitstr[], int *func, double *scale, double units[<a class="el" href="wcsunits_8h.html#a7daf2b3a5c7e96f2823bca916554cc4b">WCSUNITS_NTYPE</a>])</td></tr>
<tr class="separator:aae4248dc69b440673a8221059e5bd0d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="var-members" name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a8217718f8c515151dc33ceba922b39ba" id="r_a8217718f8c515151dc33ceba922b39ba"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#a8217718f8c515151dc33ceba922b39ba">wcsunits_errmsg</a> []</td></tr>
<tr class="memdesc:a8217718f8c515151dc33ceba922b39ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Status return messages.  <br /></td></tr>
<tr class="separator:a8217718f8c515151dc33ceba922b39ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec5892437858120d456503fe38f4031b" id="r_aec5892437858120d456503fe38f4031b"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b">wcsunits_types</a> []</td></tr>
<tr class="memdesc:aec5892437858120d456503fe38f4031b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Names of physical quantities.  <br /></td></tr>
<tr class="separator:aec5892437858120d456503fe38f4031b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd49d777bc04d68cdfdd29f5b6a7252b" id="r_acd49d777bc04d68cdfdd29f5b6a7252b"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b">wcsunits_units</a> []</td></tr>
<tr class="memdesc:acd49d777bc04d68cdfdd29f5b6a7252b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Names of units.  <br /></td></tr>
<tr class="separator:acd49d777bc04d68cdfdd29f5b6a7252b"><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>Routines in this suite deal with units specifications and conversions, as described in </p><div class="fragment"><div class="line"><span class="stringliteral">&quot;Representations of world coordinates in FITS&quot;</span>,</div>
<div class="line">Greisen, E.W., &amp; Calabretta, M.R. 2002, A&amp;A, 395, 1061 (WCS Paper I)</div>
</div><!-- fragment --><p>The Flexible Image Transport System (FITS), a data format widely used in astronomy for data interchange and archive, is described in </p><div class="fragment"><div class="line"><span class="stringliteral">&quot;Definition of the Flexible Image Transport System (FITS), version 3.0&quot;</span>,</div>
<div class="line">Pence, W.D., Chiappetti, L., Page, C.G., Shaw, R.A., &amp; Stobie, E. 2010,</div>
<div class="line">A&amp;A, 524, A42 - http:<span class="comment">//dx.doi.org/10.1051/0004-6361/201015362</span></div>
</div><!-- fragment --><p><b>See also http:</b> <br  />
 These routines perform basic units-related operations:</p>
<ul>
<li>
<p class="startli"><a class="el" href="wcsunits_8h.html#a47aa4e0a54f11d7ed5146c00906a3984" title="FITS units specification conversion.">wcsunitse()</a>: given two unit specifications, derive the conversion from one to the other.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli"><a class="el" href="wcsunits_8h.html#a25ba0f0129e88c6e7c74d4562cf796cd" title="Translation of non-standard unit specifications.">wcsutrne()</a>: translates certain commonly used but non-standard unit strings. It is intended to be called before <a class="el" href="wcsunits_8h.html#a6c5f3165e687f60176b7f21fdb42fa1c" title="FITS units specification parser.">wcsulexe()</a> which only handles standard FITS units specifications.</p>
<p class="endli"></p>
</li>
<li>
<a class="el" href="wcsunits_8h.html#a6c5f3165e687f60176b7f21fdb42fa1c" title="FITS units specification parser.">wcsulexe()</a>: parses a standard FITS units specification of arbitrary complexity, deriving the conversion to canonical units. </li>
</ul>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a6ef9e3ba449b38275c422e454abe3601" name="a6ef9e3ba449b38275c422e454abe3601"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ef9e3ba449b38275c422e454abe3601">&#9670;&#160;</a></span>WCSUNITS_PLANE_ANGLE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_PLANE_ANGLE&#160;&#160;&#160;0</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for plane angle units type. </p>
<p>Array index for plane angle units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a69241e398126a72e5d095ed3aff156c3" name="a69241e398126a72e5d095ed3aff156c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69241e398126a72e5d095ed3aff156c3">&#9670;&#160;</a></span>WCSUNITS_SOLID_ANGLE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_SOLID_ANGLE&#160;&#160;&#160;1</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for solid angle units type. </p>
<p>Array index for solid angle units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a45b2d15aa5504b7e7e8b7b345d090f32" name="a45b2d15aa5504b7e7e8b7b345d090f32"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45b2d15aa5504b7e7e8b7b345d090f32">&#9670;&#160;</a></span>WCSUNITS_CHARGE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_CHARGE&#160;&#160;&#160;2</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for charge units type. </p>
<p>Array index for charge units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a807ef7c93e34207776303badf177fa41" name="a807ef7c93e34207776303badf177fa41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a807ef7c93e34207776303badf177fa41">&#9670;&#160;</a></span>WCSUNITS_MOLE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_MOLE&#160;&#160;&#160;3</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for mole units type. </p>
<p>Array index for mole ("gram molecular weight") units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a8bb521a40223ec7358f85d719834ad7f" name="a8bb521a40223ec7358f85d719834ad7f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8bb521a40223ec7358f85d719834ad7f">&#9670;&#160;</a></span>WCSUNITS_TEMPERATURE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_TEMPERATURE&#160;&#160;&#160;4</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for temperature units type. </p>
<p>Array index for temperature units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a0967644d30d7f98f21b6bb0e68a637c0" name="a0967644d30d7f98f21b6bb0e68a637c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0967644d30d7f98f21b6bb0e68a637c0">&#9670;&#160;</a></span>WCSUNITS_LUMINTEN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_LUMINTEN&#160;&#160;&#160;5</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for luminous intensity units type. </p>
<p>Array index for luminous intensity units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a8f84e63b1fa2003f3438e7cd21231b92" name="a8f84e63b1fa2003f3438e7cd21231b92"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8f84e63b1fa2003f3438e7cd21231b92">&#9670;&#160;</a></span>WCSUNITS_MASS</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_MASS&#160;&#160;&#160;6</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for mass units type. </p>
<p>Array index for mass units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a59e3354bb9908a4841aa478f2dbd3973" name="a59e3354bb9908a4841aa478f2dbd3973"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59e3354bb9908a4841aa478f2dbd3973">&#9670;&#160;</a></span>WCSUNITS_LENGTH</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_LENGTH&#160;&#160;&#160;7</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for length units type. </p>
<p>Array index for length units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a347b88663166b66404cbb2f8aac211bb" name="a347b88663166b66404cbb2f8aac211bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a347b88663166b66404cbb2f8aac211bb">&#9670;&#160;</a></span>WCSUNITS_TIME</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_TIME&#160;&#160;&#160;8</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for time units type. </p>
<p>Array index for time units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a11a1284e63c7515fd0240ca8f85fc111" name="a11a1284e63c7515fd0240ca8f85fc111"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11a1284e63c7515fd0240ca8f85fc111">&#9670;&#160;</a></span>WCSUNITS_BEAM</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_BEAM&#160;&#160;&#160;9</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for beam units type. </p>
<p>Array index for beam units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a84fdca1d2c8647a2f33a760578de62c6" name="a84fdca1d2c8647a2f33a760578de62c6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a84fdca1d2c8647a2f33a760578de62c6">&#9670;&#160;</a></span>WCSUNITS_BIN</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_BIN&#160;&#160;&#160;10</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for bin units type. </p>
<p>Array index for bin units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a7332ce1c3c715011599d4b9d13e7b760" name="a7332ce1c3c715011599d4b9d13e7b760"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7332ce1c3c715011599d4b9d13e7b760">&#9670;&#160;</a></span>WCSUNITS_BIT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_BIT&#160;&#160;&#160;11</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for bit units type. </p>
<p>Array index for bit units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a27df51b1593f3642bfd9833e71c73a34" name="a27df51b1593f3642bfd9833e71c73a34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a27df51b1593f3642bfd9833e71c73a34">&#9670;&#160;</a></span>WCSUNITS_COUNT</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_COUNT&#160;&#160;&#160;12</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for count units type. </p>
<p>Array index for count units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="ace657c3f971b4ac9004a2639d142f636" name="ace657c3f971b4ac9004a2639d142f636"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace657c3f971b4ac9004a2639d142f636">&#9670;&#160;</a></span>WCSUNITS_MAGNITUDE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_MAGNITUDE&#160;&#160;&#160;13</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for stellar magnitude units type. </p>
<p>Array index for stellar magnitude units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a2cf5fc976d2663fed07f1f837245f36b" name="a2cf5fc976d2663fed07f1f837245f36b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2cf5fc976d2663fed07f1f837245f36b">&#9670;&#160;</a></span>WCSUNITS_PIXEL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_PIXEL&#160;&#160;&#160;14</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for pixel units type. </p>
<p>Array index for pixel units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="ab622892a80194a6a432510665156e4fb" name="ab622892a80194a6a432510665156e4fb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab622892a80194a6a432510665156e4fb">&#9670;&#160;</a></span>WCSUNITS_SOLRATIO</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_SOLRATIO&#160;&#160;&#160;15</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for solar mass ratio units type. </p>
<p>Array index for solar mass ratio units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a946bca82ae3fb279ad3d86dbc793be07" name="a946bca82ae3fb279ad3d86dbc793be07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a946bca82ae3fb279ad3d86dbc793be07">&#9670;&#160;</a></span>WCSUNITS_VOXEL</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_VOXEL&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Array index for voxel units type. </p>
<p>Array index for voxel units in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<a id="a7daf2b3a5c7e96f2823bca916554cc4b" name="a7daf2b3a5c7e96f2823bca916554cc4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7daf2b3a5c7e96f2823bca916554cc4b">&#9670;&#160;</a></span>WCSUNITS_NTYPE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define WCSUNITS_NTYPE&#160;&#160;&#160;17</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Number of entries in the units array. </p>
<p>Number of entries in the <em>units</em> array returned by <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, and the <a class="el" href="wcsunits_8h.html#aec5892437858120d456503fe38f4031b" title="Names of physical quantities.">wcsunits_types</a>[] and <a class="el" href="wcsunits_8h.html#acd49d777bc04d68cdfdd29f5b6a7252b" title="Names of units.">wcsunits_units</a>[] global variables. </p>

</div>
</div>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a id="a864e6b966575a8c42eb333ba9f14a3ef" name="a864e6b966575a8c42eb333ba9f14a3ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a864e6b966575a8c42eb333ba9f14a3ef">&#9670;&#160;</a></span>wcsunits_errmsg_enum</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="wcsunits_8h.html#a864e6b966575a8c42eb333ba9f14a3ef">wcsunits_errmsg_enum</a></td>
        </tr>
      </table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efac00b91a489f7273d2733f58201b6a723" name="a864e6b966575a8c42eb333ba9f14a3efac00b91a489f7273d2733f58201b6a723"></a>UNITSERR_SUCCESS&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa4ad61420ee56456d08647b222c4aa8af" name="a864e6b966575a8c42eb333ba9f14a3efa4ad61420ee56456d08647b222c4aa8af"></a>UNITSERR_BAD_NUM_MULTIPLIER&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa5ceed55803deb4a34266f23cf6d47274" name="a864e6b966575a8c42eb333ba9f14a3efa5ceed55803deb4a34266f23cf6d47274"></a>UNITSERR_DANGLING_BINOP&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efaf7a5cd4ed90aeef7598875cb5bf57a11" name="a864e6b966575a8c42eb333ba9f14a3efaf7a5cd4ed90aeef7598875cb5bf57a11"></a>UNITSERR_BAD_INITIAL_SYMBOL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa67b504a215f2d34d1be4956b1e9e55b7" name="a864e6b966575a8c42eb333ba9f14a3efa67b504a215f2d34d1be4956b1e9e55b7"></a>UNITSERR_FUNCTION_CONTEXT&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa0c9333946c5918c15c376f12e9afb086" name="a864e6b966575a8c42eb333ba9f14a3efa0c9333946c5918c15c376f12e9afb086"></a>UNITSERR_BAD_EXPON_SYMBOL&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa367f21cd3b49b178d4fdadaf74f2618d" name="a864e6b966575a8c42eb333ba9f14a3efa367f21cd3b49b178d4fdadaf74f2618d"></a>UNITSERR_UNBAL_BRACKET&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa49231fa8fbeeca036424cd7df0d5a3a8" name="a864e6b966575a8c42eb333ba9f14a3efa49231fa8fbeeca036424cd7df0d5a3a8"></a>UNITSERR_UNBAL_PAREN&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa5b8db327b9d6bf09e93e7e0fed910792" name="a864e6b966575a8c42eb333ba9f14a3efa5b8db327b9d6bf09e93e7e0fed910792"></a>UNITSERR_CONSEC_BINOPS&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa116bc901282cf346621b9e56e4676b24" name="a864e6b966575a8c42eb333ba9f14a3efa116bc901282cf346621b9e56e4676b24"></a>UNITSERR_PARSER_ERROR&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efae9b1b29365d17b25452562f770d44975" name="a864e6b966575a8c42eb333ba9f14a3efae9b1b29365d17b25452562f770d44975"></a>UNITSERR_BAD_UNIT_SPEC&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efa599ff63ed46928ffb2f5edc07de3ddcc" name="a864e6b966575a8c42eb333ba9f14a3efa599ff63ed46928ffb2f5edc07de3ddcc"></a>UNITSERR_BAD_FUNCS&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="a864e6b966575a8c42eb333ba9f14a3efaf6fc9ca59d14a8889809c050c01154ff" name="a864e6b966575a8c42eb333ba9f14a3efaf6fc9ca59d14a8889809c050c01154ff"></a>UNITSERR_UNSAFE_TRANS&#160;</td><td class="fielddoc"></td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a47aa4e0a54f11d7ed5146c00906a3984" name="a47aa4e0a54f11d7ed5146c00906a3984"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47aa4e0a54f11d7ed5146c00906a3984">&#9670;&#160;</a></span>wcsunitse()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int wcsunitse </td>
          <td>(</td>
          <td class="paramtype">const char&#160;</td>
          <td class="paramname"><em>have</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char&#160;</td>
          <td class="paramname"><em>want</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>scale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>power</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structwcserr.html">wcserr</a> **&#160;</td>
          <td class="paramname"><em>err</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>FITS units specification conversion. </p>
<p><b>wcsunitse</b>() derives the conversion from one system of units to another.</p>
<p>A deprecated form of this function, <a class="el" href="wcsunits_8h.html#aef5d64e333f758458b1edaa617911513">wcsunits()</a>, lacks the wcserr** parameter.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">have</td><td>FITS units specification to convert from (null- terminated), with or without surrounding square brackets (for inline specifications); text following the closing bracket is ignored. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">want</td><td>FITS units specification to convert to (null- terminated), with or without surrounding square brackets (for inline specifications); text following the closing bracket is ignored.</td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">scale,offset,power</td><td>Convert units using <div class="fragment"><div class="line">pow(scale*value + offset, power);</div>
</div><!-- fragment --> <br  />
 Normally <em>offset</em> is zero except for log() or ln() conversions, e.g. &quot;log(MHz)&quot; to &quot;ln(Hz)&quot;. Likewise, <em>power</em> is normally unity except for exp() conversions, e.g. &quot;exp(ms)&quot; to &quot;exp(/Hz)&quot;. Thus conversions ordinarily consist of <div class="fragment"><div class="line">value *= scale;</div>
</div><!-- fragment --> </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">err</td><td>If enabled, for function return values &gt; 1, this struct will contain a detailed error message, see <a class="el" href="wcserr_8h.html#a1691b8bd184d40ca6fda255be078fa53" title="Enable/disable error messaging.">wcserr_enable()</a>. May be NULL if an error message is not desired. Otherwise, the user is responsible for deleting the memory allocated for the wcserr struct.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Status return value:<ul>
<li>0: Success.</li>
<li>1-9: Status return from <a class="el" href="wcsunits_8h.html#a6c5f3165e687f60176b7f21fdb42fa1c" title="FITS units specification parser.">wcsulexe()</a>.</li>
<li>10: Non-conformant unit specifications.</li>
<li>11: Non-conformant functions.</li>
</ul>
scale is zeroed on return if an error occurs. </dd></dl>

</div>
</div>
<a id="a25ba0f0129e88c6e7c74d4562cf796cd" name="a25ba0f0129e88c6e7c74d4562cf796cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a25ba0f0129e88c6e7c74d4562cf796cd">&#9670;&#160;</a></span>wcsutrne()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int wcsutrne </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>ctrl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>unitstr</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structwcserr.html">wcserr</a> **&#160;</td>
          <td class="paramname"><em>err</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Translation of non-standard unit specifications. </p>
<p><b>wcsutrne</b>() translates certain commonly used but non-standard unit strings, e.g. &quot;DEG&quot;, &quot;MHZ&quot;, &quot;KELVIN&quot;, that are not recognized by <a class="el" href="wcsunits_8h.html#a6c5f3165e687f60176b7f21fdb42fa1c" title="FITS units specification parser.">wcsulexe()</a>, refer to the notes below for a full list. Compounds are also recognized, e.g. &quot;JY/BEAM&quot; and &quot;KM/SEC/SEC&quot;. Extraneous embedded blanks are removed.</p>
<p>A deprecated form of this function, <a class="el" href="wcsunits_8h.html#a560462cb2a7fa7eae6b4f325c85e7911">wcsutrn()</a>, lacks the wcserr** parameter.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ctrl</td><td>Although &quot;S&quot; is commonly used to represent seconds, its translation to &quot;s&quot; is potentially unsafe since the standard recognizes &quot;S&quot; formally as Siemens, however rarely that may be used. The same applies to &quot;H&quot; for hours (Henry), and &quot;D&quot; for days (Debye). This bit-flag controls what to do in such cases:<ul>
<li>1: Translate &quot;S&quot; to &quot;s&quot;.</li>
<li>2: Translate &quot;H&quot; to &quot;h&quot;.</li>
<li>4: Translate &quot;D&quot; to &quot;d&quot;.</li>
</ul>
Thus ctrl == 0 doesn't do any unsafe translations, whereas ctrl == 7 does all of them.</td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">unitstr</td><td>Null-terminated character array containing the units specification to be translated. <br  />
 Inline units specifications in a FITS header keycomment are also handled. If the first non-blank character in unitstr is '[' then the unit string is delimited by its matching ']'. Blanks preceding '[' will be stripped off, but text following the closing bracket will be preserved without modification. </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">err</td><td>If enabled, for function return values &gt; 1, this struct will contain a detailed error message, see <a class="el" href="wcserr_8h.html#a1691b8bd184d40ca6fda255be078fa53" title="Enable/disable error messaging.">wcserr_enable()</a>. May be NULL if an error message is not desired. Otherwise, the user is responsible for deleting the memory allocated for the wcserr struct.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Status return value:<ul>
<li>-1: No change was made, other than stripping blanks (not an error).</li>
<li>0: Success.</li>
<li>9: Internal parser error.</li>
<li>12: Potentially unsafe translation, whether applied or not (see notes).</li>
</ul>
</dd></dl>
<p><b>Notes:</b> <br  />
 </p><ol>
<li>
<p class="startli">Translation of non-standard unit specifications: apart from leading and trailing blanks, a case-sensitive match is required for the aliases listed below, in particular the only recognized aliases with metric prefixes are &quot;KM&quot;, &quot;KHZ&quot;, &quot;MHZ&quot;, and &quot;GHZ&quot;. Potentially unsafe translations of &quot;D&quot;, &quot;H&quot;, and &quot;S&quot;, shown in parentheses, are optional. </p><div class="fragment"><div class="line">Unit       Recognized aliases</div>
<div class="line">----       ----------------------------------------------------------</div>
<div class="line">Angstrom   Angstroms angstrom angstroms</div>
<div class="line">arcmin     arcmins, ARCMIN, ARCMINS</div>
<div class="line">arcsec     arcsecs, ARCSEC, ARCSECS</div>
<div class="line">beam       BEAM</div>
<div class="line"><span class="keywordtype">byte</span>       Byte</div>
<div class="line">d          day, days, (D), DAY, DAYS</div>
<div class="line">deg        degree, degrees, Deg, Degree, Degrees, DEG, DEGREE,</div>
<div class="line">           DEGREES</div>
<div class="line">GHz        GHZ</div>
<div class="line">h          hr, (H), HR</div>
<div class="line">Hz         hz, HZ</div>
<div class="line">kHz        KHZ</div>
<div class="line">Jy         JY</div>
<div class="line">K          kelvin, kelvins, Kelvin, Kelvins, KELVIN, KELVINS</div>
<div class="line">km         KM</div>
<div class="line">m          metre, meter, metres, meters, M, METRE, METER, METRES,</div>
<div class="line">           METERS</div>
<div class="line">min        MIN</div>
<div class="line">MHz        MHZ</div>
<div class="line">Ohm        ohm</div>
<div class="line">Pa         pascal, pascals, Pascal, Pascals, PASCAL, PASCALS</div>
<div class="line">pixel      pixels, PIXEL, PIXELS</div>
<div class="line">rad        radian, radians, RAD, RADIAN, RADIANS</div>
<div class="line">s          sec, second, seconds, (S), SEC, SECOND, SECONDS</div>
<div class="line">V          volt, volts, Volt, Volts, VOLT, VOLTS</div>
<div class="line">yr         year, years, YR, YEAR, YEARS</div>
</div><!-- fragment --><p class="endli">The aliases &quot;angstrom&quot;, &quot;ohm&quot;, and &quot;Byte&quot; for (Angstrom, Ohm, and byte) are recognized by <a class="el" href="wcsunits_8h.html#a6c5f3165e687f60176b7f21fdb42fa1c" title="FITS units specification parser.">wcsulexe()</a> itself as an unofficial extension of the standard, but they are converted to the standard form here. </p>
</li>
</ol>

</div>
</div>
<a id="a6c5f3165e687f60176b7f21fdb42fa1c" name="a6c5f3165e687f60176b7f21fdb42fa1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c5f3165e687f60176b7f21fdb42fa1c">&#9670;&#160;</a></span>wcsulexe()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int wcsulexe </td>
          <td>(</td>
          <td class="paramtype">const char&#160;</td>
          <td class="paramname"><em>unitstr</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>scale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>units</em>[WCSUNITS_NTYPE], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct <a class="el" href="structwcserr.html">wcserr</a> **&#160;</td>
          <td class="paramname"><em>err</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>FITS units specification parser. </p>
<p><b>wcsulexe</b>() parses a standard FITS units specification of arbitrary complexity, deriving the scale factor required to convert to canonical units - basically SI with degrees and &quot;dimensionless&quot; additions such as byte, pixel and count.</p>
<p>A deprecated form of this function, <a class="el" href="wcsunits_8h.html#aae4248dc69b440673a8221059e5bd0d4">wcsulex()</a>, lacks the wcserr** parameter.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">unitstr</td><td>Null-terminated character array containing the units specification, with or without surrounding square brackets (for inline specifications); text following the closing bracket is ignored.</td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">func</td><td>Special function type, see note 4:<ul>
<li>0: None</li>
<li>1: log() ...base 10</li>
<li>2: ln() ...base e</li>
<li>3: exp() </li>
</ul>
</td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">scale</td><td>Scale factor for the unit specification; multiply a value expressed in the given units by this factor to convert it to canonical units. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">units</td><td>A units specification is decomposed into powers of 16 fundamental unit types: angle, mass, length, time, count, pixel, etc. Preprocessor macro WCSUNITS_NTYPE is defined to dimension this vector, and others such WCSUNITS_PLANE_ANGLE, WCSUNITS_LENGTH, etc. to access its elements. <br  />
 Corresponding character strings, wcsunits_types[] and wcsunits_units[], are predefined to describe each quantity and its canonical units. </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">err</td><td>If enabled, for function return values &gt; 1, this struct will contain a detailed error message, see <a class="el" href="wcserr_8h.html#a1691b8bd184d40ca6fda255be078fa53" title="Enable/disable error messaging.">wcserr_enable()</a>. May be NULL if an error message is not desired. Otherwise, the user is responsible for deleting the memory allocated for the wcserr struct.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Status return value:<ul>
<li>0: Success.</li>
<li>1: Invalid numeric multiplier.</li>
<li>2: Dangling binary operator.</li>
<li>3: Invalid symbol in INITIAL context.</li>
<li>4: Function in invalid context.</li>
<li>5: Invalid symbol in EXPON context.</li>
<li>6: Unbalanced bracket.</li>
<li>7: Unbalanced parenthesis.</li>
<li>8: Consecutive binary operators.</li>
<li>9: Internal parser error.</li>
</ul>
scale and units[] are zeroed on return if an error occurs.</dd></dl>
<p><b>Notes:</b> <br  />
 </p><ol>
<li>
<p class="startli"><b>wcsulexe</b>() is permissive in accepting whitespace in all contexts in a units specification where it does not create ambiguity (e.g. not between a metric prefix and a basic unit string), including in strings like &quot;log (m ** 2)&quot; which is formally disallowed.</p>
<p class="endli"></p>
</li>
<li>
<p class="startli">Supported extensions: </p><ul>
<li>
&quot;angstrom&quot; (OGIP usage) is allowed in addition to &quot;Angstrom&quot;. </li>
<li>
&quot;ohm&quot; (OGIP usage) is allowed in addition to &quot;Ohm&quot;. </li>
<li>
&quot;Byte&quot; (common usage) is allowed in addition to &quot;byte&quot;. </li>
</ul>
<p class="endli"></p>
</li>
<li>
<p class="startli">Table 6 of WCS Paper I lists eleven units for which metric prefixes are allowed. However, in this implementation only prefixes greater than unity are allowed for &quot;a&quot; (annum), &quot;yr&quot; (year), &quot;pc&quot; (parsec), &quot;bit&quot;, and &quot;byte&quot;, and only prefixes less than unity are allowed for &quot;mag&quot; (stellar magnitude).</p>
<p class="interli">Metric prefix &quot;P&quot; (peta) is specifically forbidden for &quot;a&quot; (annum) to avoid confusion with &quot;Pa&quot; (Pascal, not peta-annum). Note that metric prefixes are specifically disallowed for &quot;h&quot; (hour) and &quot;d&quot; (day) so that &quot;ph&quot; (photons) cannot be interpreted as pico-hours, nor &quot;cd&quot; (candela) as centi-days.</p>
<p class="endli"></p>
</li>
<li>
Function types log(), ln() and exp() may only occur at the start of the units specification. The scale and units[] returned for these refers to the string inside the function &quot;argument&quot;, e.g. to &quot;MHz&quot; in log(MHz) for which a scale of <picture><source srcset="form_76_dark.png" media="(prefers-color-scheme: dark)"/><img class="formulaInl" alt="$10^6$" src="form_76.png" width="18" height="11"/></picture> will be returned. </li>
</ol>

</div>
</div>
<a id="aef5d64e333f758458b1edaa617911513" name="aef5d64e333f758458b1edaa617911513"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef5d64e333f758458b1edaa617911513">&#9670;&#160;</a></span>wcsunits()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int wcsunits </td>
          <td>(</td>
          <td class="paramtype">const char&#160;</td>
          <td class="paramname"><em>have</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char&#160;</td>
          <td class="paramname"><em>want</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>scale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>power</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a560462cb2a7fa7eae6b4f325c85e7911" name="a560462cb2a7fa7eae6b4f325c85e7911"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a560462cb2a7fa7eae6b4f325c85e7911">&#9670;&#160;</a></span>wcsutrn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int wcsutrn </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>ctrl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char&#160;</td>
          <td class="paramname"><em>unitstr</em>[]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="aae4248dc69b440673a8221059e5bd0d4" name="aae4248dc69b440673a8221059e5bd0d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aae4248dc69b440673a8221059e5bd0d4">&#9670;&#160;</a></span>wcsulex()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int wcsulex </td>
          <td>(</td>
          <td class="paramtype">const char&#160;</td>
          <td class="paramname"><em>unitstr</em>[], </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>func</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>scale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>units</em>[WCSUNITS_NTYPE]&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a id="a8217718f8c515151dc33ceba922b39ba" name="a8217718f8c515151dc33ceba922b39ba"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8217718f8c515151dc33ceba922b39ba">&#9670;&#160;</a></span>wcsunits_errmsg</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * wcsunits_errmsg[]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">extern</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Status return messages. </p>
<p>Error messages to match the status value returned from each function. </p>

</div>
</div>
<a id="aec5892437858120d456503fe38f4031b" name="aec5892437858120d456503fe38f4031b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec5892437858120d456503fe38f4031b">&#9670;&#160;</a></span>wcsunits_types</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * wcsunits_types[]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">extern</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Names of physical quantities. </p>
<p>Names for physical quantities to match the units vector returned by <b>wcsulexe</b>():</p><ul>
<li>0: plane angle</li>
<li>1: solid angle</li>
<li>2: charge</li>
<li>3: mole</li>
<li>4: temperature</li>
<li>5: luminous intensity</li>
<li>6: mass</li>
<li>7: length</li>
<li>8: time</li>
<li>9: beam</li>
<li>10: bin</li>
<li>11: bit</li>
<li>12: count</li>
<li>13: stellar magnitude</li>
<li>14: pixel</li>
<li>15: solar ratio</li>
<li>16: voxel </li>
</ul>

</div>
</div>
<a id="acd49d777bc04d68cdfdd29f5b6a7252b" name="acd49d777bc04d68cdfdd29f5b6a7252b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acd49d777bc04d68cdfdd29f5b6a7252b">&#9670;&#160;</a></span>wcsunits_units</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const char * wcsunits_units[]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">extern</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Names of units. </p>
<p>Names for the units (SI) to match the units vector returned by <b>wcsulexe</b>():</p><ul>
<li>0: degree</li>
<li>1: steradian</li>
<li>2: Coulomb</li>
<li>3: mole</li>
<li>4: Kelvin</li>
<li>5: candela</li>
<li>6: kilogram</li>
<li>7: metre</li>
<li>8: second</li>
</ul>
<p>The remainder are dimensionless. </p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Nov 29 2023 19:09:57 for WCSLIB by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>