casa
5.7.0-16
|
A top level class defining the data handling interface for the MSTransform module. More...
#include <MSTransformIteratorFactory.h>
Public Member Functions | |
MSTransformIteratorFactory (casacore::Record &configuration) | |
MSTransformIteratorFactory (casacore::Record &configuration, casacore::MrsEligibility &eligibleSubTables) | |
~MSTransformIteratorFactory () | |
std::vector< casacore::IPosition > | getVisBufferStructure () |
vi::VisibilityIterator2 * | getInputVI () |
Public Member Functions inherited from casa::vi::ViFactory | |
virtual | ~ViFactory () |
Protected Member Functions | |
void | setConfiguration (casacore::Record &configuration) |
void | initializeManager () |
vi::ViImplementation2 * | createVi () const |
Private Attributes | |
casacore::Record | configuration_p |
casacore::String | tmpMSFileName_p |
std::shared_ptr < MSTransformManager > | manager_p |
casacore::MrsEligibility | eligibleSubTables_p |
A top level class defining the data handling interface for the MSTransform module.
Public interface
MSTransformFactory is a class that generates a Visibility Iterator implementation based on mstransform
MSTransformFactory generates a Visibility Iterator implementation (ViImplementation2) object that can be plugged into a Visibility Iterator (VisibilityIterator2) object, so that the user can access the data using the Visibility Iterator interface.
The idea is that an external application (plotms, imaging) can consume data transformed using the mstransform code via a Visibility Iterator interface
External usage is quite simple, and compliant with the 'normal' VI/VB framework.
The user defines a dictionary with the parameters that would be normally passed to test_mstransform (therefore I point to task_mstransform help for doubts regarding the parameters)
casacore::Notice that some parameters don't make sense in the context of a VI/VB interface: outputms tileshape datacolumn realmodelcol usewtspectrum
With this configuration record the factory class MSTransformIteratorFactory will create internally a MSTransformIterator and return a pointer to a VisibilityIterator2 object whose implementation is the newly created MSTransformIterator.
Once this is done one can normally iterate and access the transformed data:
It is also possible to access the transformed Sub-Tables (loaded in memory thanks to the casacore::Memory Resident Sub-Tables mechanism):
casacore::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.
Definition at line 141 of file MSTransformIteratorFactory.h.
casa::MSTransformIteratorFactory::MSTransformIteratorFactory | ( | casacore::Record & | configuration | ) |
casa::MSTransformIteratorFactory::MSTransformIteratorFactory | ( | casacore::Record & | configuration, |
casacore::MrsEligibility & | eligibleSubTables | ||
) |
casa::MSTransformIteratorFactory::~MSTransformIteratorFactory | ( | ) |
|
protectedvirtual |
Implements casa::vi::ViFactory.
|
inline |
Definition at line 151 of file MSTransformIteratorFactory.h.
References manager_p.
std::vector<casacore::IPosition> casa::MSTransformIteratorFactory::getVisBufferStructure | ( | ) |
|
protected |
|
protected |
|
private |
Definition at line 161 of file MSTransformIteratorFactory.h.
|
private |
Definition at line 164 of file MSTransformIteratorFactory.h.
|
mutableprivate |
Definition at line 163 of file MSTransformIteratorFactory.h.
Referenced by getInputVI().
|
private |
Definition at line 162 of file MSTransformIteratorFactory.h.