A top level class defining the data handling interface for the CalibratingTvi2 module. More...
#include <CalibratingVi2Factory.h>
Public Member Functions | |
CalibratingVi2Factory (MeasurementSet *ms, const CalibratingParameters &calpar, const IteratingParameters &iterpar=IteratingParameters()) | |
CalibratingVi2Factory () | |
CalibratingVi2Factory (MeasurementSet *ms, const Record &calrec, const IteratingParameters &iterpar=IteratingParameters()) | |
CalibratingVi2Factory (MeasurementSet *ms, const String &callib, const IteratingParameters &iterpar=IteratingParameters()) | |
virtual | ~CalibratingVi2Factory () |
virtual void | initialize (MeasurementSet *ms, const Record &calrec, const IteratingParameters &iterpar) |
Public functions to initialize a generic CVi2F. | |
virtual void | initialize (MeasurementSet *ms, const String &callib, const IteratingParameters &iterpar) |
Protected Member Functions | |
virtual vi::ViImplementation2 * | createVi () const |
Create CalibratingVi2 implementation If vii=NULL, create underlying vii internally. | |
virtual vi::ViImplementation2 * | createVi (vi::ViImplementation2 *vii) const |
If vii not NULL, then use it as the underlying one. | |
Private Attributes | |
Bool | valid_p |
MeasurementSet * | ms_p |
CalibratingParameters | calpar_p |
IteratingParameters | iterpar_p |
A top level class defining the data handling interface for the CalibratingTvi2 module.
Public interface
CalibratingVi2Factory is a class that generates a Visibility Iterator implementation that can calibrate data
CalibratingVi2Factory generates a Visibility Iterator implementation (ViImplementation2) object that can be plugged into a Visibility Iterator (VisibilityIterator2) object, so that the user can access _corrected_ data (and related) using the VisibilityIterator2 interface.
This class makes calibration application portable, and available for all VisibilityIterator2 users
External usage is quite simple, and compliant with the 'normal' VI/VB framework.
The user first makes objects describing the data iteration and calibration parameters:
IteratingParameters iterpar; iterpar.setChunkInterval(60.0); CalibratingParameters calpar(10.0); // a simple factor of 10.0 to multiply the data // (in leiu of full VisEquation functionality (TBD)
Then these parameter objects, along with a MeasurementSet pointer, are used to make a factory suitable for the generic VisibilityIterator2 ctor, which is then invoked
CalibratingVi2Factory factory(ms,calpar,iterpar); vi::VisibilityIterator2 *visIter = new vi::VisibilityIterator2 (factory); vi::VisBuffer2 *visBuffer = visIter->getVisBuffer();
Once this is done one can normally iterate and access OTF calibrated data:
while (visIter->moreChunks()) { visIter->origin(); while (visIter->more()) { Vector<Int> ddi = visBuffer->dataDescriptionIds(); Vector<Int> antenna1 = visBuffer->antenna1(); Vector<Int> antenna2 = visBuffer->antenna2(); Cube<Complex> cvis = visBuffer->visCubeCorrected(); visIter->next(); } visIter->nextChunk(); }
Notice that it is the responsibility of the application layer to delete the VisibilityIterator2 pointer returned by the factory method. However the life cycle of the VisBuffer2 object is responsibility of the VisibilityIterator2 object.
delete visIter;
Definition at line 124 of file CalibratingVi2Factory.h.
casa::vi::CalibratingVi2Factory::CalibratingVi2Factory | ( | MeasurementSet * | ms, | |
const CalibratingParameters & | calpar, | |||
const IteratingParameters & | iterpar = IteratingParameters() | |||
) |
casa::vi::CalibratingVi2Factory::CalibratingVi2Factory | ( | ) |
casa::vi::CalibratingVi2Factory::CalibratingVi2Factory | ( | MeasurementSet * | ms, | |
const Record & | calrec, | |||
const IteratingParameters & | iterpar = IteratingParameters() | |||
) |
casa::vi::CalibratingVi2Factory::CalibratingVi2Factory | ( | MeasurementSet * | ms, | |
const String & | callib, | |||
const IteratingParameters & | iterpar = IteratingParameters() | |||
) |
virtual casa::vi::CalibratingVi2Factory::~CalibratingVi2Factory | ( | ) | [virtual] |
virtual vi::ViImplementation2* casa::vi::CalibratingVi2Factory::createVi | ( | vi::ViImplementation2 * | vii | ) | const [protected, virtual] |
If vii not NULL, then use it as the underlying one.
Implements casa::vi::CalibratingVi2FactoryI.
virtual vi::ViImplementation2* casa::vi::CalibratingVi2Factory::createVi | ( | ) | const [protected, virtual] |
Create CalibratingVi2 implementation If vii=NULL, create underlying vii internally.
Implements casa::vi::CalibratingVi2FactoryI.
virtual void casa::vi::CalibratingVi2Factory::initialize | ( | MeasurementSet * | ms, | |
const String & | callib, | |||
const IteratingParameters & | iterpar | |||
) | [virtual] |
Implements casa::vi::CalibratingVi2FactoryI.
virtual void casa::vi::CalibratingVi2Factory::initialize | ( | MeasurementSet * | ms, | |
const Record & | calrec, | |||
const IteratingParameters & | iterpar | |||
) | [virtual] |
Public functions to initialize a generic CVi2F.
Implements casa::vi::CalibratingVi2FactoryI.
Definition at line 166 of file CalibratingVi2Factory.h.
Definition at line 167 of file CalibratingVi2Factory.h.
MeasurementSet* casa::vi::CalibratingVi2Factory::ms_p [private] |
Definition at line 165 of file CalibratingVi2Factory.h.
Bool casa::vi::CalibratingVi2Factory::valid_p [private] |
Definition at line 164 of file CalibratingVi2Factory.h.