CCfits  2.5
BinTable.h
1 // Astrophysics Science Division,
2 // NASA/ Goddard Space Flight Center
3 // HEASARC
4 // http://heasarc.gsfc.nasa.gov
5 // e-mail: ccfits@legacy.gsfc.nasa.gov
6 //
7 // Original author: Ben Dorman
8 
9 #ifndef BINTABLE_H
10 #define BINTABLE_H 1
11 
12 // HDUCreator
13 #include "HDUCreator.h"
14 // Table
15 #include "Table.h"
16 
17 // needed for CLONE_DEFECT
18 #ifdef _MSC_VER
19 #include "MSconfig.h"
20 #endif
21 
22 
23 namespace CCfits {
24 
130  class BinTable : public Table //## Inherits: <unnamed>%3804A7E75F10
131  {
132 
133  public:
134  virtual BinTable * clone (FITSBase* p) const;
135  virtual void readData (bool readFlag = false, const std::vector<String>& keys = std::vector<String>());
136  virtual void addColumn (ValueType type, const String& columnName, long repeatWidth, const String& colUnit = String(""), long decimals = 0, size_t columnNumber = 0);
137 
138  // Additional Public Declarations
139 
140  protected:
141  BinTable (FITSBase* p, const String &hduName = String(""), bool readFlag = false, const std::vector<String>& keys = std::vector<String>(), int version = 1);
142  BinTable (FITSBase* p, const String &hduName, int rows, const std::vector<String>& columnName = std::vector<String>(), const std::vector<String>& columnFmt = std::vector<String>(), const std::vector<String>& columnUnit = std::vector<String>(), int version = 1);
143  // ExtHDU constructor for getting ExtHDUs by number.
144  // Necessary since EXTNAME is a reserved not required
145  // keyword.
146  BinTable (FITSBase* p, int number);
147  ~BinTable();
148 
149  // Additional Protected Declarations
150 
151  private:
152  BinTable(const BinTable &right);
153 
154  virtual void readTableHeader (int ncols, std::vector<String>& colName, std::vector<String>& colFmt, std::vector<String>& colUnit);
155  void readVariableColumns (const std::vector<String> &varColumns);
156 
157  // Additional Private Declarations
158 
159  private: //## implementation
160  // Additional Implementation Declarations
161  friend class HDUCreator;
162  };
163 
164  // Class CCfits::BinTable
165 
166 } // namespace CCfits
167 
168 
169 #endif
CCfits::BinTable::~BinTable
~BinTable()
destructor.
Definition: BinTable.cxx:72
CCfits::BinTable::addColumn
virtual void addColumn(ValueType type, const String &columnName, long repeatWidth, const String &colUnit=String(""), long decimals=0, size_t columnNumber=0)
add a new column to an existing table HDU.
Definition: BinTable.cxx:303
CCfits::ValueType
ValueType
CCfits value types and their CFITSIO equivalents (in caps)
Definition: CCfits.h:81
CCfits::Table
Definition: Table.h:272
CCfits::BinTable
Class Representing Binary Table Extensions. Contains columns with scalar or vector row entries.
Definition: BinTable.h:131
CCfits::Table::rows
virtual long rows() const
return the number of rows in the table (NAXIS2).
Definition: Table.h:368
CCfits::BinTable::readData
virtual void readData(bool readFlag=false, const std::vector< String > &keys=std::vector< String >())
read columns and keys specified in the input array.
Definition: BinTable.cxx:128
CCfits
Namespace enclosing all CCfits classes and globals definitions.
Definition: AsciiTable.cxx:26
CCfits::BinTable::clone
virtual BinTable * clone(FITSBase *p) const
virtual copy constructor
Definition: BinTable.cxx:121
CCfits::ExtHDU::version
int version() const
return the extension version number.
Definition: ExtHDU.h:677
CCfits::BinTable::BinTable
BinTable(FITSBase *p, const String &hduName=String(""), bool readFlag=false, const std::vector< String > &keys=std::vector< String >(), int version=1)
reading constructor.
Definition: BinTable.cxx:31