GBTMultiACSTable.h
Classes
- GBTMultiACSTable -- A GBTMultiBackendTable for the ACS (full description)
Interface
- Public Members
- GBTMultiACSTable(const Vector<String> &fileNames, GBTACSTable::VanVleckCorr vanVleckCorr=GBTACSTable::DefaultVanVleck, GBTACSTable::Smoothing smoothing = GBTACSTable::DefaultSmoothing, Int vvsize=65, Bool useDCBias = False, Double dcbias=0.0, Int minbiasfactor=-1, Bool fixlags = False, String fixlagslog="", Double sigmaFactor=6.0, Int spikeStart=200)
- ~GBTMultiACSTable()
- virtual Bool reopen(const Vector<String> &fileNames, Bool resync=True)
- virtual Bool reopen(const String &fileName, Bool resync)
- virtual Bool reopen(const String &fileName)
- GBTScanLogReader::BACKENDS type() const
- virtual const String &name() const
- virtual const Vector<String> &names() const
- virtual Bool isValid() const
- virtual uInt nstate() const
- virtual uInt nchan(uInt whichSampler) const
- virtual Double bw(uInt whichSampler) const
- virtual Double centerIF(uInt whichSampler) const
- virtual Bool increases(uInt whichSampler) const
- virtual const TableRecord &keywords() const
- virtual void next()
- virtual const Record ¤tRow() const
- virtual const Record &unhandledKeywords()
- virtual void handleKeyword(const String &kwname)
- virtual const RecordDesc &description() const
- virtual const Record &units() const
- virtual const Record &displayFormats() const
- virtual const Record &nulls() const
- virtual const Record &unhandledFields()
- virtual void handleField(const String &fieldname)
- virtual const Table &sampler() const
- virtual const GBTStateTable &state() const
- virtual const Table &actState() const
- virtual const Table &port() const
- virtual uInt nrow() const
- virtual uInt rownr() const
- virtual const String &fitsVers() const
- virtual Int baseVersion() const
- virtual Int deviceVersion() const
- virtual const Array<Float> rawdata(uInt whichSampler)
- virtual const Array<Float> data(uInt whichSampler)
- virtual const Array<Float> zeroChannel(uInt whichSampler)
- virtual const Array<Bool> badData(uInt whichSampler)
- virtual Bool switchOK() const
- virtual Int nlevels(uInt whichSampler) const
- virtual Float integrat(uInt whichSampler, uInt whichState) const
- virtual Double dmjd()
- virtual Double timeMid()
- virtual String banks()
- Private Members
- Bool init(Bool resync=False)
- GBTACSTable &defBank() const
- GBTMultiACSTable()
- GBTMultiACSTable(const GBTMultiACSTable &)
- GBTMultiACSTable &operator=(const GBTMultiACSTable &)
Review Status
- Date Reviewed:
- yyyy/mm/dd
Prerequisite
Etymology
Synopsis
GBTMultiACStTable is a GBTACSTable holding
data from multiple banks. It makes it look as if it all
came from the same data source. In order for this
to work. The ACT_STATE and STATE tables must be the
same in all banks and the integration time in each
bank must be the same.
Example
Motivation
Member Description
GBTMultiACSTable(const Vector<String> &fileNames, GBTACSTable::VanVleckCorr vanVleckCorr=GBTACSTable::DefaultVanVleck, GBTACSTable::Smoothing smoothing = GBTACSTable::DefaultSmoothing, Int vvsize=65, Bool useDCBias = False, Double dcbias=0.0, Int minbiasfactor=-1, Bool fixlags = False, String fixlagslog="", Double sigmaFactor=6.0, Int spikeStart=200)
Construct it from a vector of file names
virtual Bool reopen(const Vector<String> &fileNames, Bool resync=True)
Attach this GBTMultiACSTable to a new set of file names.
If fileNames are the same as the
currently opened filse, if there are any, then this just
closes and reopens the FITS files, setting things right
back to the next row in each table, if there are any.
virtual Bool reopen(const String &fileName, Bool resync)
reopen if there's just one file
virtual Bool reopen(const String &fileName)
This is necessary to avoid hiding the FITSTabular version
Return the type of this backend
virtual const String &name() const
Returns the name of the file serving up the default bank
virtual Bool isValid() const
Is everything okay.
virtual uInt nstate() const
The number of elements along the STATE axis
virtual uInt nchan(uInt whichSampler) const
The number of elements along the frequency axis (default to 1
for non-spectral line data) for a specific sampler.
virtual Double bw(uInt whichSampler) const
The bandwidth of the indicated sampler. If this is < 0 then that
signals that it is not known here and it should be fetched from
the IF BANDWDTH column.
virtual Double centerIF(uInt whichSampler) const
The center IF for the indicated sampler. If this is < 0 then that
signals that it is not known here and it should be fetched from
the IF CENTER_IF column.
virtual Bool increases(uInt whichSampler) const
Indicates whether frequency increases with channel number for the
given sampler.
The keywords from the FITS data tables merged into a single record.
virtual void next()
advance to the next row in all tables
return the current row in the default underlying table
It is here because of inheritance but it should not be used.
The unhandled keywords
Mark a keyword as handled;
virtual const Record &units() const
virtual const Record &nulls() const
Return the unhandled fields in the current row of the current table
Mark a field in the current row of all tables as being handled.
The ancilliary tables
virtual uInt nrow() const
Total number of rows in each bank (should be the same)
virtual uInt rownr() const
This specific row (relative to total from all banks)
FITSVER - should be the same for all banks
Leading integer (before decimal) of FITSVER
Trailing integer(after decimal) of FITSVER
virtual const Array<Float> rawdata(uInt whichSampler)
get the raw data at the current row.
virtual const Array<Float> data(uInt whichSampler)
get the data for the current row, applying the indicated vanVleck
correction and smoothing for the Schwab correction, use the indicated
table size. If useDCBias is True, an attempt is made to use the
DCBias (average of the autocorrelations over the last 5% of the lags) in
the van vleck correction if the Schwab correction is specified.
virtual const Array<Float> zeroChannel(uInt whichSampler)
get the zero channel for the current row, vanVleck correction is
applied. It is only done once for each row, independent of whether
data or zeroChannel are called first.
virtual const Array<Bool> badData(uInt whichSampler)
is the data in the current row bad. It is only done once for each row,
independent of whether data, zeroChannel, or badData are called first.
virtual Bool switchOK() const
Do the switching signals in ACT_STATE follow the
documentation? Prior to FITSVER 1.2 they had the
opposite sense.
virtual Int nlevels(uInt whichSampler) const
return the number of sampler levels for the indicate sampler
virtual Float integrat(uInt whichSampler, uInt whichState) const
The value of the INTEGRAT field in the current row for
the given sampler and state
virtual Double dmjd()
The DMJD value from the current row
virtual Double timeMid()
The value of the TIME-MID field in the current row
A string comprising the banks to be filled
Bool init(Bool resync=False)
Undefined and inaccessible.
GBTMultiACSTable &operator=(const GBTMultiACSTable &)