CCfits
2.4
|
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 ASCIITABLE_H 00010 #define ASCIITABLE_H 1 00011 00012 // HDUCreator 00013 #include "HDUCreator.h" 00014 // Table 00015 #include "Table.h" 00016 // needed for CLONE_DEFECT 00017 #ifdef _MSC_VER 00018 #include "MSconfig.h" 00019 #endif 00020 00021 00022 namespace CCfits { 00023 00136 class AsciiTable : public Table //## Inherits: <unnamed>%3804A75CE420 00137 { 00138 00139 public: 00140 virtual AsciiTable * clone (FITSBase* p) const; 00141 virtual void readData (bool readFlag = false, const std::vector<String>& keys = std::vector<String>()); 00142 virtual void addColumn (ValueType type, const String& columnName, long repeatWidth, const String& colUnit = String(""), long decimals = 0, size_t columnNumber = 0); 00143 00144 // Additional Public Declarations 00145 00146 protected: 00147 AsciiTable (FITSBase* p, const String &hduName = String(""), bool readFlag = false, const std::vector<String>& keys = std::vector<String>(), int version = 1); 00148 AsciiTable (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); 00149 // ExtHDU constructor for getting ExtHDUs by number. 00150 // Necessary since EXTNAME is a reserved not required 00151 // keyword. 00152 AsciiTable (FITSBase* p, int number); 00153 ~AsciiTable(); 00154 00155 // Additional Protected Declarations 00156 00157 private: 00158 AsciiTable(const AsciiTable &right); 00159 00160 virtual void readTableHeader (int ncols, std::vector<String>& colName, std::vector<String>& colFmt, std::vector<String>& colUnit); 00161 00162 // Additional Private Declarations 00163 00164 private: //## implementation 00165 // Additional Implementation Declarations 00166 friend class HDUCreator; 00167 }; 00168 00169 // Class CCfits::AsciiTable 00170 00171 } // namespace CCfits 00172 00173 00174 #endif