casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
casa::Scantable2MSReader Class Reference

#include <Scantable2MSReader.h>

Inheritance diagram for casa::Scantable2MSReader:
casa::ReaderInterface casa::NonCopyable< ReaderInterface >

Public Member Functions

 Scantable2MSReader (std::string const &scantable_name)
 
virtual ~Scantable2MSReader ()
 
virtual size_t getNumberOfRows ()
 get number of rows for MAIN table More...
 
virtual casacore::Bool isFloatData () const
 
virtual casacore::String getDataUnit () const
 
virtual casacore::Bool getObservationRow (sdfiller::ObservationRecord &record)
 to get OBSERVATION table More...
 
virtual casacore::Bool getAntennaRow (sdfiller::AntennaRecord &record)
 to get ANTENNA table More...
 
virtual casacore::Bool getProcessorRow (sdfiller::ProcessorRecord &record)
 to get PROCESSOR table More...
 
virtual casacore::Bool getSourceRow (sdfiller::SourceRecord &record)
 to get SOURCE table More...
 
virtual casacore::Bool getFieldRow (sdfiller::FieldRecord &record)
 to get FIELD table More...
 
virtual casacore::Bool getSpectralWindowRow (sdfiller::SpectralWindowRecord &record)
 to get SOURCE table More...
 
virtual casacore::Bool getData (size_t irow, sdfiller::DataRecord &record)
 for DataAccumulator More...
 
- Public Member Functions inherited from casa::ReaderInterface
 ReaderInterface (std::string const &name)
 
virtual ~ReaderInterface ()
 
std::string const & getName () const
 
virtual casacore::MDirection::Types getDirectionFrame () const
 
void initialize ()
 
void finalize ()
 

Protected Member Functions

void initializeSpecific ()
 
void finalizeSpecific ()
 

Private Member Functions

casacore::Bool getAntennaRowImpl (sdfiller::AntennaRecord &record)
 
casacore::Bool getFieldRowImpl (sdfiller::FieldRecord &record)
 
casacore::Bool getObservationRowImpl (sdfiller::ObservationRecord &record)
 
casacore::Bool getProcessorRowImpl (sdfiller::ProcessorRecord &record)
 
casacore::Bool getSourceRowImpl (sdfiller::SourceRecord &record)
 
casacore::Bool getSpectralWindowRowImpl (sdfiller::SpectralWindowRecord &record)
 
template<class _Record >
casacore::Bool noMoreRowImpl (_Record &)
 
template<class _Iterator , class _Record , class _Func >
casacore::Bool getRowImplTemplate (std::unique_ptr< _Iterator > &iter, _Record &record, _Func &func, typename _Iterator::Product *product=nullptr)
 

Private Attributes

std::unique_ptr< casacore::Tablemain_table_
 
casacore::Table tcal_table_
 
casacore::Table weather_table_
 
casacore::ScalarColumn
< casacore::uInt
scan_column_
 
casacore::ScalarColumn
< casacore::uInt
cycle_column_
 
casacore::ScalarColumn
< casacore::uInt
ifno_column_
 
casacore::ScalarColumn
< casacore::uInt
polno_column_
 
casacore::ScalarColumn
< casacore::uInt
beam_column_
 
casacore::ScalarColumn
< casacore::uInt
flagrow_column_
 
casacore::ScalarColumn
< casacore::Double
time_column_
 
casacore::ScalarColumn
< casacore::Double
interval_column_
 
casacore::ScalarColumn
< casacore::Int
srctype_column_
 
casacore::ArrayColumn
< casacore::Float
data_column_
 
casacore::ArrayColumn
< casacore::uChar
flag_column_
 
casacore::ArrayColumn
< casacore::Double
direction_column_
 
casacore::ArrayColumn
< casacore::Double
scanrate_column_
 
casacore::ScalarColumn
< casacore::String
fieldname_column_
 
casacore::ArrayColumn
< casacore::Float
tsys_column_
 
casacore::ScalarColumn
< casacore::uInt
tcal_id_column_
 
casacore::ScalarColumn
< casacore::uInt
weather_id_column_
 
casacore::ArrayColumn
< casacore::Float
tcal_column_
 
casacore::ScalarColumn
< casacore::Float
temperature_column_
 
casacore::ScalarColumn
< casacore::Float
pressure_column_
 
casacore::ScalarColumn
< casacore::Float
humidity_column_
 
casacore::ScalarColumn
< casacore::Float
wind_speed_column_
 
casacore::ScalarColumn
< casacore::Float
wind_direction_column_
 
casacore::Vector< casacore::uIntsorted_rows_
 
ScantableFieldIterator::Product field_map_
 
ScantableFrequenciesIterator::Product num_chan_map_
 
std::map< casacore::uInt,
casacore::uInt
tcal_id_map_
 
std::map< casacore::uInt,
casacore::uInt
weather_id_map_
 
casacore::String pol_type_
 
casacore::Bool(Scantable2MSReader::* get_antenna_row_ )(sdfiller::AntennaRecord &)
 
casacore::Bool(Scantable2MSReader::* get_field_row_ )(sdfiller::FieldRecord &)
 
casacore::Bool(Scantable2MSReader::* get_observation_row_ )(sdfiller::ObservationRecord &)
 
casacore::Bool(Scantable2MSReader::* get_processor_row_ )(sdfiller::ProcessorRecord &)
 
casacore::Bool(Scantable2MSReader::* get_source_row_ )(sdfiller::SourceRecord &)
 
casacore::Bool(Scantable2MSReader::* get_spw_row_ )(sdfiller::SpectralWindowRecord &)
 
std::unique_ptr
< ScantableFieldIterator
field_iter_
 
std::unique_ptr
< ScantableFrequenciesIterator
freq_iter_
 
std::unique_ptr
< ScantableSourceIterator
source_iter_
 

Additional Inherited Members

- Public Types inherited from casa::ReaderInterface
typedef NullOptionalTables
< ReaderInterface
OptionalTables
 
- Protected Attributes inherited from casa::ReaderInterface
std::string const name_
 

Detailed Description

Definition at line 24 of file Scantable2MSReader.h.

Constructor & Destructor Documentation

casa::Scantable2MSReader::Scantable2MSReader ( std::string const &  scantable_name)
virtual casa::Scantable2MSReader::~Scantable2MSReader ( )
virtual

Member Function Documentation

void casa::Scantable2MSReader::finalizeSpecific ( )
protectedvirtual

Implements casa::ReaderInterface.

virtual casacore::Bool casa::Scantable2MSReader::getAntennaRow ( sdfiller::AntennaRecord record)
inlinevirtual

to get ANTENNA table

Implements casa::ReaderInterface.

Definition at line 69 of file Scantable2MSReader.h.

References get_antenna_row_, POST_END, and POST_START.

casacore::Bool casa::Scantable2MSReader::getAntennaRowImpl ( sdfiller::AntennaRecord record)
private
virtual casacore::Bool casa::Scantable2MSReader::getData ( size_t  irow,
sdfiller::DataRecord record 
)
virtual

for DataAccumulator

Implements casa::ReaderInterface.

virtual casacore::String casa::Scantable2MSReader::getDataUnit ( ) const
inlinevirtual

Reimplemented from casa::ReaderInterface.

Definition at line 54 of file Scantable2MSReader.h.

References main_table_.

virtual casacore::Bool casa::Scantable2MSReader::getFieldRow ( sdfiller::FieldRecord record)
inlinevirtual

to get FIELD table

Implements casa::ReaderInterface.

Definition at line 99 of file Scantable2MSReader.h.

References get_field_row_, POST_END, and POST_START.

casacore::Bool casa::Scantable2MSReader::getFieldRowImpl ( sdfiller::FieldRecord record)
private
virtual size_t casa::Scantable2MSReader::getNumberOfRows ( )
inlinevirtual

get number of rows for MAIN table

Implements casa::ReaderInterface.

Definition at line 30 of file Scantable2MSReader.h.

References main_table_.

virtual casacore::Bool casa::Scantable2MSReader::getObservationRow ( sdfiller::ObservationRecord record)
inlinevirtual

to get OBSERVATION table

Implements casa::ReaderInterface.

Definition at line 59 of file Scantable2MSReader.h.

References get_observation_row_, POST_END, and POST_START.

casacore::Bool casa::Scantable2MSReader::getObservationRowImpl ( sdfiller::ObservationRecord record)
private
virtual casacore::Bool casa::Scantable2MSReader::getProcessorRow ( sdfiller::ProcessorRecord record)
inlinevirtual

to get PROCESSOR table

Implements casa::ReaderInterface.

Definition at line 79 of file Scantable2MSReader.h.

References get_processor_row_, POST_END, and POST_START.

casacore::Bool casa::Scantable2MSReader::getProcessorRowImpl ( sdfiller::ProcessorRecord record)
private
template<class _Iterator , class _Record , class _Func >
casacore::Bool casa::Scantable2MSReader::getRowImplTemplate ( std::unique_ptr< _Iterator > &  iter,
_Record &  record,
_Func &  func,
typename _Iterator::Product *  product = nullptr 
)
inlineprivate

seems to be passed through all the table, deallocate iterator

and then redirect function pointer to noMoreRowImpl

Definition at line 176 of file Scantable2MSReader.h.

References main_table_, POST_END, POST_START, and product().

virtual casacore::Bool casa::Scantable2MSReader::getSourceRow ( sdfiller::SourceRecord record)
inlinevirtual

to get SOURCE table

Implements casa::ReaderInterface.

Definition at line 89 of file Scantable2MSReader.h.

References get_source_row_, POST_END, and POST_START.

casacore::Bool casa::Scantable2MSReader::getSourceRowImpl ( sdfiller::SourceRecord record)
private
virtual casacore::Bool casa::Scantable2MSReader::getSpectralWindowRow ( sdfiller::SpectralWindowRecord record)
inlinevirtual

to get SOURCE table

Implements casa::ReaderInterface.

Definition at line 109 of file Scantable2MSReader.h.

References get_spw_row_, POST_END, and POST_START.

casacore::Bool casa::Scantable2MSReader::getSpectralWindowRowImpl ( sdfiller::SpectralWindowRecord record)
private
void casa::Scantable2MSReader::initializeSpecific ( )
protectedvirtual

Implements casa::ReaderInterface.

virtual casacore::Bool casa::Scantable2MSReader::isFloatData ( ) const
inlinevirtual

std::cout << "pol_type=" << pol_type << " max_pol=" << max_pol << std::endl;

std::cout << "is_float = " << is_float << std::endl;

Reimplemented from casa::ReaderInterface.

Definition at line 37 of file Scantable2MSReader.h.

References casacore::ScalarColumn< T >::getColumn(), main_table_, and max.

template<class _Record >
casacore::Bool casa::Scantable2MSReader::noMoreRowImpl ( _Record &  )
inlineprivate

Definition at line 170 of file Scantable2MSReader.h.

References POST_END, and POST_START.

Member Data Documentation

casacore::ScalarColumn<casacore::uInt> casa::Scantable2MSReader::beam_column_
private

Definition at line 131 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::uInt> casa::Scantable2MSReader::cycle_column_
private

Definition at line 130 of file Scantable2MSReader.h.

casacore::ArrayColumn<casacore::Float> casa::Scantable2MSReader::data_column_
private

Definition at line 134 of file Scantable2MSReader.h.

casacore::ArrayColumn<casacore::Double> casa::Scantable2MSReader::direction_column_
private

Definition at line 136 of file Scantable2MSReader.h.

std::unique_ptr<ScantableFieldIterator> casa::Scantable2MSReader::field_iter_
private

Definition at line 158 of file Scantable2MSReader.h.

ScantableFieldIterator::Product casa::Scantable2MSReader::field_map_
private

Definition at line 144 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::String> casa::Scantable2MSReader::fieldname_column_
private

Definition at line 137 of file Scantable2MSReader.h.

casacore::ArrayColumn<casacore::uChar> casa::Scantable2MSReader::flag_column_
private

Definition at line 135 of file Scantable2MSReader.h.

casacore::ScalarColumn< casacore::uInt> casa::Scantable2MSReader::flagrow_column_
private

Definition at line 132 of file Scantable2MSReader.h.

std::unique_ptr<ScantableFrequenciesIterator> casa::Scantable2MSReader::freq_iter_
private

Definition at line 159 of file Scantable2MSReader.h.

casacore::Bool(Scantable2MSReader::* casa::Scantable2MSReader::get_antenna_row_)(sdfiller::AntennaRecord &)
private

Definition at line 150 of file Scantable2MSReader.h.

Referenced by getAntennaRow().

casacore::Bool(Scantable2MSReader::* casa::Scantable2MSReader::get_field_row_)(sdfiller::FieldRecord &)
private

Definition at line 151 of file Scantable2MSReader.h.

Referenced by getFieldRow().

casacore::Bool(Scantable2MSReader::* casa::Scantable2MSReader::get_observation_row_)(sdfiller::ObservationRecord &)
private

Definition at line 152 of file Scantable2MSReader.h.

Referenced by getObservationRow().

casacore::Bool(Scantable2MSReader::* casa::Scantable2MSReader::get_processor_row_)(sdfiller::ProcessorRecord &)
private

Definition at line 154 of file Scantable2MSReader.h.

Referenced by getProcessorRow().

casacore::Bool(Scantable2MSReader::* casa::Scantable2MSReader::get_source_row_)(sdfiller::SourceRecord &)
private

Definition at line 155 of file Scantable2MSReader.h.

Referenced by getSourceRow().

casacore::Bool(Scantable2MSReader::* casa::Scantable2MSReader::get_spw_row_)(sdfiller::SpectralWindowRecord &)
private

Definition at line 156 of file Scantable2MSReader.h.

Referenced by getSpectralWindowRow().

casacore::ScalarColumn<casacore::Float> casa::Scantable2MSReader::humidity_column_
private

Definition at line 141 of file Scantable2MSReader.h.

casacore::ScalarColumn< casacore::uInt> casa::Scantable2MSReader::ifno_column_
private

Definition at line 131 of file Scantable2MSReader.h.

casacore::ScalarColumn< casacore::Double> casa::Scantable2MSReader::interval_column_
private

Definition at line 133 of file Scantable2MSReader.h.

std::unique_ptr<casacore::Table> casa::Scantable2MSReader::main_table_
private
ScantableFrequenciesIterator::Product casa::Scantable2MSReader::num_chan_map_
private

Definition at line 145 of file Scantable2MSReader.h.

casacore::String casa::Scantable2MSReader::pol_type_
private

Definition at line 148 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::uInt> casa::Scantable2MSReader::polno_column_
private

Definition at line 131 of file Scantable2MSReader.h.

casacore::ScalarColumn< casacore::Float> casa::Scantable2MSReader::pressure_column_
private

Definition at line 141 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::uInt> casa::Scantable2MSReader::scan_column_
private

Definition at line 130 of file Scantable2MSReader.h.

casacore::ArrayColumn<casacore::Double> casa::Scantable2MSReader::scanrate_column_
private

Definition at line 137 of file Scantable2MSReader.h.

casacore::Vector<casacore::uInt> casa::Scantable2MSReader::sorted_rows_
private

Definition at line 143 of file Scantable2MSReader.h.

std::unique_ptr<ScantableSourceIterator> casa::Scantable2MSReader::source_iter_
private

Definition at line 160 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::Int> casa::Scantable2MSReader::srctype_column_
private

Definition at line 133 of file Scantable2MSReader.h.

casacore::ArrayColumn<casacore::Float> casa::Scantable2MSReader::tcal_column_
private

Definition at line 140 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::uInt> casa::Scantable2MSReader::tcal_id_column_
private

Definition at line 138 of file Scantable2MSReader.h.

std::map<casacore::uInt, casacore::uInt> casa::Scantable2MSReader::tcal_id_map_
private

Definition at line 146 of file Scantable2MSReader.h.

casacore::Table casa::Scantable2MSReader::tcal_table_
private

Definition at line 127 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::Float> casa::Scantable2MSReader::temperature_column_
private

Definition at line 140 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::Double> casa::Scantable2MSReader::time_column_
private

Definition at line 132 of file Scantable2MSReader.h.

casacore::ArrayColumn<casacore::Float> casa::Scantable2MSReader::tsys_column_
private

Definition at line 138 of file Scantable2MSReader.h.

casacore::ScalarColumn< casacore::uInt> casa::Scantable2MSReader::weather_id_column_
private

Definition at line 139 of file Scantable2MSReader.h.

std::map<casacore::uInt, casacore::uInt> casa::Scantable2MSReader::weather_id_map_
private

Definition at line 147 of file Scantable2MSReader.h.

casacore::Table casa::Scantable2MSReader::weather_table_
private

Definition at line 128 of file Scantable2MSReader.h.

casacore::ScalarColumn<casacore::Float> casa::Scantable2MSReader::wind_direction_column_
private

Definition at line 142 of file Scantable2MSReader.h.

casacore::ScalarColumn< casacore::Float> casa::Scantable2MSReader::wind_speed_column_
private

Definition at line 142 of file Scantable2MSReader.h.


The documentation for this class was generated from the following file: