casacore::TableMeasColumn Class Reference

Read only access to table scalar Measure columns. More...

#include <TableMeasColumn.h>

Inheritance diagram for casacore::TableMeasColumn:
casacore::ArrayMeasColumn< M > casacore::ScalarMeasColumn< M >

List of all members.

Public Member Functions

 TableMeasColumn ()
 The default constructor creates a null object.
 TableMeasColumn (const Table &tab, const String &columnName)
 Create the ScalarMeasColumn from the table and column Name.
 TableMeasColumn (const TableMeasColumn &that)
 Copy constructor (copy semantics).
virtual ~TableMeasColumn ()
void reference (const TableMeasColumn &that)
 Change the reference to another column.
void attach (const Table &tab, const String &columnName)
 Attach another column to the object.
Bool isDefined (uInt rownr) const
 Tests if a row contains a Measure (i.e., if the row has a defined value).
const TableMeasDescBasemeasDesc () const
 Get access to the TableMeasDescBase describing the column.
TableMeasDescBasemeasDesc ()
Bool isNull () const
 Test if the object is null.
void throwIfNull () const
 Throw an exception if the object is null.
const StringcolumnName () const
 Get the name of the column.
Table table () const
 Get the Table object this column belongs to.
Bool isScalar () const
 Is the column a scalar measures column? It is if the underlying column is a scalar column or an array column with a fixed 1-dimensional shape.

Protected Attributes

uInt itsNvals
CountedPtr< TableMeasDescBaseitsDescPtr
TableColumn itsTabDataCol
Bool itsVarRefFlag
Bool itsVarOffFlag

Private Member Functions

TableMeasColumnoperator= (const TableMeasColumn &that)
 Assignment makes no sense in a readonly class.

Detailed Description

Read only access to table scalar Measure columns.

Intended use:

Public interface

Review Status

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

Prerequisite

Synopsis

TableMeasColumn is the base class for the templated classes ScalarMeasColumn and ArrayMeasColumn which give access to table columns containing measures .

This base class offers some common functionality like getting the column name and testing if a row of the column contains a value. Its main function is measDesc(), which gives access to the TableMeasDescBase object containing a description of the measure column.

Example

 // Create the object for measure column Time1.
 TableMeasColumn timeCol(tab, "Time1");
 
 // print some details about the column
 if (timeCol.measDesc().isRefCodeVariable()) {
 cout << "The column has variable references." << endl;
 } else {
 cout << "The fixed MeasRef for the column is: "
 << timeCol.getMeasRef() << endl;
 }

Motivation

This class contains the common functionality for the templated derived classes.

Definition at line 98 of file TableMeasColumn.h.


Constructor & Destructor Documentation

casacore::TableMeasColumn::TableMeasColumn (  ) 

The default constructor creates a null object.

Useful for creating arrays of ScalarMeasColumn objects. Attempting to use a null object will produce a segmentation fault so care needs to be taken to initialise the objects first by using attach(). An ScalarMeasColumn object can be tested if it is null by using the isNull() member.

casacore::TableMeasColumn::TableMeasColumn ( const Table tab,
const String columnName 
)

Create the ScalarMeasColumn from the table and column Name.

casacore::TableMeasColumn::TableMeasColumn ( const TableMeasColumn that  ) 

Copy constructor (copy semantics).

virtual casacore::TableMeasColumn::~TableMeasColumn (  )  [virtual]

Member Function Documentation

void casacore::TableMeasColumn::attach ( const Table tab,
const String columnName 
)
const String& casacore::TableMeasColumn::columnName (  )  const

Get the name of the column.

Bool casacore::TableMeasColumn::isDefined ( uInt  rownr  )  const

Tests if a row contains a Measure (i.e., if the row has a defined value).

Bool casacore::TableMeasColumn::isNull (  )  const [inline]

Test if the object is null.

Definition at line 136 of file TableMeasColumn.h.

References itsDescPtr, and casacore::CountedPtr< t >::null().

Bool casacore::TableMeasColumn::isScalar (  )  const

Is the column a scalar measures column? It is if the underlying column is a scalar column or an array column with a fixed 1-dimensional shape.


Otherwise it is an array measures column.
Caution: It is not 100% determined if a measure column is an array or a scalar; If the underlying table column is an array with a variable shape, this function will see it as an array measure column; However, it might be accessible as a scalar measure column;

TableMeasDescBase& casacore::TableMeasColumn::measDesc (  )  [inline]

Definition at line 131 of file TableMeasColumn.h.

References itsDescPtr.

const TableMeasDescBase& casacore::TableMeasColumn::measDesc (  )  const [inline]

Get access to the TableMeasDescBase describing the column.

Definition at line 129 of file TableMeasColumn.h.

References itsDescPtr.

TableMeasColumn& casacore::TableMeasColumn::operator= ( const TableMeasColumn that  )  [private]

Assignment makes no sense in a readonly class.

Declaring this operator private makes it unusable.

Reimplemented in casacore::ArrayMeasColumn< M >, and casacore::ScalarMeasColumn< M >.

void casacore::TableMeasColumn::reference ( const TableMeasColumn that  ) 

Change the reference to another column.

Reimplemented in casacore::ArrayMeasColumn< M >, and casacore::ScalarMeasColumn< M >.

Table casacore::TableMeasColumn::table (  )  const

Get the Table object this column belongs to.

void casacore::TableMeasColumn::throwIfNull (  )  const

Throw an exception if the object is null.


Member Data Documentation

Definition at line 164 of file TableMeasColumn.h.

Referenced by isNull(), and measDesc().

Definition at line 162 of file TableMeasColumn.h.

Definition at line 166 of file TableMeasColumn.h.

Definition at line 169 of file TableMeasColumn.h.

Definition at line 168 of file TableMeasColumn.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1