31 #include <casacore/casa/aips.h> 32 #include <casacore/casa/Arrays/Matrix.h> 33 #include <casacore/casa/Arrays/Cube.h> 34 #include <casacore/ms/MeasurementSets/MeasurementSet.h> 35 #include <casacore/measures/Measures/MFrequency.h> 36 #include <casacore/measures/Measures/MDirection.h> 37 #include <casacore/measures/Measures/MPosition.h> 38 #include <casacore/tables/Tables/ScalarColumn.h> 39 #include <casacore/casa/Utilities/Compare.h> 40 #include <casacore/casa/BasicSL/String.h> 41 #include <casacore/scimath/Mathematics/SquareMatrix.h> 42 #include <casacore/scimath/Mathematics/RigidVector.h> 57 class MSInterval :
public BaseCompare
62 virtual int comp(
const void * obj1,
const void * obj2)
const;
221 virtual void origin();
224 virtual Bool more()
const;
227 virtual MSIter & operator++(
int);
228 virtual MSIter & operator++();
231 const String& keyChange()
const;
237 const MS& ms()
const;
253 Bool newArray()
const;
259 Bool newField()
const;
262 Int spectralWindowId()
const;
265 Bool newSpectralWindow()
const;
268 Int dataDescriptionId()
const;
271 Bool newDataDescriptionId()
const;
274 Int polarizationId()
const;
277 Bool newPolarizationId()
const;
281 Int polFrame()
const;
297 const MPosition& telescopePosition()
const;
321 Int startChan()
const;
333 Bool allBeamOffsetsZero()
const;
350 const MS& ms(
const uInt n)
const;
365 const String& fieldName()
const;
366 const String& sourceName()
const;
370 void construct(
const Block<Int>& sortColumns,
Bool addDefaultSortColumns);
374 virtual void setState();
378 void setDataDescInfo();
392 Int curMS_p, lastMS_p, curArray_p, lastArray_p, curSource_p;
393 String curFieldName_p, curSourceName_p;
394 Int curField_p, lastField_p, curSpectralWindow_p, lastSpectralWindow_p;
395 Int curPolarizationId_p, lastPolarizationId_p;
396 Int curDataDescId_p, lastDataDescId_p;
397 Bool more_p, newMS_p, newArray_p, newField_p, newSpectralWindow_p,
398 newPolarizationId_p, newDataDescId_p, preselected_p,
399 timeDepFeed_p, spwDepFeed_p, checkFeed_p;
408 Block<Int> preselectedChanStart_p,preselectednChan_p;
414 Double prevFirstTimeStamp_p;
430 Bool allBeamOffsetsZero_p;
452 {
return newSpectralWindow_p;}
458 {
return curSpectralWindow_p;}
465 {
return telescopePosition_p;}
467 {
return CJonesFeed0_p;}
471 {
return receptorAnglesFeed0_p;}
473 {
return receptorAngles_p;}
475 {
return antennaMounts_p;}
477 {
return beamOffsets_p;}
const MS & ms() const
Return reference to the current MS.
A Measure: astronomical direction.
A Measure: position on Earth.
Int fieldId() const
Return the current FieldId.
Main interface class to a read/write table.
void setInterval(Double interval)
MSInterval(Double interval)
virtual Bool more() const
Return False if there is no more data.
Bool allBeamOffsetsZero() const
True if all elements of the cube returned by getBeamOffsets are zero.
Int polFrame() const
Return frame for polarization (returns PolFrame enum)
Int numMS() const
Get the number of actual ms's associated wth this iterator.
PtrHolder< T > & operator=(const PtrHolder< T > &other)
Int polarizationId() const
Return current PolarizationId.
virtual void setOffset(Double offset)
A 2-D Specialization of the Array class.
Int msId() const
Return the current MS Id (according to the order in which they appeared in the constructor) ...
Bool newPolarizationId() const
Return True if polarization has changed since last iteration.
Table table() const
Return the current Table iteration.
A Measure: wave characteristics.
const Matrix< Double > & receptorAngle() const
Return the receptor angle for feed 0 on each antenna.
Int startChan() const
Return the channel number of the first channel in the DATA.
Bool newMS() const
Return true if msId has changed since last iteration.
Referenced counted pointer for constant data.
Bool newDataDescriptionId() const
Return True if DataDescriptionId has changed since last iteration.
Double getInterval() const
A class to provide easy read-only access to MeasurementSet columns.
const Vector< SquareMatrix< Complex, 2 > > & CJones() const
Return the feed configuration/leakage matrix for feed 0 on each antenna TODO: CJonesAll can be used i...
const Matrix< SquareMatrix< Complex, 2 > > & CJonesAll() const
Return the feed configuration/leakage matrix for all feeds and antennae First axis is antennaId...
bool Bool
Define the standard types used by Casacore.
Bool newSpectralWindow() const
Return True if SpectralWindow has changed since last iteration.
const Cube< RigidVector< Double, 2 > > & getBeamOffsets() const
Return a cube containing pairs of coordinate offset for each receptor of each feed (values are in rad...
const Vector< String > & antennaMounts() const
Return a string mount identifier for each antenna.
Bool newArray() const
Return True if ArrayId has changed since last iteration.
A drop-in replacement for Block<T*>.
Int arrayId() const
Return the current ArrayId.
A Table intended to hold astronomical data (a set of Measurements).
Bool newField() const
Return True if FieldId/Source has changed since last iteration.
const Cube< Double > & receptorAngles() const
Return the receptor angles for all feeds and antennae First axis is a receptor number, 2nd axis is antennaId, 3rd axis is feedId.
virtual int comp(const void *obj1, const void *obj2) const
Compare two objects, and return.
An iterator class for MeasurementSets.
Int dataDescriptionId() const
Return current DataDescriptionId.
const ROMSColumns & msColumns() const
Return reference to the current ROMSColumns.
String: the storage and methods of handling collections of characters.
const MPosition & telescopePosition() const
Return the telescope position (if a known telescope) or the position of the first antenna (if unknown...
Int spectralWindowId() const
Return current SpectralWindow.
this file contains all the compiler specific defines