// // C++ Interface: STMolecules // // Description: // // // Author: Malte Marquarding , (C) 2006 // // Copyright: See COPYING file that comes with this distribution // // #ifndef ASAPSTMOLECULES_H #define ASAPSTMOLECULES_H #include #include #include #include #include #include #include "STSubTable.h" namespace asap { /** The Molecules subtable of the Scantable @author Malte Marquarding */ class STMolecules : public STSubTable { public: STMolecules() {;} explicit STMolecules(casa::Table tab); explicit STMolecules( const Scantable& parent); virtual ~STMolecules(); STMolecules& operator=(const STMolecules& other); /*** casa::uInt addEntry( casa::Double restfreq, const casa::String& name="", const casa::String& formattedname=""); ***/ casa::uInt addEntry( casa::Vector restfreq, const casa::Vector& name=casa::Vector(0), const casa::Vector& formattedname=casa::Vector(0)); /*** void getEntry( casa::Double& restfreq, casa::String& name, casa::String& formattedname, casa::uInt id) const; ***/ void getEntry( casa::Vector& restfreq, casa::Vector& name, casa::Vector& formattedname, casa::uInt id) const; std::vector getRestFrequencies() const; std::vector getRestFrequency( casa::uInt id ) const; const casa::String& name() const { return name_; } int nrow() const; private: void setup(); static const casa::String name_; //casa::Table table_; //casa::ScalarColumn freqidCol_; //casa::ScalarColumn restfreqCol_; casa::ArrayColumn restfreqCol_; //casa::ScalarColumn nameCol_; casa::ArrayColumn nameCol_; //casa::ScalarColumn formattednameCol_; // e.g. latex casa::ArrayColumn formattednameCol_; // e.g. latex }; } #endif