casa
5.7.0-16
|
Accessor to the SDM binary data. More...
#include <SDMBinData.h>
Public Member Functions | |
SDMBinData (asdm::ASDM *const datasetPtr, std::string execBlockDir) | |
Constructor: More... | |
~SDMBinData () | |
void | select (EnumSet< ScanIntentMod::ScanIntent > es_si) |
Method to select the main table rows to retrieve data for a subset of scan intents. More... | |
void | select (EnumSet< ProcessorTypeMod::ProcessorType > es_pt) |
Method to select the main table rows to retrieve data for a subset of processor types. More... | |
void | select (EnumSet< CorrelationModeMod::CorrelationMode > es_cm) |
Method to select the main table rows to retrieve data for a subset of correlation modes. More... | |
void | select (EnumSet< SpectralResolutionTypeMod::SpectralResolutionType > es_srt) |
Method to select the main table rows to retrieve data for a subset of spectral resolution types. More... | |
void | select (EnumSet< TimeSamplingMod::TimeSampling > es_ts) |
Method to select the main table rows to retrieve data for a subset of time samplings. More... | |
void | select (EnumSet< CorrelationModeMod::CorrelationMode > es_cm, EnumSet< SpectralResolutionTypeMod::SpectralResolutionType > es_srt, EnumSet< TimeSamplingMod::TimeSampling > es_ts) |
An alternate method to select the main table rows to retrieve data for a subset of correlation modes, spectral resolution types and time sampling. More... | |
void | selectDataSubset (Enum< CorrelationModeMod::CorrelationMode > e_qcm, EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > es_qapc) |
Method to constrain the getData methods to return a (sub)set of the data which are in the BLOBs. More... | |
void | setPriorityDataDescription () |
Method to set priority for DataDescription in the output order. More... | |
std::vector< std::pair < unsigned int, double > > | timeSequence () const |
Accessor to the sequence of time centroids. More... | |
bool | dataDescriptionFirst () const |
Predicate to tell if the dataDescriptionId has priority over time in the out sequence of MSData objects. More... | |
void | applySysCal () |
Apply system temperature calibration. More... | |
bool | sysCalApplied () const |
Predicate to know if the system temperature calibration is applied when accessing data. More... | |
ProcessorTypeMod::ProcessorType | processorType (asdm::MainRow *const mainRowPtr) const |
A utility method which returns the type of the processor which produced the data referred to by a row of the Main table. More... | |
bool | acceptMainRow (asdm::MainRow *const mainRowPtr) |
Accessor to the SDM Main table rows. More... | |
bool | openMainRow (asdm::MainRow *const mainRowPtr) |
Accessor to one SDM Main table row. More... | |
std::string | reasonToReject (asdm::MainRow *const mainRowPtr) |
Filter: rejection of a Main table row if it does not satisfy the criterion of selection. More... | |
bool | isComplexData () |
Method to know if the data to be retrieved will be of type complex or not. More... | |
std::vector< SDMData * > | getData () |
std::vector< MSData * > | getData (Enum< CorrelationModeMod::CorrelationMode > e_qcm, EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > es_qapc) |
MSData * | getData (unsigned int na, unsigned int nfe, unsigned int ndd, unsigned int nbin) throw (Error) |
MSData * | getCalibratedData (unsigned int na, unsigned int nfe, unsigned int ndd, unsigned int nbin, std::pair< bool, std::vector< std::vector< float > > > p_tsys) throw (Error) |
MSData * | getData (unsigned int na1, unsigned int nfe1, unsigned int na2, unsigned int nfe2, unsigned int ndd, unsigned int nbin, std::vector< unsigned int > v_napc, float scleFactor) |
MSData * | getCalibratedData (unsigned int na1, unsigned int nfe1, unsigned int na2, unsigned int nfe2, unsigned int ndd, unsigned int nbin, std::vector< unsigned int > v_napc, float scleFactor, std::pair< bool, std::vector< std::vector< float > > > p_tsys) |
MSData * | getData (asdm::Tag antId, int feedId, asdm::Tag dataDescId, AtmPhaseCorrectionMod::AtmPhaseCorrection apc, unsigned int binNum) |
MSData * | getData (asdm::Tag antId1, int feedId1, asdm::Tag antId2, int feedId2, asdm::Tag dataDescId, std::vector< AtmPhaseCorrectionMod::AtmPhaseCorrection > v_apc, unsigned int binNum) |
const VMSData * | getDataCols () |
const VMSData * | getDataCols (Enum< CorrelationModeMod::CorrelationMode > e_qcm, EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > es_qapc) |
const VMSData * | getNextMSMainCols (unsigned int n) |
Returns a pointer to a VMSData structure containing the values require to populate the MS Main table columns from what it has got from the reading of at most n SDMDataSubsets in the current BDF file. More... | |
const VMSData * | getNextMSMainCols (Enum< CorrelationModeMod::CorrelationMode > e_qcm, EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > es_qapc, unsigned int n) |
void | getNextMSMainCols (unsigned int n, boost::shared_ptr< VMSDataWithSharedPtr > &vmsData_p_sp) |
shared_ptr not needed by CASA, do not compile this for the WITHOUT_BOOST option It may be needed by ALMA code, so do not elimiate it yet. More... | |
void | getNextMSMainCols (Enum< CorrelationModeMod::CorrelationMode > e_qcm, EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > es_qapc, unsigned int n, boost::shared_ptr< VMSDataWithSharedPtr > &vmsData_p_sp) |
std::vector< MSData * > | getMSDataFromBDFData (Enum< CorrelationModeMod::CorrelationMode > e_qcm, EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > es_qapc, unsigned int n) |
void | getNextDataDumps (unsigned int n) |
Populates the vector v_dataDump after having read at most n DataSubsets in the BDF. More... | |
Static Public Member Functions | |
static bool | baselineReverse () |
To know easily in which order the baselines are returned in a sequence of MSData objects or in a VMSData object. More... | |
static bool | autoTrailing () |
To know easily the position of the auto data and metadata relative to the cross data and metadata in the sequence of MSData objects or in a VMSDATA object. More... | |
static std::pair< bool, bool > | dataOrder () |
The two parameters defining the order in the output sequences, baslineReverse and autoTrailing. More... | |
Protected Member Functions | |
int | attachDataObject (std::string dataOID) |
Do the actual binary data binding. More... | |
int | attachStreamDataObject (const std::string &dataOID) |
Do the actual binary data binding. More... | |
int | openStreamDataObject (const std::string &dataOID) |
Initialize the sequential reading of the SDMDataSubsets (i.e. More... | |
void | detachDataObject () |
Unset the current data binding. More... | |
MSState | getMSState (unsigned int subscanNum, std::vector< asdm::Tag > v_stateId, std::vector< asdm::Tag > v_antennaId, std::vector< int > v_feedId, std::vector< asdm::Tag > v_ddId, unsigned int na, unsigned int nfe, unsigned int nspw, asdm::ArrayTime timeOfDump) |
Determine the view of a MS STATE. More... | |
Private Member Functions | |
void | deleteMsData (MSData *msDataPtr) |
Private Attributes | |
EnumSet < ScanIntentMod::ScanIntent > | es_si_ |
EnumSet < ProcessorTypeMod::ProcessorType > | es_pt_ |
EnumSet < CorrelationModeMod::CorrelationMode > | es_cm_ |
EnumSet < SpectralResolutionTypeMod::SpectralResolutionType > | es_srt_ |
EnumSet < TimeSamplingMod::TimeSampling > | es_ts_ |
Enum < CorrelationModeMod::CorrelationMode > | e_qcm_ |
EnumSet < AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc_ |
bool | ddfirst_ |
asdm::MainRow * | mainRowPtr_ |
std::string | dataOID_ |
asdmbinaries::SDMDataObjectReader | blob_r_ |
asdmbinaries::SDMDataObjectStreamReader | sdmdosr |
bool | bdfMemoryMapped |
std::vector< DataDump * > | v_dataDump_ |
const float * | floatDataPtr_ |
const short * | shortDataPtr_ |
const int * | longDataPtr_ |
std::map< asdm::Tag, BaselinesSet * > | m_cdId_baselinesSet_ |
std::set< asdm::Tag > | s_cdId_ |
bool | complexData_ |
const float * | floatDataDumpPtr_ |
std::vector< std::pair < unsigned int, double > > | v_tci_ |
bool | verbose_ |
Static Private Attributes | |
static asdm::ASDM * | datasetPtr_ |
static std::string | execBlockDir_ |
static bool | canSelect_ |
static bool | forceComplex_ |
static MSData * | msDataPtr_ |
static SDMData * | sdmDataPtr_ |
static BaselinesSet * | baselinesSet_ |
static std::vector< MSData * > | v_msDataPtr_ |
static VMSData * | vmsDataPtr_ |
static std::vector< SDMData * > | v_sdmDataPtr_ |
static bool | coutDeleteInfo_ |
static bool | baselineReverse_ |
static bool | autoTrailing_ |
static bool | syscal_ |
Accessor to the SDM binary data.
Definition at line 44 of file SDMBinData.h.
sdmbin::SDMBinData::SDMBinData | ( | asdm::ASDM *const | datasetPtr, |
std::string | execBlockDir | ||
) |
Constructor:
datasetPtr | Pointer to the SDM dataset |
execBlockDir | SDM dataset directory (it must be readable as well as its sub-directory ASDMBinary. |
sdmbin::SDMBinData::~SDMBinData | ( | ) |
bool sdmbin::SDMBinData::acceptMainRow | ( | asdm::MainRow *const | mainRowPtr | ) |
Accessor to the SDM Main table rows.
mainRowPtr | Pointer to a row of the Main table |
void sdmbin::SDMBinData::applySysCal | ( | ) |
Apply system temperature calibration.
|
protected |
Do the actual binary data binding.
dataOID | The data object identifier |
|
protected |
Do the actual binary data binding.
The BDF is traversed as a stream.
dataOID | The data object identifier |
|
static |
To know easily the position of the auto data and metadata relative to the cross data and metadata in the sequence of MSData objects or in a VMSDATA object.
Note that this order may be different compared to the order used in the BDF.
|
static |
To know easily in which order the baselines are returned in a sequence of MSData objects or in a VMSData object.
Note that this order may be different compared to the order used in the BDF.
bool sdmbin::SDMBinData::dataDescriptionFirst | ( | ) | const |
Predicate to tell if the dataDescriptionId has priority over time in the out sequence of MSData objects.
|
static |
The two parameters defining the order in the output sequences, baslineReverse and autoTrailing.
|
private |
|
protected |
Unset the current data binding.
MSData* sdmbin::SDMBinData::getCalibratedData | ( | unsigned int | na, |
unsigned int | nfe, | ||
unsigned int | ndd, | ||
unsigned int | nbin, | ||
std::pair< bool, std::vector< std::vector< float > > > | p_tsys | ||
) | |||
throw | ( | Error | |
) |
MSData* sdmbin::SDMBinData::getCalibratedData | ( | unsigned int | na1, |
unsigned int | nfe1, | ||
unsigned int | na2, | ||
unsigned int | nfe2, | ||
unsigned int | ndd, | ||
unsigned int | nbin, | ||
std::vector< unsigned int > | v_napc, | ||
float | scleFactor, | ||
std::pair< bool, std::vector< std::vector< float > > > | p_tsys | ||
) |
std::vector<SDMData*> sdmbin::SDMBinData::getData | ( | ) |
std::vector<MSData*> sdmbin::SDMBinData::getData | ( | Enum< CorrelationModeMod::CorrelationMode > | e_qcm, |
EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc | ||
) |
MSData* sdmbin::SDMBinData::getData | ( | unsigned int | na, |
unsigned int | nfe, | ||
unsigned int | ndd, | ||
unsigned int | nbin | ||
) | |||
throw | ( | Error | |
) |
MSData* sdmbin::SDMBinData::getData | ( | unsigned int | na1, |
unsigned int | nfe1, | ||
unsigned int | na2, | ||
unsigned int | nfe2, | ||
unsigned int | ndd, | ||
unsigned int | nbin, | ||
std::vector< unsigned int > | v_napc, | ||
float | scleFactor | ||
) |
MSData* sdmbin::SDMBinData::getData | ( | asdm::Tag | antId, |
int | feedId, | ||
asdm::Tag | dataDescId, | ||
AtmPhaseCorrectionMod::AtmPhaseCorrection | apc, | ||
unsigned int | binNum | ||
) |
MSData* sdmbin::SDMBinData::getData | ( | asdm::Tag | antId1, |
int | feedId1, | ||
asdm::Tag | antId2, | ||
int | feedId2, | ||
asdm::Tag | dataDescId, | ||
std::vector< AtmPhaseCorrectionMod::AtmPhaseCorrection > | v_apc, | ||
unsigned int | binNum | ||
) |
const VMSData* sdmbin::SDMBinData::getDataCols | ( | ) |
const VMSData* sdmbin::SDMBinData::getDataCols | ( | Enum< CorrelationModeMod::CorrelationMode > | e_qcm, |
EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc | ||
) |
std::vector<MSData*> sdmbin::SDMBinData::getMSDataFromBDFData | ( | Enum< CorrelationModeMod::CorrelationMode > | e_qcm, |
EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc, | ||
unsigned int | n | ||
) |
|
protected |
Determine the view of a MS STATE.
subscanNum | Subscan number (the semantic of this attribute is assumed to be identical in the SDM and the MS |
v_stateId | The list of states identifiers in the row of SDM Main table |
v_antennaId | The corresponding list of antenna identifier |
v_feedId | The corresponding list of collection of feed identifier |
v_ddId | The sequence of data description identifiers for the current config description |
na | Antenna index for a given antenna in this antenna list |
nfe | Feed index |
nspw | DataDescription index |
timeOfDump | The epoch to be considered to determine this MS STATE view |
void sdmbin::SDMBinData::getNextDataDumps | ( | unsigned int | n | ) |
Populates the vector v_dataDump after having read at most n DataSubsets in the BDF.
const VMSData* sdmbin::SDMBinData::getNextMSMainCols | ( | unsigned int | n | ) |
Returns a pointer to a VMSData structure containing the values require to populate the MS Main table columns from what it has got from the reading of at most n SDMDataSubsets in the current BDF file.
n | gives the maximum number of SDMDataSubsets ([sub]integrations) that one wants to read in the current BDF. |
const VMSData* sdmbin::SDMBinData::getNextMSMainCols | ( | Enum< CorrelationModeMod::CorrelationMode > | e_qcm, |
EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc, | ||
unsigned int | n | ||
) |
void sdmbin::SDMBinData::getNextMSMainCols | ( | unsigned int | n, |
boost::shared_ptr< VMSDataWithSharedPtr > & | vmsData_p_sp | ||
) |
shared_ptr not needed by CASA, do not compile this for the WITHOUT_BOOST option It may be needed by ALMA code, so do not elimiate it yet.
void sdmbin::SDMBinData::getNextMSMainCols | ( | Enum< CorrelationModeMod::CorrelationMode > | e_qcm, |
EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc, | ||
unsigned int | n, | ||
boost::shared_ptr< VMSDataWithSharedPtr > & | vmsData_p_sp | ||
) |
bool sdmbin::SDMBinData::isComplexData | ( | ) |
Method to know if the data to be retrieved will be of type complex or not.
bool sdmbin::SDMBinData::openMainRow | ( | asdm::MainRow *const | mainRowPtr | ) |
Accessor to one SDM Main table row.
mainrowPtr | is a pointer to one row of the SDM Main table, |
|
protected |
Initialize the sequential reading of the SDMDataSubsets (i.e.
[sub]integrations) contained in the BDF referred to by dataOID.
dataOID | the BDF identifier. |
ProcessorTypeMod::ProcessorType sdmbin::SDMBinData::processorType | ( | asdm::MainRow *const | mainRowPtr | ) | const |
A utility method which returns the type of the processor which produced the data referred to by a row of the Main table.
mainRowPtr | a pointer to a row of the Main table of an ASDM dataset. |
std::string sdmbin::SDMBinData::reasonToReject | ( | asdm::MainRow *const | mainRowPtr | ) |
Filter: rejection of a Main table row if it does not satisfy the criterion of selection.
mainRowPtr | Pointer to a row of the Main table |
void sdmbin::SDMBinData::select | ( | EnumSet< ScanIntentMod::ScanIntent > | es_si | ) |
Method to select the main table rows to retrieve data for a subset of scan intents.
es_si | set of scan intents to be accepted |
void sdmbin::SDMBinData::select | ( | EnumSet< ProcessorTypeMod::ProcessorType > | es_pt | ) |
Method to select the main table rows to retrieve data for a subset of processor types.
es_pt | set of processor types to be accepted |
void sdmbin::SDMBinData::select | ( | EnumSet< CorrelationModeMod::CorrelationMode > | es_cm | ) |
Method to select the main table rows to retrieve data for a subset of correlation modes.
es_cm | set of correlation modes to be accepted |
void sdmbin::SDMBinData::select | ( | EnumSet< SpectralResolutionTypeMod::SpectralResolutionType > | es_srt | ) |
Method to select the main table rows to retrieve data for a subset of spectral resolution types.
es_srt | set of spectral resolution types to be accepted |
void sdmbin::SDMBinData::select | ( | EnumSet< TimeSamplingMod::TimeSampling > | es_ts | ) |
Method to select the main table rows to retrieve data for a subset of time samplings.
es_ts | set of time samplings to be accepted |
void sdmbin::SDMBinData::select | ( | EnumSet< CorrelationModeMod::CorrelationMode > | es_cm, |
EnumSet< SpectralResolutionTypeMod::SpectralResolutionType > | es_srt, | ||
EnumSet< TimeSamplingMod::TimeSampling > | es_ts | ||
) |
An alternate method to select the main table rows to retrieve data for a subset of correlation modes, spectral resolution types and time sampling.
es_cm | set of correlation modes to be accepted |
es_srt | set of spectral resolution types to be accepted |
es_ts | set of time samplings to be accepted |
void sdmbin::SDMBinData::selectDataSubset | ( | Enum< CorrelationModeMod::CorrelationMode > | e_qcm, |
EnumSet< AtmPhaseCorrectionMod::AtmPhaseCorrection > | es_qapc | ||
) |
Method to constrain the getData methods to return a (sub)set of the data which are in the BLOBs.
e_qcm | selected correlationMode enumerator; |
es_qapc | set of AtmPhaseCorrection enumerators; |
void sdmbin::SDMBinData::setPriorityDataDescription | ( | ) |
Method to set priority for DataDescription in the output order.
bool sdmbin::SDMBinData::sysCalApplied | ( | ) | const |
Predicate to know if the system temperature calibration is applied when accessing data.
std::vector<std::pair<unsigned int,double> > sdmbin::SDMBinData::timeSequence | ( | ) | const |
Accessor to the sequence of time centroids.
|
staticprivate |
Definition at line 385 of file SDMBinData.h.
|
staticprivate |
Definition at line 384 of file SDMBinData.h.
|
staticprivate |
Definition at line 376 of file SDMBinData.h.
|
private |
Definition at line 368 of file SDMBinData.h.
|
private |
Definition at line 366 of file SDMBinData.h.
|
staticprivate |
Definition at line 351 of file SDMBinData.h.
|
private |
Definition at line 382 of file SDMBinData.h.
|
staticprivate |
Definition at line 383 of file SDMBinData.h.
|
private |
Definition at line 365 of file SDMBinData.h.
|
staticprivate |
Definition at line 349 of file SDMBinData.h.
|
private |
Definition at line 362 of file SDMBinData.h.
|
private |
Definition at line 359 of file SDMBinData.h.
|
private |
Definition at line 355 of file SDMBinData.h.
|
private |
Definition at line 354 of file SDMBinData.h.
|
private |
Definition at line 360 of file SDMBinData.h.
|
private |
Definition at line 353 of file SDMBinData.h.
|
private |
Definition at line 356 of file SDMBinData.h.
|
private |
Definition at line 357 of file SDMBinData.h.
|
staticprivate |
Definition at line 350 of file SDMBinData.h.
|
private |
Definition at line 388 of file SDMBinData.h.
|
private |
Definition at line 371 of file SDMBinData.h.
|
staticprivate |
Definition at line 352 of file SDMBinData.h.
|
private |
Definition at line 373 of file SDMBinData.h.
|
private |
Definition at line 380 of file SDMBinData.h.
|
private |
Definition at line 364 of file SDMBinData.h.
|
staticprivate |
Definition at line 374 of file SDMBinData.h.
|
private |
Definition at line 381 of file SDMBinData.h.
|
staticprivate |
Definition at line 375 of file SDMBinData.h.
|
private |
Definition at line 367 of file SDMBinData.h.
|
private |
Definition at line 372 of file SDMBinData.h.
|
staticprivate |
Definition at line 386 of file SDMBinData.h.
|
private |
Definition at line 369 of file SDMBinData.h.
|
staticprivate |
Definition at line 377 of file SDMBinData.h.
|
staticprivate |
Definition at line 379 of file SDMBinData.h.
|
private |
Definition at line 390 of file SDMBinData.h.
|
private |
Definition at line 394 of file SDMBinData.h.
|
staticprivate |
Definition at line 378 of file SDMBinData.h.