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

This class fills the FEED and DATA_DESCRIPTION tables for GBT data. More...

#include <GBTFeedDDFiller.h>

List of all members.

Public Member Functions

 GBTFeedDDFiller ()
 Default constructor, not associated with any parent MeasurementSet.
 GBTFeedDDFiller (MeasurementSet &ms)
 Construct this attached to the associated MS.
 ~GBTFeedDDFiller ()
void attach (MeasurementSet &ms)
 attach this to a MS, breaks any existing attachments
Bool isAttached ()
Bool fill (const GBTBackendTable &backend, const GBTIFFiller &iffiller, const GBTAntennaFile &antFile, const GBTLO1File &lo1aFile, const GBTLO1File &lo1bFile, const String &swtchsig, Bool continuum=False, Bool bankCheck=False)
 digest the scan using these tables/files and fill to the appropriate sub-tables.
uInt nfeeds ()
 The number of feeds just filled.
uInt nstates ()
 Number of states for things just filled.
const GBTFeedfeed (uInt whichFeed) const
 Get a specific GBTFeed - 0 through nfeeds()-1.
GBTFeedfeed (uInt whichFeed)
 Get a specific GBTFeed to possibley modify - 0 through nfeeds()-1.
void setTime (Double time, Double interval)
 Set the midpoint and interval for this scan - generally this isn't known until after most of this information is filled and need.
void flush ()
 flush all associated fillers
Bool hasBeamSwitched ()
 Does this most recently filled data contain any beam switched data?
void origin () const
 These functions allow one to easily iterate through and get the IDs and sampler row numbers for each of the correlations and states involved in all feeds in the most recently filled data.
uInt ncorr () const
 The total number of correlations, all feeds.
void next () const
 Move to the next correlation.
const GBTFeedcurrFeed () const
 The current feed.
const GBTIFcurrIF () const
 The current IF.
const GBTCorrelationcurrCorr () const
 The current correlation.

Private Member Functions

void clear ()
void digestFeeds (const GBTAntennaFile &antFile, const GBTIFFiller &iffiller, const String &swtchsig)
void digestSampler (const GBTBackendTable &backend, const GBTIFFiller &iffiller, const GBTLO1File &lo1aFile, const GBTLO1File &lo1bFile, Bool continuum, Bool bankCheck)
void fillMSSW ()
void findOtherBanks (const GBTIFFiller &iffiller)
 GBTFeedDDFiller (const GBTFeedDDFiller &)
GBTFeedDDFilleroperator= (const GBTFeedDDFiller &)

Private Attributes

Bool itsAttached
uInt itsNfeeds
uInt itsNcorr
uInt itsNstate
Block< GBTFeed * > itsFeeds
SimpleOrderedMap< Int, Int > itsFeedMap
GBTMSFeedFiller itsFeedFiller
GBTMSPolarizationFiller itsPolFiller
GBTMSSpecWinFiller itsSWFiller
GBTMSDataDescFiller itsDDFiller
uInt itsCurrFeed
uInt itsCurrIF
uInt itsCurrCorr
uInt itsCurrNif
uInt itsCurrNcorr
uInt itsCurrCount
GBTFeeditsCurrFeedPtr
GBTIFitsCurrIFPtr
GBTCorrelationitsCurrCorrPtr

Detailed Description

This class fills the FEED and DATA_DESCRIPTION tables for GBT data.

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd
Test programs:
tGBTFeedDDFIller

Prerequisite

Etymology

This class takes the GBT backend FITS file, IF manager file and Antenna manager file for a scan, digests them so that each sampler is associated with a FEED and IF. At that point, the FEED, POLARIZATION, SPECTRAL_WINDOW, and DATA_DESCRIPTION tables can all be filled.

Synopsis

Example

Motivation

Definition at line 90 of file GBTFeedDDFiller.h.


Constructor & Destructor Documentation

Default constructor, not associated with any parent MeasurementSet.

This is useful only when this object must exist before the MS does. An MS can be attached later. If fill is called before the MS is attached, it will return False.

GBTFeedDDFiller::GBTFeedDDFiller ( MeasurementSet &  ms)

Construct this attached to the associated MS.


Member Function Documentation

void GBTFeedDDFiller::attach ( MeasurementSet &  ms)

attach this to a MS, breaks any existing attachments

void GBTFeedDDFiller::clear ( ) [private]
const GBTCorrelation& GBTFeedDDFiller::currCorr ( ) const [inline]

The current correlation.

Definition at line 162 of file GBTFeedDDFiller.h.

References itsCurrCorrPtr.

const GBTFeed& GBTFeedDDFiller::currFeed ( ) const [inline]

The current feed.

Definition at line 158 of file GBTFeedDDFiller.h.

References itsCurrFeedPtr.

const GBTIF& GBTFeedDDFiller::currIF ( ) const [inline]

The current IF.

Definition at line 160 of file GBTFeedDDFiller.h.

References itsCurrIFPtr.

void GBTFeedDDFiller::digestFeeds ( const GBTAntennaFile antFile,
const GBTIFFiller iffiller,
const String swtchsig 
) [private]
void GBTFeedDDFiller::digestSampler ( const GBTBackendTable backend,
const GBTIFFiller iffiller,
const GBTLO1File lo1aFile,
const GBTLO1File lo1bFile,
Bool  continuum,
Bool  bankCheck 
) [private]
const GBTFeed& GBTFeedDDFiller::feed ( uInt  whichFeed) const [inline]

Get a specific GBTFeed - 0 through nfeeds()-1.

Definition at line 131 of file GBTFeedDDFiller.h.

References itsFeeds.

GBTFeed& GBTFeedDDFiller::feed ( uInt  whichFeed) [inline]

Get a specific GBTFeed to possibley modify - 0 through nfeeds()-1.

Definition at line 134 of file GBTFeedDDFiller.h.

References itsFeeds.

Bool GBTFeedDDFiller::fill ( const GBTBackendTable backend,
const GBTIFFiller iffiller,
const GBTAntennaFile antFile,
const GBTLO1File lo1aFile,
const GBTLO1File lo1bFile,
const String swtchsig,
Bool  continuum = False,
Bool  bankCheck = False 
)

digest the scan using these tables/files and fill to the appropriate sub-tables.

Returns False if there is no MS attached. Selection on a specific backend has already occured in the GBTIFFiller setup which should correspond to the backend that sampler is from. If continuum is True then the doppler info from the LO1 tables will be ignored in the GBTIF constructor. Also, at this time each correlation will contain just one receptor. If bankCheck is true then checks occur which are only appropriate to the multi-bank ACS case.

void GBTFeedDDFiller::fillMSSW ( ) [private]
void GBTFeedDDFiller::findOtherBanks ( const GBTIFFiller iffiller) [private]

flush all associated fillers

Does this most recently filled data contain any beam switched data?

Definition at line 145 of file GBTFeedDDFiller.h.

References GBTMSFeedFiller::hasBeamSwitched(), and itsFeedFiller.

Bool GBTFeedDDFiller::isAttached ( ) [inline]

Definition at line 107 of file GBTFeedDDFiller.h.

References itsAttached.

uInt GBTFeedDDFiller::ncorr ( ) const [inline]

The total number of correlations, all feeds.

Definition at line 154 of file GBTFeedDDFiller.h.

References itsNcorr.

void GBTFeedDDFiller::next ( ) const

Move to the next correlation.

Can do this ncorr() times after origin().

uInt GBTFeedDDFiller::nfeeds ( ) [inline]

The number of feeds just filled.

Definition at line 125 of file GBTFeedDDFiller.h.

References itsNfeeds.

uInt GBTFeedDDFiller::nstates ( ) [inline]

Number of states for things just filled.

Definition at line 128 of file GBTFeedDDFiller.h.

References itsNstate.

GBTFeedDDFiller& GBTFeedDDFiller::operator= ( const GBTFeedDDFiller ) [private]
void GBTFeedDDFiller::origin ( ) const

These functions allow one to easily iterate through and get the IDs and sampler row numbers for each of the correlations and states involved in all feeds in the most recently filled data.

Reset the iterator to the top.

void GBTFeedDDFiller::setTime ( Double  time,
Double  interval 
) [inline]

Set the midpoint and interval for this scan - generally this isn't known until after most of this information is filled and need.

This only affects the FEED subtable.

Definition at line 139 of file GBTFeedDDFiller.h.

References itsFeedFiller, and GBTMSFeedFiller::setTime().


Member Data Documentation

Definition at line 165 of file GBTFeedDDFiller.h.

Referenced by isAttached().

uInt GBTFeedDDFiller::itsCurrCorr [mutable, private]

Definition at line 179 of file GBTFeedDDFiller.h.

Definition at line 183 of file GBTFeedDDFiller.h.

Referenced by currCorr().

uInt GBTFeedDDFiller::itsCurrCount [mutable, private]

Definition at line 179 of file GBTFeedDDFiller.h.

uInt GBTFeedDDFiller::itsCurrFeed [mutable, private]

Definition at line 179 of file GBTFeedDDFiller.h.

Definition at line 181 of file GBTFeedDDFiller.h.

Referenced by currFeed().

uInt GBTFeedDDFiller::itsCurrIF [mutable, private]

Definition at line 179 of file GBTFeedDDFiller.h.

GBTIF* GBTFeedDDFiller::itsCurrIFPtr [mutable, private]

Definition at line 182 of file GBTFeedDDFiller.h.

Referenced by currIF().

uInt GBTFeedDDFiller::itsCurrNcorr [mutable, private]

Definition at line 179 of file GBTFeedDDFiller.h.

uInt GBTFeedDDFiller::itsCurrNif [mutable, private]

Definition at line 179 of file GBTFeedDDFiller.h.

Definition at line 177 of file GBTFeedDDFiller.h.

Definition at line 174 of file GBTFeedDDFiller.h.

Referenced by hasBeamSwitched(), and setTime().

SimpleOrderedMap<Int, Int> GBTFeedDDFiller::itsFeedMap [private]

Definition at line 172 of file GBTFeedDDFiller.h.

Block<GBTFeed *> GBTFeedDDFiller::itsFeeds [private]

Definition at line 168 of file GBTFeedDDFiller.h.

Referenced by feed().

uInt GBTFeedDDFiller::itsNcorr [private]

Definition at line 167 of file GBTFeedDDFiller.h.

Referenced by ncorr().

Definition at line 167 of file GBTFeedDDFiller.h.

Referenced by nfeeds().

Definition at line 167 of file GBTFeedDDFiller.h.

Referenced by nstates().

Definition at line 175 of file GBTFeedDDFiller.h.

Definition at line 176 of file GBTFeedDDFiller.h.


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