Go to the documentation of this file.
29 #ifndef MS_MSSELECTOR_H
30 #define MS_MSSELECTOR_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/casa/Arrays/Vector.h>
34 #include <casacore/casa/Arrays/Slice.h>
35 #include <casacore/casa/Arrays/Slicer.h>
36 #include <casacore/ms/MeasurementSets/MeasurementSet.h>
37 #include <casacore/ms/MeasurementSets/StokesConverter.h>
38 #include <casacore/ms/MSOper/MSDerivedValues.h>
39 #include <casacore/ms/MSSel/MSSelectionKeywords.h>
43 template <
class T>
class ArrayColumn;
194 Int ifrAxisGap=0,
Int inc=1,
246 const Slicer & rowSlicer)
const;
251 const Slicer & rowSlicer)
const;
261 const Slicer& rowSlicer)
const;
Specify which elements to extract from an n-dimensional array.
Array< Bool > getAveragedFlag(Array< Bool > &avFlag, const ArrayColumn< Bool > &col) const
"average" flag, at present all output which has a flagged input is flagged
Int nrow() const
Number of rows in selected table.
Vector< Int > dataDescId() const
Return the data desc IDs selected
Vector< Int > ifrSelection_p
MSDerivedValues calculates values derived from a MS.
void getAveragedData(Array< Complex > &avData, const Array< Bool > &flag, const ArrayColumn< Complex > &col) const
average and convert data
MSSelector & operator=(const MSSelector &other)
Assignment, this will initialize the MS with other's MS.
void timeAverage(Array< Bool > &dataFlags, Array< Complex > &data, const Array< Bool > &flags, const Array< Float > &weights)
time average the input data, return new flags
StokesConverter converts any set of polarizations into any other one.
Vector< Int > dataDescId_p
Bool initSelection(const Vector< Int > &dataDescIds, Bool reset=False)
initialize the selection by specifying, optionally, the DATA_DESC_IDs.
Matrix< Double > chanFreq_p
MSSelector specifies selections on a MeasurementSet.
Main interface class to a read/write table.
Bool iterInit(const Vector< String > &columns, Double interval, Int maxRows=0, Bool addDefaultSortColumns=True)
Set up an iterator, iterating over the specified columns, with optional time interval and maximum num...
define a (start,length,increment) along an axis
this file contains all the compiler specific defines
uInt nrow() const
Get the number of rows.
Bool putData(const Record &items)
Put the data for the items provided.
Bool iterEnd()
End the iteration (before reaching the last iteration) and set the selection back to the state before...
Bool selectChannel(Int nChan, Int start, Int width, Int incr)
Set the mapping from input channels in the DATA column to output channels.
Record getData(const Vector< String > &items, Bool ifrAxis, Int ifrAxisGap=0, Int inc=1, Bool average=False, Bool oneBased=False)
Return the data for the items requested, all returned values will be arrays, the last dimension of th...
void makeSlicer(Int start, Int nCorr) const
make the data slicer, pass in the first and the number of correlations to select
Bool selectPolarization(const Vector< String > &wantedPol)
Specify the output polarization.
Bool checkSelection()
check if the data description selection has been done & do default selection if not.
Bool select(const Record &items, Bool oneBased=False)
Select the MS based on the selections present in the input record.
A Table intended to hold astronomical data (a set of Measurements).
An iterator class for MeasurementSets
Table selectedTable() const
Return the selected table.
StokesConverter stokesConverter_p
String: the storage and methods of handling collections of characters.
Bool iterOrigin()
(Re)Set the iterator to the first iteration, call this after iterInit.
MSRange determines ranges of values in a MeasurementSet.
bool Bool
Define the standard types used by Casacore.
A hierarchical collection of named fields of various types.
Array< Float > getWeight(const ArrayColumn< Float > &wtCol, Bool sigma=False) const
get the weight, set sigma=True when retrieving sigma's
void reorderFlagRow(Array< Bool > &flagRow)
reorder from 2d to 1d (removing ifr axis)
Bool iterNext()
Step the iterator, sets the selection to the current table iteration.
Vector< String > polSelection_p
Matrix< Double > bandwidth_p
void setMS(MeasurementSet &ms)
Change or Set the MS this MSSelector refers to.
Vector< Int > lastDataDescId_p
void reorderWeight(Array< Float > &weight)
reorder from 2d to 1d (removing ifr axis)
void putAveragedFlag(const Array< Bool > &avFlag, ArrayColumn< Bool > &col)
"unaverage" flag, distribute the flags back to the channels that went into the average
Bool selected() const
Return the selection status of the table.