casa
5.7.0-16
|
#include <VisibilityIteratorImplAsync.h>
Public Types | |
typedef casa::asyncio::PrefetchColumns | PrefetchColumns |
Public Types inherited from casa::VisibilityIteratorReadImpl | |
typedef ROVisibilityIterator::DataColumn | DataColumn |
VLAT should not access private parts, especially variables. More... | |
Public Member Functions | |
ViReadImplAsync (const casacore::Block< casacore::MeasurementSet > &mss, const PrefetchColumns &prefetchColumns, const casacore::Block< casacore::Int > &sortColumns, const casacore::Bool addDefaultSortCols, casacore::Double timeInterval, casacore::Bool writable) | |
static VisibilityIteratorReadImpl * create (const ROVisibilityIterator &, const PrefetchColumns & prefetchColumns, casacore::Int nReadAheadBuffers = -1); More... | |
ViReadImplAsync (const PrefetchColumns &prefetchColumns, const VisibilityIteratorReadImpl &other, casacore::Bool writable) | |
~ViReadImplAsync () | |
VisibilityIteratorReadImpl * | clone () const |
void | attachVisBuffer (VisBuffer &vb) |
Attach a VisBuffer object. More... | |
void | detachVisBuffer (VisBuffer &vb) |
Detach a VisBuffer object. More... | |
void | getChannelSelection (casacore::Block< casacore::Vector< casacore::Int > > &, casacore::Block< casacore::Vector< casacore::Int > > &, casacore::Block< casacore::Vector< casacore::Int > > &, casacore::Block< casacore::Vector< casacore::Int > > &, casacore::Block< casacore::Vector< casacore::Int > > &) |
get the channel selection...the block over the number of ms's associated with this iterator More... | |
PrefetchColumns | getPrefetchColumns () const |
VisBuffer * | getVisBuffer () |
casacore::MEpoch | getEpoch () const |
casacore::Int getDataDescriptionId () const; const casacore::MeasurementSet & getMeasurementSet(); const casacore::Int getMeasurementSetId (); casacore::Int getNAntennas () const; More... | |
bool | more () const |
casacore::Vector<casacore::Float> getReceptor0Angle (); More... | |
bool | moreChunks () const |
Return false if no more 'Chunks' of data left. More... | |
ViReadImplAsync & | nextChunk () |
Advance to the next Chunk of data. More... | |
void | origin () |
Reset iterator to origin/start of data (of current chunk) More... | |
void | originChunks () |
Reset iterator to true start of data (first chunk) More... | |
virtual void | advance () |
advance the iteration More... | |
void | setPrefetchColumns (const PrefetchColumns &prefetchColumns) |
VisibilityIteratorReadImpl & | selectChannel (casacore::Int nGroup=1, casacore::Int start=0, casacore::Int width=0, casacore::Int increment=1, casacore::Int spectralWindow=-1) |
Channel selection - only the selected channels will be returned by the access functions. More... | |
VisibilityIteratorReadImpl & | selectChannel (const casacore::Block< casacore::Vector< casacore::Int > > &blockNGroup, const casacore::Block< casacore::Vector< casacore::Int > > &blockStart, const casacore::Block< casacore::Vector< casacore::Int > > &blockWidth, const casacore::Block< casacore::Vector< casacore::Int > > &blockIncr, const casacore::Block< casacore::Vector< casacore::Int > > &blockSpw) |
Same as above except when multiple ms's are to be accessed. More... | |
VisibilityIteratorReadImpl & | selectVelocity (casacore::Int, const casacore::MVRadialVelocity &, const casacore::MVRadialVelocity &, casacore::MRadialVelocity::Types, casacore::MDoppler::Types, casacore::Bool) |
Velocity selection - specify the output channels in velocity: nChan - number of output channels, vStart - start velocity, vInc - velocity increment. More... | |
void | setInterval (casacore::Double timeInterval) |
Set or reset the time interval (in seconds) to use for iteration. More... | |
void | setRowBlocking (casacore::Int nRow) |
Set the 'blocking' size for returning data. More... | |
casacore::Bool | allBeamOffsetsZero () const |
The functions below make no sense (at first glance) for asynchronous operation and are implemented to throw an casacore::AipsError if called. More... | |
void | allSelectedSpectralWindows (casacore::Vector< casacore::Int > &, casacore::Vector< casacore::Int > &) |
get back the selected spectral windows and spectral channels for current ms More... | |
casacore::Vector< casacore::Int > & | antenna1 (casacore::Vector< casacore::Int > &) const |
Return antenna1. More... | |
casacore::Vector< casacore::Int > & | antenna2 (casacore::Vector< casacore::Int > &) const |
Return antenna2. More... | |
const casacore::Vector < casacore::String > & | antennaMounts () const |
return a string mount identifier for each antenna More... | |
casacore::Vector < casacore::MDirection > | azel (casacore::Double) const |
casacore::MDirection | azel0 (casacore::Double) const |
Return the antenna AZ/EL casacore::Vector (nant) More... | |
casacore::Vector< casacore::Int > & | channel (casacore::Vector< casacore::Int > &) const |
Return channel numbers in selected VisSet spectrum (i.e. More... | |
casacore::Int | channelGroupSize () const |
Return the width of the current group of channels, i.e., the number of channels returned by visibility () and frequency (). More... | |
casacore::Int | channelIndex () const |
Return the index of the first channel of the current channel group in the total (selected) spectrum. More... | |
casacore::Vector < casacore::SquareMatrix < casacore::Complex, 2 > > & | CJones (casacore::Vector< casacore::SquareMatrix< casacore::Complex, 2 > > &) const |
Return feed configuration matrix for specified antenna. More... | |
casacore::Vector< casacore::Int > & | corrType (casacore::Vector< casacore::Int > &) const |
Return the correlation type (returns casacore::Stokes enums) More... | |
casacore::Int | dataDescriptionId () const |
Return current DataDescription Id. More... | |
casacore::Bool | existsWeightSpectrum () const |
casacore::Vector < casacore::Double > & | exposure (casacore::Vector< casacore::Double > &) const |
Return actual time interval. More... | |
casacore::Vector< casacore::Int > & | feed1 (casacore::Vector< casacore::Int > &) const |
Return feed1. More... | |
casacore::Vector< casacore::Int > & | feed2 (casacore::Vector< casacore::Int > &) const |
Return feed2. More... | |
casacore::Int | fieldId () const |
casacore::Vector<casacore::Float> feed_pa(casacore::Double) const { NotImplementedROVIA; } More... | |
casacore::Array< casacore::Bool > & | flagCategory (casacore::Array< casacore::Bool > &) const |
Return flags for each polarization, channel, category, and row. More... | |
casacore::Cube< casacore::Float > & | floatData (casacore::Cube< casacore::Float > &) const |
Return FLOAT_DATA as a casacore::Cube (npol, nchan, nrow) if found in the MS. More... | |
void | getFloatDataColumn (casacore::Cube< casacore::Float > &) const |
void | getFloatDataColumn (const casacore::Slicer &, casacore::Cube< casacore::Float > &) const |
get FLOAT_DATA as real Floats. More... | |
void | getInterpolatedFloatDataFlagWeight () const |
void | getInterpolatedVisFlagWeight (DataColumn) const |
casacore::Int | arrayId () const |
Return the current ArrayId. More... | |
casacore::String | fieldName () const |
Return the current Field Name. More... | |
casacore::String | sourceName () const |
Return the current Source Name. More... | |
casacore::Cube< casacore::Bool > & | flag (casacore::Cube< casacore::Bool > &) const |
Return flag for each polarization, channel and row. More... | |
casacore::Matrix < casacore::Bool > & | flag (casacore::Matrix< casacore::Bool > &) const |
Return flag for each channel & row. More... | |
casacore::Vector < casacore::Bool > & | flagRow (casacore::Vector< casacore::Bool > &) const |
Return row flag. More... | |
casacore::Vector < casacore::Double > & | frequency (casacore::Vector< casacore::Double > &) const |
Return current frequencies (in Hz, acc. More... | |
const casacore::Cube < casacore::RigidVector < casacore::Double, 2 > > & | getBeamOffsets () const |
Return a cube containing pairs of coordinate offsets for each receptor of each feed (values are in radians, coordinate system is fixed with antenna and is the same one as used to define the BEAM_OFFSET parameter in the feed table). More... | |
casacore::Int | getDataDescriptionId () const |
casacore::MEpoch | getMEpoch () const |
const casacore::MeasurementSet & | getMeasurementSet () const |
casacore::Int | getMeasurementSetId () const |
casacore::Int | getNAntennas () const |
casacore::Vector< casacore::Float > | getReceptor0Angle () |
casacore::Vector< casacore::uInt > | getRowIds () const |
casacore::Double | hourang (casacore::Double) const |
Return the hour angle for the specified time. More... | |
casacore::Vector < casacore::Double > & | lsrFrequency (casacore::Vector< casacore::Double > &) const |
Return frequencies (in Hz, acc. More... | |
void | lsrFrequency (const casacore::Int &, casacore::Vector< casacore::Double > &, casacore::Bool &) |
const casacore::MeasurementSet & | ms () const |
reference to actual ms in interator More... | |
const casacore::ROMSColumns & | msColumns () const |
Access the current casacore::ROMSColumns object in MSIter. More... | |
casacore::Int | msId () const |
casacore::Int | nCorr () const |
Return the number of correlations in the current iteration. More... | |
casacore::Int | nRow () const |
Return the number of rows in the current iteration. More... | |
casacore::Int | nRowChunk () const |
Return the numbers of rows in the current chunk. More... | |
casacore::Int | nSubInterval () const |
Return the number of sub-intervals in the current chunk. More... | |
casacore::Bool | newArrayId () const |
Return true if arrayID has changed since last iteration. More... | |
casacore::Bool | newFieldId () const |
Return true if FieldId/Source has changed since last iteration. More... | |
casacore::Bool | newMS () const |
Check if ms has change since last iteration. More... | |
casacore::Bool | newSpectralWindow () const |
Return true if SpectralWindow has changed since last iteration. More... | |
casacore::Int | numberCoh () |
Return number of rows in all selected ms's. More... | |
casacore::Int | numberDDId () |
casacore::Int | numberPol () |
casacore::Int | numberSpw () |
Return number of spws, polids, ddids. More... | |
casacore::Vector< casacore::Int > & | observationId (casacore::Vector< casacore::Int > &) const |
Return the OBSERVATION_IDs. More... | |
casacore::Vector< casacore::Float > | parang (casacore::Double) const |
Per antenna: More... | |
const casacore::Float & | parang0 (casacore::Double) const |
Return nominal parallactic angle at specified time (does not include feed position angle offset–see feed_pa) A global value for all antennas (e.g., small array) More... | |
const casacore::MDirection & | phaseCenter () const |
Return the current phase center as an MDirection. More... | |
casacore::Int | polFrame () const |
Return frame for polarization (returns PolFrame enum) More... | |
casacore::Vector< casacore::Int > & | processorId (casacore::Vector< casacore::Int > &) const |
Return the PROCESSOR_IDs. More... | |
casacore::Int | polarizationId () const |
Return current Polarization Id. More... | |
const casacore::Cube < casacore::Double > & | receptorAngles () const |
Return receptor angles for all antennae and feeds First axis of the cube is a receptor number, 2nd is antennaId, 3rd is feedId Note: the method is intended to provide an access to MSIter::receptorAngles for VisBuffer in the multi-feed case. More... | |
casacore::Vector < casacore::uInt > & | rowIds (casacore::Vector< casacore::uInt > &) const |
Return the row ids as from the original root table. More... | |
casacore::Vector< casacore::Int > & | scan (casacore::Vector< casacore::Int > &) const |
Return scan number. More... | |
casacore::Vector < casacore::Float > & | sigma (casacore::Vector< casacore::Float > &) const |
Return sigma. More... | |
casacore::Matrix < casacore::Float > & | sigmaMat (casacore::Matrix< casacore::Float > &) const |
Return sigma matrix (pol-dep) More... | |
void | slurp () const |
Call to use the slurp i/o method for all scalar columns. More... | |
casacore::Int | spectralWindow () const |
Return current SpectralWindow. More... | |
casacore::Vector< casacore::Int > & | stateId (casacore::Vector< casacore::Int > &) const |
Return the STATE_IDs. More... | |
casacore::Vector < casacore::Double > & | time (casacore::Vector< casacore::Double > &) const |
Return MJD midpoint of interval. More... | |
casacore::Vector < casacore::Double > & | timeCentroid (casacore::Vector< casacore::Double > &) const |
Return MJD centroid of interval. More... | |
casacore::Vector < casacore::Double > & | timeInterval (casacore::Vector< casacore::Double > &) const |
Return nominal time interval. More... | |
casacore::Vector < casacore::RigidVector < casacore::Double, 3 > > & | uvw (casacore::Vector< casacore::RigidVector< casacore::Double, 3 > > &) const |
Return u,v and w (in meters) More... | |
casacore::Matrix < casacore::Double > & | uvwMat (casacore::Matrix< casacore::Double > &) const |
VisibilityIteratorReadImpl & | velInterpolation (const casacore::String &) |
Select the velocity interpolation scheme. More... | |
casacore::Cube < casacore::Complex > & | visibility (casacore::Cube< casacore::Complex > &, DataColumn) const |
Return the visibilities as found in the casacore::MS, casacore::Cube (npol,nchan,nrow). More... | |
casacore::Matrix< CStokesVector > & | visibility (casacore::Matrix< CStokesVector > &, DataColumn) const |
Return the visibility 4-vector of polarizations for each channel. More... | |
casacore::IPosition | visibilityShape () const |
Return the shape of the visibility Cube. More... | |
casacore::Vector < casacore::Float > & | weight (casacore::Vector< casacore::Float > &) const |
Return weight. More... | |
casacore::Matrix < casacore::Float > & | weightMat (casacore::Matrix< casacore::Float > &) const |
Returns the nPol_p x curNumRow_p weight matrix. More... | |
casacore::Cube< casacore::Float > & | weightSpectrum (casacore::Cube< casacore::Float > &) const |
Return weightspectrum (a weight for each channel) More... | |
Public Member Functions inherited from casa::VisibilityIteratorReadImpl | |
VisibilityIteratorReadImpl () | |
class AsyncEnabler { public: AsyncEnabler (ROVisibilityIterator &); AsyncEnabler (ROVisibilityIterator *); ~AsyncEnabler (); More... | |
VisibilityIteratorReadImpl (ROVisibilityIterator *rovi, const casacore::Block< casacore::MeasurementSet > &mss, const casacore::Block< casacore::Int > &sortColumns, const casacore::Bool addDefaultSortCols, casacore::Double timeInterval) | |
Construct from an casacore::MS and a casacore::Block of casacore::MS column enums specifying the iteration order. More... | |
VisibilityIteratorReadImpl (const VisibilityIteratorReadImpl &other, ROVisibilityIterator *rovi) | |
Copy construct. More... | |
VisibilityIteratorReadImpl & | operator= (const VisibilityIteratorReadImpl &other) |
Assigment. More... | |
virtual | ~VisibilityIteratorReadImpl () |
Destructor. More... | |
virtual VisibilityIteratorReadImpl * | clone (ROVisibilityIterator *rovi) const |
casacore::Bool | isAsyncEnabled () const |
Members. More... | |
virtual casacore::Bool | isWritable () const |
virtual casacore::Double | getInterval () const |
Return the time interval (in seconds) used for iteration. More... | |
virtual casacore::Bool | existsColumn (VisBufferComponents::EnumType id) const |
virtual SubChunkPair | getSubchunkId () const |
virtual const casacore::Block < casacore::Int > & | getSortColumns () const |
virtual casacore::Vector < casacore::Float > | feed_pa (casacore::Double time) const |
Return feed parallactic angles casacore::Vector (nant) (1 feed/ant) More... | |
casacore::Bool | existsFlagCategory () const |
Determine whether FLAG_CATEGORY is valid. More... | |
virtual const casacore::MDirection | phaseCenter (const casacore::Int fieldId, const casacore::Double time=-1.0) const |
casacore::Bool | existsWeightSpectrum () const |
Determine whether WEIGHT_SPECTRUM exists. More... | |
const VisImagingWeight & | getImagingWeightGenerator () const |
Return imaging weight (a weight for each channel) virtual casacore::Matrix<casacore::Float> & imagingWeight (casacore::Matrix<casacore::Float> & wt) const; More... | |
void | slicesToMatrices (casacore::Vector< casacore::Matrix< casacore::Int > > &matv, const casacore::Vector< casacore::Vector< casacore::Slice > > &slicesv, const casacore::Vector< casacore::Int > &widthsv) const |
Translate slicesv from the form returned by casacore::MSSelection::getChanSlices () to matv as used by setChanAveBounds (). More... | |
virtual void | getSpwInFreqRange (casacore::Block< casacore::Vector< casacore::Int > > &spw, casacore::Block< casacore::Vector< casacore::Int > > &start, casacore::Block< casacore::Vector< casacore::Int > > &nchan, casacore::Double freqStart, casacore::Double freqEnd, casacore::Double freqStep, casacore::MFrequency::Types freqFrame=casacore::MFrequency::LSRK) const |
Get the spw, start and nchan for all the ms's is this Visiter that match the frequecy "freqstart-freqStep" and "freqEnd+freqStep" range Can help in doing channel selection above. More... | |
virtual void | getFreqInSpwRange (casacore::Double &freqStart, casacore::Double &freqEnd, casacore::MFrequency::Types freqframe=casacore::MFrequency::LSRK) const |
Get the range of frequency convered by the selected data in the frame requested. More... | |
virtual void | lsrFrequency (const casacore::Int &spw, casacore::Vector< casacore::Double > &freq, casacore::Bool &convert, const casacore::Bool ignoreconv=false) |
Convert the frequency from the observe frame to lsr frame. More... | |
virtual void | useImagingWeight (const VisImagingWeight &imWgt) |
assign a VisImagingWeight object to this iterator More... | |
virtual casacore::Int | numberAnt () |
return number of Ant More... | |
casacore::ArrayColumn < casacore::Double > & | getChannelFrequency () const |
casacore::Block< casacore::Int > | getChannelGroupNumber () const |
casacore::Block< casacore::Int > | getChannelIncrement () const |
casacore::Block< casacore::Int > | getChannelStart () const |
casacore::Block< casacore::Int > | getChannelWidth () const |
casacore::Int | getDataDescriptionId () const |
const casacore::MeasurementSet & | getMeasurementSet () const |
casacore::Int | getMeasurementSetId () const |
casacore::Int | getNAntennas () const |
casacore::MFrequency::Types | getObservatoryFrequencyType () const |
casacore::MPosition | getObservatoryPosition () const |
casacore::MDirection | getPhaseCenter () const |
casacore::Vector< casacore::Float > | getReceptor0Angle () |
casacore::Vector< casacore::uInt > | getRowIds () const |
Protected Member Functions | |
ViReadImplAsync (const ROVisibilityIterator &rovi, const PrefetchColumns &prefetchColumns, casacore::Int nReadAheadBuffers=-1) | |
Use the factory method "create" instead of calling the constructor directly. More... | |
PrefetchColumns | augmentPrefetchColumns (const PrefetchColumns &prefetchColumnsBase) |
void | construct (const casacore::Block< casacore::MeasurementSet > &mss, const PrefetchColumns &prefetchColumns, const casacore::Block< casacore::Int > &sortColumns, const casacore::Bool addDefaultSortCols, casacore::Double timeInterval, casacore::Bool writable) |
void | fillVisBuffer () |
const casacore::MeasurementSet & | getMs () const |
void | readComplete () |
void | saveMss (const casacore::Block< casacore::MeasurementSet > &mss) |
void | saveMss (const casacore::MeasurementSet &ms) |
Protected Member Functions inherited from casa::VisibilityIteratorReadImpl | |
void | attachColumnsSafe (const casacore::Table &t) |
virtual void | setSelTable () |
set the currently selected table More... | |
virtual void | setState () |
set the iteration state More... | |
virtual void | getTopoFreqs () |
get the TOPO frequencies from the selected velocities and the obs. More... | |
virtual void | getTopoFreqs (casacore::Vector< casacore::Double > &lsrFreq, casacore::Vector< casacore::Double > &selFreq) |
virtual void | getLsrInfo (casacore::Block< casacore::Int > &channelGroupNumber, casacore::Block< casacore::Int > &channelIncrement, casacore::Block< casacore::Int > &channelStart, casacore::Block< casacore::Int > &channelWidth, casacore::MPosition &observatoryPositon, casacore::MDirection &phaseCenter, casacore::Bool &velocitySelection) const |
std::vector < casacore::MeasurementSet > | getMeasurementSets () const |
const casacore::MSDerivedValues & | getMSD () const |
virtual void | updateSlicer () |
update the DATA slicer More... | |
virtual void | attachColumns (const casacore::Table &t) |
attach the column objects to the currently selected table More... | |
virtual const casacore::Table | attachTable () const |
returns the table, to which columns are attached, can be overridden in derived classes More... | |
casacore::Bool | usesTiledDataManager (const casacore::String &columnName, const casacore::MeasurementSet &ms) const |
get the (velocity selected) interpolated visibilities, flags and weights. More... | |
virtual void | getDataColumn (ROVisibilityIterator::DataColumn whichOne, const casacore::Slicer &slicer, casacore::Cube< casacore::Complex > &data) const |
get the visibility data (observed, corrected or model); deals with casacore::Float and casacore::Complex observed data (DATA or FLOAT_DATA) More... | |
virtual void | getDataColumn (DataColumn whichOne, casacore::Cube< casacore::Complex > &data) const |
virtual void | initialize (const casacore::Block< casacore::MeasurementSet > &mss) |
constructor helpers More... | |
virtual void | originChunks (casacore::Bool forceRewind) |
virtual void | doChannelSelection () |
Re-Do the channel selection in multi ms case. More... | |
virtual void | setTileCache () |
Set the tile cache size....when using slice access if tile cache size is not set memory usage can go wild. More... | |
virtual casacore::Bool | isInSelectedSPW (const casacore::Int &spw) |
Check if spw is in selected SPW for actual ms. More... | |
virtual void | update_rowIds () const |
Updates, if necessary, rowIds_p member for the current chunk. More... | |
void | setAsyncEnabled (casacore::Bool enable) |
template<class T > | |
void | getColScalar (const casacore::ScalarColumn< T > &column, casacore::Vector< T > &array, casacore::Bool resize) const |
template<class T > | |
void | getColArray (const casacore::ArrayColumn< T > &column, casacore::Array< T > &array, casacore::Bool resize) const |
virtual void | getCol (const casacore::ScalarColumn< casacore::Bool > &column, casacore::Vector< casacore::Bool > &array, casacore::Bool resize=false) const |
column access functions, can be overridden in derived classes More... | |
virtual void | getCol (const casacore::ScalarColumn< casacore::Int > &column, casacore::Vector< casacore::Int > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ScalarColumn< casacore::Double > &column, casacore::Vector< casacore::Double > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Bool > &column, casacore::Array< casacore::Bool > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Float > &column, casacore::Array< casacore::Float > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Double > &column, casacore::Array< casacore::Double > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Complex > &column, casacore::Array< casacore::Complex > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Bool > &column, const casacore::Slicer &slicer, casacore::Array< casacore::Bool > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Float > &column, const casacore::Slicer &slicer, casacore::Array< casacore::Float > &array, casacore::Bool resize=false) const |
virtual void | getCol (const casacore::ArrayColumn< casacore::Complex > &column, const casacore::Slicer &slicer, casacore::Array< casacore::Complex > &array, casacore::Bool resize=false) const |
template<class T > | |
void | swapyz (casacore::Cube< T > &out, const casacore::Cube< T > &in) const |
virtual void getCol (const casacore::String & colName, casacore::Array<casacore::Double> & array, casacore::Array<casacore::Double> & all, casacore::Bool resize = false) const; virtual void getCol (const casacore::String & colName, casacore::Vector<casacore::Bool> & array, casacore::Vector<casacore::Bool> & all, casacore::Bool resize = false) const; virtual void getCol (const casacore::String & colName, casacore::Vector<casacore::Int> & array, casacore::Vector<casacore::Int> & all, casacore::Bool resize = false) const; virtual void getCol (const casacore::String & colName, casacore::Vector<casacore::Double> & array, casacore::Vector<casacore::Double> & all, casacore::Bool resize = false) const; More... | |
Private Member Functions | |
void | dumpPrefetchColumns () const |
void | updateMsd () |
ViReadImplAsync (const ViReadImplAsync &MSI) | |
ViReadImplAsync & | operator= (const ViReadImplAsync &MSI) |
Private Attributes | |
asyncio::AsynchronousInterface * | interface_p |
void startVlat (); More... | |
casacore::Int | msId_p |
PrefetchColumns | prefetchColumns_p |
std::stack < VisBufferAsyncWrapper * > | vbaWrapperStack_p |
VisBufferAsync * | visBufferAsync_p |
asyncio::VlaData * | vlaData_p |
asyncio::VLAT * | vlat_p |
Friends | |
class | Rovia_Test |
This needs to be changed back to ROVisibilityIterator at some point after feasibility testing. More... | |
class | ROVisIterator |
class | VisIterator |
class | ViWriteImplAsync |
Definition at line 36 of file VisibilityIteratorImplAsync.h.
Definition at line 47 of file VisibilityIteratorImplAsync.h.
casa::ViReadImplAsync::ViReadImplAsync | ( | const casacore::Block< casacore::MeasurementSet > & | mss, |
const PrefetchColumns & | prefetchColumns, | ||
const casacore::Block< casacore::Int > & | sortColumns, | ||
const casacore::Bool | addDefaultSortCols, | ||
casacore::Double | timeInterval, | ||
casacore::Bool | writable | ||
) |
static VisibilityIteratorReadImpl * create (const ROVisibilityIterator &, const PrefetchColumns & prefetchColumns, casacore::Int nReadAheadBuffers = -1);
casa::ViReadImplAsync::ViReadImplAsync | ( | const PrefetchColumns & | prefetchColumns, |
const VisibilityIteratorReadImpl & | other, | ||
casacore::Bool | writable | ||
) |
casa::ViReadImplAsync::~ViReadImplAsync | ( | ) |
|
protected |
Use the factory method "create" instead of calling the constructor directly.
This allows disabling the feature.
ViReadImplAsync (const casacore::MeasurementSet & ms, const PrefetchColumns & prefetchColumns, const casacore::Block<casacore::Int> & sortColumns, casacore::Double timeInterval=0, casacore::Int nReadAheadBuffers = 2); ViReadImplAsync (const casacore::MeasurementSet & ms, const PrefetchColumns & prefetchColumns, const casacore::Block<casacore::Int> & sortColumns, const casacore::Bool addDefaultSortCols, casacore::Double timeInterval=0, casacore::Int nReadAheadBuffers = 2);
Same as previous constructor, but with multiple MSs to iterate over.
ViReadImplAsync (const casacore::Block<casacore::MeasurementSet> & mss, const PrefetchColumns & prefetchColumns, const casacore::Block<casacore::Int> & sortColumns, casacore::Double timeInterval=0, casacore::Int nReadAheadBuffers = 2);
|
private |
|
virtual |
advance the iteration
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
The functions below make no sense (at first glance) for asynchronous operation and are implemented to throw an casacore::AipsError if called.
ROVIA is designed to have all the data accessed through the associated VisBufferAsync. Any method which tries to access data through the ROVIA makes no sense. Also anything that tries to change the characteristics of underlying ROVI is not currently permitted. During integration some methods may be found to be more important to the use of ROVIA and a way may be found to implement them in ROVIA.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
get back the selected spectral windows and spectral channels for current ms
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 135 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return antenna1.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 136 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return antenna2.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 137 of file VisibilityIteratorImplAsync.h.
|
virtual |
return a string mount identifier for each antenna
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the current ArrayId.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 159 of file VisibilityIteratorImplAsync.h.
|
virtual |
Attach a VisBuffer object.
Note that while more than one VisBuffer may be attached, only the last one is actively updated. A casacore::Stack is kept internally, so after a detach, the previous VisBuffer becomes active again.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
protected |
|
inlinevirtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 139 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the antenna AZ/EL casacore::Vector (nant)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 140 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return channel numbers in selected VisSet spectrum (i.e.
disregarding possible selection on the iterator, but including the selection set when creating the VisSet)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 141 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the width of the current group of channels, i.e., the number of channels returned by visibility () and frequency ().
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 142 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the index of the first channel of the current channel group in the total (selected) spectrum.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 143 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return feed configuration matrix for specified antenna.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 144 of file VisibilityIteratorImplAsync.h.
VisibilityIteratorReadImpl* casa::ViReadImplAsync::clone | ( | ) | const |
|
protected |
|
inlinevirtual |
Return the correlation type (returns casacore::Stokes enums)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 145 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return current DataDescription Id.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 146 of file VisibilityIteratorImplAsync.h.
|
virtual |
Detach a VisBuffer object.
If the object detached is not the last one attached an exception is thrown.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
private |
|
inline |
Definition at line 147 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return actual time interval.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 148 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return feed1.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 149 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return feed2.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 150 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
casacore::Vector<casacore::Float> feed_pa(casacore::Double) const { NotImplementedROVIA; }
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 152 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the current Field Name.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 160 of file VisibilityIteratorImplAsync.h.
|
protected |
|
inlinevirtual |
Return flag for each polarization, channel and row.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 162 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return flag for each channel & row.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 163 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return flags for each polarization, channel, category, and row.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 153 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return row flag.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 164 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return FLOAT_DATA as a casacore::Cube (npol, nchan, nrow) if found in the MS.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 154 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return current frequencies (in Hz, acc.
to the casacore::MS def'n v.2)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 165 of file VisibilityIteratorImplAsync.h.
|
virtual |
Return a cube containing pairs of coordinate offsets for each receptor of each feed (values are in radians, coordinate system is fixed with antenna and is the same one as used to define the BEAM_OFFSET parameter in the feed table).
The cube axes are receptor, antenna, feed.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
get the channel selection...the block over the number of ms's associated with this iterator
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inline |
Definition at line 167 of file VisibilityIteratorImplAsync.h.
|
static |
These functions generate a list of the IDs (from PrefetchColumnIDs enum) of the columns to prefetch.
For the variable arg calls, terminate with a -1.
|
virtual |
casacore::Int getDataDescriptionId () const; const casacore::MeasurementSet & getMeasurementSet(); const casacore::Int getMeasurementSetId (); casacore::Int getNAntennas () const;
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 155 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
get FLOAT_DATA as real Floats.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 156 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 157 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 158 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 169 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 170 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 168 of file VisibilityIteratorImplAsync.h.
|
protected |
|
inline |
Definition at line 171 of file VisibilityIteratorImplAsync.h.
PrefetchColumns casa::ViReadImplAsync::getPrefetchColumns | ( | ) | const |
|
inline |
Definition at line 172 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 173 of file VisibilityIteratorImplAsync.h.
|
virtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the hour angle for the specified time.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 174 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return frequencies (in Hz, acc.
to the casacore::MS def'n v.2) in selected velocity frame, returns the same as frequency () if there is no vel selection active.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 175 of file VisibilityIteratorImplAsync.h.
|
inline |
Definition at line 176 of file VisibilityIteratorImplAsync.h.
|
virtual |
casacore::Vector<casacore::Float> getReceptor0Angle ();
/void linkWithRovi (VisibilityIteratorReadImpl * rovi);
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
Return false if no more 'Chunks' of data left.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
reference to actual ms in interator
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 177 of file VisibilityIteratorImplAsync.h.
|
virtual |
Access the current casacore::ROMSColumns object in MSIter.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the number of correlations in the current iteration.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 180 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return true if arrayID has changed since last iteration.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 184 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return true if FieldId/Source has changed since last iteration.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 185 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Check if ms has change since last iteration.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 186 of file VisibilityIteratorImplAsync.h.
References casacore::MSIter::more(), and casa::VisibilityIteratorReadImpl::msIter_p.
|
inlinevirtual |
Return true if SpectralWindow has changed since last iteration.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 187 of file VisibilityIteratorImplAsync.h.
|
virtual |
Advance to the next Chunk of data.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the number of rows in the current iteration.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 181 of file VisibilityIteratorImplAsync.h.
|
virtual |
Return the numbers of rows in the current chunk.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the number of sub-intervals in the current chunk.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 183 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return number of rows in all selected ms's.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 188 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 189 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 190 of file VisibilityIteratorImplAsync.h.
|
virtual |
Return number of spws, polids, ddids.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the OBSERVATION_IDs.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 192 of file VisibilityIteratorImplAsync.h.
|
private |
|
virtual |
Reset iterator to origin/start of data (of current chunk)
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
Reset iterator to true start of data (first chunk)
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Per antenna:
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 193 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return nominal parallactic angle at specified time (does not include feed position angle offset–see feed_pa) A global value for all antennas (e.g., small array)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 194 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the current phase center as an MDirection.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 195 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return current Polarization Id.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 198 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return frame for polarization (returns PolFrame enum)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 196 of file VisibilityIteratorImplAsync.h.
|
static |
|
inlinevirtual |
Return the PROCESSOR_IDs.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 197 of file VisibilityIteratorImplAsync.h.
|
protected |
|
virtual |
Return receptor angles for all antennae and feeds First axis of the cube is a receptor number, 2nd is antennaId, 3rd is feedId Note: the method is intended to provide an access to MSIter::receptorAngles for VisBuffer in the multi-feed case.
It may be worth to change the interface of feed_pa to return the information for all feeds.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return the row ids as from the original root table.
This is useful to find correspondance between a given row in this iteration to the original ms row
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 200 of file VisibilityIteratorImplAsync.h.
|
protected |
|
protected |
|
inlinevirtual |
Return scan number.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 201 of file VisibilityIteratorImplAsync.h.
|
virtual |
Channel selection - only the selected channels will be returned by the access functions.
The default spectralWindow is the current one (or 0) This allows selection of the input channels, producing nGroup groups of width output channels. Default is to return all channels in a single group.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
Same as above except when multiple ms's are to be accessed.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
Velocity selection - specify the output channels in velocity: nChan - number of output channels, vStart - start velocity, vInc - velocity increment.
So channel i will have velocity vStart + i*vInc (i=0,nChan-1). Specify velocities as in e.g., casacore::MVRadialVelocity (casacore::Quantity (2001.,"km/s")). The reference type and velocity definition are specified separately. Note that no averaging is performed, the visibilities will be interpolated and sampled at the specified velocities, it's up to you to choose a vInc appropriate to the channel width. The REST_FREQUENCY column in the SPECTRAL_WINDOW subtable is used to determine the velocity-frequency conversion. By default calculations are done for a single velocity with offsets applied for the others (ok for non-rel velocities with RADIO defn), set precise to true to do a full conversion for each output channel. (NYI)
Reimplemented from casa::VisibilityIteratorReadImpl.
|
virtual |
Set or reset the time interval (in seconds) to use for iteration.
You should call originChunks () to reset the iteration after calling this.
Reimplemented from casa::VisibilityIteratorReadImpl.
void casa::ViReadImplAsync::setPrefetchColumns | ( | const PrefetchColumns & | prefetchColumns | ) |
|
virtual |
Set the 'blocking' size for returning data.
With the default (0) only a single integration is returned at a time, this is what is currently required for the calibration software. With blocking set, up to nRows can be returned in one go. The chunk size determines the actual maximum.
Reimplemented from casa::VisibilityIteratorReadImpl.
|
inlinevirtual |
Return sigma.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 202 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return sigma matrix (pol-dep)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 203 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Call to use the slurp i/o method for all scalar columns.
This will set the casacore::BucketCache cache size to the full column length and cause the full column to be cached in memory, if any value of the column is used. In case of out-of-memory, it will automatically fall-back on the smaller cache size. Slurping the column is to be considered as a work-around for the casacore::Table i/o code, which uses casacore::BucketCache and performs extremely bad for random access. Slurping is useful when iterating non-sequentially an casacore::MS or parts of an casacore::MS, it is not tested with multiple MSs.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 204 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the current Source Name.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 161 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return current SpectralWindow.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 205 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the STATE_IDs.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 206 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return MJD midpoint of interval.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 207 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return MJD centroid of interval.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 208 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return nominal time interval.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 209 of file VisibilityIteratorImplAsync.h.
|
private |
|
inlinevirtual |
Return u,v and w (in meters)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 210 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 211 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Select the velocity interpolation scheme.
At present the choice is limited to : nearest and linear, linear is the default. TODO: add cubic, spline and possibly FFT
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 212 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the visibilities as found in the casacore::MS, casacore::Cube (npol,nchan,nrow).
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 213 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the visibility 4-vector of polarizations for each channel.
If the casacore::MS doesn't contain all polarizations, it is assumed it contains one or two parallel hand polarizations.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 214 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return the shape of the visibility Cube.
inline VisibilityIteratorReadImpl & VisibilityIteratorReadImpl::velInterpolation (const casacore::String & type) { vInterpolation_p = type; return *this; }
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 215 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return weight.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 216 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Returns the nPol_p x curNumRow_p weight matrix.
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 217 of file VisibilityIteratorImplAsync.h.
|
inlinevirtual |
Return weightspectrum (a weight for each channel)
Reimplemented from casa::VisibilityIteratorReadImpl.
Definition at line 218 of file VisibilityIteratorImplAsync.h.
|
friend |
This needs to be changed back to ROVisibilityIterator at some point after feasibility testing.
Definition at line 40 of file VisibilityIteratorImplAsync.h.
|
friend |
Definition at line 41 of file VisibilityIteratorImplAsync.h.
|
friend |
Definition at line 42 of file VisibilityIteratorImplAsync.h.
|
friend |
Definition at line 43 of file VisibilityIteratorImplAsync.h.
|
private |
void startVlat ();
Definition at line 270 of file VisibilityIteratorImplAsync.h.
|
private |
Definition at line 271 of file VisibilityIteratorImplAsync.h.
|
private |
Definition at line 272 of file VisibilityIteratorImplAsync.h.
|
private |
Definition at line 273 of file VisibilityIteratorImplAsync.h.
|
private |
Definition at line 274 of file VisibilityIteratorImplAsync.h.
|
private |
Definition at line 275 of file VisibilityIteratorImplAsync.h.
|
private |
Definition at line 276 of file VisibilityIteratorImplAsync.h.