casacore
Public Member Functions | Private Attributes | List of all members
casacore::MSColumns Class Reference

A class to provide easy read-write access to MeasurementSet columns. More...

#include <MSColumns.h>

Public Member Functions

 MSColumns (MeasurementSet &ms)
 Create a columns object that accesses the data in the specified MS. More...
 
 ~MSColumns ()
 The destructor does nothing special. More...
 
MSAntennaColumnsantenna ()
 Read-write access to required subtables. More...
 
MSDataDescColumnsdataDescription ()
 
MSFeedColumnsfeed ()
 
MSFieldColumnsfield ()
 
MSFlagCmdColumnsflagCmd ()
 
MSHistoryColumnshistory ()
 
MSObservationColumnsobservation ()
 
MSPointingColumnspointing ()
 
MSPolarizationColumnspolarization ()
 
MSProcessorColumnsprocessor ()
 
MSSpWindowColumnsspectralWindow ()
 
MSStateColumnsstate ()
 
MSDopplerColumnsdoppler ()
 Read-write access to optional subtables. More...
 
MSFreqOffsetColumnsfreqOffset ()
 
MSSourceColumnssource ()
 
MSSysCalColumnssysCal ()
 
MSWeatherColumnsweather ()
 
const ROMSAntennaColumnsantenna () const
 Read-only access to required subtables. More...
 
const ROMSDataDescColumnsdataDescription () const
 
const ROMSFeedColumnsfeed () const
 
const ROMSFieldColumnsfield () const
 
const ROMSFlagCmdColumnsflagCmd () const
 
const ROMSHistoryColumnshistory () const
 
const ROMSObservationColumnsobservation () const
 
const ROMSPointingColumnspointing () const
 
const ROMSPolarizationColumnspolarization () const
 
const ROMSProcessorColumnsprocessor () const
 
const ROMSSourceColumnssource () const
 
const ROMSSpWindowColumnsspectralWindow () const
 
const ROMSStateColumnsstate () const
 
const ROMSDopplerColumnsdoppler () const
 Read-only access to optional subtables. More...
 
const ROMSFreqOffsetColumnsfreqOffset () const
 
const ROMSSysCalColumnssysCal () const
 
const ROMSWeatherColumnsweather () const
 
void setEpochRef (MEpoch::Types ref, Bool tableMustBeEmpty=True)
 set the EPOCH reference type in all EPOCH columns in the MS. More...
 
void setDirectionRef (MDirection::Types ref)
 set the DIRECTION reference type for FIELD, POINTING and SOURCE tables (except for antenna frame directions). More...
 
- Public Member Functions inherited from casacore::MSMainColumns
 MSMainColumns (MeasurementSet &ms)
 Create a columns object that accesses the data in the specified Table. More...
 
 ~MSMainColumns ()
 The desctructor does nothing special. More...
 
ScalarColumn< Int > & antenna1 ()
 Read-write access to required columns. More...
 
ScalarColumn< Int > & antenna2 ()
 
ScalarColumn< Int > & arrayId ()
 
ScalarColumn< Int > & dataDescId ()
 
ScalarColumn< Double > & exposure ()
 
ScalarQuantColumn< Double > & exposureQuant ()
 
ScalarColumn< Int > & feed1 ()
 
ScalarColumn< Int > & feed2 ()
 
ScalarColumn< Int > & fieldId ()
 
ArrayColumn< Bool > & flag ()
 
ArrayColumn< Bool > & flagCategory ()
 
ScalarColumn< Bool > & flagRow ()
 
ScalarColumn< Double > & interval ()
 
ScalarQuantColumn< Double > & intervalQuant ()
 
ScalarColumn< Int > & observationId ()
 
ScalarColumn< Int > & processorId ()
 
ScalarColumn< Int > & scanNumber ()
 
ArrayColumn< Float > & sigma ()
 
ScalarColumn< Int > & stateId ()
 
ScalarColumn< Double > & time ()
 
ScalarQuantColumn< Double > & timeQuant ()
 
ScalarMeasColumn< MEpoch > & timeMeas ()
 
ScalarColumn< Double > & timeCentroid ()
 
ScalarQuantColumn< Double > & timeCentroidQuant ()
 
ScalarMeasColumn< MEpoch > & timeCentroidMeas ()
 
ArrayColumn< Double > & uvw ()
 
ArrayQuantColumn< Double > & uvwQuant ()
 
ScalarMeasColumn< Muvw > & uvwMeas ()
 
ArrayColumn< Float > & weight ()
 
ScalarColumn< Int > & antenna3 ()
 Read-write access to optional columns. More...
 
ScalarColumn< Bool > & baselineRef ()
 
ArrayColumn< Complex > & correctedData ()
 
ArrayColumn< Complex > & data ()
 
ScalarColumn< Int > & feed3 ()
 
ArrayColumn< Float > & floatData ()
 
ArrayColumn< Float > & imagingWeight ()
 
ArrayColumn< Complex > & lagData ()
 
ArrayColumn< Complex > & modelData ()
 
ScalarColumn< Int > & phaseId ()
 
ScalarColumn< Int > & pulsarBin ()
 
ScalarColumn< Int > & pulsarGateId ()
 
ArrayColumn< Float > & sigmaSpectrum ()
 
ScalarColumn< Double > & timeExtraPrec ()
 
ScalarQuantColumn< Double > & timeExtraPrecQuant ()
 
ArrayColumn< Double > & uvw2 ()
 
ScalarMeasColumn< Muvw > & uvw2Meas ()
 
ArrayQuantColumn< Double > & uvw2Quant ()
 
ArrayColumn< Complex > & videoPoint ()
 
ArrayColumn< Float > & weightSpectrum ()
 
ArrayColumn< Float > & weightSpectrumCorrected ()
 
const ROScalarColumn< Int > & antenna1 () const
 Read-only access to required columns. More...
 
const ROScalarColumn< Int > & antenna2 () const
 
const ROScalarColumn< Int > & arrayId () const
 
const ROScalarColumn< Int > & dataDescId () const
 
const ROScalarColumn< Double > & exposure () const
 
const ROScalarQuantColumn< Double > & exposureQuant () const
 
const ROScalarColumn< Int > & feed1 () const
 
const ROScalarColumn< Int > & feed2 () const
 
const ROScalarColumn< Int > & fieldId () const
 
const ROArrayColumn< Bool > & flag () const
 
const ROArrayColumn< Bool > & flagCategory () const
 
const ROScalarColumn< Bool > & flagRow () const
 
const ROScalarColumn< Double > & interval () const
 
const ROScalarQuantColumn< Double > & intervalQuant () const
 
const ROScalarColumn< Int > & observationId () const
 
const ROScalarColumn< Int > & processorId () const
 
const ROScalarColumn< Int > & scanNumber () const
 
const ROArrayColumn< Float > & sigma () const
 
const ROScalarColumn< Int > & stateId () const
 
const ROScalarColumn< Double > & time () const
 
const ROScalarQuantColumn< Double > & timeQuant () const
 
const ROScalarMeasColumn< MEpoch > & timeMeas () const
 
const ROScalarColumn< Double > & timeCentroid () const
 
const ROScalarQuantColumn< Double > & timeCentroidQuant () const
 
const ROScalarMeasColumn< MEpoch > & timeCentroidMeas () const
 
const ROArrayColumn< Double > & uvw () const
 
const ROArrayQuantColumn< Double > & uvwQuant () const
 
const ROScalarMeasColumn< Muvw > & uvwMeas () const
 
const ROArrayColumn< Float > & weight () const
 
const ROScalarColumn< Int > & antenna3 () const
 Read-only access to optional columns. More...
 
const ROScalarColumn< Bool > & baselineRef () const
 
const ROArrayColumn< Complex > & correctedData () const
 
const ROArrayColumn< Complex > & data () const
 
const ROScalarColumn< Int > & feed3 () const
 
const ROArrayColumn< Float > & floatData () const
 
const ROArrayColumn< Float > & imagingWeight () const
 
const ROArrayColumn< Complex > & lagData () const
 
const ROArrayColumn< Complex > & modelData () const
 
const ROScalarColumn< Int > & phaseId () const
 
const ROScalarColumn< Int > & pulsarBin () const
 
const ROScalarColumn< Int > & pulsarGateId () const
 
const ROArrayColumn< Float > & sigmaSpectrum () const
 
const ROScalarColumn< Double > & timeExtraPrec () const
 
const ROScalarQuantColumn< Double > & timeExtraPrecQuant () const
 
const ROArrayColumn< Double > & uvw2 () const
 
const ROScalarMeasColumn< Muvw > & uvw2Meas () const
 
const ROArrayQuantColumn< Double > & uvw2Quant () const
 
const ROArrayColumn< Complex > & videoPoint () const
 
const ROArrayColumn< Float > & weightSpectrum () const
 
const ROArrayColumn< Float > & weightSpectrumCorrected () const
 
void setEpochRef (MEpoch::Types ref, Bool tableMustBeEmpty=True)
 set the epoch type for the TIME and TIME_CENTROID columns. More...
 
void setUVWRef (Muvw::Types ref)
 set the UVW reference type for the UVW and UVW2 (if defined) columns. More...
 
void setFlagCategories (const Vector< String > &categories)
 Set the flag category labels to the supplied values (in the CATEGORY keyword of the FLAG_CATEGORY column). More...
 
- Public Member Functions inherited from casacore::ROMSMainColumns
 ROMSMainColumns (const MeasurementSet &ms)
 Create a columns object that accesses the data in the specified Table. More...
 
 ~ROMSMainColumns ()
 The desctructor does nothing special. More...
 
const ROScalarColumn< Int > & antenna1 () const
 Access to required columns. More...
 
const ROScalarColumn< Int > & antenna2 () const
 
const ROScalarColumn< Int > & arrayId () const
 
const ROScalarColumn< Int > & dataDescId () const
 
const ROScalarColumn< Double > & exposure () const
 
const ROScalarQuantColumn< Double > & exposureQuant () const
 
const ROScalarColumn< Int > & feed1 () const
 
const ROScalarColumn< Int > & feed2 () const
 
const ROScalarColumn< Int > & fieldId () const
 
const ROArrayColumn< Bool > & flag () const
 
const ROArrayColumn< Bool > & flagCategory () const
 
const ROScalarColumn< Bool > & flagRow () const
 
const ROScalarColumn< Double > & interval () const
 
const ROScalarQuantColumn< Double > & intervalQuant () const
 
const ROScalarColumn< Int > & observationId () const
 
const ROScalarColumn< Int > & processorId () const
 
const ROScalarColumn< Int > & scanNumber () const
 
const ROArrayColumn< Float > & sigma () const
 
const ROScalarColumn< Int > & stateId () const
 
const ROScalarColumn< Double > & time () const
 
const ROScalarQuantColumn< Double > & timeQuant () const
 
const ROScalarMeasColumn< MEpoch > & timeMeas () const
 
const ROScalarColumn< Double > & timeCentroid () const
 
const ROScalarQuantColumn< Double > & timeCentroidQuant () const
 
const ROScalarMeasColumn< MEpoch > & timeCentroidMeas () const
 
const ROArrayColumn< Double > & uvw () const
 
const ROArrayQuantColumn< Double > & uvwQuant () const
 
const ROScalarMeasColumn< Muvw > & uvwMeas () const
 
const ROArrayColumn< Float > & weight () const
 
const ROScalarColumn< Int > & antenna3 () const
 Access to optional columns. More...
 
const ROScalarColumn< Bool > & baselineRef () const
 
const ROArrayColumn< Complex > & correctedData () const
 
const ROArrayColumn< Complex > & data () const
 
const ROScalarColumn< Int > & feed3 () const
 
const ROArrayColumn< Float > & floatData () const
 
const ROArrayColumn< Float > & imagingWeight () const
 
const ROArrayColumn< Complex > & lagData () const
 
const ROArrayColumn< Complex > & modelData () const
 
const ROScalarColumn< Int > & phaseId () const
 
const ROScalarColumn< Int > & pulsarBin () const
 
const ROScalarColumn< Int > & pulsarGateId () const
 
const ROArrayColumn< Float > & sigmaSpectrum () const
 
const ROScalarColumn< Double > & timeExtraPrec () const
 
const ROScalarQuantColumn< Double > & timeExtraPrecQuant () const
 
const ROArrayColumn< Double > & uvw2 () const
 
const ROScalarMeasColumn< Muvw > & uvw2Meas () const
 
const ROArrayQuantColumn< Double > & uvw2Quant () const
 
const ROArrayColumn< Complex > & videoPoint () const
 
const ROArrayColumn< Float > & weightSpectrum () const
 
const ROArrayColumn< Float > & weightSpectrumCorrected () const
 
uInt nrow () const
 Convenience function that returns the number of rows in any of the columns. More...
 
Vector< StringflagCategories () const
 Returns the category labels for the FLAG_CATEGORY column. More...
 

Private Attributes

MSAntennaColumns antenna_p
 Access to subtables. More...
 
MSDataDescColumns dataDesc_p
 
MSDopplerColumns doppler_p
 
MSFeedColumns feed_p
 
MSFieldColumns field_p
 
MSFlagCmdColumns flagCmd_p
 
MSFreqOffsetColumns freqOffset_p
 
MSHistoryColumns history_p
 
MSObservationColumns observation_p
 
MSPointingColumns pointing_p
 
MSPolarizationColumns polarization_p
 
MSProcessorColumns processor_p
 
MSSourceColumns source_p
 
MSSpWindowColumns spectralWindow_p
 
MSStateColumns state_p
 
MSSysCalColumns sysCal_p
 
MSWeatherColumns weather_p
 

Additional Inherited Members

- Protected Member Functions inherited from casacore::MSMainColumns
 MSMainColumns ()
 
void attach (MeasurementSet &ms)
 
- Protected Member Functions inherited from casacore::ROMSMainColumns
 ROMSMainColumns ()
 
void attach (const MeasurementSet &ms)
 

Detailed Description

A class to provide easy read-write access to MeasurementSet columns.

Intended use:

Public interface

Review Status

Reviewed By:
Bob Garwood
Date Reviewed:
1997/02/01

Prerequisite

Etymology

MSColumns stands for MeasurementSet Table columns.

Synopsis

This class provides access to all the subtables and direct access to all the columns in the MeasurementSet. It does the declaration of all the Scalar and ArrayColumns with the correct types, so the application programmer doesn't have to worry about getting those right. There is an access function for every predefined column. Access to non-predefined columns will still have to be done with explicit declarations.

Example

// use as follows
MeasurementSet ms("myMS",Table::Update);
MSColumns msc(ms);
// show data from row 5
cout << msc.data()(5);
// change name of antenna on row 3 in antenna table
msc.antenna().name().put(3,"NewAnt-3");

Motivation

Having to type long lists of Scalar and Array column declarations gets very tedious. This class attempts to relieve some of that tedium, while at the same time concentrating all the declarations in one place, making Type errors in the column declaration (only caught at run-time) less probable. Type errors in the use of the columns is caught at compile time.

To Do

Definition at line 216 of file MSColumns.h.

Constructor & Destructor Documentation

casacore::MSColumns::MSColumns ( MeasurementSet ms)

Create a columns object that accesses the data in the specified MS.

casacore::MSColumns::~MSColumns ( )

The destructor does nothing special.

Member Function Documentation

MSAntennaColumns& casacore::MSColumns::antenna ( )
inline

Read-write access to required subtables.

Definition at line 227 of file MSColumns.h.

References casacore::ROMSColumns::antenna_p.

const ROMSAntennaColumns& casacore::MSColumns::antenna ( ) const
inline

Read-only access to required subtables.

Definition at line 252 of file MSColumns.h.

References casacore::ROMSColumns::antenna_p.

MSDataDescColumns& casacore::MSColumns::dataDescription ( )
inline

Definition at line 228 of file MSColumns.h.

References casacore::ROMSColumns::dataDesc_p.

const ROMSDataDescColumns& casacore::MSColumns::dataDescription ( ) const
inline

Definition at line 253 of file MSColumns.h.

References casacore::ROMSColumns::dataDesc_p.

MSDopplerColumns& casacore::MSColumns::doppler ( )
inline

Read-write access to optional subtables.

Definition at line 243 of file MSColumns.h.

References casacore::ROMSColumns::doppler_p.

const ROMSDopplerColumns& casacore::MSColumns::doppler ( ) const
inline

Read-only access to optional subtables.

Definition at line 271 of file MSColumns.h.

References casacore::ROMSColumns::doppler_p.

MSFeedColumns& casacore::MSColumns::feed ( )
inline

Definition at line 229 of file MSColumns.h.

References casacore::ROMSColumns::feed_p.

const ROMSFeedColumns& casacore::MSColumns::feed ( ) const
inline

Definition at line 254 of file MSColumns.h.

References casacore::ROMSColumns::feed_p.

MSFieldColumns& casacore::MSColumns::field ( )
inline

Definition at line 230 of file MSColumns.h.

References casacore::ROMSColumns::field_p.

const ROMSFieldColumns& casacore::MSColumns::field ( ) const
inline

Definition at line 255 of file MSColumns.h.

References casacore::ROMSColumns::field_p.

MSFlagCmdColumns& casacore::MSColumns::flagCmd ( )
inline

Definition at line 231 of file MSColumns.h.

References casacore::ROMSColumns::flagCmd_p.

const ROMSFlagCmdColumns& casacore::MSColumns::flagCmd ( ) const
inline

Definition at line 256 of file MSColumns.h.

References casacore::ROMSColumns::flagCmd_p.

MSFreqOffsetColumns& casacore::MSColumns::freqOffset ( )
inline

Definition at line 244 of file MSColumns.h.

References casacore::ROMSColumns::freqOffset_p.

const ROMSFreqOffsetColumns& casacore::MSColumns::freqOffset ( ) const
inline

Definition at line 272 of file MSColumns.h.

References casacore::ROMSColumns::freqOffset_p.

MSHistoryColumns& casacore::MSColumns::history ( )
inline

Definition at line 232 of file MSColumns.h.

References casacore::ROMSColumns::history_p.

const ROMSHistoryColumns& casacore::MSColumns::history ( ) const
inline

Definition at line 257 of file MSColumns.h.

References casacore::ROMSColumns::history_p.

MSObservationColumns& casacore::MSColumns::observation ( )
inline

Definition at line 233 of file MSColumns.h.

References casacore::ROMSColumns::observation_p.

const ROMSObservationColumns& casacore::MSColumns::observation ( ) const
inline

Definition at line 258 of file MSColumns.h.

References casacore::ROMSColumns::observation_p.

MSPointingColumns& casacore::MSColumns::pointing ( )
inline

Definition at line 234 of file MSColumns.h.

References casacore::ROMSColumns::pointing_p.

const ROMSPointingColumns& casacore::MSColumns::pointing ( ) const
inline

Definition at line 259 of file MSColumns.h.

References casacore::ROMSColumns::pointing_p.

MSPolarizationColumns& casacore::MSColumns::polarization ( )
inline

Definition at line 235 of file MSColumns.h.

References casacore::ROMSColumns::polarization_p.

const ROMSPolarizationColumns& casacore::MSColumns::polarization ( ) const
inline

Definition at line 260 of file MSColumns.h.

References casacore::ROMSColumns::polarization_p.

MSProcessorColumns& casacore::MSColumns::processor ( )
inline

Definition at line 236 of file MSColumns.h.

References casacore::ROMSColumns::processor_p.

const ROMSProcessorColumns& casacore::MSColumns::processor ( ) const
inline

Definition at line 262 of file MSColumns.h.

References casacore::ROMSColumns::processor_p.

void casacore::MSColumns::setDirectionRef ( MDirection::Types  ref)

set the DIRECTION reference type for FIELD, POINTING and SOURCE tables (except for antenna frame directions).

void casacore::MSColumns::setEpochRef ( MEpoch::Types  ref,
Bool  tableMustBeEmpty = True 
)

set the EPOCH reference type in all EPOCH columns in the MS.

Note that only a single EPOCH reference is allowed in the MS. This
Tip: In principle this function can only be used if the table is empty, otherwise already written values may thereafter have an incorrect reference, offset, or unit; However, it is possible that part of the table gets written before these values are known; In that case the reference, offset, or units can be set by using a False tableMustBeEmpty argument;

MSSourceColumns& casacore::MSColumns::source ( )
inline

Definition at line 245 of file MSColumns.h.

References casacore::ROMSColumns::source_p.

const ROMSSourceColumns& casacore::MSColumns::source ( ) const
inline

Definition at line 263 of file MSColumns.h.

References casacore::ROMSColumns::source_p.

MSSpWindowColumns& casacore::MSColumns::spectralWindow ( )
inline

Definition at line 237 of file MSColumns.h.

References casacore::ROMSColumns::spectralWindow_p.

const ROMSSpWindowColumns& casacore::MSColumns::spectralWindow ( ) const
inline

Definition at line 264 of file MSColumns.h.

References casacore::ROMSColumns::spectralWindow_p.

MSStateColumns& casacore::MSColumns::state ( )
inline

Definition at line 238 of file MSColumns.h.

References casacore::ROMSColumns::state_p.

const ROMSStateColumns& casacore::MSColumns::state ( ) const
inline

Definition at line 266 of file MSColumns.h.

References casacore::ROMSColumns::state_p.

MSSysCalColumns& casacore::MSColumns::sysCal ( )
inline

Definition at line 246 of file MSColumns.h.

References casacore::ROMSColumns::sysCal_p.

const ROMSSysCalColumns& casacore::MSColumns::sysCal ( ) const
inline

Definition at line 273 of file MSColumns.h.

References casacore::ROMSColumns::sysCal_p.

MSWeatherColumns& casacore::MSColumns::weather ( )
inline

Definition at line 247 of file MSColumns.h.

References casacore::ROMSColumns::weather_p.

const ROMSWeatherColumns& casacore::MSColumns::weather ( ) const
inline

Definition at line 274 of file MSColumns.h.

References casacore::True, and casacore::ROMSColumns::weather_p.

Member Data Documentation

MSAntennaColumns casacore::MSColumns::antenna_p
private

Access to subtables.

Definition at line 295 of file MSColumns.h.

MSDataDescColumns casacore::MSColumns::dataDesc_p
private

Definition at line 296 of file MSColumns.h.

MSDopplerColumns casacore::MSColumns::doppler_p
private

Definition at line 297 of file MSColumns.h.

MSFeedColumns casacore::MSColumns::feed_p
private

Definition at line 298 of file MSColumns.h.

MSFieldColumns casacore::MSColumns::field_p
private

Definition at line 299 of file MSColumns.h.

MSFlagCmdColumns casacore::MSColumns::flagCmd_p
private

Definition at line 300 of file MSColumns.h.

MSFreqOffsetColumns casacore::MSColumns::freqOffset_p
private

Definition at line 301 of file MSColumns.h.

MSHistoryColumns casacore::MSColumns::history_p
private

Definition at line 302 of file MSColumns.h.

MSObservationColumns casacore::MSColumns::observation_p
private

Definition at line 303 of file MSColumns.h.

MSPointingColumns casacore::MSColumns::pointing_p
private

Definition at line 304 of file MSColumns.h.

MSPolarizationColumns casacore::MSColumns::polarization_p
private

Definition at line 305 of file MSColumns.h.

MSProcessorColumns casacore::MSColumns::processor_p
private

Definition at line 306 of file MSColumns.h.

MSSourceColumns casacore::MSColumns::source_p
private

Definition at line 307 of file MSColumns.h.

MSSpWindowColumns casacore::MSColumns::spectralWindow_p
private

Definition at line 308 of file MSColumns.h.

MSStateColumns casacore::MSColumns::state_p
private

Definition at line 309 of file MSColumns.h.

MSSysCalColumns casacore::MSColumns::sysCal_p
private

Definition at line 310 of file MSColumns.h.

MSWeatherColumns casacore::MSColumns::weather_p
private

Definition at line 311 of file MSColumns.h.


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