28 #ifndef CALTABLES_CLPATCHPANEL_H
29 #define CALTABLES_CLPATCHPANEL_H
52 class MSSelectableTable;
377 std::map<CTCalPatchKey,casacore::String>
ciname_;
378 std::map<CTCalPatchKey,CTTimeInterp1*>
ci_;
384 std::map<MSCalPatchKey,casacore::Int>
ctspw_;
386 std::map<MSCalPatchKey,CTTimeInterp1*>
msci_;
A Vector of integers, for indexing into Array<T> objects.
casacore::Matrix< casacore::Bool > resultFlag(casacore::Int ielem)
std::map< CTCalPatchKey, casacore::String > ciname_
CLPPResult & operator=(const CLPPResult &other)
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::String finterp)
CTCalPatchKey(casacore::Int clsl, casacore::Int obs, casacore::Int fld, casacore::Int spw, casacore::Int ant=-1)
virtual casacore::String print() const
casacore::Cube< casacore::Float > result_
Control conjugation of baseline-based solutions when mapping requires casacore::Vector<casacore::Bool...
CTTimeInterp1 *(* CTTIFactoryPtr)(NewCalTable &, const casacore::String &, casacore::Array< casacore::Float > &, casacore::Array< casacore::Bool > &)
Pointer to static factory methods for CTTimeInterp1.
Main interface class to a read/write table.
A class to parse the contents of a single CalLib slice i.e., for one caltable, one setup...
void listmappings()
Report state.
void selectOnCTorMS(casacore::Table &ctout, casacore::MSSelectableTable &msst, const casacore::String &obs, const casacore::String &fld, const casacore::String &ent, const casacore::String &spw, const casacore::String &ant, const casacore::String &taql)
Methods to support layered selection.
const casacore::Vector< casacore::Double > & freqIn(casacore::Int spw)
Access to CalTable's freq info.
A class to provide easy access to MSField columns.
CalMap()
Null ctor (defaults everything)
void setNearestFieldMap(const casacore::MeasurementSet &ms, const NewCalTable &ct)
Calculate the simple nearest field map.
casacore::Matrix< casacore::Float > operator()(casacore::Int ielem)
void resize(casacore::uInt nPar, casacore::uInt nFPar, casacore::uInt nChan, casacore::uInt nelem)
casacore::Bool isCmplx_
Are parameters fundamentally complex?
void selectOnCT(NewCalTable &ctout, const NewCalTable &ctin, const casacore::String &obs, const casacore::String &fld, const casacore::String &spw, const casacore::String &ant1)
casacore::Bool MSIndicesOK(casacore::Int obs, casacore::Int fld, casacore::Int ent, casacore::Int spw, casacore::Int ant=-1)
Are specified indices OK for this CL (i.e., not explicitly marked as expected but absent) Will be cal...
casacore::Cube< casacore::Bool > resultFlag_
virtual casacore::Bool operator<(const CalPatchKey &other) const
std::map< CTCalPatchKey, CTTimeInterp1 * > ci_
CLPatchPanel()
Null ctor does nothing.
std::map< MSCalPatchKey, casacore::Int > ctspw_
casacore::Vector< casacore::Int > msids(casacore::Int ctid, const casacore::Vector< casacore::Int > &superset=casacore::Vector< casacore::Int >()) const
Return the msids that will be satisfied by a specific ctid.
casacore::Record asRecord()
Extract as a record.
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
casacore::Vector< casacore::Int > vcalmap_
casacore::Cube< casacore::Bool > resFlag_
casacore::Vector< casacore::Float * > lastresadd_
Keep track of last cal result address (per spw)
virtual casacore::Int nPar()
M currently has just 2 complex parameters, i.e., both parallel hands.
A specialized key class for Calibration patch panel elements.
casacore::Vector< casacore::Vector< casacore::Double > > freqIn_
CalPatchKey(casacore::IPosition keyids)
casacore::String CASAvers()
Report the CASA version at which the NCT was created (from header)
ostream-like interface to creating log messages.
casacore::Vector< casacore::Int > getCLuniqueIds(NewCalTable &ct, casacore::String vcol)
void setSelectedFieldMap(const casacore::String &fieldsel, const casacore::MeasurementSet &ms, const NewCalTable &ct)
Parse field selection map.
CalLibSlice(casacore::String obs, casacore::String fld, casacore::String ent, casacore::String spw, casacore::String tinterp, casacore::String finterp, casacore::Vector< casacore::Int > obsmap=casacore::Vector< casacore::Int >(1,-1), casacore::Vector< casacore::Int > fldmap=casacore::Vector< casacore::Int >(1,-1), casacore::Vector< casacore::Int > spwmap=casacore::Vector< casacore::Int >(1,-1), casacore::Vector< casacore::Int > antmap=casacore::Vector< casacore::Int >(1,-1))
casacore::Vector< casacore::Int > nChanIn_
casacore::InterpolateArray1D<casacore::Double,casacore::Float>::InterpolationMethod ia1dmethod_; ...
casacore::Vector< casacore::Int > vmap() const
Return the verbatim (casacore::Vector) map.
casacore::Bool interpolate(casacore::Cube< casacore::Complex > &resultC, casacore::Cube< casacore::Bool > &resFlag, casacore::Int obs, casacore::Int fld, casacore::Int ent, casacore::Int spw, casacore::Double time, casacore::Double freq=-1.0)
Interpolate, given input obs, field, intent, spw, timestamp, & (optionally) freq returns T if new res...
NewCalTable ct_
PRIVATE DATA:
casacore::Vector< casacore::Int > getCLuniqueObsIds(NewCalTable &ct)
Extract unique indices from caltables.
casacore::Int operator()(casacore::Int msid) const
Construct from a casacore::Record (int:int; TBD: need an casacore::MS to parse strings) CalMap(const ...
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, casacore::String finterp)
Set generic antenna/baseline map void setElemMap();.
casacore::InterpolateArray1D< casacore::Double, casacore::Float >::InterpolationMethod ftype(casacore::String &strtype)
Baseline index from antenna indices: (assumes a1<=a2 !!) inline casacore::Int blnidx(const casacore::...
InterpolationMethod
Interpolation methods.
std::map< MSCalPatchKey, CLPPResult > msFres_
A base class for calmaps.
casacore::Int nCTObs_
Obs, Field, Spw, Ant input (CalTable) sizes patch panels should not violate these (point to larger in...
casacore::Int nMSObs_
Obs, Field, Spw, Ant output (casacore::MS) sizes calibration required for up to this many...
casacore::Bool getTresult(casacore::Cube< casacore::Float > &resultR, casacore::Cube< casacore::Bool > &resFlag, casacore::Int obs, casacore::Int fld, casacore::Int ent, casacore::Int spw)
Const access to various state TBD.
void selectOnMS(casacore::MeasurementSet &msout, const casacore::MeasurementSet &msin, const casacore::String &obs, const casacore::String &fld, const casacore::String &ent, const casacore::String &spw, const casacore::String &ant)
casacore::MeasurementSet ms_
Associated (selected) MS.
std::map< CTCalPatchKey, CLPPResult > clTres_
Maps.
std::map< MSCalPatchKey, CLPPResult > msTres_
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::String CTCASAvers()
CASA version of the internal caltable.
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
MSSelectableTable: An interface class used by MSSelection module to access the sub-tables and main-ta...
virtual ~CLPatchPanel()
Destructor.
TableExprNode shape(const TableExprNode &array)
Function operating on any scalar or array resulting in a Double array containing the shape...
casacore::String fieldcalmap_
User's specification.
A Table intended to hold astronomical data (a set of Measurements).
std::map< MSCalPatchKey, casacore::String > msciname_
std::map< MSCalPatchKey, casacore::String > finterp_
casacore::Vector< casacore::Double > refFreqIn_
casacore::Bool calAvailable(casacore::Int obs, casacore::Int fld, casacore::Int ent, casacore::Int spw, casacore::Int ant=-1)
Is specific calibration explicitly available for a obs,fld,intent,spw,ant combination?
Matrix< T > xyPlane(size_t zplane)
Extract a plane as a matrix referencing the original data.
MSCalPatchKey(casacore::Int obs, casacore::Int fld, casacore::Int ent, casacore::Int spw, casacore::Int ant=-1)
casacore::Int nPar_
The number of (casacore::Float) parameters (per-chan, per-element)
casacore::Vector< casacore::Int > getCLuniqueFldIds(NewCalTable &ct)
casacore::Matrix< casacore::Float > result(casacore::Int ielem)
void recordBadMSIndices(const casacore::Vector< casacore::Int > &obs, const casacore::Vector< casacore::Int > &fld, const casacore::Vector< casacore::Int > &ent, const casacore::Vector< casacore::Int > &spw)
virtual casacore::String print() const =0
std::map< MSCalPatchKey, CTTimeInterp1 * > msci_
virtual casacore::String print() const
String: the storage and methods of handling collections of characters.
CTTIFactoryPtr cttifactoryptr_
The factory to use to create CTTimeInterp1s.
A class to provide easy read-only access to new CalTable columns.
casacore::Vector< casacore::Int > getCLuniqueSpwIds(NewCalTable &ct)
casacore::Vector< casacore::Int > ctids(const casacore::Vector< casacore::Int > &msids) const
Return the ctids required for a set a msids (from among those available) TBD: what to do if nominally...
static casacore::Bool validateCLS(const casacore::Record &clslice)
validation
casacore::Cube< casacore::Float > result_
casacore::Vector< casacore::Int > cpk_
std::map< MSCalPatchKey, casacore::String > badmsciname_
const casacore::Vector< casacore::Double > & refFreqIn()
casacore::Vector< casacore::Int > getMSuniqueIds(casacore::MeasurementSet &ms, casacore::String vcol)
Extract unique indices (net selected) from MS.
VisCalEnum::MatrixType mtype_
casacore::Matrix type
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.