CCfits 2.7

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List

BinTable.h

    00001 //  Astrophysics Science Division,
    00002 //  NASA/ Goddard Space Flight Center
    00003 //  HEASARC
    00004 //  http://heasarc.gsfc.nasa.gov
    00005 //  e-mail: ccfits@legacy.gsfc.nasa.gov
    00006 //
    00007 //  Original author: Ben Dorman
    00008
    00009 #ifndef BINTABLE_H
    00010 #define BINTABLE_H 1
    00011
    00012 // HDUCreator
    00013 #include "HDUCreator.h"
    00014 // Table
    00015 #include "Table.h"
    00016
    00017 // needed for CLONE_DEFECT
    00018 #ifdef _MSC_VER
    00019 #include "MSconfig.h"
    00020 #endif
    00021
    00022
    00023 namespace CCfits {
    00024
    00130   class BinTable : public Table  //## Inherits: <unnamed>%3804A7E75F10
    00131   {
    00132
    00133     public:
    00134
    00135         virtual BinTable * clone (FITS* p) const;
    00136         virtual void readData (bool readFlag = false, const std::vector<String>& keys = std::vector<String>());
    00137         virtual void addColumn (ValueType type, const String& columnName, long repeatWidth, const String& colUnit = String(""), long decimals = 0, size_t columnNumber = 0);
    00138
    00139       // Additional Public Declarations
    00140
    00141     protected:
    00142
    00143         BinTable(const BinTable &right);
    00144         BinTable (FITS* p, const String &hduName = String(""), bool readFlag = false, const std::vector<String>& keys = std::vector<String>(), int version = 1);
    00145         BinTable (FITS* 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);
    00146         // ctor for creating a grouping table
    00147         BinTable (FITS* p, int version = 1, const String & groupName = String(""));
    00148         //  ExtHDU constructor for getting ExtHDUs by number.
    00149         //  Necessary since EXTNAME is a reserved, not required, keyword.
    00150         BinTable (FITS* p, int number);
    00151         ~BinTable();
    00152
    00153       // Additional Protected Declarations
    00154
    00155     private:
    00156
    00157         virtual void readTableHeader (int ncols, std::vector<String>& colName, std::vector<String>& colFmt, std::vector<String>& colUnit);
    00158         void readVariableColumns (const std::vector<String> &varColumns);
    00159
    00160       // Additional Private Declarations
    00161
    00162     private: //## implementation
    00163       // Additional Implementation Declarations
    00164       friend class HDUCreator;
    00165   };
    00166
    00167   // Class CCfits::BinTable
    00168
    00169 } // namespace CCfits
    00170
    00171
    00172 #endif