29 #ifndef MSVIS_MSUTIL_H
30 #define MSVIS_MSUTIL_H
static void getSpwInFreqRange(casacore::Vector< casacore::Int > &spw, casacore::Vector< casacore::Int > &start, casacore::Vector< casacore::Int > &nchan, const casacore::MeasurementSet &ms, const casacore::Double freqStart, const casacore::Double freqEnd, const casacore::Double freqStep, const casacore::MFrequency::Types freqframe=casacore::MFrequency::LSRK, const casacore::Int fieldId=0)
This method gives you the channels (and spws) that will cover the freq range provided in the frame th...
A Measure: astronomical direction.
static void rejectConsecutive(const casacore::Vector< casacore::Double > &t, casacore::Vector< casacore::Double > &retval, casacore::Vector< casacore::Int > &indx)
static void getChannelRangeFromFreqRange(casacore::Int &start, casacore::Int &nchan, const casacore::MeasurementSet &ms, const casacore::Int spw, const casacore::Double freqStart, const casacore::Double freqEnd, const casacore::Double freqStep, const casacore::MFrequency::Types freqframe=casacore::MFrequency::LSRK)
Get the channel range in a spw and a given frequency range in given frame.
static void getIndexCombination(const casacore::ROMSColumns &mscol, casacore::Matrix< casacore::Int > &retval)
static casacore::Vector< casacore::String > getSpectralFrames(casacore::Vector< casacore::MFrequency::Types > &types, const casacore::MeasurementSet &ms)
Return all the selected SPW types selected in the selected casacore::MS if the input ms is a referenc...
static casacore::Bool getFreqRangeInSpw(casacore::Double &freqStart, casacore::Double &freqEnd, const casacore::Vector< casacore::Int > &spw, const casacore::Vector< casacore::Int > &start, const casacore::Vector< casacore::Int > &nchan, const casacore::MeasurementSet &ms, const casacore::MFrequency::Types freqframe=casacore::MFrequency::LSRK, const casacore::Int fieldId=0, const casacore::Bool edge=true)
The following wil provide the range of frequency convered in the frame requested by the spw...
A Measure: instant in time.
A class to provide easy read-only access to MeasurementSet columns.
static casacore::Bool getFreqRangeAndRefFreqShift(casacore::Double &freqStart, casacore::Double &freqEnd, casacore::Quantity &sysvel, const casacore::MEpoch &refEp, const casacore::Vector< casacore::Int > &spw, const casacore::Vector< casacore::Int > &start, const casacore::Vector< casacore::Int > &nchan, const casacore::MeasurementSet &ms, const casacore::String &ephemPath=casacore::String(""), const casacore::MDirection &trackDir=casacore::MDirection(casacore::MDirection::APP), const casacore::Bool fromEdge=true)
This version gets the range of frequency in SOURCE frame for an ephem source either trackDIr should b...
bool Bool
Define the standard types used by Casacore.
A Table intended to hold astronomical data (a set of Measurements).
String: the storage and methods of handling collections of characters.
MSUtil()
Empty Constructor if needed.
Types
Types of known MFrequencies Warning: The order defines the order in the translation matrix FromTo in...
static void getSpwInFreqRangeAllFields(casacore::Vector< casacore::Int > &spw, casacore::Vector< casacore::Int > &start, casacore::Vector< casacore::Int > &nchan, const casacore::MeasurementSet &ms, const casacore::Double freqStart, const casacore::Double freqEnd, const casacore::Double freqStep, const casacore::MFrequency::Types freqframe=casacore::MFrequency::LSRK)
A version of the above for all the fields in the MS.