casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
GBTBackendFiller Class Reference

A base class for GBT backend fillers. More...

#include <GBTBackendFiller.h>

Inheritance diagram for GBTBackendFiller:
GBTACSFiller GBTDCRFiller GBTHoloFiller GBTSPFiller

List of all members.

Public Member Functions

 GBTBackendFiller ()
 construct an empty filler, openMS or createMS must be called before this is a useful filler.
virtual ~GBTBackendFiller ()
virtual GBTScanLogReader::BACKENDS type ()=0
 what type of backend is this
virtual Bool fill (const String &backendFile, const Block< String > &dapFiles, const String &ifManagerFile, const Block< String > &rxCalInfoFiles, const GBTGOFile &GOFile, const String &antennaFile, const GBTStateTable &masterState, const GBTLO1File &LO1A, const GBTLO1File &LO1B, const GBTMSFillOptions &fillOptions)=0
 fill a given backend file and DAP files
virtual Bool prepareDAPfillers (const String &dapfile, const MVTime &startTime)
 prepare the appropriate DAP filler based on the indicated file name
virtual void fillDAP ()
 fill all of the prepared DAP files
virtual MeasurementSet & ms ()
 get the MS this filler is associated with
virtual Bool openMS (const String &msName, Bool useFeedDDFiller=True)
 open the MS, this returns False if an MS of that name does not exist or can not be opened.
virtual Bool createMS (const String &msName, const TableDesc &mainTD, const DataManager &dm, const Vector< String > &dmColNames, const IPosition &defaultTileShape, const GBTMSFillOptions &fillOptions, Int nrows=0, Bool spectralLine=False, Bool useFeedDDFiller=True)
 create and open the MS, using the given TableDesc for the Main table of the MS.
virtual Bool createMS (const String &msName, const TableDesc &mainTD, const DataManager &dm, const Vector< String > &dmColNames, const IPosition &defaultTileShape, const GBTMSFillOptions &fillOptions, const DataManager &dm2, const Vector< String > &dm2ColNames, Int nrows=0, Bool spectralLine=False, Bool useFeedDDFiller=True)
 Supply a second data manager and its columns (this is used when a LAGS column is required).
virtual Bool createMS (const String &msName, const TableDesc &mainTD, const GBTMSFillOptions &fillOptions, Int nrows=0, Bool useFeedDDFiller=True)
 create and open the MS, no special data manager columns Only the holography filler has useFeedDDFiller = False.
virtual Bool hasMS ()
virtual void flush ()
 Flush the MS and all subtables known here.
virtual void reattach ()
 re-attach to the same MS - forces MSMainColumns to be redone
virtual MSMainColumns & cols ()
 return the main table columns
virtual GBTFeedDDFillerfeedDDFiller ()
 The several sub-table filler.
virtual GBTMSAntennaFillerantennaFiller ()
virtual GBTMSDataDescFillerdataDescFiller ()
virtual GBTMSFeedFillerfeedFiller ()
virtual GBTMSFieldFillerfieldFiller ()
virtual GBTMSHistoryFillerhistoryFiller ()
virtual GBTMSObservationFillerobservationFiller ()
virtual GBTMSPointingFillerpointingFiller ()
virtual GBTMSPolarizationFillerpolarizationFiller ()
virtual GBTMSProcessorFillerprocessorFiller ()
virtual GBTMSSourceFillersourceFiller ()
virtual GBTMSSpecWinFillerspecWinFiller ()
virtual GBTMSStateFillerstateFiller ()
virtual GBTMSSysCalFillersysCalFiller ()
virtual GBTMSWeatherFillerweatherFiller ()
virtual MVTime & startTime ()
 return the last time in the MS when it was opened all filling must happen for times on or after this time
GBTLO1DAPFillerlo1Filler ()
 return a reference to the LO1 filler, by pointer for now.
ArrayColumn< Complex > & modelData ()
 The calibration columns.
ArrayColumn< Complex > & correctedData ()

Static Public Member Functions

static TableLock tableLock ()
 static function giving the default TableLock to be used to open all MS tables

Private Member Functions

void initSubTableFillers (Bool useFeedDDFiller)
 initialize the sub-table fillers once the MS has been re-opened or constructed
void addCalSet (const IPosition &defaultTileShape, Bool compress)
 add calibration columns
void initCalSet ()
 initialize calibration columns by setting their shape and their initial default values.
void attachCalSet ()
 attach the calibration columns
 GBTBackendFiller (const GBTBackendFiller &other)
 undefined and unavailable
GBTBackendFilleroperator= (const GBTBackendFiller &other)

Private Attributes

MeasurementSet * ms_p
 The MeasurementSet.
Bool hasMS_p
MSMainColumns * mscols_p
 the main table columns
GBTFeedDDFiller feedDDFiller_p
 The various subtable fillers.
GBTMSAntennaFiller antennaFiller_p
GBTMSDataDescFiller dataDescFiller_p
GBTMSFeedFiller feedFiller_p
GBTMSFieldFiller fieldFiller_p
GBTMSHistoryFiller historyFiller_p
GBTMSObservationFiller observationFiller_p
GBTMSPointingFiller pointingFiller_p
GBTMSPolarizationFiller polarizationFiller_p
GBTMSProcessorFiller processorFiller_p
GBTMSSourceFiller sourceFiller_p
GBTMSSpecWinFiller specWinFiller_p
GBTMSStateFiller stateFiller_p
GBTMSSysCalFiller sysCalFiller_p
GBTMSWeatherFiller weatherFiller_p
ArrayColumn< Complex > modelData_p
 calibration columns
ArrayColumn< Complex > correctedData_p
SimpleOrderedMap< String, Int > deviceMap_p
 map device name string to the appropriate GBTDAPFiller
Block< GBTDAPFiller * > dapFillers_p
 the block containing the pointers to the various GBTDAPFillers
Block< Bool > readyToFill_p
 this indicates which ones are ready to fill (the flag is set to true in prepareDAPfillers and set to False in fillDAP
Int antennaDAPFiller_p
 this points to the antenna DAP filler when one exists
Int lo1DAPFiller_p
 this points to the LO1 DAP filler when one exists
MVTime startTime_p

Detailed Description

A base class for GBT backend fillers.

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

The GBT MeasurementSet filler is driven by the contents of the backend data to be filled. This class is the base class for these backend fillers for GBT data, hence GBTBackendFiller.

Synopsis

Example

Motivation

It should be possible to write a new filler by deriving from this class and plug the new class into the filler DO and have the DO understand that new backend. It is also required that the GBTScanLogReader be updated to recognize this new backend.

Thrown Exceptions

To Do

Definition at line 122 of file GBTBackendFiller.h.


Constructor & Destructor Documentation

construct an empty filler, openMS or createMS must be called before this is a useful filler.

virtual GBTBackendFiller::~GBTBackendFiller ( ) [virtual]

undefined and unavailable


Member Function Documentation

void GBTBackendFiller::addCalSet ( const IPosition &  defaultTileShape,
Bool  compress 
) [private]

add calibration columns

virtual GBTMSAntennaFiller& GBTBackendFiller::antennaFiller ( ) [inline, virtual]

Definition at line 223 of file GBTBackendFiller.h.

References antennaFiller_p.

void GBTBackendFiller::attachCalSet ( ) [private]

attach the calibration columns

virtual MSMainColumns& GBTBackendFiller::cols ( ) [inline, virtual]

return the main table columns

Definition at line 215 of file GBTBackendFiller.h.

References mscols_p.

ArrayColumn<Complex>& GBTBackendFiller::correctedData ( ) [inline]

Definition at line 252 of file GBTBackendFiller.h.

References correctedData_p.

virtual Bool GBTBackendFiller::createMS ( const String msName,
const TableDesc &  mainTD,
const DataManager &  dm,
const Vector< String > &  dmColNames,
const IPosition &  defaultTileShape,
const GBTMSFillOptions fillOptions,
Int  nrows = 0,
Bool  spectralLine = False,
Bool  useFeedDDFiller = True 
) [virtual]

create and open the MS, using the given TableDesc for the Main table of the MS.

Also supply a data manager an the main table column names it should be bound to. When spectralLine is true the following optional columns are added to the indicated tables: SYSCAL: TCAL_SPECTRUM, TRX, and TRX_FLAG SOURCE: REST_FREQUENCY

virtual Bool GBTBackendFiller::createMS ( const String msName,
const TableDesc &  mainTD,
const DataManager &  dm,
const Vector< String > &  dmColNames,
const IPosition &  defaultTileShape,
const GBTMSFillOptions fillOptions,
const DataManager &  dm2,
const Vector< String > &  dm2ColNames,
Int  nrows = 0,
Bool  spectralLine = False,
Bool  useFeedDDFiller = True 
) [virtual]

Supply a second data manager and its columns (this is used when a LAGS column is required).

Returns false if the MS can not be created. Always uses the GBTFeedDDFiller. Only the holography filler has useFeedDDFiller = False.

virtual Bool GBTBackendFiller::createMS ( const String msName,
const TableDesc &  mainTD,
const GBTMSFillOptions fillOptions,
Int  nrows = 0,
Bool  useFeedDDFiller = True 
) [virtual]

create and open the MS, no special data manager columns Only the holography filler has useFeedDDFiller = False.

virtual GBTMSDataDescFiller& GBTBackendFiller::dataDescFiller ( ) [inline, virtual]

Definition at line 224 of file GBTBackendFiller.h.

References dataDescFiller_p.

virtual GBTFeedDDFiller& GBTBackendFiller::feedDDFiller ( ) [inline, virtual]

The several sub-table filler.

feedFiller, dataDescFiller, polarizationFiller and specWinFiller are all not attached in favor of feedDDFiller unless useFeedDDFiller is False in openMS or createMS.

Definition at line 222 of file GBTBackendFiller.h.

References feedDDFiller_p.

virtual GBTMSFeedFiller& GBTBackendFiller::feedFiller ( ) [inline, virtual]

Definition at line 225 of file GBTBackendFiller.h.

References feedFiller_p.

virtual GBTMSFieldFiller& GBTBackendFiller::fieldFiller ( ) [inline, virtual]

Definition at line 226 of file GBTBackendFiller.h.

References fieldFiller_p.

virtual Bool GBTBackendFiller::fill ( const String backendFile,
const Block< String > &  dapFiles,
const String ifManagerFile,
const Block< String > &  rxCalInfoFiles,
const GBTGOFile GOFile,
const String antennaFile,
const GBTStateTable masterState,
const GBTLO1File LO1A,
const GBTLO1File LO1B,
const GBTMSFillOptions fillOptions 
) [pure virtual]

fill a given backend file and DAP files

Implemented in GBTACSFiller, GBTSPFiller, GBTDCRFiller, and GBTHoloFiller.

virtual void GBTBackendFiller::fillDAP ( ) [virtual]

fill all of the prepared DAP files

virtual void GBTBackendFiller::flush ( ) [virtual]

Flush the MS and all subtables known here.

virtual Bool GBTBackendFiller::hasMS ( ) [inline, virtual]

Definition at line 206 of file GBTBackendFiller.h.

References hasMS_p.

virtual GBTMSHistoryFiller& GBTBackendFiller::historyFiller ( ) [inline, virtual]

Definition at line 227 of file GBTBackendFiller.h.

References historyFiller_p.

void GBTBackendFiller::initCalSet ( ) [private]

initialize calibration columns by setting their shape and their initial default values.

This is only used when data already has been filled.

void GBTBackendFiller::initSubTableFillers ( Bool  useFeedDDFiller) [private]

initialize the sub-table fillers once the MS has been re-opened or constructed

return a reference to the LO1 filler, by pointer for now.

This pointer should not be deleted. It will be a null pointer if there is no LO1 manager associated with this filler yet.

Definition at line 246 of file GBTBackendFiller.h.

References dapFillers_p, and lo1DAPFiller_p.

ArrayColumn<Complex>& GBTBackendFiller::modelData ( ) [inline]

The calibration columns.

Definition at line 251 of file GBTBackendFiller.h.

References modelData_p.

virtual MeasurementSet& GBTBackendFiller::ms ( ) [inline, virtual]

get the MS this filler is associated with

Definition at line 158 of file GBTBackendFiller.h.

References ms_p.

Definition at line 228 of file GBTBackendFiller.h.

References observationFiller_p.

virtual Bool GBTBackendFiller::openMS ( const String msName,
Bool  useFeedDDFiller = True 
) [virtual]

open the MS, this returns False if an MS of that name does not exist or can not be opened.

The holography filler has useFeedDDFiller = False here.

GBTBackendFiller& GBTBackendFiller::operator= ( const GBTBackendFiller other) [private]
virtual GBTMSPointingFiller& GBTBackendFiller::pointingFiller ( ) [inline, virtual]

Definition at line 229 of file GBTBackendFiller.h.

References pointingFiller_p.

Definition at line 230 of file GBTBackendFiller.h.

References polarizationFiller_p.

virtual Bool GBTBackendFiller::prepareDAPfillers ( const String dapfile,
const MVTime &  startTime 
) [virtual]

prepare the appropriate DAP filler based on the indicated file name

Definition at line 231 of file GBTBackendFiller.h.

References processorFiller_p.

virtual void GBTBackendFiller::reattach ( ) [virtual]

re-attach to the same MS - forces MSMainColumns to be redone

virtual GBTMSSourceFiller& GBTBackendFiller::sourceFiller ( ) [inline, virtual]

Definition at line 232 of file GBTBackendFiller.h.

References sourceFiller_p.

virtual GBTMSSpecWinFiller& GBTBackendFiller::specWinFiller ( ) [inline, virtual]

Definition at line 233 of file GBTBackendFiller.h.

References specWinFiller_p.

virtual MVTime& GBTBackendFiller::startTime ( ) [inline, virtual]

return the last time in the MS when it was opened all filling must happen for times on or after this time

Definition at line 241 of file GBTBackendFiller.h.

References startTime_p.

virtual GBTMSStateFiller& GBTBackendFiller::stateFiller ( ) [inline, virtual]

Definition at line 234 of file GBTBackendFiller.h.

References stateFiller_p.

virtual GBTMSSysCalFiller& GBTBackendFiller::sysCalFiller ( ) [inline, virtual]

Definition at line 235 of file GBTBackendFiller.h.

References sysCalFiller_p.

static TableLock GBTBackendFiller::tableLock ( ) [inline, static]

static function giving the default TableLock to be used to open all MS tables

Definition at line 133 of file GBTBackendFiller.h.

what type of backend is this

Implemented in GBTACSFiller, GBTSPFiller, GBTDCRFiller, and GBTHoloFiller.

virtual GBTMSWeatherFiller& GBTBackendFiller::weatherFiller ( ) [inline, virtual]

Definition at line 236 of file GBTBackendFiller.h.

References weatherFiller_p.


Member Data Documentation

this points to the antenna DAP filler when one exists

Definition at line 290 of file GBTBackendFiller.h.

Definition at line 264 of file GBTBackendFiller.h.

Referenced by antennaFiller().

ArrayColumn<Complex> GBTBackendFiller::correctedData_p [private]

Definition at line 280 of file GBTBackendFiller.h.

Referenced by correctedData().

the block containing the pointers to the various GBTDAPFillers

Definition at line 285 of file GBTBackendFiller.h.

Referenced by lo1Filler().

Definition at line 265 of file GBTBackendFiller.h.

Referenced by dataDescFiller().

SimpleOrderedMap<String, Int> GBTBackendFiller::deviceMap_p [private]

map device name string to the appropriate GBTDAPFiller

Definition at line 283 of file GBTBackendFiller.h.

The various subtable fillers.

Definition at line 263 of file GBTBackendFiller.h.

Referenced by feedDDFiller().

Definition at line 266 of file GBTBackendFiller.h.

Referenced by feedFiller().

Definition at line 267 of file GBTBackendFiller.h.

Referenced by fieldFiller().

Bool GBTBackendFiller::hasMS_p [private]

Definition at line 257 of file GBTBackendFiller.h.

Referenced by hasMS().

Definition at line 268 of file GBTBackendFiller.h.

Referenced by historyFiller().

this points to the LO1 DAP filler when one exists

Definition at line 292 of file GBTBackendFiller.h.

Referenced by lo1Filler().

ArrayColumn<Complex> GBTBackendFiller::modelData_p [private]

calibration columns

Definition at line 280 of file GBTBackendFiller.h.

Referenced by modelData().

MeasurementSet* GBTBackendFiller::ms_p [private]

The MeasurementSet.

Definition at line 256 of file GBTBackendFiller.h.

Referenced by ms().

MSMainColumns* GBTBackendFiller::mscols_p [private]

the main table columns

Definition at line 260 of file GBTBackendFiller.h.

Referenced by cols().

Definition at line 269 of file GBTBackendFiller.h.

Referenced by observationFiller().

Definition at line 270 of file GBTBackendFiller.h.

Referenced by pointingFiller().

Definition at line 271 of file GBTBackendFiller.h.

Referenced by polarizationFiller().

Definition at line 272 of file GBTBackendFiller.h.

Referenced by processorFiller().

Block<Bool> GBTBackendFiller::readyToFill_p [private]

this indicates which ones are ready to fill (the flag is set to true in prepareDAPfillers and set to False in fillDAP

Definition at line 288 of file GBTBackendFiller.h.

Definition at line 273 of file GBTBackendFiller.h.

Referenced by sourceFiller().

Definition at line 274 of file GBTBackendFiller.h.

Referenced by specWinFiller().

Definition at line 294 of file GBTBackendFiller.h.

Referenced by startTime().

Definition at line 275 of file GBTBackendFiller.h.

Referenced by stateFiller().

Definition at line 276 of file GBTBackendFiller.h.

Referenced by sysCalFiller().

Definition at line 277 of file GBTBackendFiller.h.

Referenced by weatherFiller().


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