The column used as the Measure column is always an ArrayColumn
Construct the MeasValue column descriptor for the given column.
The column must be a column of type Double and should exist in
the TableDesc.
Construct the MeasValue column descriptor for the given column.
Checking if the column exists is done in the write function.
Copy constructor.
Assignment operator.
Write the type, unit, and MEASINFO record into the column keywords.
It checks if the column exists in the given table description.
Get the name of the underlying column.
Write the actual keywords.
Throw an exception if the quantum column doesn't exist or is of the
wrong type.
Example
For an example of the use of the TableMeasValueDesc class in the context
of a full TableMeasDesc declaration see class
TableMeasDesc.
// Add a column to the table. This column is to be used to store
// MPositions. Measure columns are alway ArrayColumn<Double>
ArrayColumnDesc<Double> cdPosCol("MPosColumn", "MPosition column");
td.addColumn(cdPosCol);
...
// create the TableMeasValueDesc object
TableMeasValueDesc valueDesc(td, "MPosColumn");
Motivation
Creating the required keyword for the definition of a Measure
in a Table is somewhat complicated. This class assists in that
process.
Thrown Exceptions
Member Description
TableMeasValueDesc()
Null constructor
TableMeasValueDesc (const TableDesc&, const String& columnName)
TableMeasValueDesc (const String& columnName) : itsColumn (columnName)
TableMeasValueDesc (const Char* columnName) : itsColumn (columnName)
TableMeasValueDesc (const TableMeasValueDesc& that)
~TableMeasValueDesc()
TableMeasValueDesc& operator= (const TableMeasValueDesc& that)
void write (TableDesc&, const TableRecord& measInfo)
void write (Table&, const TableRecord& measInfo)
const String& columnName() const
void writeKeys (TableRecord& columnKeyset, const TableRecord& measInfo)
void checkColumn (const TableDesc& td) const