casa::ROMSFieldColumns Class Reference
[MeasurementSets]

#include <MSFieldColumns.h>

Inheritance diagram for casa::ROMSFieldColumns:

Inheritance graph
[legend]
List of all members.

Detailed Description

A class to provide easy access to MSField columns.

Intended use:

Part of API

Review Status

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

Prerequisite

Etymology

ROMSFieldColumns stands for Read-Only MeasurementSet Field Table columns.

Synopsis

This class provides read-only access to the columns in the MSField Table. 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. See ROMSColumns for an example.

Motivation

See MSColumns for the motivation.

Definition at line 81 of file MSFieldColumns.h.

Public Member Functions

 ROMSFieldColumns (const MSField &msField)
 Construct from the supplied Table.
 ~ROMSFieldColumns ()
 The desctructor does nothing special.
uInt nrow () const
 Convenience function that returns the number of rows in any of the columns.
Int matchDirection (const MDirection &referenceDirection, const MDirection &delayDirection, const MDirection &phaseDirection, const Quantum< Double > &maxSeparation, Int tryRow=-1)
 returns the last row that has a reference direction, phase direction and delay direction that match, to within the specified angular separation, the supplied values.
const ROScalarColumn< String > & code () const
 Read-only access to required columns.
const ROArrayColumn< Double > & delayDir () const
const ROArrayMeasColumn< MDirection > & delayDirMeasCol () const
const ROScalarColumn< Bool > & flagRow () const
const ROScalarColumn< String > & name () const
const ROScalarColumn< Int > & numPoly () const
const ROArrayColumn< Double > & phaseDir () const
const ROArrayMeasColumn< MDirection > & phaseDirMeasCol () const
const ROArrayColumn< Double > & referenceDir () const
const ROArrayMeasColumn< MDirection > & referenceDirMeasCol () const
const ROScalarColumn< Int > & sourceId () const
const ROScalarColumn< Double > & time () const
const ROScalarQuantColumn<
Double > & 
timeQuant () const
const ROScalarMeasColumn<
MEpoch > & 
timeMeas () const
const ROScalarColumn< Int > & ephemerisId () const
 Read-only access to optional columns.
MDirection delayDirMeas (Int row, Double time=0) const
 Access to interpolated directions, the default time of zero will return the 0th order element of the polynomial.
MDirection phaseDirMeas (Int row, Double time=0) const
MDirection referenceDirMeas (Int row, Double time=0) const

Protected Member Functions

 ROMSFieldColumns ()
void attach (const MSField &msField)

Private Member Functions

 ROMSFieldColumns (const ROMSFieldColumns &)
ROMSFieldColumnsoperator= (const ROMSFieldColumns &)
void attachOptionalCols (const MSField &msField)
Bool matchReferenceDir (uInt row, const MVDirection &dirVal, const Double &sepInRad, Matrix< Double > &mdir, MVDirection &mvdir) const
Bool matchDelayDir (uInt row, const MVDirection &dirVal, const Double &sepInRad, Matrix< Double > &mdir, MVDirection &mvdir) const
Bool matchPhaseDir (uInt row, const MVDirection &dirVal, const Double &sepInRad, Matrix< Double > &mdir, MVDirection &mvdir) const

Private Attributes

ROScalarColumn< Stringname_p
ROScalarColumn< Stringcode_p
ROScalarColumn< Doubletime_p
ROScalarColumn< IntnumPoly_p
ROArrayColumn< DoubledelayDir_p
ROArrayColumn< DoublephaseDir_p
ROArrayColumn< DoublereferenceDir_p
ROScalarColumn< IntsourceId_p
ROScalarColumn< BoolflagRow_p
ROScalarColumn< IntephemerisId_p
ROScalarMeasColumn< MEpochtimeMeas_p
ROArrayMeasColumn< MDirectiondelayDirMeas_p
ROArrayMeasColumn< MDirectionphaseDirMeas_p
ROArrayMeasColumn< MDirectionreferenceDirMeas_p
ROScalarQuantColumn< DoubletimeQuant_p


Constructor & Destructor Documentation

casa::ROMSFieldColumns::ROMSFieldColumns ( const MSField msField  ) 

Construct from the supplied Table.

casa::ROMSFieldColumns::~ROMSFieldColumns (  ) 

The desctructor does nothing special.

casa::ROMSFieldColumns::ROMSFieldColumns (  )  [protected]

casa::ROMSFieldColumns::ROMSFieldColumns ( const ROMSFieldColumns  )  [private]


Member Function Documentation

const ROScalarColumn<String>& casa::ROMSFieldColumns::code (  )  const [inline]

Read-only access to required columns.

Definition at line 92 of file MSFieldColumns.h.

References code_p.

Referenced by casa::MSFieldColumns::code().

const ROArrayColumn<Double>& casa::ROMSFieldColumns::delayDir (  )  const [inline]

Definition at line 93 of file MSFieldColumns.h.

References delayDir_p.

Referenced by casa::MSFieldColumns::delayDir().

const ROArrayMeasColumn<MDirection>& casa::ROMSFieldColumns::delayDirMeasCol (  )  const [inline]

Definition at line 94 of file MSFieldColumns.h.

References delayDirMeas_p.

Referenced by casa::MSFieldColumns::delayDirMeasCol().

const ROScalarColumn<Bool>& casa::ROMSFieldColumns::flagRow (  )  const [inline]

Definition at line 96 of file MSFieldColumns.h.

References flagRow_p.

Referenced by casa::MSFieldColumns::flagRow().

const ROScalarColumn<String>& casa::ROMSFieldColumns::name (  )  const [inline]

Definition at line 97 of file MSFieldColumns.h.

References name_p.

Referenced by casa::MSFieldColumns::name().

const ROScalarColumn<Int>& casa::ROMSFieldColumns::numPoly (  )  const [inline]

Definition at line 98 of file MSFieldColumns.h.

References numPoly_p.

Referenced by casa::MSFieldColumns::numPoly().

const ROArrayColumn<Double>& casa::ROMSFieldColumns::phaseDir (  )  const [inline]

Definition at line 99 of file MSFieldColumns.h.

References phaseDir_p.

Referenced by casa::MSFieldColumns::phaseDir().

const ROArrayMeasColumn<MDirection>& casa::ROMSFieldColumns::phaseDirMeasCol (  )  const [inline]

Definition at line 100 of file MSFieldColumns.h.

References phaseDirMeas_p.

Referenced by casa::MSFieldColumns::phaseDirMeasCol().

const ROArrayColumn<Double>& casa::ROMSFieldColumns::referenceDir (  )  const [inline]

Definition at line 102 of file MSFieldColumns.h.

References referenceDir_p.

Referenced by casa::MSFieldColumns::referenceDir().

const ROArrayMeasColumn<MDirection>& casa::ROMSFieldColumns::referenceDirMeasCol (  )  const [inline]

Definition at line 103 of file MSFieldColumns.h.

References referenceDirMeas_p.

Referenced by casa::MSFieldColumns::referenceDirMeasCol().

const ROScalarColumn<Int>& casa::ROMSFieldColumns::sourceId (  )  const [inline]

Definition at line 105 of file MSFieldColumns.h.

References sourceId_p.

Referenced by casa::MSFieldColumns::sourceId().

const ROScalarColumn<Double>& casa::ROMSFieldColumns::time (  )  const [inline]

Definition at line 106 of file MSFieldColumns.h.

References time_p.

const ROScalarQuantColumn<Double>& casa::ROMSFieldColumns::timeQuant (  )  const [inline]

Definition at line 107 of file MSFieldColumns.h.

References timeQuant_p.

Referenced by casa::MSFieldColumns::timeQuant().

const ROScalarMeasColumn<MEpoch>& casa::ROMSFieldColumns::timeMeas (  )  const [inline]

Definition at line 108 of file MSFieldColumns.h.

References timeMeas_p.

Referenced by casa::MSFieldColumns::timeMeas().

const ROScalarColumn<Int>& casa::ROMSFieldColumns::ephemerisId (  )  const [inline]

Read-only access to optional columns.

Definition at line 113 of file MSFieldColumns.h.

References ephemerisId_p.

Referenced by casa::MSFieldColumns::ephemerisId().

MDirection casa::ROMSFieldColumns::delayDirMeas ( Int  row,
Double  time = 0 
) const

Access to interpolated directions, the default time of zero will return the 0th order element of the polynomial.

MDirection casa::ROMSFieldColumns::phaseDirMeas ( Int  row,
Double  time = 0 
) const

MDirection casa::ROMSFieldColumns::referenceDirMeas ( Int  row,
Double  time = 0 
) const

uInt casa::ROMSFieldColumns::nrow (  )  const [inline]

Convenience function that returns the number of rows in any of the columns.

Definition at line 125 of file MSFieldColumns.h.

References name_p.

Int casa::ROMSFieldColumns::matchDirection ( const MDirection referenceDirection,
const MDirection delayDirection,
const MDirection phaseDirection,
const Quantum< Double > &  maxSeparation,
Int  tryRow = -1 
)

returns the last row that has a reference direction, phase direction and delay direction that match, to within the specified angular separation, the supplied values.

Only matches on rows where the direction is constant ie., NUM_POLY is 0 and where FLAG_ROW is False. Throws an exception (AipsError) if the reference frames do not match or if the separation does not have angular units (when compiled in debug mode). Returns -1 if no match could be found. If tryRow is positive, then that row is tested to see if it matches before any others are tested. Setting tryRow to a positive value greater than the table length will throw an exception (AipsError), when compiled in debug mode.

void casa::ROMSFieldColumns::attach ( const MSField msField  )  [protected]

ROMSFieldColumns& casa::ROMSFieldColumns::operator= ( const ROMSFieldColumns  )  [private]

void casa::ROMSFieldColumns::attachOptionalCols ( const MSField msField  )  [private]

Bool casa::ROMSFieldColumns::matchReferenceDir ( uInt  row,
const MVDirection dirVal,
const Double sepInRad,
Matrix< Double > &  mdir,
MVDirection mvdir 
) const [private]

Bool casa::ROMSFieldColumns::matchDelayDir ( uInt  row,
const MVDirection dirVal,
const Double sepInRad,
Matrix< Double > &  mdir,
MVDirection mvdir 
) const [private]

Bool casa::ROMSFieldColumns::matchPhaseDir ( uInt  row,
const MVDirection dirVal,
const Double sepInRad,
Matrix< Double > &  mdir,
MVDirection mvdir 
) const [private]


Member Data Documentation

ROScalarColumn<String> casa::ROMSFieldColumns::name_p [private]

Definition at line 177 of file MSFieldColumns.h.

Referenced by name(), and nrow().

ROScalarColumn<String> casa::ROMSFieldColumns::code_p [private]

Definition at line 178 of file MSFieldColumns.h.

Referenced by code().

ROScalarColumn<Double> casa::ROMSFieldColumns::time_p [private]

Definition at line 179 of file MSFieldColumns.h.

Referenced by time().

ROScalarColumn<Int> casa::ROMSFieldColumns::numPoly_p [private]

Definition at line 180 of file MSFieldColumns.h.

Referenced by numPoly().

ROArrayColumn<Double> casa::ROMSFieldColumns::delayDir_p [private]

Definition at line 181 of file MSFieldColumns.h.

Referenced by delayDir().

ROArrayColumn<Double> casa::ROMSFieldColumns::phaseDir_p [private]

Definition at line 182 of file MSFieldColumns.h.

Referenced by phaseDir().

ROArrayColumn<Double> casa::ROMSFieldColumns::referenceDir_p [private]

Definition at line 183 of file MSFieldColumns.h.

Referenced by referenceDir().

ROScalarColumn<Int> casa::ROMSFieldColumns::sourceId_p [private]

Definition at line 184 of file MSFieldColumns.h.

Referenced by sourceId().

ROScalarColumn<Bool> casa::ROMSFieldColumns::flagRow_p [private]

Definition at line 185 of file MSFieldColumns.h.

Referenced by flagRow().

ROScalarColumn<Int> casa::ROMSFieldColumns::ephemerisId_p [private]

Definition at line 187 of file MSFieldColumns.h.

Referenced by ephemerisId().

ROScalarMeasColumn<MEpoch> casa::ROMSFieldColumns::timeMeas_p [private]

Definition at line 190 of file MSFieldColumns.h.

Referenced by timeMeas().

ROArrayMeasColumn<MDirection> casa::ROMSFieldColumns::delayDirMeas_p [private]

Definition at line 191 of file MSFieldColumns.h.

Referenced by delayDirMeasCol().

ROArrayMeasColumn<MDirection> casa::ROMSFieldColumns::phaseDirMeas_p [private]

Definition at line 192 of file MSFieldColumns.h.

Referenced by phaseDirMeasCol().

ROArrayMeasColumn<MDirection> casa::ROMSFieldColumns::referenceDirMeas_p [private]

Definition at line 193 of file MSFieldColumns.h.

Referenced by referenceDirMeasCol().

ROScalarQuantColumn<Double> casa::ROMSFieldColumns::timeQuant_p [private]

Definition at line 196 of file MSFieldColumns.h.

Referenced by timeQuant().


The documentation for this class was generated from the following file:
Generated on Thu Aug 7 22:35:13 2008 for NRAOCASA by  doxygen 1.5.1