29 #ifndef MSVIS_VISIBILITYITERATORIMPL2_H
30 #define MSVIS_VISIBILITYITERATORIMPL2_H
49 template <
typename T>
class ArrayColumn;
50 template <
typename T>
class CountedPtr;
52 template <
typename T>
class ArrayColumn;
53 template <
typename T, Int N>
class RigidVector;
54 template <
typename T, Int N>
class SquareMatrix;
68 class ChannelSelector;
69 class ChannelSelectorCache;
70 class PointingDirectionCache;
72 class SpectralWindowChannelsCache;
73 class SpectralWindowChannels;
74 class SubtableColumns;
143 std::unique_ptr<VisibilityIteratorImpl2>
clone()
const;
186 more()
const override;
216 msId()
const override;
286 virtual std::pair<bool, casacore::MDirection>
504 nRows()
const override;
531 slurp()
const override;
557 virtual const SpectralWindowChannels &
765 const ChannelSelector *
771 virtual const vi::ChannelSelector *
785 const vi::SpectralWindowChannels & spectralWindowChannels)
const;
796 template <
typename T>
802 template <
typename T>
808 template <
typename T>
886 vi::ChannelSelector *
894 vi::ChannelSelector *
905 int spectralWindowId,
945 std::vector<casacore::MSMainEnums::PredefinedColumns> columnIds);
986 template <
typename Setter,
typename Getter>
1008 template <
typename Setter,
typename Getter>
1033 template <
typename Ret>
1044 template <
typename Ret>
1063 template <
typename T>
1069 template <
typename T>
1075 template <
typename T>
1130 std::pair<casacore::Bool, FrequencySelections *>
1133 std::pair<casacore::Bool, casacore::Double>
1136 std::pair<casacore::Bool, casacore::Int>
std::pair< casacore::Bool, FrequencySelections * > popFrequencySelections()
yields ownership
virtual void antenna1(casacore::Vector< casacore::Int > &ant1) const override
Return antenna1.
virtual void processorId(casacore::Vector< casacore::Int > &procids) const override
Return the PROCESSOR_IDs.
virtual const casacore::Vector< casacore::MDirection > & azel(casacore::Double time) const override
virtual void exposure(casacore::Vector< casacore::Double > &expo) const override
Return actual time interval.
A Vector of integers, for indexing into Array<T> objects.
A Measure: astronomical direction.
virtual void writeVisCorrected(const casacore::Cube< casacore::Complex > &vis) override
Write/modify the visibilities.
casacore::Int nCorrelations_p
std::unique_ptr< VisibilityIteratorImpl2 > clone() const
Members.
A Measure: position on Earth.
void getColumnRowsMatrix(const casacore::ArrayColumn< T > &column, casacore::Matrix< T > &array, casacore::Bool correlationSlicing) const
casacore::Double timeMin_p
min timechunk in the chunk
SubtableColumns * subtableColumns_p
[own] Allows const access to casacore::MS's subtable columns
virtual void writeVisObserved(const casacore::Cube< casacore::Complex > &vis) override
MSDerivedValues calculates values derived from a MS.
virtual void visibilityObserved(casacore::Cube< casacore::Complex > &vis) const override
casacore::Bool msHasFlagCategory_p
Does the current casacore::MS have a valid FLAG_CATEGORY?
virtual void writeModel(const casacore::RecordInterface &rec, casacore::Bool iscomponentlist=true, casacore::Bool incremental=false) override
Write/modify the ncorr x nrow SigmaMat.
casacore::MFrequency::Types getObservatoryFrequencyType() const override
void writeFlagCategory(const casacore::Array< casacore::Bool > &fc) override
virtual void timeInterval(casacore::Vector< casacore::Double > &ti) const override
Return nominal time interval.
virtual casacore::Int nAntennas() const override
return number of Ant
static BackWriter * makeBackWriter2(void(VisibilityIteratorImpl2::*setter)(Ret, VisibilityIteratorImpl2::DataColumn), Ret(VisBuffer2::*getter)() const, VisibilityIterator2::DataColumn dc)
const casacore::ROMSAntennaColumns & antennaSubtablecols() const override
virtual void configureNewSubchunk()
set the currently selected table
virtual void scan(casacore::Vector< casacore::Int > &scans) const override
Return scan number.
virtual const vi::ChannelSelector * determineChannelSelection(casacore::Double time, casacore::Int spectralWindowId=-1, casacore::Int polarizationId=-1, casacore::Int msId=-1) const
VisModelDataI * modelDataGenerator_p
RowBounds rowBounds_p
Subchunk row management object (see above)
Object to hold type of imaging weight scheme to be used on the fly and to provide facilities to do th...
BackWriterImpl2 is slightly more complicated in that it uses a unary accessor.
casacore::Bool weightSpectrumExists() const override
Determine whether WEIGHT_SPECTRUM exists.
virtual const casacore::Table attachTable() const
returns the table, to which columns are attached, can be overridden in derived classes ...
casacore::Double hourangTime_p
Main interface class to a read/write table.
casacore::Int subchunkBegin_p
first row in current subchunk
virtual casacore::Int msId() const override
reference to actual ms in interator
std::pair< casacore::Bool, casacore::Int > popNRowBlocking()
VisibilityIterator2 iterates through one or more readonly MeasurementSets.
virtual void throwIfPendingChanges()
Throws exception if there is a pending (i.e., unapplied) change to the VI's properties.
virtual casacore::IPosition visibilityShape() const override
Return the visibility 4-vector of polarizations for each channel.
A class to provide easy access to MSField columns.
virtual void originChunks()
Reset iterator to true start of data (first chunk)
casacore::Bool msHasWeightSpectrum_p
Does the current casacore::MS have a valid WEIGHT_SPECTRUM?
casacore::Int nRowBlocking_p
virtual void writeBackChanges(VisBuffer2 *) override
+----------------—+ | | | Writeback Methods | | | +----------------—+
virtual casacore::Bool newFieldId() const
Return true if FieldId/Source has changed since last iteration.
virtual casacore::CountedPtr< WeightScaling > getWeightScaling() const override
virtual const casacore::Vector< casacore::Float > & feed_pa(casacore::Double time) const override
Return feed parallactic angles casacore::Vector (nant) (1 feed/ant)
const casacore::ROMSProcessorColumns & processorSubtablecols() const override
Access to processor subtable.
casacore::Int getReportingFrameOfReference() const override
casacore::MFrequency::Convert makeFrequencyConverter(casacore::Double time, int spectralWindowId, casacore::Int otherFrameOfReference, casacore::Bool toObservedFrame, casacore::Unit) const
TableExprNode array(const TableExprNode &values, const TableExprNodeSet &shape)
Create an array of the given shape and fill it with the values.
const casacore::ROMSSourceColumns & sourceSubtablecols() const override
Access to source subtable.
int getMeasurementFrame(int spectralWindowId) const
A class to provide easy read-only access to MSSource columns.
VisibilityIterator2 * getViP() const
Get privileged (non-const) access to the containing ROVI.
const casacore::ROMSSysCalColumns & sysCalSubtablecols() const override
Access to sysCal subtable.
virtual void initialize(const casacore::Block< const casacore::MeasurementSet * > &mss, casacore::Bool useMSIter2=false)
virtual Subchunk getSubchunkId() const override
casacore::Vector< casacore::Int > getChannels(casacore::Double time, casacore::Int frameOfReference, casacore::Int spectralWindowId, casacore::Int msId) const override
casacore::Int nRowBlocking_p
suggested # of rows in a subchunk
casacore::Bool writable_p
VisibilityIteratorImpl2(const casacore::Block< const casacore::MeasurementSet * > &mss, const SortColumns &sortColumns, casacore::Double timeInterval, casacore::Bool isWritable, casacore::Bool useMSIter2=false)
Default constructor - useful only to assign another iterator later VisibilityIteratorImpl2 (); ...
virtual void initWeightSpectrum(const casacore::Cube< casacore::Float > &weightSpectrum) override
Initialize the weightSpectrum column.
casacore::Int getPolarizationId(casacore::Int spectralWindowId, casacore::Int msId) const
MeasurementSets measurementSets_p
void setReportingFrameOfReference(casacore::Int) override
Sets the default frequency reporting frame of reference.
void operator()(VisibilityIteratorImpl2 *vi, VisBuffer2 *vb)
virtual casacore::Bool hasWeightScaling() const override
casacore::Vector< casacore::Stokes::StokesTypes > getCorrelationTypesDefined() const override
virtual void operator()(VisibilityIteratorImpl2 *vi, VisBuffer2 *vb)=0
casacore::Vector< casacore::uInt > chunkRowIds_p
Row numbers of underlying casacore::MS; used to map form chunk rows to casacore::MS rows...
void positionMsIterToASelectedSpectralWindow()
Advances the casacore::MS Iterator until it points at a spectral window that is part of the frequency...
casacore::Bool isInASelectedSpectralWindow() const
Returns true if casacore::MS Iterator is currently pointing to a selected spectral window...
casacore::Int msIndex_p
array index of current MS
virtual void useImagingWeight(const VisImagingWeight &imWgt) override
assign a VisImagingWeight object to this iterator
const casacore::ROMSObservationColumns & observationSubtablecols() const override
Access to observation subtable.
casacore::Double timeMax_p
max timestamp in the chunk
std::shared_ptr< std::vector< bool > > tileCacheIsSet_p
casacore::MeasRef< casacore::MEpoch > timeFrameOfReference_p
virtual void writeFlag(const casacore::Cube< casacore::Bool > &flag) override
Write/modify the flags in the data.
virtual VisBuffer2 * getVisBuffer() const override
virtual casacore::Int nRows() const override
Return the number of rows in the current iteration.
std::unique_ptr< PendingChanges > pendingChanges_p
holds pending changes to VI properties
virtual casacore::Double hourang(casacore::Double time) const override
Return the hour angle for the specified time.
casacore::Vector< casacore::MDirection > azel_p
virtual void dataDescriptionIds(casacore::Vector< casacore::Int > &ddis) const override
virtual void stateId(casacore::Vector< casacore::Int > &stateids) const override
Return the STATE_IDs.
virtual casacore::Bool allBeamOffsetsZero() const override
true if all elements of the cube returned by getBeamOffsets are zero
BackWriterImpl(Setter setter, Getter getter)
casacore::Bool frequencySelectionsPending_p
+========================| | | | Output Related Methods | | | +========================| ...
virtual void allSpectralWindowsSelected(casacore::Vector< casacore::Int > &selectedWindows, casacore::Vector< casacore::Int > &nChannels) const
vi::ChannelSelector * makeChannelSelectorC(const FrequencySelection &selection, casacore::Double time, casacore::Int msId, casacore::Int spectralWindowId, casacore::Int polarizationId) const
Creates a channel selection for the current subchunk based on the channel or frequency selection made...
A class to provide easy read-only access to MSProcessor columns.
VisBuffer2 * vb_p
[own] VisBuffer attached to this VI
const casacore::ROMSPolarizationColumns & polarizationSubtablecols() const override
Access to polarization subtable.
const VisImagingWeight & getImagingWeightGenerator() const override
Return imaging weight (a weight for each channel) virtual casacore::Matrix<casacore::Float> & imagin...
casacore::Vector< casacore::Stokes::StokesTypes > getCorrelationTypesSelected() const override
casacore::Double timeInterval_p
virtual casacore::Int nRowsInChunk() const override
Return the numbers of rows in the current chunk.
A class to provide easy read-only access to MSWeather columns.
casacore::CountedPtr< WeightScaling > weightScaling_p
static BackWriter * makeBackWriter(void(VisibilityIteratorImpl2::*setter)(Ret), Ret(VisBuffer2::*getter)() const)
Backwriter(2) creation methods.
A class to provide easy read-only access to MSASpectralWindow columns.
void getColumnRows(const casacore::ScalarColumn< T > &column, casacore::Vector< T > &array) const
Methods to get the data out of a table column according to whatever selection criteria (e...
A Measure: instant in time.
virtual casacore::Bool isNewSpectralWindow() const override
void convertVisFromStokes(const casacore::Matrix<CStokesVector> & visibilityStokes, casacore::Cube<casacore::Complex> & visCube);
virtual casacore::Int polarizationId() const override
Return current Polarization Id.
A class to provide easy read-only access to MSFreqOffset columns.
virtual void slurp() const override
Return the number of sub-intervals in the current chunk.
std::pair< casacore::Bool, casacore::Double > popInterval()
virtual void feed1(casacore::Vector< casacore::Int > &fd1) const override
Return feed1.
A class to provide easy read-only access to MSState columns.
virtual void flagRow(casacore::Vector< casacore::Bool > &rowflags) const override
Return row flag.
casacore::MSDerivedValues msd_p
Helper class holding casacore::MS derived values.
virtual casacore::Int dataDescriptionId() const override
Return current DataDescription Id.
casacore::Double parang0Time_p
void jonesC(casacore::Vector< casacore::SquareMatrix< casacore::Complex, 2 > > &cjones) const override
Return feed configuration matrix for specified antenna.
void putColumnRows(casacore::ArrayColumn< T > &column, const casacore::Array< T > &array)
Subchunk subchunk_p
(chunkN #, subchunk #) pair
virtual void visibilityModel(casacore::Cube< casacore::Complex > &vis) const override
virtual casacore::String fieldName() const override
Return the current Field Name.
virtual void weight(casacore::Matrix< casacore::Float > &wt) const override
Return weight.
virtual const casacore::Cube< casacore::Double > & receptorAngles() const override
Return receptor angles for all antennae and feeds First axis of the cube is a receptor number...
const casacore::ROMSStateColumns & stateSubtablecols() const override
Access to state subtable.
const casacore::ROMSFreqOffsetColumns & freqOffsetSubtablecols() const override
Access to freqOffset subtable.
const casacore::ROMSPointingColumns & pointingSubtablecols() const override
Access to pointing subtable.
Cache cache_p
general collection of cached values
void setNRowBlocking(casacore::Int)
std::unique_ptr< PointingDirectionCache > pointingDirectionCache_p
virtual casacore::Int nDataDescriptionIds() const override
casacore::Bool empty() const
virtual void sigmaSpectrum(casacore::Cube< casacore::Float > &sigsp) const override
Return sigmaspectrum(a sigma for each channel)
virtual std::pair< bool, casacore::MDirection > getPointingAngle(int antenna, double time) const override
casacore::Int subchunkNRows_p
rows in subchunk
virtual casacore::Bool newArrayId() const
Return true if arrayID has changed since last iteration.
void setMsColumnCacheSizes(const casacore::MeasurementSet &, const string &)
casacore::Vector< casacore::Int > getCorrelations() const override
const ChannelSelector * createDefaultChannelSelector(casacore::Double time, casacore::Int msId, casacore::Int spectralWindowId)
Referenced counted pointer for constant data.
casacore::Bool msIterAtOrigin_p
true if casacore::MS Iter is a start of first MS
casacore::Double azelTime_p
virtual void spectralWindows(casacore::Vector< casacore::Int > &spws) const override
virtual void initSigmaSpectrum(const casacore::Cube< casacore::Float > &sigmaSpectrum) override
Initialize the sigmaSpectrum column.
virtual const casacore::Vector< casacore::String > & antennaMounts() const override
return a string mount identifier for each antenna
Fast Square Matrix class with fixed (templated) size.
A class to provide easy read-only access to MSPointing columns.
define a (start,length,increment) along an axis
A class to provide easy read-only access to MSDoppler columns.
const casacore::ROMSDopplerColumns & dopplerSubtablecols() const override
Access to doppler subtable.
virtual const SpectralWindowChannels & getSpectralWindowChannels(casacore::Int msId, casacore::Int spectralWindowId) const override
get back the selected spectral windows and spectral channels for current ms
virtual casacore::Bool isWritable() const override
casacore::Double parangTime_p
virtual void writeWeight(const casacore::Matrix< casacore::Float > &wt) override
Write/modify the weights.
const ChannelSelector * channelSelector_p
[use] current channel selector for this casacore::MS & Spw
FrequencySelections * frequencySelections_p
A class to provide easy read-only access to MeasurementSet columns.
Class holding the row numbers in a RefTable.
A class to provide easy read-only access to MSHistory columns.
casacore::Bool sigmaSpectrumExists() const override
Determine whether SIGMA_SPECTRUM exists.
std::map< VisBufferComponent2, BackWriter * > backWriters_p
virtual void time(casacore::Vector< casacore::Double > &t) const override
Return MJD midpoint of interval.
const casacore::ROMSColumns * msColumnsKluge() const
Allow access to the casacore::MSColumns object; for use by VisBuffer2Adapter KLUGE ...
casacore::Block< casacore::MeasurementSet > MeasurementSets
casacore::Double hourang_p
virtual casacore::Vector< casacore::Vector< casacore::Int > > getAllSelectedSpws() const
This will return all selected spwids for each ms attached with this iterator.
std::tuple< casacore::Vector< casacore::Int >, casacore::Vector< casacore::Int >, casacore::Vector< casacore::Int >, casacore::Vector< casacore::Int > > ChannelInfo
virtual void flag(casacore::Cube< casacore::Bool > &flags) const override
Return flag for each polarization, channel and row.
VisImagingWeight imwgt_p
object to calculate imaging weight
virtual void flagCategory(casacore::Array< casacore::Bool > &flagCategories) const override
Return flags for each polarization, channel, category, and row.
virtual void setWeightScaling(casacore::CountedPtr< WeightScaling > weightscaling) override
A class to provide easy read-only access to MSDataDesc columns.
std::shared_ptr< std::mutex > tileCacheModMtx_p
casacore::Vector< casacore::Float > parang_p
bool Bool
Define the standard types used by Casacore.
virtual casacore::Double getInterval() const override
Return the time interval (in seconds) used for iteration.
virtual casacore::String keyChange() const override
Report Name of slowest column that changes at end of current iteration.
Read and write access to an array table column with arbitrary data type.
virtual void writeSigma(const casacore::Matrix< casacore::Float > &sig) override
Write/modify the Sigma.
virtual casacore::Int getNMs() const override
casacore::CountedPtr< casacore::MSIter > msIter_p
casacore::MS Iter that underlies the VI (sweeps in chunks)
virtual void setRowBlocking(casacore::Int nRows=0) override
Set the 'blocking' size for returning data.
ChannelSelectorCache * channelSelectorCache_p
[own] cache of recently used channel selectors
virtual casacore::Bool existsColumn(VisBufferComponent2 id) const override
virtual const casacore::Float & parang0(casacore::Double time) const override
Return nominal parallactic angle at specified time (does not include feed position angle offset–see f...
void initializeBackWriters()
virtual const casacore::Vector< casacore::Float > & parang(casacore::Double time) const override
Per antenna:
casacore::Vector< casacore::Float > getReceptor0Angle() override
virtual void writeWeightSpectrum(const casacore::Cube< casacore::Float > &wtsp) override
Write/modify the weightMat virtual void writeWeightMat(const casacore::Matrix<casacore::Float> & wtm...
virtual void arrayIds(casacore::Vector< casacore::Int > &) const override
Return the current ArrayId.
casacore::Bool floatDataFound_p
true if a float data column was found
const casacore::ROMSHistoryColumns & historySubtablecols() const override
Access to history subtable.
virtual casacore::Int polFrame() const override
Return frame for polarization(returns PolFrame enum)
BackWriterImpl2(Setter setter, Getter getter, DataColumn dc)
casacore::MDirection azel0_p
virtual casacore::String sourceName() const override
Return the current Source Name.
casacore::RefRows subchunkRows_p
subchunk's table row numbers
virtual casacore::Int nSpectralWindows() const override
Return number of spws, polids, ddids.
virtual casacore::Int nRowsViWillSweep() const override
Return number of rows in all selected ms's.
virtual void nextChunk() override
Advance to the next Chunk of data.
virtual void setTileCache()
Adjusts the tile cache for some columns so that the cache size is optimized for the current input sta...
virtual casacore::Int spectralWindow() const override
Return current SpectralWindow.
casacore::Bool usesTiledDataManager(const casacore::String &columnName, const casacore::MeasurementSet &ms) const
Returns true if the named column uses a tiled data manager in the specified MS.
void setInterval(casacore::Double)
casacore::Vector< casacore::Double > times_p
times for each row in the chunk
virtual void weightSpectrum(casacore::Cube< casacore::Float > &wtsp) const override
Return weightspectrum(a weight for each channel)
virtual void configureNewChunk()
set the iteration state
virtual void timeCentroid(casacore::Vector< casacore::Double > &t) const override
Return MJD centroid of interval.
VisibilityIterator2::DataColumn DataColumn
VLAT should not access private parts, especially variables.
virtual void observationId(casacore::Vector< casacore::Int > &obsids) const override
Return the OBSERVATION_IDs.
ChannelInfo getChannelInformationUsingFrequency(casacore::Bool now) const
A Table intended to hold astronomical data (a set of Measurements).
PendingChanges * clone() const
casacore::Int chunkNRows_p
last row in current chunk
casacore::Matrix< casacore::Float > imagingWeight_p
const casacore::ROMSFieldColumns & fieldSubtablecols() const override
Access to field subtable.
casacore::Bool autoTileCacheSizing_p
const casacore::ROMSSpWindowColumns & spectralWindowSubtablecols() const override
Access to spectralWindow subtable.
const casacore::ROMSFeedColumns & feedSubtablecols() const override
Access to feed subtable.
virtual casacore::MEpoch getEpoch() const override
virtual casacore::Vector<casacore::MPosition> antennaPositions () const; casacore::MSDerivedValues m...
virtual void applyPendingChanges()
virtual void writeVisModel(const casacore::Cube< casacore::Complex > &vis) override
virtual casacore::Int nPolarizationIds() const override
std::unique_ptr< PointingSource > pointingSource_p
virtual casacore::String ViiType() const override
Report the the ViImplementation type TBD: indicate writable?
virtual void feed2(casacore::Vector< casacore::Int > &fd2) const override
Return feed2.
virtual void origin() override
Reset iterator to origin/start of data (of current chunk)
virtual casacore::MDirection azel0(casacore::Double time) const override
Return the antenna AZ/EL casacore::Vector(nant)
A class to provide easy read-only access to MSObservation columns.
SpectralWindowChannelsCache * spectralWindowChannelsCache_p
[own] Info about spectral windows
VisBuffer2s encapsulate one chunk of visibility data for processing.
virtual void uvw(casacore::Matrix< casacore::Double > &uvwmat) const override
Return u,v and w (in meters)
vi::ChannelSelector * makeChannelSelectorF(const FrequencySelection &selection, casacore::Double time, casacore::Int msId, casacore::Int spectralWindowId, casacore::Int polarizationId) const
casacore::MPosition getObservatoryPosition() const override
A class to provide easy read-only access to MSPolarization columns.
virtual const casacore::Cube< casacore::RigidVector< casacore::Double, 2 > > & getBeamOffsets() const override
Return a cube containing pairs of coordinate offsets for each receptor of each feed (values are in ra...
virtual void visibilityCorrected(casacore::Cube< casacore::Complex > &vis) const override
Return the visibilities as found in the casacore::MS, casacore::Cube(npol,nchan,nrow).
A class to provide easy read-only access to MSFeed columns.
VisibilityIteratorImpl2::DataColumn DataColumn
VisibilityIterator2 iterates through one or more readonly MeasurementSets.
casacore::Vector< casacore::Double > getFrequencies(casacore::Double time, casacore::Int frameOfReference, casacore::Int spectralWindowId, casacore::Int msId) const override
casacore::Double feedpaTime_p
virtual void corrType(casacore::Vector< casacore::Int > &corrTypes) const override
Return the correlation type (returns casacore::Stokes enums)
A class to provide easy read-only access to MSAntenna columns.
FrequencySelections * frequencySelections_p
[own] Current frequency selection
const casacore::MSDerivedValues & getMsd() const
Provides access to the casacore::MS-derived values object.
String: the storage and methods of handling collections of characters.
casacore::Bool msHasSigmaSpectrum_p
Does the current casacore::MS have a valid SIGMA_SPECTRUM?
virtual const casacore::MDirection & phaseCenter() const override
Return the current phase center as an MDirection.
void setFrequencySelections(FrequencySelections *)
takes ownership
const casacore::ROMSWeatherColumns & weatherSubtablecols() const override
Access to weather subtable.
casacore::Double azel0Time_p
virtual ~VisibilityIteratorImpl2()
Destructor.
virtual casacore::Bool more() const override
Return false if no more data (in current chunk)
casacore::Int subchunkEnd_p
last row in current subchunk
casacore::Double interval_p
casacore::Float parang0_p
virtual casacore::Bool isNewMs() const override
virtual casacore::Bool newSpectralWindow() const
Return true if SpectralWindow has changed since last iteration.
const casacore::ROMSDataDescColumns & dataDescriptionSubtablecols() const override
Access to dataDescription subtable.
A simple BackWriterImpl2 uses a nullary accessor on a VisBuffer.
virtual void sigma(casacore::Matrix< casacore::Float > &sig) const override
Return sigma.
virtual void floatData(casacore::Cube< casacore::Float > &fcube) const override
Return FLOAT_DATA as a casacore::Cube(npol, nchan, nrow) if found in the MS.
friend class ViImplAsync2
Access to a scalar table column with arbitrary data type.
virtual void setInterval(casacore::Double timeInterval) override
Set or reset the time interval (in seconds) to use for iteration.
casacore::Block< casacore::MeasurementSet > getMeasurementSets() const
Returns the casacore::MS objects that this VI is iterating over.
virtual void next() override
advance the iteration
virtual void setFrequencySelections(const FrequencySelections &selection) override
Select the channels to be returned.
void operator()(VisibilityIteratorImpl2 *vi, VisBuffer2 *vb)
SortColumns sortColumns_p
sort columns specified when creating VI
Abstract base class for Record classes.
virtual const SortColumns & getSortColumns() const override
Types
Types of known MFrequencies Warning: The order defines the order in the translation matrix FromTo in...
virtual void attachColumns(const casacore::Table &t)
ViColumns2 columns_p
The main columns for the current MS.
casacore::Int reportingFrame_p
default frequency reporting (not selecting) frame of reference
virtual void antenna2(casacore::Vector< casacore::Int > &ant2) const override
Return antenna2.
virtual void fieldIds(casacore::Vector< casacore::Int > &) const override
Return the current FieldId.
casacore::Bool more_p
true if more data in this chunk
void setMsCacheSizes(const casacore::MeasurementSet &ms, std::vector< casacore::MSMainEnums::PredefinedColumns > columnIds)
const casacore::ROMSFlagCmdColumns & flagCmdSubtablecols() const override
Access to flagCmd subtable.
virtual casacore::Bool isNewFieldId() const override
virtual void writeSigmaSpectrum(const casacore::Cube< casacore::Float > &sigsp) override
Write/modify the sigmaSpectrum.
virtual void addDataSelection(const casacore::MeasurementSet &ms)
Ctor auxiliary method.
virtual const casacore::MeasurementSet & ms() const override
reference to actual ms in interator
A class to provide easy read-only access to MSFlagCmd columns.
bool fillFromVirtualModel(casacore::Cube< casacore::Complex > &value) const
A class to provide easy read-only access to MSSysCal columns.
casacore::Bool flagCategoryExists() const override
Determine whether FLAG_CATEGORY is valid.
casacore::Vector< casacore::Float > feedpa_p
virtual casacore::Bool moreChunks() const override
Return false if no more 'Chunks' of data left.
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
friend class AsyncEnabler
ChannelInfo getChannelInformation(casacore::Bool now) const
virtual void getRowIds(casacore::Vector< casacore::uInt > &rowids) const override
Return the row ids as from the original root table.
virtual void writeFlagRow(const casacore::Vector< casacore::Bool > &rowflags) override
Write/modify the flag row column; dimension casacore::Vector(nrow)
casacore::Slice findChannelsInRange(casacore::Double lowerFrequency, casacore::Double upperFrequency, const vi::SpectralWindowChannels &spectralWindowChannels) const
casacore::Int measurementFrame_p
cached value of observatory type
VisibilityIteratorImpl2 & operator=(const VisibilityIteratorImpl2 &vii)
virtual casacore::String msName() const override
Name of the MS in the interator.
virtual casacore::Bool isNewArrayId() const override
Check if ms has change since last iteration.
virtual const vi::SubtableColumns & subtableColumns() const override
Get the spw, start and nchan for all the ms's is this Visiter that match the frequecy "freqstart-freq...
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.