Sophie

Sophie

distrib > Fedora > 13 > i386 > media > os > by-pkgid > ecbd8c5b7568e331fe6ea5b9a07a78a0 > files > 108

CCfits-docs-2.2-2.fc13.noarch.rpm

<!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"/>
<title>CCfits: CCfits::HDU Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</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="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><b>CCfits</b>::<a class="el" href="classCCfits_1_1HDU.html">HDU</a>
  </div>
</div>
<div class="contents">
<h1>CCfits::HDU Class Reference</h1><!-- doxytag: class="CCfits::HDU" -->
<p>Base class for all <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> [Header-Data Unit] objects.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="HDU_8h_source.html">HDU.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for CCfits::HDU:</div>
<div class="dynsection">
 <div class="center">
  <img src="classCCfits_1_1HDU.gif" alt="Inheritance diagram" usemap="#CCfits::HDU_map" alt=""/>
  <map id="CCfits::HDU_map" name="CCfits::HDU_map">
<area href="classCCfits_1_1ExtHDU.html" alt="CCfits::ExtHDU" shape="rect" coords="71,56,204,80"/>
<area href="classCCfits_1_1PHDU.html" alt="CCfits::PHDU" shape="rect" coords="214,56,347,80"/>
<area href="classCCfits_1_1ImageExt.html" alt="CCfits::ImageExt&lt; T &gt;" shape="rect" coords="0,112,133,136"/>
<area href="classCCfits_1_1Table.html" alt="CCfits::Table" shape="rect" coords="143,112,276,136"/>
<area href="classCCfits_1_1AsciiTable.html" alt="CCfits::AsciiTable" shape="rect" coords="71,168,204,192"/>
<area href="classCCfits_1_1BinTable.html" alt="CCfits::BinTable" shape="rect" coords="214,168,347,192"/>
</map>
 </div>
</div>

<p><a href="classCCfits_1_1HDU-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU_1_1InvalidExtensionType.html">InvalidExtensionType</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exception to be thrown if user requests extension type that can not be understood as <a class="el" href="classCCfits_1_1ImageExt.html">ImageExt</a>, <a class="el" href="classCCfits_1_1AsciiTable.html" title="Class Representing Ascii Table Extensions.">AsciiTable</a> or <a class="el" href="classCCfits_1_1BinTable.html" title="Class Representing Binary Table Extensions. Contains columns with scalar or vector...">BinTable</a>.  <a href="classCCfits_1_1HDU_1_1InvalidExtensionType.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU_1_1InvalidImageDataType.html">InvalidImageDataType</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exception to be thrown if user requests creation of an image of type not supported by cfitsio.  <a href="classCCfits_1_1HDU_1_1InvalidImageDataType.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU_1_1NoNullValue.html">NoNullValue</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exception to be thrown on seek errors for keywords.  <a href="classCCfits_1_1HDU_1_1NoNullValue.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">class &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU_1_1NoSuchKeyword.html">NoSuchKeyword</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exception to be thrown on seek errors for keywords.  <a href="classCCfits_1_1HDU_1_1NoSuchKeyword.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9fed5392151d12c459e5be9e955e1587"></a><!-- doxytag: member="CCfits::HDU::HDU" ref="a9fed5392151d12c459e5be9e955e1587" args="(const HDU &amp;right)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a9fed5392151d12c459e5be9e955e1587">HDU</a> (const <a class="el" href="classCCfits_1_1HDU.html">HDU</a> &amp;right)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">copy constructor <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a64b11dc4b2e2d3e2cf636fbcb8a15fc2">addKey</a> (const <a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> *inKeyword)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">create a copy of an existing <a class="el" href="classCCfits_1_1Keyword.html" title="Abstract base class defining the interface for Keyword objects.">Keyword</a> and add to <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a>  <a href="#a64b11dc4b2e2d3e2cf636fbcb8a15fc2"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> &amp;&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a6c1b83b64794e608f71e2270c74a61d6">addKey</a> (const String &amp;name, T val, const String &amp;comment)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">create a new keyword in the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> with specified value and comment fields  <a href="#a6c1b83b64794e608f71e2270c74a61d6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18bd99b5d72ace7e7b353102eb80793a"></a><!-- doxytag: member="CCfits::HDU::axes" ref="a18bd99b5d72ace7e7b353102eb80793a" args="() const " -->
long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a18bd99b5d72ace7e7b353102eb80793a">axes</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the number of axes in the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> data section (always 2 for tables). <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a9e19372a1a01046420c6ba4393bb5674">axis</a> (size_t index) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the size of axis numbered index [zero based].  <a href="#a9e19372a1a01046420c6ba4393bb5674"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a81a2d5b001c0ae7d0a298942940189d8">bitpix</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the data type keyword.  <a href="#a81a2d5b001c0ae7d0a298942940189d8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d4af8d84676f20b1c79b785f1a22cde"></a><!-- doxytag: member="CCfits::HDU::clone" ref="a5d4af8d84676f20b1c79b785f1a22cde" args="(FITSBase *p) const =0" -->
virtual <a class="el" href="classCCfits_1_1HDU.html">HDU</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a5d4af8d84676f20b1c79b785f1a22cde">clone</a> (FITSBase *p) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">virtual copy constructor, to be implemented in subclasses. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aecb532b753cd3460568e49e64df19ee5"></a><!-- doxytag: member="CCfits::HDU::comment" ref="aecb532b753cd3460568e49e64df19ee5" args="() const " -->
const string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#aecb532b753cd3460568e49e64df19ee5">comment</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the comment string previously read by getComment() <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a317fcf61da35fcf568f7bc3c2df83706">copyAllKeys</a> (const <a class="el" href="classCCfits_1_1HDU.html">HDU</a> *inHdu)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">copy all keys from another header  <a href="#a317fcf61da35fcf568f7bc3c2df83706"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#aece6e1d7e46ce3370578972a4aeb08ab">deleteKey</a> (const String &amp;doomed)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">delete a keyword from the header  <a href="#aece6e1d7e46ce3370578972a4aeb08ab"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37bec2db64600e489eb8efa8a001f73d"></a><!-- doxytag: member="CCfits::HDU::fitsPointer" ref="a37bec2db64600e489eb8efa8a001f73d" args="() const " -->
fitsfile *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a37bec2db64600e489eb8efa8a001f73d">fitsPointer</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the fitsfile pointer for the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> object containing the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::pair&lt; unsigned long, <br class="typebreak"/>
unsigned long &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#abdfef60e183bb3f3ae0374fccdbc4e45">getChecksum</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">compute and return the checksum values for the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> without creating or modifying the CHECKSUM/DATASUM keywords.  <a href="#abdfef60e183bb3f3ae0374fccdbc4e45"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const String &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a6604d7907f4f0353e2821ac6c2506c73">getComments</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">read the comments from the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> and add it to the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> object.  <a href="#a6604d7907f4f0353e2821ac6c2506c73"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const String &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a09da0675ae163e98d2d8cf3e2a9c2571">getHistory</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">read the history information from the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> and add it to the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> object.  <a href="#a09da0675ae163e98d2d8cf3e2a9c2571"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7acddc0c108bc9504a3a342b010ec9a1"></a><!-- doxytag: member="CCfits::HDU::history" ref="a7acddc0c108bc9504a3a342b010ec9a1" args="() const " -->
const string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a7acddc0c108bc9504a3a342b010ec9a1">history</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the history string previously read by <a class="el" href="classCCfits_1_1HDU.html#a09da0675ae163e98d2d8cf3e2a9c2571" title="read the history information from the HDU and add it to the FITS object.">getHistory()</a> <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a111434a1e35e2453237f86b30b3f4a8d"></a><!-- doxytag: member="CCfits::HDU::index" ref="a111434a1e35e2453237f86b30b3f4a8d" args="() const " -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a111434a1e35e2453237f86b30b3f4a8d">index</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> number <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab8bf6e03b7460db9dc81c1e6c4bbb214"></a><!-- doxytag: member="CCfits::HDU::index" ref="ab8bf6e03b7460db9dc81c1e6c4bbb214" args="(int value)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#ab8bf6e03b7460db9dc81c1e6c4bbb214">index</a> (int value)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> number <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd3add56e93046c3a5260f1d227b4892"></a><!-- doxytag: member="CCfits::HDU::keyWord" ref="abd3add56e93046c3a5260f1d227b4892" args="(const string &amp;keyname) const " -->
const <a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#abd3add56e93046c3a5260f1d227b4892">keyWord</a> (const string &amp;keyname) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return a (previously read) keyword from the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> object. const version <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a674875a76c3fb745b2b35303b42407cc"></a><!-- doxytag: member="CCfits::HDU::keyWord" ref="a674875a76c3fb745b2b35303b42407cc" args="() const " -->
const std::map&lt; string, <br class="typebreak"/>
<a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> * &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a674875a76c3fb745b2b35303b42407cc">keyWord</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the associative array containing the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> Keywords that have been read so far. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb274465a32c564e884b69810161078c"></a><!-- doxytag: member="CCfits::HDU::keyWord" ref="abb274465a32c564e884b69810161078c" args="(const String &amp;keyName)" -->
<a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#abb274465a32c564e884b69810161078c">keyWord</a> (const String &amp;keyName)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return a (previously read) keyword from the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> object. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a011149805ffb96031218739369863e17"></a><!-- doxytag: member="CCfits::HDU::keyWord" ref="a011149805ffb96031218739369863e17" args="()" -->
std::map&lt; String, <a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> * &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a011149805ffb96031218739369863e17">keyWord</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the associative array containing the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> keywords so far read. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#af0bbec3fe5f6b41ff4a95feff6600d57">makeThisCurrent</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">move the fitsfile pointer to this current <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a>.  <a href="#af0bbec3fe5f6b41ff4a95feff6600d57"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c4fa124e27d002de1044c1832be5942"></a><!-- doxytag: member="CCfits::HDU::operator!=" ref="a0c4fa124e27d002de1044c1832be5942" args="(const HDU &amp;right) const " -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a0c4fa124e27d002de1044c1832be5942">operator!=</a> (const <a class="el" href="classCCfits_1_1HDU.html">HDU</a> &amp;right) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">inequality operator <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab574045dcdc383c9d2987850c640e0c1"></a><!-- doxytag: member="CCfits::HDU::operator==" ref="ab574045dcdc383c9d2987850c640e0c1" args="(const HDU &amp;right) const " -->
bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#ab574045dcdc383c9d2987850c640e0c1">operator==</a> (const <a class="el" href="classCCfits_1_1HDU.html">HDU</a> &amp;right) const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">equality operator <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b547e893d364ebc570f2998a6b193bd"></a><!-- doxytag: member="CCfits::HDU::parent" ref="a3b547e893d364ebc570f2998a6b193bd" args="() const " -->
FITSBase *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a3b547e893d364ebc570f2998a6b193bd">parent</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return reference to the pointer representing the FITSBase object containing the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a2dd3930b7e987e0971c494887243a7a2">readAllKeys</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">read all of the keys in the header  <a href="#a2dd3930b7e987e0971c494887243a7a2"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a14e36d51401c4a0028f71d1398785616">readKey</a> (const String &amp;keyName, T &amp;val)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">read a keyword of specified type from the header of a disk <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> file and return its value.  <a href="#a14e36d51401c4a0028f71d1398785616"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">void&nbsp;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#ad366e9cd9cb0b64995c5c457dfe16e60">readKeys</a> (std::vector&lt; String &gt; &amp;keyNames, std::vector&lt; T &gt; &amp;vals)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">read a set of specified keywords of the same data type from the header of a disk <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> file and return their values  <a href="#ad366e9cd9cb0b64995c5c457dfe16e60"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a6c8e0dc188f74f681f6bfe17819b2eb9">scale</a> (double value)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the BSCALE keyword value for images (see warning for images of int type)  <a href="#a6c8e0dc188f74f681f6bfe17819b2eb9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af1ffd58e00cd8f3a903976df8f91bc0a"></a><!-- doxytag: member="CCfits::HDU::scale" ref="af1ffd58e00cd8f3a903976df8f91bc0a" args="() const " -->
virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#af1ffd58e00cd8f3a903976df8f91bc0a">scale</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the BSCALE keyword value <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a6bd0d7eb236211267de480c595b5b631">suppressScaling</a> (bool toggle=true)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">turn off image scaling regardless of the BSCALE and BZERO keyword values  <a href="#a6bd0d7eb236211267de480c595b5b631"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a56ce9ed0864e07a7ef380b18e3be7a79">updateChecksum</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">update the CHECKSUM keyword value, assuming DATASUM exists and is correct  <a href="#a56ce9ed0864e07a7ef380b18e3be7a79"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::pair&lt; int, int &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#adc1a7ba06b6a113010334320e5268dc6">verifyChecksum</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">verify the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> by computing the checksums and comparing them with the CHECKSUM/DATASUM keywords  <a href="#adc1a7ba06b6a113010334320e5268dc6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a3ac4ca8b88fc94552f890154247776c6">writeChecksum</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">compute and write the DATASUM and CHECKSUM keyword values  <a href="#a3ac4ca8b88fc94552f890154247776c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a05843eda3c863cf9b580a409b3067c55">writeComment</a> (const String &amp;comment=&quot;Generic Comment&quot;)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">write a comment string.  <a href="#a05843eda3c863cf9b580a409b3067c55"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c36394bfe734921404a6882e82be4db"></a><!-- doxytag: member="CCfits::HDU::writeDate" ref="a4c36394bfe734921404a6882e82be4db" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a4c36394bfe734921404a6882e82be4db">writeDate</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">write a date string to *this. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#ae33b25a2d52e0e75e13d277e3327d03f">writeHistory</a> (const String &amp;history=&quot;Generic History String&quot;)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">write a history string.  <a href="#ae33b25a2d52e0e75e13d277e3327d03f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a2fb3adf98e8cc736b200520afed61c13">zero</a> (double value)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set the BZERO keyword value for images (see warning for images of int type)  <a href="#a2fb3adf98e8cc736b200520afed61c13"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a23317074fa7362c7522c01f3f1756618"></a><!-- doxytag: member="CCfits::HDU::zero" ref="a23317074fa7362c7522c01f3f1756618" args="() const " -->
virtual double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a23317074fa7362c7522c01f3f1756618">zero</a> () const </td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the BZERO keyword value <br/></td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static std::vector&lt; int &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a69f296780f7b1e2ff83199d4cffa4c86">keywordCategories</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the enumerated keyword categories used by <a class="el" href="classCCfits_1_1HDU.html#a2dd3930b7e987e0971c494887243a7a2" title="read all of the keys in the header">readAllKeys()</a> and <a class="el" href="classCCfits_1_1HDU.html#a317fcf61da35fcf568f7bc3c2df83706" title="copy all keys from another header">copyAllKeys()</a>  <a href="#a69f296780f7b1e2ff83199d4cffa4c86"></a><br/></td></tr>
<tr><td colspan="2"><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84de5ab34fba6c478e9365937d826346"></a><!-- doxytag: member="CCfits::HDU::HDU" ref="a84de5ab34fba6c478e9365937d826346" args="(FITSBase *p, int bitpix, int naxis, const std::vector&lt; long &gt; &amp;axes)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a84de5ab34fba6c478e9365937d826346">HDU</a> (FITSBase *p, int bitpix, int naxis, const std::vector&lt; long &gt; &amp;axes)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">constructor for creating new <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> objects, called by <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> subclasses writing to <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> files. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0938122b95fae87a5d8abd70d2faf664"></a><!-- doxytag: member="CCfits::HDU::HDU" ref="a0938122b95fae87a5d8abd70d2faf664" args="(FITSBase *p=0)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a0938122b95fae87a5d8abd70d2faf664">HDU</a> (FITSBase *p=0)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">default constructor, called by <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> subclasses that read from <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> files. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad660a6aee62165b81eb71b85447ab93e"></a><!-- doxytag: member="CCfits::HDU::~HDU" ref="ad660a6aee62165b81eb71b85447ab93e" args="()" -->
virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#ad660a6aee62165b81eb71b85447ab93e">~HDU</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">destructor <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e02db0df89451736c7863963170a081"></a><!-- doxytag: member="CCfits::HDU::naxes" ref="a2e02db0df89451736c7863963170a081" args="()" -->
std::vector&lt; long &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCCfits_1_1HDU.html#a2e02db0df89451736c7863963170a081">naxes</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">return the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> data axis array. <br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Base class for all <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> [Header-Data Unit] objects. </p>
<p><a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> objects in CCfits are either <a class="el" href="classCCfits_1_1PHDU.html" title="class representing the primary HDU for a FITS file.">PHDU</a> (Primary <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> objects) or <a class="el" href="classCCfits_1_1ExtHDU.html" title="base class for all FITS extension HDUs, i.e. Image Extensions and Tables.">ExtHDU</a> (Extension <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a>) objects. Following the behavior. ExtHDUs are further subclassed into <a class="el" href="classCCfits_1_1ImageExt.html">ImageExt</a> or <a class="el" href="classCCfits_1_1Table.html">Table</a> objects, which are finally <a class="el" href="classCCfits_1_1AsciiTable.html" title="Class Representing Ascii Table Extensions.">AsciiTable</a> or <a class="el" href="classCCfits_1_1BinTable.html" title="Class Representing Binary Table Extensions. Contains columns with scalar or vector...">BinTable</a> objects.</p>
<p>HDU's public interface gives access to properties that are common to all HDUs, largely required keywords, and functions that are common to all HDUs, principally the manipulation of keywords and their values.</p>
<p>HDUs must be constructed by HDUCreator objects which are called by <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> methods. Each <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> has an embedded pointer to a FITSBase object, which is private to <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> [FITSBase is a pointer encapsulating the resources of <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a>. For details of this coding idiom see Exceptional C++ by Herb Sutter (2000) and references therein]. </p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a64b11dc4b2e2d3e2cf636fbcb8a15fc2"></a><!-- doxytag: member="CCfits::HDU::addKey" ref="a64b11dc4b2e2d3e2cf636fbcb8a15fc2" args="(const Keyword *inKeyword)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> * CCfits::HDU::addKey </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> *&nbsp;</td>
          <td class="paramname"> <em>inKeyword</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create a copy of an existing <a class="el" href="classCCfits_1_1Keyword.html" title="Abstract base class defining the interface for Keyword objects.">Keyword</a> and add to <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> </p>
<p>This is particularly useful for copying Keywords from one <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> to another. For example the inKeyword pointer might come from a different HDU's std::map&lt;string,Keyword*&gt;. If a keyword with this name already exists, it will be overwritten. The return value is a pointer to the newly created <a class="el" href="classCCfits_1_1Keyword.html" title="Abstract base class defining the interface for Keyword objects.">Keyword</a> inserted into this <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a>. Also see <a class="el" href="classCCfits_1_1HDU.html#a317fcf61da35fcf568f7bc3c2df83706" title="copy all keys from another header">copyAllKeys()</a>. </p>

</div>
</div>
<a class="anchor" id="a6c1b83b64794e608f71e2270c74a61d6"></a><!-- doxytag: member="CCfits::HDU::addKey" ref="a6c1b83b64794e608f71e2270c74a61d6" args="(const String &amp;name, T val, const String &amp;comment)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCCfits_1_1Keyword.html">Keyword</a> &amp; CCfits::HDU::addKey </td>
          <td>(</td>
          <td class="paramtype">const String &amp;&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T&nbsp;</td>
          <td class="paramname"> <em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const String &amp;&nbsp;</td>
          <td class="paramname"> <em>comment</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>create a new keyword in the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> with specified value and comment fields </p>
<p>The function returns a reference to keyword object just created. If a keyword with this name already exists, it will be overwritten. Note that this is mostly intended for adding user-defined keywords. It should not be used to add keywords for which there are already specific <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> functions, such as scaling or checksum. Nor should it be used for image or column structural keywords, such as BITPIX, NAXIS, TFORMn, etc. As a general rule, it is best to use this for keywords belonging to the same categories listed in the <a class="el" href="classCCfits_1_1HDU.html#a69f296780f7b1e2ff83199d4cffa4c86" title="return the enumerated keyword categories used by readAllKeys() and copyAllKeys()">keywordCategories()</a> function.</p>
<p>Parameters: </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>(String) The keyword name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>(Recommended T = String, double, std::complex&lt;float&gt;, int, or bool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>comment</em>&nbsp;</td><td>(String) the keyword value</td></tr>
  </table>
  </dd>
</dl>
<p>It is possible to create a keyword with a value of any of the allowed data types in fitsio (see the cfitsio manual section 4.3). However one should be aware that if this keyword value is read in from the file at a later time, it will be stored in a templated <a class="el" href="classCCfits_1_1Keyword.html" title="Abstract base class defining the interface for Keyword objects.">Keyword</a> subclass (KeyData&lt;T&gt;) where T will be one of the recommended types listed above. Also see <a class="el" href="classCCfits_1_1Keyword.html#a4f064dcdcafe756d21c7af2a97dc2e61" title="get the keyword value">Keyword::value</a> (T&amp; val) for more details. </p>

</div>
</div>
<a class="anchor" id="a9e19372a1a01046420c6ba4393bb5674"></a><!-- doxytag: member="CCfits::HDU::axis" ref="a9e19372a1a01046420c6ba4393bb5674" args="(size_t index) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long CCfits::HDU::axis </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>index</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>return the size of axis numbered index [zero based]. </p>
<p>return the length of <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> data axis i. </p>

</div>
</div>
<a class="anchor" id="a81a2d5b001c0ae7d0a298942940189d8"></a><!-- doxytag: member="CCfits::HDU::bitpix" ref="a81a2d5b001c0ae7d0a298942940189d8" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long CCfits::HDU::bitpix </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>return the data type keyword. </p>
<p>Takes values denoting the image data type for images, and takes the fixed value 8 for tables. </p>

</div>
</div>
<a class="anchor" id="a317fcf61da35fcf568f7bc3c2df83706"></a><!-- doxytag: member="CCfits::HDU::copyAllKeys" ref="a317fcf61da35fcf568f7bc3c2df83706" args="(const HDU *inHdu)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::copyAllKeys </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classCCfits_1_1HDU.html">HDU</a> *&nbsp;</td>
          <td class="paramname"> <em>inHdu</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>copy all keys from another header </p>
<p>Parameters: </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>inHdu</em>&nbsp;</td><td>(const HDU*) An existing <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> whose keys will be copied.</td></tr>
  </table>
  </dd>
</dl>
<p>This will copy all keys that exist in the keyWord map of <em>inHDU</em>, and which belong to one of the keyword classes returned by the <a class="el" href="classCCfits_1_1HDU.html#a69f296780f7b1e2ff83199d4cffa4c86" title="return the enumerated keyword categories used by readAllKeys() and copyAllKeys()">keywordCategories()</a> function. This is the same group of keyword classes used by <a class="el" href="classCCfits_1_1HDU.html#a2dd3930b7e987e0971c494887243a7a2" title="read all of the keys in the header">readAllKeys()</a>. </p>

</div>
</div>
<a class="anchor" id="aece6e1d7e46ce3370578972a4aeb08ab"></a><!-- doxytag: member="CCfits::HDU::deleteKey" ref="aece6e1d7e46ce3370578972a4aeb08ab" args="(const String &amp;doomed)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::deleteKey </td>
          <td>(</td>
          <td class="paramtype">const String &amp;&nbsp;</td>
          <td class="paramname"> <em>doomed</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>delete a keyword from the header </p>
<p>removes <em>doomed</em> from the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> file and from the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> object </p>

</div>
</div>
<a class="anchor" id="abdfef60e183bb3f3ae0374fccdbc4e45"></a><!-- doxytag: member="CCfits::HDU::getChecksum" ref="abdfef60e183bb3f3ae0374fccdbc4e45" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::pair&lt; unsigned long, unsigned long &gt; CCfits::HDU::getChecksum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>compute and return the checksum values for the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> without creating or modifying the CHECKSUM/DATASUM keywords. </p>
<p>Wrapper for the CFITSIO function fits_get_chksum: This returns a std::pair&lt;unsigned long, unsigned long&gt; where the pair's first data member holds the datasum value and second holds the hdusum value. </p>

</div>
</div>
<a class="anchor" id="a6604d7907f4f0353e2821ac6c2506c73"></a><!-- doxytag: member="CCfits::HDU::getComments" ref="a6604d7907f4f0353e2821ac6c2506c73" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const String &amp; CCfits::HDU::getComments </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>read the comments from the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> and add it to the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> object. </p>
<p>The comment string found in the header is concatenated and returned to the calling function </p>

</div>
</div>
<a class="anchor" id="a09da0675ae163e98d2d8cf3e2a9c2571"></a><!-- doxytag: member="CCfits::HDU::getHistory" ref="a09da0675ae163e98d2d8cf3e2a9c2571" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const String &amp; CCfits::HDU::getHistory </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>read the history information from the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> and add it to the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> object. </p>
<p>The history string found in the header is concatenated and returned to the calling function </p>

</div>
</div>
<a class="anchor" id="a69f296780f7b1e2ff83199d4cffa4c86"></a><!-- doxytag: member="CCfits::HDU::keywordCategories" ref="a69f296780f7b1e2ff83199d4cffa4c86" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static std::vector&lt; int &gt; CCfits::HDU::keywordCategories </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>return the enumerated keyword categories used by <a class="el" href="classCCfits_1_1HDU.html#a2dd3930b7e987e0971c494887243a7a2" title="read all of the keys in the header">readAllKeys()</a> and <a class="el" href="classCCfits_1_1HDU.html#a317fcf61da35fcf568f7bc3c2df83706" title="copy all keys from another header">copyAllKeys()</a> </p>
<p>This returns a vector of integers indicating which categories of keywords apply for the readAllKeys and copyAllKeys functions. The list of categories currently hardcoded is: TYP_CMPRS_KEY (20), TYP_CKSUM_KEY (100), TYP_WCS_KEY (110), TYP_REFSYS_KEY (120), and TYP_USER_KEY (150).</p>
<p>For the list of ALL keyword categories, see the CFITSIO documentation for the fits_get_keyclass function. </p>

</div>
</div>
<a class="anchor" id="af0bbec3fe5f6b41ff4a95feff6600d57"></a><!-- doxytag: member="CCfits::HDU::makeThisCurrent" ref="af0bbec3fe5f6b41ff4a95feff6600d57" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::makeThisCurrent </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>move the fitsfile pointer to this current <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a>. </p>
<p>This function should never need to be called by the user since it is called internally whenever required. </p>

<p>Reimplemented in <a class="el" href="classCCfits_1_1ExtHDU.html#a16730a075858cd50bfa3daad60c0a1c0">CCfits::ExtHDU</a>.</p>

</div>
</div>
<a class="anchor" id="a2dd3930b7e987e0971c494887243a7a2"></a><!-- doxytag: member="CCfits::HDU::readAllKeys" ref="a2dd3930b7e987e0971c494887243a7a2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::readAllKeys </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>read all of the keys in the header </p>
<p>This member function reads keys that are not meta data for columns or image information, [which are considered to be part of the column or image objects]. Also, history and comment keys are read and returned by <a class="el" href="classCCfits_1_1HDU.html#a09da0675ae163e98d2d8cf3e2a9c2571" title="read the history information from the HDU and add it to the FITS object.">getHistory()</a> and getComment(). The exact list of keyword classes this will read is returned by the function <a class="el" href="classCCfits_1_1HDU.html#a69f296780f7b1e2ff83199d4cffa4c86" title="return the enumerated keyword categories used by readAllKeys() and copyAllKeys()">keywordCategories()</a>.</p>
<p>Note that readAllKeys can only construct keys of type string, double, complex&lt;float&gt;, integer, and bool because the <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> header records do not encode exact type information. </p>

</div>
</div>
<a class="anchor" id="a14e36d51401c4a0028f71d1398785616"></a><!-- doxytag: member="CCfits::HDU::readKey" ref="a14e36d51401c4a0028f71d1398785616" args="(const String &amp;keyName, T &amp;val)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::readKey </td>
          <td>(</td>
          <td class="paramtype">const String &amp;&nbsp;</td>
          <td class="paramname"> <em>keyName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T &amp;&nbsp;</td>
          <td class="paramname"> <em>val</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>read a keyword of specified type from the header of a disk <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> file and return its value. </p>
<p>T is one of the types String, double, float, int, std::complex&lt;float&gt;, and bool. If a <a class="el" href="classCCfits_1_1Keyword.html" title="Abstract base class defining the interface for Keyword objects.">Keyword</a> object with the name <em>keyName</em> already exists in this <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> due to a previous read call, then this will re-read from the file and create a new <a class="el" href="classCCfits_1_1Keyword.html" title="Abstract base class defining the interface for Keyword objects.">Keyword</a> object to replace the existing one. </p>

</div>
</div>
<a class="anchor" id="ad366e9cd9cb0b64995c5c457dfe16e60"></a><!-- doxytag: member="CCfits::HDU::readKeys" ref="ad366e9cd9cb0b64995c5c457dfe16e60" args="(std::vector&lt; String &gt; &amp;keyNames, std::vector&lt; T &gt; &amp;vals)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::readKeys </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; String &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>keyNames</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::vector&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>vals</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>read a set of specified keywords of the same data type from the header of a disk <a class="el" href="classCCfits_1_1FITS.html" title="Memory object representation of a disk FITS file.">FITS</a> file and return their values </p>
<p>T is one of the types String, double, float, int, std::complex&lt;float&gt;, and bool. </p>

</div>
</div>
<a class="anchor" id="a6c8e0dc188f74f681f6bfe17819b2eb9"></a><!-- doxytag: member="CCfits::HDU::scale" ref="a6c8e0dc188f74f681f6bfe17819b2eb9" args="(double value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::scale </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>value</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the BSCALE keyword value for images (see warning for images of int type) </p>
<p>For primary HDUs and image extensions, this will add (or update) the BSCALE keyword in the header. The new setting will affect future image array read/writes as described in section 4.7 Data Scaling of the CFITSIO manual. For table extensions this function does nothing.</p>
<p>WARNING: If the image contains <b>integer-type data</b> (as indicated by the <a class="el" href="classCCfits_1_1HDU.html#a81a2d5b001c0ae7d0a298942940189d8" title="return the data type keyword.">bitpix()</a> return value), the new scale and zero value combination must not be such that the scaled data would require a floating-point type (this uses the CFITSIO function fits_get_img_equivtype to make the determination). If this situation occurs, the function will throw a <a class="el" href="classCCfits_1_1FitsException.html" title="FitsException is the base class for all exceptions thrown by this library.">FitsException</a>. </p>

<p>Reimplemented in <a class="el" href="classCCfits_1_1ImageExt.html#ad0531bb4a797027e6ff77517d2e09cc6">CCfits::ImageExt&lt; T &gt;</a>, and <a class="el" href="classCCfits_1_1PHDU.html#a75f86db856e2cc7772a97d9ded3a633c">CCfits::PHDU</a>.</p>

</div>
</div>
<a class="anchor" id="a6bd0d7eb236211267de480c595b5b631"></a><!-- doxytag: member="CCfits::HDU::suppressScaling" ref="a6bd0d7eb236211267de480c595b5b631" args="(bool toggle=true)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::suppressScaling </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>toggle</em> = <code>true</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>turn off image scaling regardless of the BSCALE and BZERO keyword values </p>
<p>For <em>toggle</em> = true, this turns off image scaling for future read/writes by resetting the scale and zero to 1.0 and 0.0 respectively. It does NOT modify the BSCALE and BZERO keywords. If <em>toggle</em> = false, the scale and zero values will be restored to the keyword values. </p>

</div>
</div>
<a class="anchor" id="a56ce9ed0864e07a7ef380b18e3be7a79"></a><!-- doxytag: member="CCfits::HDU::updateChecksum" ref="a56ce9ed0864e07a7ef380b18e3be7a79" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::updateChecksum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>update the CHECKSUM keyword value, assuming DATASUM exists and is correct </p>
<p>Wrapper for the CFITSIO function fits_update_chksum: This recomputes and writes the CHECKSUM value with the assumption that the DATASUM value is correct. If the DATASUM keyword doesn't yet exist or is not up-to-date, use the <a class="el" href="classCCfits_1_1HDU.html#a3ac4ca8b88fc94552f890154247776c6" title="compute and write the DATASUM and CHECKSUM keyword values">HDU::writeChecksum</a> function instead. This will throw a <a class="el" href="classCCfits_1_1FitsError.html" title="FitsError is the exception thrown by non-zero cfitsio status codes.">FitsError</a> exception if called when there is no DATASUM keyword in the header. </p>

</div>
</div>
<a class="anchor" id="adc1a7ba06b6a113010334320e5268dc6"></a><!-- doxytag: member="CCfits::HDU::verifyChecksum" ref="adc1a7ba06b6a113010334320e5268dc6" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::pair&lt; int, int &gt; CCfits::HDU::verifyChecksum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>verify the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> by computing the checksums and comparing them with the CHECKSUM/DATASUM keywords </p>
<p>Wrapper for the CFITSIO function fits_verify_chksum: The data unit is verified correctly if the computed checksum equals the DATASUM keyword value, and the <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a> is verified if the entire checksum equals zero (see the CFITSIO manual for further details).</p>
<p>This returns a std::pair&lt;int,int&gt; where the pair's first data member = DATAOK and second = HDUOK. DATAOK and HDUOK values will be = 1 if verified correctly, 0 if the keyword is missing, and -1 if the computed checksum is not correct. </p>

</div>
</div>
<a class="anchor" id="a3ac4ca8b88fc94552f890154247776c6"></a><!-- doxytag: member="CCfits::HDU::writeChecksum" ref="a3ac4ca8b88fc94552f890154247776c6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::writeChecksum </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>compute and write the DATASUM and CHECKSUM keyword values </p>
<p>Wrapper for the CFITSIO function fits_write_chksum: This performs the datasum and checksum calculations for this <a class="el" href="classCCfits_1_1HDU.html" title="Base class for all HDU [Header-Data Unit] objects.">HDU</a>, as described in the CFITSIO manual. If either the DATASUM or CHECKSUM keywords already exist, their values will be updated. </p>

</div>
</div>
<a class="anchor" id="a05843eda3c863cf9b580a409b3067c55"></a><!-- doxytag: member="CCfits::HDU::writeComment" ref="a05843eda3c863cf9b580a409b3067c55" args="(const String &amp;comment=&quot;Generic Comment&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::writeComment </td>
          <td>(</td>
          <td class="paramtype">const String &amp;&nbsp;</td>
          <td class="paramname"> <em>comment</em> = <code>&quot;Generic&nbsp;Comment&quot;</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>write a comment string. </p>
<p>A default value for the string is given ("Generic Comment String") so users can put a placeholder call to this function in their code. </p>

</div>
</div>
<a class="anchor" id="ae33b25a2d52e0e75e13d277e3327d03f"></a><!-- doxytag: member="CCfits::HDU::writeHistory" ref="ae33b25a2d52e0e75e13d277e3327d03f" args="(const String &amp;history=&quot;Generic History String&quot;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::writeHistory </td>
          <td>(</td>
          <td class="paramtype">const String &amp;&nbsp;</td>
          <td class="paramname"> <em>history</em> = <code>&quot;Generic&nbsp;History&nbsp;String&quot;</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>write a history string. </p>
<p>A default value for the string is given ("Generic History String") so users can put a placeholder call to this function in their code. </p>

</div>
</div>
<a class="anchor" id="a2fb3adf98e8cc736b200520afed61c13"></a><!-- doxytag: member="CCfits::HDU::zero" ref="a2fb3adf98e8cc736b200520afed61c13" args="(double value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CCfits::HDU::zero </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>value</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>set the BZERO keyword value for images (see warning for images of int type) </p>
<p>For primary HDUs and image extensions, this will add (or update) the BZERO keyword in the header. The new setting will affect future image array read/writes as described in section 4.7 Data Scaling of the CFITSIO manual. For table extensions this function does nothing.</p>
<p>WARNING: If the image contains <b>integer-type data</b> (as indicated by the <a class="el" href="classCCfits_1_1HDU.html#a81a2d5b001c0ae7d0a298942940189d8" title="return the data type keyword.">bitpix()</a> return value), the new scale and zero value combination must not be such that the scaled data would require a floating-point type (this uses the CFITSIO function fits_get_img_equivtype to make the determination). If this situation occurs, the function will throw a <a class="el" href="classCCfits_1_1FitsException.html" title="FitsException is the base class for all exceptions thrown by this library.">FitsException</a>. </p>

<p>Reimplemented in <a class="el" href="classCCfits_1_1ImageExt.html#aa6d47bd83e9538694ee7d4f4d70ef33b">CCfits::ImageExt&lt; T &gt;</a>, and <a class="el" href="classCCfits_1_1PHDU.html#abcc25c1d318581d9b650a784b799285d">CCfits::PHDU</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="HDU_8h_source.html">HDU.h</a></li>
<li>HDU.cxx</li>
</ul>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Wed Sep 9 11:59:46 2009 for CCfits by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>