28 #ifndef CALTABLES_CTPATCHEDINTERP_H
29 #define CALTABLES_CTPATCHEDINTERP_H
195 #define INTERPMETHOD casacore::InterpolateArray1D<casacore::Double,casacore::Float>::InterpolationMethod
casacore::Cube< casacore::Cube< casacore::Float > > freqResult_
casacore::Vector< casacore::Int > nChanIn_
CalTable freq axis info.
casacore::Array< casacore::Complex > c()
Render casacore::Complex version (calc from casacore::Float, if necessary)
casacore::InterpolateArray1D< casacore::Double, casacore::Float >::InterpolationMethod ftype(casacore::String &strtype)
Translate freq axis interpolation string.
casacore::Array< casacore::Bool > & rflag(casacore::Int obs, casacore::Int fld, casacore::Int spw)
CTTimeInterp1 *(* CTTIFactoryPtr)(NewCalTable &, const casacore::String &, casacore::Array< casacore::Float > &, casacore::Array< casacore::Bool > &)
Pointer to static factory methods for CTTimeInterp1.
casacore::Bool isCmplx_
Are parameters fundamentally complex?
void setDefSpwMap()
Spw default: indgen (index identity)
casacore::Int nCTObs_
Obs, Field, Spw, Ant input (CalTable) sizes patch panels should not violate these (point to larger in...
A class to provide easy access to MSField columns.
casacore::Vector< casacore::Int > fldMap_
The patch panels Each has length from casacore::MS, values refer to CT.
casacore::Cube< casacore::Cube< casacore::Float > > result_
Current interpolation result Arrays These will reference time or freq result, depending on context...
void setDefAntMap()
void setSpwMap(casacore::Vector<casacore::Double>& refFreqs); // via refFreq matching void setSpwMap(...
casacore::Bool spwOK(casacore::Int spw) const
spwOK info for users
casacore::Bool relativeFreq_
Relative-to-center interpolation.
CTTIFactoryPtr cttifactoryptr_
Pointer to the factory to use to create CTTimeInterp1s (or specializations)
A 3-D Specialization of the Array class.
casacore::Vector< INTERPMETHOD > freqInterpMethodVec_
ABSTRACT TOOL CLASSES A PlotTool is a higher level event handler for a PlotCanvas The idea is to take common tasks which may require multiple events and put them in one place PlotTools also provide additional functionality in that they can be active and blocking non blocking The PlotCanvas will only send events to active and will not send events to later tools or event handlers if the latest tool was blocking In this way a single tool can be used to handle ALL user interaction via the GUI at one time
NewCalTable ct_
PRIVATE DATA:
virtual casacore::Int nPar()
M currently has just 2 complex parameters, i.e., both parallel hands.
void state()
Const access to various state TBD.
void resampleInFreq(casacore::Matrix< casacore::Float > &fres, casacore::Matrix< casacore::Bool > &fflg, const casacore::Vector< casacore::Double > &fout, casacore::Matrix< casacore::Float > &tres, casacore::Matrix< casacore::Bool > &tflg, const casacore::Vector< casacore::Double > &fin)
Resample in frequency.
void setSpwMap(casacore::Vector< casacore::Int > &spwmap)
casacore::Bool byObs_
Are we slicing caltable by field?
Interpolate in one dimension.
casacore::Vector< casacore::Int > spwMap_
casacore::Array< casacore::Bool > & tresultFlag(casacore::Int obs, casacore::Int fld, casacore::Int spw)
virtual ~CTPatchedInterp()
Destructor.
casacore::Cube< casacore::Cube< casacore::Bool > > resFlag_
casacore::Array< casacore::Complex > resultC(casacore::Int obs, casacore::Int fld, casacore::Int spw)
casacore::Cube< casacore::Cube< casacore::Bool > > freqResFlag_
InterpolationMethod
Interpolation methods.
casacore::Vector< casacore::Int > antMap_
casacore::Bool interpolate(casacore::Int obs, casacore::Int fld, casacore::Int spw, casacore::Double time, casacore::Double freq=-1.0)
Interpolate, given input field, spw, timestamp, & (optionally) freq list returns T if new result (any...
casacore::Cube< casacore::Cube< casacore::Bool > > timeResFlag_
casacore::Bool spwInOK(casacore::Int spw) const
const INTERPMETHOD freqInterpMethod0_
casacore::String freqTypeStr_
A class to provide easy read-only access to MeasurementSet columns.
static CTTimeInterp1 * factory(NewCalTable &ct, const casacore::String &timetype, casacore::Array< casacore::Float > &result, casacore::Array< casacore::Bool > &rflag)
static factory method to make CTTimeInterp1
casacore::Array< CTTimeInterp1 * > tI_
The pre-patched casacore::Time interpolation engines These are populated by the available caltables s...
casacore::Array< casacore::Bool > tIdel_
casacore::Vector< casacore::Int > elemMap_
void resampleFlagsInFreq(casacore::Vector< casacore::Bool > &flgout, const casacore::Vector< casacore::Double > &fout, casacore::Vector< casacore::Bool > &flgin, const casacore::Vector< casacore::Double > &fin)
casacore::Vector< casacore::Int > lastObs_
casacore::Vector< casacore::Bool > conjTab_
Control conjugation of baseline-based solutions when mapping requires.
void indgen(TableVector< T > &tv, Int start, Int inc)
casacore::Int nPar_
The number of (casacore::Float) parameters (per-chan, per-element)
bool Bool
Define the standard types used by Casacore.
casacore::Vector< casacore::Int > lastFld_
casacore::Array< NewCalTable * > ctSlices_
The CalTable slices.
void sliceTable()
Setup methods.
casacore::Cube< casacore::Cube< casacore::Float > > timeResult_
Internal result Arrays.
casacore::Vector< casacore::Vector< casacore::Double > > freqIn_
A Table intended to hold a MeasurementSet FIELD table.
A Table intended to hold astronomical data (a set of Measurements).
CTPatchedInterp()
Null ctor does nothing.
void setDefFldMap()
Methods to set up 1:1 patch-panel maps Private for now as not yet ready to control from outside Field...
casacore::Vector< casacore::Bool > spwInOK_
OK flag.
void set(const T &value)
Set every element of the array to "value." Also could use the assignment operator which assigns an ar...
void setElemMap()
void setAntMap(casacore::Vector<casacore::Int>& ant); // via ordered index list void setAntMap(casaco...
INTERPMETHOD freqInterpMethod_
casacore::Int blnidx(const casacore::Int &a1, const casacore::Int &a2, const casacore::Int &nAnt)
Baseline index from antenna indices: (assumes a1<=a2 !!)
String: the storage and methods of handling collections of characters.
casacore::Array< casacore::Float > & tresultF(casacore::Int obs, casacore::Int fld, casacore::Int spw)
Temporary public function for testing.
VisCalEnum::MatrixType mtype_
casacore::Matrix type
void setFldMap(const casacore::MSField &msfld)
void resize(size_t len, Bool copyValues=False)
casacore::Int thisobs(casacore::Int obs)
casacore::String timeType_
Interpolation modes.
#define INTERPMETHOD
Freq-dep interpolation method (from InterpolateArray1D enum)
casacore::Vector< casacore::Int > altFld_
Alternate field indices.
casacore::Int nMSObs_
Obs, Field, Spw, Ant output (casacore::MS) sizes calibration required for up to this many...
casacore::Array< casacore::Float > & resultF(casacore::Int obs, casacore::Int fld, casacore::Int spw)
Access to the result.
void calcAltFld()
void setFldMap(casacore::Vector<casacore::String>& field); // via name matching void setFldMap(casaco...
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.