casa
$Rev:20696$
|
GBTMSSysCalFiller fills the MSSysCal table for GBT fillers. More...
#include <GBTMSSysCalFiller.h>
Public Member Functions | |
GBTMSSysCalFiller () | |
The default ctor. | |
GBTMSSysCalFiller (MSSysCal &msSysCal) | |
A filler attached to an MSSysCal table. | |
~GBTMSSysCalFiller () | |
void | attach (MSSysCal &msSysCal) |
attach it to an MSSysCal | |
void | prefill (const Matrix< Float > &tcal, const Matrix< Float > &trx, Int antennaId, Int feedId, Int spectralWindowId) |
Pre-fill the TCAL and TRX values. | |
void | fill (Double time, Double interval, Int antennaId, Int feedId, Int spectralWindowId) |
Fill the SYSCAL table. | |
void | flush () |
flush the underlying MS subtable | |
Private Member Functions | |
void | init (MSSysCal &msSysCal) |
initialize the above for the first time | |
GBTMSSysCalFiller (const GBTMSSysCalFiller &other) | |
undefined and unavailable | |
void | operator= (const GBTMSSysCalFiller &other) |
Private Attributes | |
MSSysCal * | msSysCal_p |
the actual syscal table and columns | |
MSSysCalColumns * | msSysCalCols_p |
MSSysCal * | dummySysCal_p |
the dummy ones used to hold the cached TCAL and TRX values | |
MSSysCalColumns * | dummyCols_p |
ColumnsIndex * | dummyIndex_p |
Table index into the dummy SYSCAL table. | |
RecordFieldPtr< Int > | antIdKey_p |
And the index keys. | |
RecordFieldPtr< Int > | feedIdKey_p |
RecordFieldPtr< Int > | spwIdKey_p |
Int | lastIndex_p |
row number matching these keys |
GBTMSSysCalFiller fills the MSSysCal table for GBT fillers.
Internal
This class puts GBT data (fills) into the MSSysCal table.
This class puts the appropriate values for the GBT in an MSSysCal table (which has been previously created as part of a MeasurementSet). On each fill() any necessary additions to the MSSysCal are made. Each call to fill generates a new row.
Writing a filler is a daunting task. There are various dependencies between the subtables. It helps to encapsulate the knowlege and task of filling a specific subtable to separate classes.
Definition at line 86 of file GBTMSSysCalFiller.h.
The default ctor.
No MSSysCal table has been attached yet. Calling fill on such a filler will throw an exception. It is present so that this object can be instantiated before an MSSysCal has been created.
GBTMSSysCalFiller::GBTMSSysCalFiller | ( | MSSysCal & | msSysCal | ) |
A filler attached to an MSSysCal table.
GBTMSSysCalFiller::GBTMSSysCalFiller | ( | const GBTMSSysCalFiller & | other | ) | [private] |
undefined and unavailable
void GBTMSSysCalFiller::attach | ( | MSSysCal & | msSysCal | ) |
attach it to an MSSysCal
void GBTMSSysCalFiller::fill | ( | Double | time, |
Double | interval, | ||
Int | antennaId, | ||
Int | feedId, | ||
Int | spectralWindowId | ||
) |
Fill the SYSCAL table.
A new row is added to the SYSCAL table.
void GBTMSSysCalFiller::flush | ( | ) | [inline] |
flush the underlying MS subtable
Definition at line 123 of file GBTMSSysCalFiller.h.
References msSysCal_p.
void GBTMSSysCalFiller::init | ( | MSSysCal & | msSysCal | ) | [private] |
initialize the above for the first time
void GBTMSSysCalFiller::operator= | ( | const GBTMSSysCalFiller & | other | ) | [private] |
void GBTMSSysCalFiller::prefill | ( | const Matrix< Float > & | tcal, |
const Matrix< Float > & | trx, | ||
Int | antennaId, | ||
Int | feedId, | ||
Int | spectralWindowId | ||
) |
Pre-fill the TCAL and TRX values.
This associates those input values with antennaId, feedId and spectralWindowId. and a date string from the receiver CAL table. Subsequent calls to fill use these pre-filled values. Since these values don't change very often with time (generally never during an observing run, for example) the calls to fill simply involve a time and interval matching that in the main table so that the TSYS cell can be prepared for use by the calibration routines (which requires one cell for each cell in the main table). If this combination of keys has already been used, these values of tcal and trx will replace the ones already stored.
RecordFieldPtr<Int> GBTMSSysCalFiller::antIdKey_p [private] |
And the index keys.
Definition at line 137 of file GBTMSSysCalFiller.h.
MSSysCalColumns* GBTMSSysCalFiller::dummyCols_p [private] |
Definition at line 132 of file GBTMSSysCalFiller.h.
ColumnsIndex* GBTMSSysCalFiller::dummyIndex_p [private] |
Table index into the dummy SYSCAL table.
Definition at line 135 of file GBTMSSysCalFiller.h.
MSSysCal* GBTMSSysCalFiller::dummySysCal_p [private] |
the dummy ones used to hold the cached TCAL and TRX values
Definition at line 131 of file GBTMSSysCalFiller.h.
RecordFieldPtr<Int> GBTMSSysCalFiller::feedIdKey_p [private] |
Definition at line 137 of file GBTMSSysCalFiller.h.
Int GBTMSSysCalFiller::lastIndex_p [private] |
row number matching these keys
Definition at line 140 of file GBTMSSysCalFiller.h.
MSSysCal* GBTMSSysCalFiller::msSysCal_p [private] |
the actual syscal table and columns
Definition at line 127 of file GBTMSSysCalFiller.h.
Referenced by flush().
MSSysCalColumns* GBTMSSysCalFiller::msSysCalCols_p [private] |
Definition at line 128 of file GBTMSSysCalFiller.h.
RecordFieldPtr<Int> GBTMSSysCalFiller::spwIdKey_p [private] |
Definition at line 137 of file GBTMSSysCalFiller.h.