casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
casacore::MSPointingColumns Class Reference

A class to provide easy access to MSPointing columns. More...

#include <MSPointingColumns.h>

Public Member Functions

 MSPointingColumns (const MSPointing &msPointing)
 Construct from the supplied Table. More...
 
 ~MSPointingColumns ()
 The destructor does nothing special. More...
 
ScalarColumn< Int > & antennaId ()
 Access to required columns. More...
 
ScalarColumn< Double > & time ()
 
ScalarMeasColumn< MEpoch > & timeMeas ()
 
ScalarQuantColumn< Double > & timeQuant ()
 
ScalarColumn< Double > & interval ()
 
ScalarQuantColumn< Double > & intervalQuant ()
 
ScalarColumn< String > & name ()
 
ScalarColumn< Int > & numPoly ()
 
ScalarColumn< Double > & timeOrigin ()
 
ScalarQuantColumn< Double > & timeOriginQuant ()
 
ScalarMeasColumn< MEpoch > & timeOriginMeas ()
 
ArrayColumn< Double > & direction ()
 
ArrayMeasColumn< MDirection > & directionMeasCol ()
 
ArrayColumn< Double > & target ()
 
ArrayMeasColumn< MDirection > & targetMeasCol ()
 
ScalarColumn< Bool > & tracking ()
 
ArrayColumn< Double > & pointingOffset ()
 Access to optional columns. More...
 
ArrayMeasColumn< MDirection > & pointingOffsetMeasCol ()
 
ArrayColumn< Double > & sourceOffset ()
 
ArrayMeasColumn< MDirection > & sourceOffsetMeasCol ()
 
ArrayColumn< Double > & encoder ()
 
ScalarMeasColumn< MDirection > & encoderMeas ()
 
ScalarColumn< Int > & pointingModelId ()
 
ScalarColumn< Bool > & onSource ()
 
ScalarColumn< Bool > & overTheTop ()
 
const ScalarColumn< Int > & antennaId () const
 Const access to required columns. More...
 
const ScalarColumn< Double > & time () const
 
const ScalarQuantColumn< Double > & timeQuant () const
 
const ScalarMeasColumn< MEpoch > & timeMeas () const
 
const ScalarColumn< Double > & interval () const
 
const ScalarQuantColumn< Double > & intervalQuant () const
 
const ScalarColumn< String > & name () const
 
const ScalarColumn< Int > & numPoly () const
 
const ScalarColumn< Double > & timeOrigin () const
 
const ScalarQuantColumn< Double > & timeOriginQuant () const
 
const ScalarMeasColumn< MEpoch > & timeOriginMeas () const
 
const ArrayColumn< Double > & direction () const
 
const ArrayMeasColumn
< MDirection > & 
directionMeasCol () const
 
const ArrayColumn< Double > & target () const
 
const ArrayMeasColumn
< MDirection > & 
targetMeasCol () const
 
const ScalarColumn< Bool > & tracking () const
 
const ArrayColumn< Double > & pointingOffset () const
 Access to optional columns. More...
 
const ArrayMeasColumn
< MDirection > & 
pointingOffsetMeasCol () const
 
const ArrayColumn< Double > & sourceOffset () const
 
const ArrayMeasColumn
< MDirection > & 
sourceOffsetMeasCol () const
 
const ArrayColumn< Double > & encoder () const
 
const ScalarMeasColumn
< MDirection > & 
encoderMeas () const
 
const ScalarColumn< Int > & pointingModelId () const
 
const ScalarColumn< Bool > & onSource () const
 
const ScalarColumn< Bool > & overTheTop () const
 
MDirection directionMeas (rownr_t row, Double time=0) const
 Access to interpolated directions, the default time of zero will return the 0th order element of the polynomial. More...
 
MDirection targetMeas (rownr_t row, Double time=0) const
 
MDirection pointingOffsetMeas (rownr_t row, Double time=0) const
 
MDirection sourceOffsetMeas (rownr_t row, Double time=0) const
 
Int64 pointingIndex (Int antenna, Double time, Int64 guessRow=0) const
 return the first matching row index for this time and antenna, returns -1 if no match was found For long tables you may give a guess row...the last return is usually a good one. More...
 
rownr_t nrow () const
 Convenience function that returns the number of rows in any of the columns. More...
 
void setEpochRef (MEpoch::Types ref, Bool tableMustBeEmpty=True)
 set the epoch reference type for the TIME & TIME_ORIGIN column. More...
 
void setDirectionRef (MDirection::Types ref)
 set the direction reference type for the DIRECTION, TARGET & and, if defined, the SOURCE_OFFSET & POINTING_OFFSET columns. More...
 
void setEncoderDirectionRef (MDirection::Types ref)
 set the direction reference type for the ENCODER column (if it is defined). More...
 

Protected Member Functions

 MSPointingColumns ()
 
void attach (const MSPointing &msPointing)
 

Private Member Functions

 MSPointingColumns (const MSPointingColumns &)
 
MSPointingColumnsoperator= (const MSPointingColumns &)
 
void attachOptionalCols (const MSPointing &msPointing)
 

Private Attributes

ScalarColumn< IntantennaId_p
 
ArrayColumn< Doubledirection_p
 
ScalarColumn< Doubleinterval_p
 
ScalarColumn< Stringname_p
 
ScalarColumn< IntnumPoly_p
 
ArrayColumn< Doubletarget_p
 
ScalarColumn< Doubletime_p
 
ScalarColumn< DoubletimeOrigin_p
 
ScalarColumn< Booltracking_p
 
ArrayColumn< Doubleencoder_p
 
ScalarColumn< BoolonSource_p
 
ScalarColumn< IntpointingModelId_p
 
ArrayColumn< DoublepointingOffset_p
 
ArrayColumn< DoublesourceOffset_p
 
ScalarColumn< BooloverTheTop_p
 
ArrayMeasColumn< MDirectiondirectionMeas_p
 
ArrayMeasColumn< MDirectiontargetMeas_p
 
ScalarMeasColumn< MEpochtimeMeas_p
 
ScalarMeasColumn< MEpochtimeOriginMeas_p
 
ScalarMeasColumn< MDirectionencoderMeas_p
 
ArrayMeasColumn< MDirectionpointingOffsetMeas_p
 
ArrayMeasColumn< MDirectionsourceOffsetMeas_p
 
ScalarQuantColumn< DoubleintervalQuant_p
 
ScalarQuantColumn< DoubletimeQuant_p
 
ScalarQuantColumn< DoubletimeOriginQuant_p
 

Detailed Description

A class to provide easy access to MSPointing columns.

Intended use:

Public interface

Review Status

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

Prerequisite

Etymology

MSPointingColumns stands for MeasurementSet Pointing Table columns.

Synopsis

This class provides access to the columns in the MSPointing 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 MSColumns for an example.

Motivation

See MSColumns for the motivation.

Definition at line 79 of file MSPointingColumns.h.

Constructor & Destructor Documentation

casacore::MSPointingColumns::MSPointingColumns ( const MSPointing msPointing)

Construct from the supplied Table.

casacore::MSPointingColumns::~MSPointingColumns ( )

The destructor does nothing special.

casacore::MSPointingColumns::MSPointingColumns ( )
protected
casacore::MSPointingColumns::MSPointingColumns ( const MSPointingColumns )
private

Member Function Documentation

ScalarColumn<Int>& casacore::MSPointingColumns::antennaId ( )
inline

Access to required columns.

Note that the direction measures with a stored polynomial have Col() added to their name. They are better accessed via the functions that have the same name, without the Col suffix, that will do the interpolation for you.

Definition at line 95 of file MSPointingColumns.h.

References antennaId_p.

const ScalarColumn<Int>& casacore::MSPointingColumns::antennaId ( ) const
inline

Const access to required columns.

Definition at line 135 of file MSPointingColumns.h.

References antennaId_p.

void casacore::MSPointingColumns::attach ( const MSPointing msPointing)
protected
void casacore::MSPointingColumns::attachOptionalCols ( const MSPointing msPointing)
private
ArrayColumn<Double>& casacore::MSPointingColumns::direction ( )
inline

Definition at line 106 of file MSPointingColumns.h.

References direction_p.

const ArrayColumn<Double>& casacore::MSPointingColumns::direction ( ) const
inline

Definition at line 149 of file MSPointingColumns.h.

References direction_p.

MDirection casacore::MSPointingColumns::directionMeas ( rownr_t  row,
Double  time = 0 
) const

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

ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::directionMeasCol ( )
inline

Definition at line 107 of file MSPointingColumns.h.

References directionMeas_p.

const ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::directionMeasCol ( ) const
inline

Definition at line 150 of file MSPointingColumns.h.

References directionMeas_p.

ArrayColumn<Double>& casacore::MSPointingColumns::encoder ( )
inline

Definition at line 126 of file MSPointingColumns.h.

References encoder_p.

const ArrayColumn<Double>& casacore::MSPointingColumns::encoder ( ) const
inline

Definition at line 167 of file MSPointingColumns.h.

References encoder_p.

ScalarMeasColumn<MDirection>& casacore::MSPointingColumns::encoderMeas ( )
inline

Definition at line 127 of file MSPointingColumns.h.

References encoderMeas_p.

const ScalarMeasColumn<MDirection>& casacore::MSPointingColumns::encoderMeas ( ) const
inline

Definition at line 168 of file MSPointingColumns.h.

References encoderMeas_p.

ScalarColumn<Double>& casacore::MSPointingColumns::interval ( )
inline

Definition at line 99 of file MSPointingColumns.h.

References interval_p.

const ScalarColumn<Double>& casacore::MSPointingColumns::interval ( ) const
inline

Definition at line 139 of file MSPointingColumns.h.

References interval_p.

ScalarQuantColumn<Double>& casacore::MSPointingColumns::intervalQuant ( )
inline

Definition at line 100 of file MSPointingColumns.h.

References intervalQuant_p.

const ScalarQuantColumn<Double>& casacore::MSPointingColumns::intervalQuant ( ) const
inline

Definition at line 140 of file MSPointingColumns.h.

References intervalQuant_p.

ScalarColumn<String>& casacore::MSPointingColumns::name ( )
inline

Definition at line 101 of file MSPointingColumns.h.

References name_p.

const ScalarColumn<String>& casacore::MSPointingColumns::name ( ) const
inline

Definition at line 142 of file MSPointingColumns.h.

References name_p.

rownr_t casacore::MSPointingColumns::nrow ( ) const
inline

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

Definition at line 192 of file MSPointingColumns.h.

References antennaId_p, and casacore::TableColumn::nrow().

ScalarColumn<Int>& casacore::MSPointingColumns::numPoly ( )
inline

Definition at line 102 of file MSPointingColumns.h.

References numPoly_p.

const ScalarColumn<Int>& casacore::MSPointingColumns::numPoly ( ) const
inline

Definition at line 143 of file MSPointingColumns.h.

References numPoly_p.

ScalarColumn<Bool>& casacore::MSPointingColumns::onSource ( )
inline

Definition at line 129 of file MSPointingColumns.h.

References onSource_p.

const ScalarColumn<Bool>& casacore::MSPointingColumns::onSource ( ) const
inline

Definition at line 172 of file MSPointingColumns.h.

References onSource_p.

MSPointingColumns& casacore::MSPointingColumns::operator= ( const MSPointingColumns )
private
ScalarColumn<Bool>& casacore::MSPointingColumns::overTheTop ( )
inline

Definition at line 130 of file MSPointingColumns.h.

References overTheTop_p.

const ScalarColumn<Bool>& casacore::MSPointingColumns::overTheTop ( ) const
inline

Definition at line 173 of file MSPointingColumns.h.

References overTheTop_p.

Int64 casacore::MSPointingColumns::pointingIndex ( Int  antenna,
Double  time,
Int64  guessRow = 0 
) const

return the first matching row index for this time and antenna, returns -1 if no match was found For long tables you may give a guess row...the last return is usually a good one.

ScalarColumn<Int>& casacore::MSPointingColumns::pointingModelId ( )
inline

Definition at line 128 of file MSPointingColumns.h.

References pointingModelId_p.

const ScalarColumn<Int>& casacore::MSPointingColumns::pointingModelId ( ) const
inline

Definition at line 170 of file MSPointingColumns.h.

References pointingModelId_p.

ArrayColumn<Double>& casacore::MSPointingColumns::pointingOffset ( )
inline

Access to optional columns.

Note that the direction measures with a stored polynomial have Col() added to their name. They are better accessed via the functions that have the same name, without the Col suffix, that will do the interpolation for you.

Definition at line 120 of file MSPointingColumns.h.

References pointingOffset_p.

const ArrayColumn<Double>& casacore::MSPointingColumns::pointingOffset ( ) const
inline

Access to optional columns.

Definition at line 160 of file MSPointingColumns.h.

References pointingOffset_p.

MDirection casacore::MSPointingColumns::pointingOffsetMeas ( rownr_t  row,
Double  time = 0 
) const
ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::pointingOffsetMeasCol ( )
inline

Definition at line 121 of file MSPointingColumns.h.

References pointingOffsetMeas_p.

const ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::pointingOffsetMeasCol ( ) const
inline

Definition at line 162 of file MSPointingColumns.h.

References pointingOffsetMeas_p.

void casacore::MSPointingColumns::setDirectionRef ( MDirection::Types  ref)

set the direction reference type for the DIRECTION, TARGET & and, if defined, the SOURCE_OFFSET & POINTING_OFFSET columns.

This can only be done when the table has no rows. Trying to do so at other times will throw an exception. Note that the optional ENCODER column must be done separately as the MSv2 definition requires this column to use the frame(s) of the antenna mounts.

void casacore::MSPointingColumns::setEncoderDirectionRef ( MDirection::Types  ref)

set the direction reference type for the ENCODER column (if it is defined).

This can only be done when the table has no rows. Trying to do so at other times will throw an exception.

void casacore::MSPointingColumns::setEpochRef ( MEpoch::Types  ref,
Bool  tableMustBeEmpty = True 
)

set the epoch reference type for the TIME & TIME_ORIGIN column.


Tip: In principle this function can only be used if the table is empty, otherwise already written values may thereafter have an incorrect reference, offset, or unit; However, it is possible that part of the table gets written before these values are known; In that case the reference, offset, or units can be set by using a False tableMustBeEmpty argument;

ArrayColumn<Double>& casacore::MSPointingColumns::sourceOffset ( )
inline

Definition at line 123 of file MSPointingColumns.h.

References sourceOffset_p.

const ArrayColumn<Double>& casacore::MSPointingColumns::sourceOffset ( ) const
inline

Definition at line 164 of file MSPointingColumns.h.

References sourceOffset_p.

MDirection casacore::MSPointingColumns::sourceOffsetMeas ( rownr_t  row,
Double  time = 0 
) const
ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::sourceOffsetMeasCol ( )
inline

Definition at line 124 of file MSPointingColumns.h.

References sourceOffsetMeas_p.

const ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::sourceOffsetMeasCol ( ) const
inline

Definition at line 165 of file MSPointingColumns.h.

References sourceOffsetMeas_p.

ArrayColumn<Double>& casacore::MSPointingColumns::target ( )
inline

Definition at line 108 of file MSPointingColumns.h.

References target_p.

const ArrayColumn<Double>& casacore::MSPointingColumns::target ( ) const
inline

Definition at line 152 of file MSPointingColumns.h.

References target_p.

MDirection casacore::MSPointingColumns::targetMeas ( rownr_t  row,
Double  time = 0 
) const
ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::targetMeasCol ( )
inline

Definition at line 109 of file MSPointingColumns.h.

References targetMeas_p.

const ArrayMeasColumn<MDirection>& casacore::MSPointingColumns::targetMeasCol ( ) const
inline

Definition at line 153 of file MSPointingColumns.h.

References targetMeas_p.

ScalarColumn<Double>& casacore::MSPointingColumns::time ( )
inline

Definition at line 96 of file MSPointingColumns.h.

References time_p.

const ScalarColumn<Double>& casacore::MSPointingColumns::time ( ) const
inline

Definition at line 136 of file MSPointingColumns.h.

References time_p.

ScalarMeasColumn<MEpoch>& casacore::MSPointingColumns::timeMeas ( )
inline

Definition at line 97 of file MSPointingColumns.h.

References timeMeas_p.

const ScalarMeasColumn<MEpoch>& casacore::MSPointingColumns::timeMeas ( ) const
inline

Definition at line 138 of file MSPointingColumns.h.

References timeMeas_p.

ScalarColumn<Double>& casacore::MSPointingColumns::timeOrigin ( )
inline

Definition at line 103 of file MSPointingColumns.h.

References timeOrigin_p.

const ScalarColumn<Double>& casacore::MSPointingColumns::timeOrigin ( ) const
inline

Definition at line 144 of file MSPointingColumns.h.

References timeOrigin_p.

ScalarMeasColumn<MEpoch>& casacore::MSPointingColumns::timeOriginMeas ( )
inline

Definition at line 105 of file MSPointingColumns.h.

References timeOriginMeas_p.

const ScalarMeasColumn<MEpoch>& casacore::MSPointingColumns::timeOriginMeas ( ) const
inline

Definition at line 147 of file MSPointingColumns.h.

References timeOriginMeas_p.

ScalarQuantColumn<Double>& casacore::MSPointingColumns::timeOriginQuant ( )
inline

Definition at line 104 of file MSPointingColumns.h.

References timeOriginQuant_p.

const ScalarQuantColumn<Double>& casacore::MSPointingColumns::timeOriginQuant ( ) const
inline

Definition at line 145 of file MSPointingColumns.h.

References timeOriginQuant_p.

ScalarQuantColumn<Double>& casacore::MSPointingColumns::timeQuant ( )
inline

Definition at line 98 of file MSPointingColumns.h.

References timeQuant_p.

const ScalarQuantColumn<Double>& casacore::MSPointingColumns::timeQuant ( ) const
inline

Definition at line 137 of file MSPointingColumns.h.

References timeQuant_p.

ScalarColumn<Bool>& casacore::MSPointingColumns::tracking ( )
inline

Definition at line 110 of file MSPointingColumns.h.

References tracking_p.

const ScalarColumn<Bool>& casacore::MSPointingColumns::tracking ( ) const
inline

Definition at line 155 of file MSPointingColumns.h.

References tracking_p.

Member Data Documentation

ScalarColumn<Int> casacore::MSPointingColumns::antennaId_p
private

Definition at line 236 of file MSPointingColumns.h.

Referenced by antennaId(), and nrow().

ArrayColumn<Double> casacore::MSPointingColumns::direction_p
private

Definition at line 237 of file MSPointingColumns.h.

Referenced by direction().

ArrayMeasColumn<MDirection> casacore::MSPointingColumns::directionMeas_p
private

Definition at line 254 of file MSPointingColumns.h.

Referenced by directionMeasCol().

ArrayColumn<Double> casacore::MSPointingColumns::encoder_p
private

Definition at line 246 of file MSPointingColumns.h.

Referenced by encoder().

ScalarMeasColumn<MDirection> casacore::MSPointingColumns::encoderMeas_p
private

Definition at line 259 of file MSPointingColumns.h.

Referenced by encoderMeas().

ScalarColumn<Double> casacore::MSPointingColumns::interval_p
private

Definition at line 238 of file MSPointingColumns.h.

Referenced by interval().

ScalarQuantColumn<Double> casacore::MSPointingColumns::intervalQuant_p
private

Definition at line 264 of file MSPointingColumns.h.

Referenced by intervalQuant().

ScalarColumn<String> casacore::MSPointingColumns::name_p
private

Definition at line 239 of file MSPointingColumns.h.

Referenced by name().

ScalarColumn<Int> casacore::MSPointingColumns::numPoly_p
private

Definition at line 240 of file MSPointingColumns.h.

Referenced by numPoly().

ScalarColumn<Bool> casacore::MSPointingColumns::onSource_p
private

Definition at line 247 of file MSPointingColumns.h.

Referenced by onSource().

ScalarColumn<Bool> casacore::MSPointingColumns::overTheTop_p
private

Definition at line 251 of file MSPointingColumns.h.

Referenced by overTheTop().

ScalarColumn<Int> casacore::MSPointingColumns::pointingModelId_p
private

Definition at line 248 of file MSPointingColumns.h.

Referenced by pointingModelId().

ArrayColumn<Double> casacore::MSPointingColumns::pointingOffset_p
private

Definition at line 249 of file MSPointingColumns.h.

Referenced by pointingOffset().

ArrayMeasColumn<MDirection> casacore::MSPointingColumns::pointingOffsetMeas_p
private

Definition at line 260 of file MSPointingColumns.h.

Referenced by pointingOffsetMeasCol().

ArrayColumn<Double> casacore::MSPointingColumns::sourceOffset_p
private

Definition at line 250 of file MSPointingColumns.h.

Referenced by sourceOffset().

ArrayMeasColumn<MDirection> casacore::MSPointingColumns::sourceOffsetMeas_p
private

Definition at line 261 of file MSPointingColumns.h.

Referenced by sourceOffsetMeasCol().

ArrayColumn<Double> casacore::MSPointingColumns::target_p
private

Definition at line 241 of file MSPointingColumns.h.

Referenced by target().

ArrayMeasColumn<MDirection> casacore::MSPointingColumns::targetMeas_p
private

Definition at line 255 of file MSPointingColumns.h.

Referenced by targetMeasCol().

ScalarColumn<Double> casacore::MSPointingColumns::time_p
private

Definition at line 242 of file MSPointingColumns.h.

Referenced by time().

ScalarMeasColumn<MEpoch> casacore::MSPointingColumns::timeMeas_p
private

Definition at line 256 of file MSPointingColumns.h.

Referenced by timeMeas().

ScalarColumn<Double> casacore::MSPointingColumns::timeOrigin_p
private

Definition at line 243 of file MSPointingColumns.h.

Referenced by timeOrigin().

ScalarMeasColumn<MEpoch> casacore::MSPointingColumns::timeOriginMeas_p
private

Definition at line 257 of file MSPointingColumns.h.

Referenced by timeOriginMeas().

ScalarQuantColumn<Double> casacore::MSPointingColumns::timeOriginQuant_p
private

Definition at line 266 of file MSPointingColumns.h.

Referenced by timeOriginQuant().

ScalarQuantColumn<Double> casacore::MSPointingColumns::timeQuant_p
private

Definition at line 265 of file MSPointingColumns.h.

Referenced by timeQuant().

ScalarColumn<Bool> casacore::MSPointingColumns::tracking_p
private

Definition at line 244 of file MSPointingColumns.h.

Referenced by tracking().


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