casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
casa::MSCache Class Reference

#include <MSCache.h>

Inheritance diagram for casa::MSCache:
casa::PlotMSCacheBase

Public Member Functions

 MSCache (PlotMSApp *parent)
 Constructor which takes parent PlotMS. More...
 
virtual ~MSCache ()
 Destructor. More...
 
PlotMSCacheBase::Type cacheType () const
 Identify myself. More...
 
void setFilename (casacore::String filename)
 ...not yet casacore::MS-specific... More...
 
virtual casacore::String polname (casacore::Int ipol)
 Access to pol names. More...
 
const PageHeaderCachepageHeaderCache () const
 
- Public Member Functions inherited from casa::PlotMSCacheBase
 PlotMSCacheBase (PlotMSApp *parent, PlotMSPlot *plot=nullptr)
 Constructor which takes parent PlotMS. More...
 
virtual ~PlotMSCacheBase ()
 Destructor. More...
 
casacore::String calType () const
 
bool polnRatio () const
 
int nmetadata () const
 Meta axes info. More...
 
PMS::Axis metadata (int i)
 
bool hasOverlay ()
 ATM or TSKY axis; for adjusting plot ranges. More...
 
bool canShowImageCurve ()
 IMAGESB axis; for axis labels/title (image curve axis not always loaded) More...
 
PlotMSIndexerindexer (int dataIndex, casacore::uInt i)
 Reference an indexer; returns -1 if there is no indexer for the given dataIndex. More...
 
PlotMSIndexerindexer0 ()
 
void resizeIndexer (int size)
 
int getDataCount () const
 
casacore::Int nIter (int dataIndex) const
 
PMS::Axis getIterAxis () const
 
casacore::Int nChunk () const
 Report the number of chunks. More...
 
bool cacheReady () const
 Returns whether cache is filled. More...
 
bool wasCanceled () const
 Returns whether user canceled during loading chunks. More...
 
casacore::Matrix< casacore::Int > & chunkShapes ()
 Report the data shapes. More...
 
casacore::Bool goodChunk (casacore::Int ichunk)
 A chunk is good (T) if it contains data (when averaging, some chunks may have nrows=0) More...
 
bool hasReferenceValue (PMS::Axis axis)
 Is there a reference value for the specified axis? TBD: actually make this axis-dep? More...
 
double referenceValue (PMS::Axis axis)
 
casacore::Double refTime () const
 Report the reference time for this cache (in seconds) More...
 
casacore::MFrequency::Types getFreqFrame () const
 Frequency frame in original casacore::MS or requested by user. More...
 
std::vector< PMS::Axis > loadedAxes () const
 Returns which axes have been loaded into the cache, including metadata. More...
 
bool areRaDecAxesLoaded (const DirectionAxisParams &params) const
 Returns true if RA/DEC axes data. More...
 
PlotMSAveragingaveraging ()
 Access to averaging state in the cache: More...
 
PlotMSTransformationstransformations ()
 Access to transformations state in the cache. More...
 
virtual void load (const std::vector< PMS::Axis > &axes, const std::vector< PMS::DataColumn > &data, const casacore::String &filename, const PlotMSSelection &selection, const PlotMSAveraging &averaging, const PlotMSTransformations &transformations, const PlotMSCalibration &calibration, ThreadCommunication *thread=NULL)
 Loads the cache for the given axes and data columns. More...
 
void clear ()
 Clears the cache of all stored values. More...
 
void clearRanges ()
 
void release (const std::vector< PMS::Axis > &axes)
 Releases the given axes from the cache. More...
 
bool isIndexerInitialized (PMS::Axis iteraxis, casacore::Bool globalXRange, casacore::Bool globalYRange, int dataIndex) const
 Set up indexing for the plot. More...
 
void setUpIndexer (PMS::Axis iteraxis=PMS::SCAN, casacore::Bool globalXRange=false, casacore::Bool globalYRange=false, const casacore::String &xconnect="none", bool timeconnect=false, int dataIndex=0)
 
bool hasChan ()
 Some metadata axes not loaded for certain calibration tables. More...
 
bool hasAnt2 ()
 
casacore::Double getScan (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getField (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getTime (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getTimeIntr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getSpw (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getFreq (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getVel (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getChan (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getCorr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAnt1 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAnt2 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getBsln (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRow (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getObsid (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getIntent (casacore::Int chnk, casacore::Int irel)
 this metadata axis is "loaded" for cal tables so check for empty array More...
 
casacore::Double getFeed1 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getFeed2 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmp (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpCorr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpModel (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpCorrMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpCorrModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpDataMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpDataModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpDataDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpDataDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpCorrDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpCorrDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAmpFloat (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPha (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaCorr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaModel (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaCorrMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaCorrModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaDataMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaDataModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaDataDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaDataDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaCorrDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPhaCorrDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getReal (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealCorr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealModel (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealCorrMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealCorrModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealDataMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealDataModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealDataDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealDataDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealCorrDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRealCorrDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImag (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagCorr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagModel (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagCorrMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagCorrModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagDataMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagDataModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagDataDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagDataDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagCorrDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImagCorrDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmp (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpCorr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpModel (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpCorrMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpCorrModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpDataMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpDataModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpDataDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpDataDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpCorrDivMod (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpCorrDivModS (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtxAmpFloat (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getFlag (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getFlagRow (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWt (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWtSp (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getSigma (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getSigmaSp (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getUVDist (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getUVDistL (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getU (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getV (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getW (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getUwave (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getVwave (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getWwave (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAz0 (casacore::Int chnk, casacore::Int irel)
 These are array-global (one value per chunk) More...
 
casacore::Double getEl0 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRadialVelocity0 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRHO0 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getHA0 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPA0 (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAntenna (casacore::Int chnk, casacore::Int irel)
 These are antenna-based. More...
 
casacore::Double getAz (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getEl (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getRa (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getDec (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getParAng (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getPar (casacore::Int chnk, casacore::Int irel)
 These support generic non-complex calibration. More...
 
casacore::Double getSnr (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAntPos (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getAtm (casacore::Int chnk, casacore::Int irel)
 Curve overlays. More...
 
casacore::Double getTsky (casacore::Int chnk, casacore::Int irel)
 
casacore::Double getImageSideband (casacore::Int chnk, casacore::Int irel)
 
casacore::Int scan (casacore::Int chnk)
 metadata axes More...
 
casacore::Int field (casacore::Int chnk)
 
casacore::Double time (casacore::Int chnk)
 
casacore::Double timeIntr (casacore::Int chnk)
 
casacore::Int spw (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & chan (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
freq (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
vel (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & corr (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & ant1 (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & ant2 (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & bsln (casacore::Int chnk)
 
casacore::Vector
< casacore::uInt > & 
row (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & obsid (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & intent (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & feed1 (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & feed2 (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampData (casacore::Int chnk)
 visibility and flag axes (S is for scalar residuals) More...
 
casacore::Array
< casacore::Float > & 
ampCorr (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampCorrModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampCorrModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampDataModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampDataModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampDataDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampDataDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampCorrDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampCorrDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
ampFloat (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaData (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaCorr (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaCorrModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaCorrModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaDataModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaDataModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaDataDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaDataDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaCorrDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
phaCorrDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realData (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realCorr (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realCorrModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realCorrModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realDataModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realDataModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realDataDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realDataDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realCorrDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
realCorrDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagData (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagCorr (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagCorrModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagCorrModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagDataModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagDataModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagDataDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagDataDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagCorrDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
imagCorrDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampData (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampCorr (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampCorrModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampCorrModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampDataModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampDataModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampDataDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampDataDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampCorrDivModel (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampCorrDivModelS (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
wtxampFloat (casacore::Int chnk)
 
casacore::Array< casacore::Bool > & flag (casacore::Int chunk)
 
casacore::Vector
< casacore::Bool > & 
flagrow (casacore::Int chunk)
 
casacore::Array
< casacore::Float > & 
wt (casacore::Int chnk)
 weight axes More...
 
casacore::Array
< casacore::Float > & 
wtsp (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
sigma (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
sigmasp (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
uVDist (casacore::Int chnk)
 observational geometry axes More...
 
casacore::Matrix
< casacore::Double > & 
uVDistL (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
u (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
v (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
w (casacore::Int chnk)
 
casacore::Matrix
< casacore::Double > & 
uWave (casacore::Int chnk)
 
casacore::Matrix
< casacore::Double > & 
vWave (casacore::Int chnk)
 
casacore::Matrix
< casacore::Double > & 
wWave (casacore::Int chnk)
 
casacore::Double az0 (casacore::Int chnk)
 
casacore::Double el0 (casacore::Int chnk)
 
casacore::Double ha0 (casacore::Int chnk)
 
casacore::Double pa0 (casacore::Int chnk)
 
casacore::Vector< casacore::Int > & ant (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
az (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
el (casacore::Int chnk)
 
casacore::Vector
< casacore::Float > & 
parAng (casacore::Int chnk)
 
casacore::Double radvel (casacore::Int chnk)
 ephemeris axes More...
 
casacore::Double rho (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
par (casacore::Int chnk)
 calibration axes More...
 
casacore::Array
< casacore::Float > & 
snr (casacore::Int chnk)
 
casacore::Array
< casacore::Float > & 
antpos (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
atm (casacore::Int chnk)
 curve overlay axes More...
 
casacore::Vector
< casacore::Double > & 
tsky (casacore::Int chnk)
 
casacore::Vector
< casacore::Double > & 
imageSideband (casacore::Int chnk)
 
casacore::Vector< casacore::IntgetChansPerBin (casacore::Int chnk, casacore::Int irel)
 Returns a list of channel numbers that were averaged together in that chunk. More...
 
casacore::Record locateInfo (int plotIterIndex, const casacore::Vector< PlotRegion > &regions, bool showUnflagged, bool showFlagged, bool selectAll)
 
PlotLogMessagelocateRange (int plotIterIndex, const casacore::Vector< PlotRegion > &regions, bool showUnflagged, bool showFlagged)
 
PlotLogMessageflagRange (int plotIterIndex, casa::PlotMSFlagging &flagging, const casacore::Vector< PlotRegion > &regions, bool showFlagged)
 
casacore::String getTimeBounds (int iterValue)
 Return a formatted string for time iteration plots giving the time range. More...
 
pair< casacore::Double,
casacore::Double
getTimeBounds () const
 Return the time as doubles. More...
 
pair< casacore::Double,
casacore::Double
getXAxisBounds (int index) const
 Return the axes ranges. More...
 
pair< casacore::Double,
casacore::Double
getYAxisBounds (int index) const
 
PMS::DataColumn getXDataColumn ()
 
PMS::DataColumn getYDataColumn (int index)
 
void setPlot (PlotMSPlot *plot)
 
bool isValidRaDecIndex (int index) const
 
const RaDecDatagetRaDataX (int index) const
 
const RaDecDatagetRaDataY (int index) const
 
const RaDecDatagetDecDataX (int index) const
 
const RaDecDatagetDecDataY (int index) const
 
void logmesg (const casacore::String &method, const casacore::String &message, int type=PlotLogger::MSG_INFO)
 public log method More...
 

Protected Member Functions

virtual void loadIt (std::vector< PMS::Axis > &loadAxes, std::vector< PMS::DataColumn > &loadData, ThreadCommunication *thread=NULL)
 casacore::MS-specific loadIt method More...
 
virtual bool isEphemeris ()
 Returns whether or not the ephemeris data has been attached to a field - radial velocity and rho. More...
 
- Protected Member Functions inherited from casa::PlotMSCacheBase
 PlotMSCacheBase (const PlotMSCacheBase &)
 Forbid copy for now. More...
 
void setCache (casacore::Int newnChunk, const std::vector< PMS::Axis > &loadAxes, const std::vector< PMS::DataColumn > &loadData, bool increaseCache=false)
 Resize storage for the number of chunks increaseCache parameter: false to initialize with empty Arrays before loading cache true to increase: copy values then add empty Arrays while loading cache. More...
 
template<typename T >
void addArrays (casacore::PtrBlock< casacore::Array< T > * > &input, bool increaseCache=false)
 
template<typename T >
void addMatrices (casacore::PtrBlock< casacore::Matrix< T > * > &input, bool increaseCache=false)
 
template<typename T >
void addVectors (casacore::PtrBlock< casacore::Vector< T > * > &input, bool increaseCache=false)
 
void deleteCache ()
 Clean up the PtrBlocks. More...
 
void deleteIndexer ()
 
void deleteAtm ()
 helpers for atm/tsky overlays More...
 
void printAtmStats (casacore::Int scan)
 
bool isEphemerisAxis (PMS::Axis axis) const
 
void setAxesMask (PMS::Axis axis, casacore::Vector< casacore::Bool > &axismask)
 Set the net axes mask (defines how to collapse flags for the chosen plot axes) More...
 
casacore::Vector< casacore::BoolnetAxesMask (PMS::Axis xaxis, PMS::Axis yaxis)
 Return the net axes mask for the currently set plot axes. More...
 
void setPlotMask (casacore::Int dataIndex)
 Derive the plot mask by appropriately collapsing the flags. More...
 
void setPlotMask (casacore::Int dataIndex, casacore::Int chunk)
 
void deletePlotMask ()
 Delete the whole plot mask. More...
 
void logInfo (const casacore::String &method, const casacore::String &message)
 Returns the number of points loaded for the given axis or 0 if not loaded. More...
 
void logDebug (const casacore::String &method, const casacore::String &message)
 
void logWarn (const casacore::String &method, const casacore::String &message)
 
void logError (const casacore::String &method, const casacore::String &message)
 
void logLoad (const casacore::String &message)
 
void logFlag (const casacore::String &message)
 
void log (const casacore::String &method, const casacore::String &message, int eventType)
 Logs the given message from the given method name as the given event type (see PlotLogger). More...
 
int findColorIndex (int chunk, bool initialize)
 Return the color lookup index for the chunk. More...
 
template<typename T >
checkIndex (int index, const std::vector< T > &v, const std::string &vname) const
 Check access to vector. More...
 

Private Member Functions

 MSCache (const MSCache &)
 Forbid copy for now. More...
 
casacore::String getDataColumn (std::vector< PMS::Axis > &loadAxes, std::vector< PMS::DataColumn > &loadData)
 Set up: DataColumn. More...
 
PMS::DataColumn checkReqDataColumn (PMS::DataColumn reqDataCol)
 
void adjustCurrentAxes (PMS::Axis axis, PMS::DataColumn olddata, PMS::DataColumn newdata)
 
casacore::String checkLoadedAxesDatacol ()
 
casacore::String normalizeColumnName (casacore::String plotmscol)
 
void getNamesFromMS (casacore::MeasurementSet &ms)
 MS String names. More...
 
void setUpVisIter (PlotMSSelection &selection, PlotMSCalibration &calibration, casacore::String dataColumn, std::vector< PMS::Axis > &loadAxes, std::vector< PMS::DataColumn > &loadData, casacore::Bool interactive=false, casacore::Bool estimateMemory=false, ThreadCommunication *thread=NULL)
 VisIter. More...
 
vi::VisibilityIterator2setUpVisIter (casacore::MeasurementSet &selectedMS, casacore::Vector< casacore::Vector< casacore::Slice > > chansel, casacore::Vector< casacore::Vector< casacore::Slice > > corrsel)
 
void setUpFrequencySelectionChannels (vi::FrequencySelectionUsingChannels fs, casacore::Vector< casacore::Vector< casacore::Slice > > chansel)
 
void deleteVi ()
 clean up More...
 
void deleteVm ()
 
void loadError (casacore::String mesg)
 
bool countChunks (vi::VisibilityIterator2 &vi, casacore::Vector< casacore::Int > &nIterPerAve, std::vector< PMS::Axis > &loadAxes, std::vector< PMS::DataColumn > &loadData, ThreadCommunication *thread)
 Estimate cache size for averaging. More...
 
void updateEstimateProgress (ThreadCommunication *thread)
 
void trapExcessVolume (map< PMS::Axis, casacore::Bool > pendingLoadAxes)
 Trap attempt to use to much memory (too many points) More...
 
void loadChunks (vi::VisibilityIterator2 &vi, const std::vector< PMS::Axis > loadAxes, const std::vector< PMS::DataColumn > loadData, ThreadCommunication *thread)
 Loop over VisIter, filling the cache. More...
 
void loadChunks (vi::VisibilityIterator2 &vi, const PlotMSAveraging &averaging, const casacore::Vector< casacore::Int > &nIterPerAve, const std::vector< PMS::Axis > loadAxes, const std::vector< PMS::DataColumn > loadData, ThreadCommunication *thread)
 
void updateProgress (ThreadCommunication *thread, casacore::Int chunk)
 
void forceVBread (vi::VisBuffer2 *vb, std::vector< PMS::Axis > loadAxes, std::vector< PMS::DataColumn > loadData)
 Force read on vb for requested axes (so pre-cache averaging treats all data it should) More...
 
void discernData (std::vector< PMS::Axis > loadAxes, std::vector< PMS::DataColumn > loadData, PlotMSVBAverager &vba)
 Tell time averager which data column to read. More...
 
void loadAxis (vi::VisBuffer2 *vb, casacore::Int vbnum, PMS::Axis axis, PMS::DataColumn data=PMS::DEFAULT_DATACOLUMN)
 Loads the specific axis/metadata into the cache using the given VisBuffer. More...
 
virtual void flagToDisk (const PlotMSFlagging &flagging, casacore::Vector< casacore::Int > &chunks, casacore::Vector< casacore::Int > &relids, casacore::Bool setFlag, PlotMSIndexer *indexer, int dataIndex)
 Set flags in the MS. More...
 
casacore::Vector
< casacore::Double
calcVelocity (vi::VisBuffer2 *vb)
 
bool useAveragedVisBuffer (PMS::Axis axis)
 For averaging done by PlotMSVBAverager; Some axes need to come from VB2 attached to VI2. More...
 
void loadPageHeaderCache (const casacore::MeasurementSet &selectedMS)
 Page Header Cache loading. More...
 
void completeLoadPageHeaderCache ()
 
void mapIntentNamesToIds ()
 
casacore::Vector< casacore::IntassignIntentIds (casacore::Vector< casacore::Int > &stateIds)
 Use map to assign intent ids. More...
 
bool pointingsPlotSupported (const MeasurementSet *const &ms)
 Check if plotting antennas pointing directions is supported for the given MeasurementSet. More...
 

Private Attributes

std::vector< casacore::IPositionvisBufferShapes_
 
casacore::String dataColumn_
 Datacolumn to use (requested or "adjusted") More...
 
map< casacore::String,
casacore::Int
intentIds_
 Create map of intent names to "intent ids" since state ids can duplicate intents. More...
 
casacore::Vector< casacore::IntnVBPerAve_
 Provisional flagging helpers. More...
 
vi::VisibilityIterator2vi_p
 VisIterator pointer. More...
 
vi::PointingInterpolationTVIpiTvi_
 
MSCacheVolMetervm_
 Volume meter for volume calculation. More...
 
map< casacore::Int, casacore::IntchansPerSpw_
 
bool ephemerisAvailable
 

Friends

class PlotMSIndexer
 Friend class declarations. More...
 

Additional Inherited Members

- Public Types inherited from casa::PlotMSCacheBase
enum  Type {
  MS,
  CAL
}
 TBD: friend class PlotMSData;. More...
 
using RaDecData = casacore::PtrBlock< casacore::Vector< casacore::Double > * >
 
using RaDecMap = std::map< DirectionAxisParams, RaDecData >
 
- Static Public Member Functions inherited from casa::PlotMSCacheBase
static bool axisIsMetaData (PMS::Axis axis)
 
- Static Public Attributes inherited from casa::PlotMSCacheBase
static const unsigned int THREAD_SEGMENT
 
static const PMS::Axis METADATA []
 
static const unsigned int N_METADATA
 
- Protected Attributes inherited from casa::PlotMSCacheBase
PlotMSAppplotms_
 Private data. More...
 
PlotMSPlotitsPlot_
 Parent PlotMSPlot, if any. More...
 
PlotMSIndexerindexer0_
 An empty indexer (its an empty PlotData object used for initialization) More...
 
std::vector
< casacore::PtrBlock
< PlotMSIndexer * > > 
indexer_
 The indexer into the cache. More...
 
casacore::Int nChunk_
 The number of chunks in the cache. More...
 
casacore::Double refTime_p
 The reference time for this cache, in seconds. More...
 
casacore::Int nAnt_
 The number of antennas. More...
 
casacore::MFrequency::Types freqFrame_
 Set frame from VI if not specified by user (for VI2::getFrequencies and axis label) More...
 
casacore::Double minX_
 Global min/max. More...
 
casacore::Double maxX_
 
casacore::Double minY_
 
casacore::Double maxY_
 
casacore::Matrix< casacore::Intchshapes_
 The fundamental meta-data cache. More...
 
casacore::Vector< casacore::BoolgoodChunk_
 
casacore::Vector
< casacore::Double
time_
 
casacore::Vector
< casacore::Double
timeIntr_
 
casacore::Vector< casacore::Intfield_
 
casacore::Vector< casacore::Intspw_
 
casacore::Vector< casacore::Intscan_
 
casacore::PtrBlock
< casacore::Vector
< casacore::uInt > * > 
row_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
antenna1_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
antenna2_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
baseline_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
uvdist_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
u_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
v_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
w_
 
casacore::PtrBlock
< casacore::Matrix
< casacore::Double > * > 
uvdistL_
 
casacore::PtrBlock
< casacore::Matrix
< casacore::Double > * > 
uwave_
 
casacore::PtrBlock
< casacore::Matrix
< casacore::Double > * > 
vwave_
 
casacore::PtrBlock
< casacore::Matrix
< casacore::Double > * > 
wwave_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
freq_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
vel_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
chan_
 
casacore::PtrBlock
< casacore::Array
< casacore::Int > * > 
chansPerBin_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
corr_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
obsid_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
intent_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
feed1_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
feed2_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Float > * > 
pa_
 Optional parts of the cache. More...
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
amp_
 casacore::Data (the heavy part) More...
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampCorr_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampCorrModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampCorrModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampDataModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampDataModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampDataDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampDataDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampCorrDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampCorrDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
ampFloat_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
pha_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaCorr_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaCorrModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaCorrModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaDataModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaDataModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaDataDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaDataDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaCorrDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
phaCorrDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
real_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realCorr_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realCorrModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realCorrModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realDataModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realDataModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realDataDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realDataDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realCorrDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
realCorrDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imag_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagCorr_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagCorrModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagCorrModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagDataModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagDataModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagDataDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagDataDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagCorrDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
imagCorrDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxamp_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampCorr_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampCorrModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampCorrModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampDataModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampDataModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampDataDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampDataDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampCorrDivModel_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampCorrDivModelS_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtxampFloat_
 
casacore::PtrBlock
< casacore::Array
< casacore::Bool > * > 
flag_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Bool > * > 
flagrow_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wt_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
wtsp_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
sigma_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
sigmasp_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Float > * > 
parang_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Int > * > 
antenna_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
az_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
el_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
ra_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
dec_
 
std::map< DirectionAxisParams,
RaDecData
raMap_
 
std::map< DirectionAxisParams,
RaDecData
decMap_
 
casacore::Vector
< casacore::Double
radialVelocity_
 
casacore::Vector
< casacore::Double
rho_
 
casacore::Vector
< casacore::Double
az0_
 
casacore::Vector
< casacore::Double
el0_
 
casacore::Vector
< casacore::Double
ha0_
 
casacore::Vector
< casacore::Double
pa0_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
atm_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
tsky_
 
casacore::PtrBlock
< casacore::Vector
< casacore::Double > * > 
imageSideband_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
par_
 for cal tables More...
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
snr_
 
casacore::PtrBlock
< casacore::Array
< casacore::Float > * > 
antpos_
 
bool dataLoaded_
 Current setup/state. More...
 
bool userCanceled_
 
std::vector< PMS::Axis > currentX_
 
std::vector< PMS::Axis > currentY_
 
std::vector< PMS::DataColumn > currentXData_
 
std::vector< PMS::DataColumn > currentYData_
 
std::vector< PMS::CoordSystem > currentXFrame_
 
std::vector< PMS::CoordSystem > currentYFrame_
 
std::vector< PMS::InterpMethod > currentXInterp_
 
std::vector< PMS::InterpMethod > currentYInterp_
 
std::vector< PMS::CoordSystem > xyFrame_
 
std::vector< PMS::InterpMethod > xyInterp_
 
std::vector< PMS::CoordSystem > loadXYFrame_
 
std::vector< PMS::InterpMethod > loadXYInterp_
 
decltype(raMap_)::mapped_type * loadRa_
 
decltype(decMap_)::mapped_type * loadDec_
 
map< PMS::Axis, bool > loadedAxes_
 
map< PMS::Axis, casacore::RecordloadedAxesData_
 
map< PMS::Axis, bool > pendingLoadAxes_
 map<PMS::Axis, std::set<PMS::DataColumn>> loadedAxesData_; More...
 
casacore::Vector
< casacore::Double
xminG_
 Global ranges (unflagged and flagged, per indexer) More...
 
casacore::Vector
< casacore::Double
xmaxG_
 
casacore::Vector
< casacore::Double
yminG_
 
casacore::Vector
< casacore::Double
ymaxG_
 
casacore::Vector
< casacore::Double
xflminG_
 
casacore::Vector
< casacore::Double
xflmaxG_
 
casacore::Vector
< casacore::Double
yflminG_
 
casacore::Vector
< casacore::Double
yflmaxG_
 
casacore::String filename_
 A copy of the casacore::Data parameters. More...
 
PlotMSSelection selection_
 
PlotMSAveraging averaging_
 
PlotMSTransformations transformations_
 
PlotMSCalibration calibration_
 
std::vector< casacore::Vector
< casacore::Bool > > 
netAxesMask_
 Axes mask. More...
 
std::vector
< casacore::PtrBlock
< casacore::Array
< casacore::Bool > * > > 
plmask_
 collapsed flag mask for plotting More...
 
casacore::Vector
< casacore::String
antnames_
 meta info for locate output More...
 
casacore::Vector
< casacore::String
stanames_
 
casacore::Vector
< casacore::String
antstanames_
 
casacore::Vector
< casacore::String
fldnames_
 
casacore::Vector
< casacore::String
intentnames_
 
casacore::Array< casacore::Doublepositions_
 
PMS::Axis iterAxis
 
bool ephemerisInitialized
 
::QVector< double > uniqueTimes
 
casacore::String calType_
 The calibration type (casacore::Table subType) More...
 
bool polnRatio_
 polarization selection is ratio ("/") More...
 
PageHeaderCache pageHeaderCache_
 Page header items. More...
 
PlotMSAtmplotmsAtm_
 For atm/tsky overlays. More...
 

Detailed Description

Definition at line 57 of file MSCache.h.

Constructor & Destructor Documentation

casa::MSCache::MSCache ( PlotMSApp parent)

Constructor which takes parent PlotMS.

virtual casa::MSCache::~MSCache ( )
virtual

Destructor.

casa::MSCache::MSCache ( const MSCache )
private

Forbid copy for now.

Member Function Documentation

void casa::MSCache::adjustCurrentAxes ( PMS::Axis  axis,
PMS::DataColumn  olddata,
PMS::DataColumn  newdata 
)
private
casacore::Vector<casacore::Int> casa::MSCache::assignIntentIds ( casacore::Vector< casacore::Int > &  stateIds)
private

Use map to assign intent ids.

PlotMSCacheBase::Type casa::MSCache::cacheType ( ) const
inlinevirtual

Identify myself.

Implements casa::PlotMSCacheBase.

Definition at line 71 of file MSCache.h.

References casa::PlotMSCacheBase::MS.

casacore::Vector<casacore::Double> casa::MSCache::calcVelocity ( vi::VisBuffer2 vb)
private
casacore::String casa::MSCache::checkLoadedAxesDatacol ( )
private
PMS::DataColumn casa::MSCache::checkReqDataColumn ( PMS::DataColumn  reqDataCol)
private
void casa::MSCache::completeLoadPageHeaderCache ( )
private
bool casa::MSCache::countChunks ( vi::VisibilityIterator2 vi,
casacore::Vector< casacore::Int > &  nIterPerAve,
std::vector< PMS::Axis > &  loadAxes,
std::vector< PMS::DataColumn > &  loadData,
ThreadCommunication thread 
)
private

Estimate cache size for averaging.

void casa::MSCache::deleteVi ( )
private

clean up

void casa::MSCache::deleteVm ( )
private
void casa::MSCache::discernData ( std::vector< PMS::Axis >  loadAxes,
std::vector< PMS::DataColumn >  loadData,
PlotMSVBAverager vba 
)
private

Tell time averager which data column to read.

virtual void casa::MSCache::flagToDisk ( const PlotMSFlagging flagging,
casacore::Vector< casacore::Int > &  chunks,
casacore::Vector< casacore::Int > &  relids,
casacore::Bool  setFlag,
PlotMSIndexer indexer,
int  dataIndex 
)
privatevirtual

Set flags in the MS.

Implements casa::PlotMSCacheBase.

void casa::MSCache::forceVBread ( vi::VisBuffer2 vb,
std::vector< PMS::Axis >  loadAxes,
std::vector< PMS::DataColumn >  loadData 
)
private

Force read on vb for requested axes (so pre-cache averaging treats all data it should)

casacore::String casa::MSCache::getDataColumn ( std::vector< PMS::Axis > &  loadAxes,
std::vector< PMS::DataColumn > &  loadData 
)
private

Set up: DataColumn.

void casa::MSCache::getNamesFromMS ( casacore::MeasurementSet ms)
private

MS String names.

virtual bool casa::MSCache::isEphemeris ( )
protectedvirtual

Returns whether or not the ephemeris data has been attached to a field - radial velocity and rho.

Reimplemented from casa::PlotMSCacheBase.

void casa::MSCache::loadAxis ( vi::VisBuffer2 vb,
casacore::Int  vbnum,
PMS::Axis  axis,
PMS::DataColumn  data = PMS::DEFAULT_DATACOLUMN 
)
private

Loads the specific axis/metadata into the cache using the given VisBuffer.

void casa::MSCache::loadChunks ( vi::VisibilityIterator2 vi,
const std::vector< PMS::Axis >  loadAxes,
const std::vector< PMS::DataColumn >  loadData,
ThreadCommunication thread 
)
private

Loop over VisIter, filling the cache.

void casa::MSCache::loadChunks ( vi::VisibilityIterator2 vi,
const PlotMSAveraging averaging,
const casacore::Vector< casacore::Int > &  nIterPerAve,
const std::vector< PMS::Axis >  loadAxes,
const std::vector< PMS::DataColumn >  loadData,
ThreadCommunication thread 
)
private
void casa::MSCache::loadError ( casacore::String  mesg)
private
virtual void casa::MSCache::loadIt ( std::vector< PMS::Axis > &  loadAxes,
std::vector< PMS::DataColumn > &  loadData,
ThreadCommunication thread = NULL 
)
protectedvirtual

casacore::MS-specific loadIt method

Implements casa::PlotMSCacheBase.

void casa::MSCache::loadPageHeaderCache ( const casacore::MeasurementSet selectedMS)
private

Page Header Cache loading.

void casa::MSCache::mapIntentNamesToIds ( )
private
casacore::String casa::MSCache::normalizeColumnName ( casacore::String  plotmscol)
private
const PageHeaderCache& casa::MSCache::pageHeaderCache ( ) const
inline

Definition at line 80 of file MSCache.h.

References casa::PlotMSCacheBase::pageHeaderCache_.

bool casa::MSCache::pointingsPlotSupported ( const MeasurementSet *const &  ms)
private

Check if plotting antennas pointing directions is supported for the given MeasurementSet.

virtual casacore::String casa::MSCache::polname ( casacore::Int  ipol)
virtual

Access to pol names.

Implements casa::PlotMSCacheBase.

void casa::MSCache::setFilename ( casacore::String  filename)
inlinevirtual

...not yet casacore::MS-specific...

(or ever?) Set up indexing for the plot void setUpIndexer(PMS::Axis iteraxis=PMS::SCAN, casacore::Bool globalXRange=false, casacore::Bool globalYRange=false);

Implements casa::PlotMSCacheBase.

Definition at line 78 of file MSCache.h.

References casa::PlotMSCacheBase::filename_.

void casa::MSCache::setUpFrequencySelectionChannels ( vi::FrequencySelectionUsingChannels  fs,
casacore::Vector< casacore::Vector< casacore::Slice > >  chansel 
)
private
void casa::MSCache::setUpVisIter ( PlotMSSelection selection,
PlotMSCalibration calibration,
casacore::String  dataColumn,
std::vector< PMS::Axis > &  loadAxes,
std::vector< PMS::DataColumn > &  loadData,
casacore::Bool  interactive = false,
casacore::Bool  estimateMemory = false,
ThreadCommunication thread = NULL 
)
private

VisIter.

vi::VisibilityIterator2* casa::MSCache::setUpVisIter ( casacore::MeasurementSet selectedMS,
casacore::Vector< casacore::Vector< casacore::Slice > >  chansel,
casacore::Vector< casacore::Vector< casacore::Slice > >  corrsel 
)
private
void casa::MSCache::trapExcessVolume ( map< PMS::Axis, casacore::Bool pendingLoadAxes)
private

Trap attempt to use to much memory (too many points)

void casa::MSCache::updateEstimateProgress ( ThreadCommunication thread)
private
void casa::MSCache::updateProgress ( ThreadCommunication thread,
casacore::Int  chunk 
)
private
bool casa::MSCache::useAveragedVisBuffer ( PMS::Axis  axis)
private

For averaging done by PlotMSVBAverager; Some axes need to come from VB2 attached to VI2.

Friends And Related Function Documentation

friend class PlotMSIndexer
friend

Friend class declarations.

Definition at line 60 of file MSCache.h.

Member Data Documentation

map<casacore::Int, casacore::Int> casa::MSCache::chansPerSpw_
private

Definition at line 210 of file MSCache.h.

casacore::String casa::MSCache::dataColumn_
private

Datacolumn to use (requested or "adjusted")

Definition at line 186 of file MSCache.h.

bool casa::MSCache::ephemerisAvailable
private

Definition at line 212 of file MSCache.h.

map<casacore::String, casacore::Int> casa::MSCache::intentIds_
private

Create map of intent names to "intent ids" since state ids can duplicate intents.

Then use map to assign intent ids to replace state ids (stateId -> intent string -> intentId)

Definition at line 192 of file MSCache.h.

casacore::Vector<casacore::Int> casa::MSCache::nVBPerAve_
private

Provisional flagging helpers.

Definition at line 200 of file MSCache.h.

vi::PointingInterpolationTVI* casa::MSCache::piTvi_
private

Definition at line 205 of file MSCache.h.

vi::VisibilityIterator2* casa::MSCache::vi_p
private

VisIterator pointer.

Definition at line 203 of file MSCache.h.

std::vector<casacore::IPosition> casa::MSCache::visBufferShapes_
private

Definition at line 138 of file MSCache.h.

MSCacheVolMeter* casa::MSCache::vm_
private

Volume meter for volume calculation.

Definition at line 208 of file MSCache.h.


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