casacore
Loading...
Searching...
No Matches
casacore::TableMeasValueDesc Class Reference

More...

#include <TableMeasValueDesc.h>

Public Member Functions

 TableMeasValueDesc ()
 Null constructor.
 
 TableMeasValueDesc (const TableDesc &, const String &columnName)
 Construct the MeasValue column descriptor for the given column.
 
 TableMeasValueDesc (const String &columnName)
 Construct the MeasValue column descriptor for the given column.
 
 TableMeasValueDesc (const Char *columnName)
 
 TableMeasValueDesc (const TableMeasValueDesc &that)
 Copy constructor.
 
 ~TableMeasValueDesc ()
 
TableMeasValueDescoperator= (const TableMeasValueDesc &that)
 Assignment operator.
 
void write (TableDesc &, const TableRecord &measInfo)
 Write the type, unit, and MEASINFO record into the column keywords.
 
void write (Table &, const TableRecord &measInfo)
 
const StringcolumnName () const
 Get the name of the underlying column.
 

Private Member Functions

void writeKeys (TableRecord &columnKeyset, const TableRecord &measInfo)
 Write the actual keywords.
 
void checkColumn (const TableDesc &td) const
 Throw an exception if the quantum column doesn't exist or is of the wrong type.
 

Private Attributes

String itsColumn
 

Detailed Description

Definition of a Measure Value in a Table.

Intended use:

Public interface

Review Status

Reviewed By:
Bob Garwood
Date Reviewed:
1999/12/23
Test programs:
tTableMeasures

Prerequisite

Synopsis

TableMeasValueDesc is a class for setting up the Measure value component of the TableMeasDesc in the TableMeasures system. Its purpose it to specify the Table column to be used as a Measure column through which Measures are subsequently written to and read from via either an ArrayMeasColumn or ScalarMeasColumn object.

The column used as the Measure column is always an ArrayColumn<Double> irrespective of whether it is to store scalars or arrays of Measures and irrespective of the type of Measure.

Example

  1. // 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");
    Templated class for description of table array columns.
    Definition ArrColDesc.h:235

For an example of the use of the TableMeasValueDesc class in the context of a full TableMeasDesc declaration see class TableMeasDesc.

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

  • AipsError if the specified column doesn't exist or it isn't an ArrayColumn or its type is not Double.

Definition at line 105 of file TableMeasValueDesc.h.

Constructor & Destructor Documentation

◆ TableMeasValueDesc() [1/5]

casacore::TableMeasValueDesc::TableMeasValueDesc ( )

Null constructor.

◆ TableMeasValueDesc() [2/5]

casacore::TableMeasValueDesc::TableMeasValueDesc ( const TableDesc & ,
const String & columnName )

Construct the MeasValue column descriptor for the given column.

The column must be a column of type Double and should exist in the TableDesc.

◆ TableMeasValueDesc() [3/5]

casacore::TableMeasValueDesc::TableMeasValueDesc ( const String & columnName)
inline

Construct the MeasValue column descriptor for the given column.

Checking if the column exists is done in the write function.

Definition at line 119 of file TableMeasValueDesc.h.

◆ TableMeasValueDesc() [4/5]

casacore::TableMeasValueDesc::TableMeasValueDesc ( const Char * columnName)
inline

Definition at line 121 of file TableMeasValueDesc.h.

◆ TableMeasValueDesc() [5/5]

casacore::TableMeasValueDesc::TableMeasValueDesc ( const TableMeasValueDesc & that)

Copy constructor.

◆ ~TableMeasValueDesc()

casacore::TableMeasValueDesc::~TableMeasValueDesc ( )

Member Function Documentation

◆ checkColumn()

void casacore::TableMeasValueDesc::checkColumn ( const TableDesc & td) const
private

Throw an exception if the quantum column doesn't exist or is of the wrong type.

◆ columnName()

const String & casacore::TableMeasValueDesc::columnName ( ) const
inline

Get the name of the underlying column.

Definition at line 141 of file TableMeasValueDesc.h.

References itsColumn.

Referenced by casacore::TableMeasDescBase::columnName().

◆ operator=()

TableMeasValueDesc & casacore::TableMeasValueDesc::operator= ( const TableMeasValueDesc & that)

Assignment operator.

◆ write() [1/2]

void casacore::TableMeasValueDesc::write ( Table & ,
const TableRecord & measInfo )

◆ write() [2/2]

void casacore::TableMeasValueDesc::write ( TableDesc & ,
const TableRecord & measInfo )

Write the type, unit, and MEASINFO record into the column keywords.

It checks if the column exists in the given table description.

◆ writeKeys()

void casacore::TableMeasValueDesc::writeKeys ( TableRecord & columnKeyset,
const TableRecord & measInfo )
private

Write the actual keywords.

Member Data Documentation

◆ itsColumn

String casacore::TableMeasValueDesc::itsColumn
private

Definition at line 145 of file TableMeasValueDesc.h.

Referenced by columnName().


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