MSDoppler.h

Classes

MSDoppler -- A Table intended to hold a MeasurementSet DOPPLER table. (full description)

class MSDoppler:public MSDopplerEnums, public MSTable<MSDopplerEnums::PredefinedColumns, MSDopplerEnums::PredefinedKeywords>

Interface

Public Members
MSDoppler ()
MSDoppler (const String &tableName, TableOption = Table::Old)
MSDoppler (const String &tableName, const String &tableDescName, TableOption = Table::Old)
MSDoppler (SetupNewTable &newTab, uInt nrrow = 0, Bool initialize = False)
MSDoppler (const Table &table)
MSDoppler (const MSDoppler &other)
~MSDoppler()
MSDoppler& operator=(const MSDoppler&)
MSDoppler referenceCopy(const String& newTableName, const Block<String>& writableColumns) const
static void init()
Private Members
void addVelDef()

Description

Review Status

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

Prerequisite

Etymology

MSDoppler stands for the MeasurementSet Doppler table.

Synopsis

An MSDoppler is a table intended to hold the DOPPLER table for the MeasurementSet. It has an identical set of member functions as the main MeasurementSet class, except (currently) for the default calibration members. For further info and examples see the MeasurementSet class.

Example

See the MeasurementSet for an example of how to access and use this class.

Motivation

It was found that subtables and the main table of the MeasurementSet have a lot in common, therefore they derive their interface from the same base class. Each subtable has its own class to keep the enum definitions and conversion functions in separate scopes.

To Do

Member Description

MSDoppler ()

This constructs an empty MSDoppler

MSDoppler (const String &tableName, TableOption = Table::Old)
MSDoppler (const String &tableName, const String &tableDescName, TableOption = Table::Old)
MSDoppler (SetupNewTable &newTab, uInt nrrow = 0, Bool initialize = False)
MSDoppler (const Table &table)
MSDoppler (const MSDoppler &other)

These constructors mirror the Table ones with additional checking on validity (verifying that the MSDoppler will have the required columns and keywords). An exception is thrown if the constructed Table is not a valid MSDoppler

Thrown Exceptions

~MSDoppler()

As with tables, the destructor writes the table if necessary. Additional checking is done here to verify that all required columns are still present. If it is NOT valid, it will write the table and then throw an exception.

Thrown Exceptions

MSDoppler& operator=(const MSDoppler&)

Assignment operator, reference semantics

MSDoppler referenceCopy(const String& newTableName, const Block<String>& writableColumns) const

Make a special copy of this Table which references all columns from this Table except those mentioned; those are empty and writable. Each forwarded column has the same writable status as the underlying column. The mentioned columns all use the AipsIO storage manager. This function is inherited from MSTable and unlikely to be of use, except in the class MeasurementSet (see comment there)..

static void init()

Initialize the statics appropriately. This does not need to be called by users, it is called by the implementation class MSTableImpl.

void addVelDef()

temporary function to add the VELDEF column if it isn't there yet. 2000/09/12 remove this and the calls next MS update