casa  5.7.0-16
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
casa::FlagDataHandler Class Reference

A top level class defining the data handling interface for the flagging module. More...

#include <FlagDataHandler.h>

Inheritance diagram for casa::FlagDataHandler:
casa::FlagCalTableHandler casa::FlagMSHandler

Public Types

enum  iteration {
  COMPLETE_SCAN_MAPPED,
  COMPLETE_SCAN_MAP_SUB_INTEGRATIONS_ONLY,
  COMPLETE_SCAN_MAP_ANTENNA_PAIRS_ONLY,
  COMPLETE_SCAN_UNMAPPED,
  COMBINE_SCANS_MAPPED,
  COMBINE_SCANS_MAP_SUB_INTEGRATIONS_ONLY,
  COMBINE_SCANS_MAP_ANTENNA_PAIRS_ONLY,
  COMBINE_SCANS_UNMAPPED,
  ANTENNA_PAIR,
  SUB_INTEGRATION,
  ARRAY_FIELD
}
 
enum  tableType {
  MEASUREMENT_SET,
  CALIBRATION_TABLE
}
 

Public Member Functions

 FlagDataHandler (string msname, casacore::uShort iterationApproach=SUB_INTEGRATION, casacore::Double timeInterval=0)
 Default constructor NOTE: casacore::Time interval 0 groups all time steps together in one chunk. More...
 
virtual ~FlagDataHandler ()
 Default destructor. More...
 
virtual bool open ()
 Common casacore::MS/CalTables public interface. More...
 
virtual bool close ()
 
virtual bool selectData ()
 
virtual bool generateIterator ()
 
virtual bool nextChunk ()
 
virtual bool nextBuffer ()
 
virtual bool flushFlags ()
 
virtual casacore::String getTableName ()
 
virtual bool parseExpression (casacore::MSSelection &)
 
virtual bool checkIfColumnExists (casacore::String)
 
virtual bool checkIfSourceModelColumnExists ()
 
virtual bool summarySignal ()
 
void setIterationApproach (casacore::uShort iterationApproach)
 Set the iteration approach. More...
 
bool setDataSelection (casacore::Record record)
 Set casacore::Data Selection parameters. More...
 
void setTimeInterval (casacore::Double timeInterval)
 Set time interval (also known as ntime) More...
 
void enableAsyncIO (casacore::Bool enable)
 Methods to switch on/off async i/o. More...
 
void preLoadColumn (VisBufferComponent2 column)
 Pre-Load columns (in order to avoid parallelism problems when not using async i/o, and also to know what columns to pre-fetch in async i/o mode) More...
 
void preFetchColumns ()
 
void stopIteration ()
 Stop iterating. More...
 
casacore::Cube< casacore::Bool > * getModifiedFlagCube ()
 As requested by Urvashi R.V. More...
 
casacore::Cube< casacore::Bool > * getOriginalFlagCube ()
 
casacore::Vector
< casacore::Bool > * 
getModifiedFlagRow ()
 
casacore::Vector
< casacore::Bool > * 
getOriginalFlagRow ()
 
void setMapAntennaPairs (bool activated)
 Functions to switch on/off mapping functions. More...
 
void setMapSubIntegrations (bool activated)
 
void setMapPolarizations (bool activated)
 
void setMapAntennaPointing (bool activated)
 
void setScanStartStopMap (bool activated)
 
void setScanStartStopFlaggedMap (bool activated)
 
void setTimeAverageIter (bool activated)
 
void setChanAverageIter (casacore::Vector< casacore::Int > chanbin)
 
antennaPairMapgetAntennaPairMap ()
 Accessors for the mapping functions. More...
 
subIntegrationMapgetSubIntegrationMap ()
 
polarizationMapgetPolarizationMap ()
 
polarizationIndexMapgetPolarizationIndexMap ()
 
antennaPointingMapgetMapAntennaPointing ()
 
scanStartStopMapgetMapScanStartStop ()
 
lambdaMapgetLambdaMap ()
 
void setProfiling (casacore::Bool value)
 
casacore::Cube
< casacore::Complex > & 
weightVisCube ()
 Get a casacore::Float visCube and return a casacore::Complex one. More...
 

Public Attributes

casacore::Cube< casacore::Complex > weight_spectrum_p
 
casacore::LogIOlogger_p
 Make the logger public to that we can use it from FlagAgentBase::create. More...
 
casacore::String tablename_p
 Measurement set section. More...
 
casacore::MSSelectionmeasurementSetSelection_p
 
casacore::Vector
< casacore::String > * 
antennaNames_p
 
std::map< string, std::pair
< casacore::Int, casacore::Int > > 
baselineToAnt1Ant2_p
 
std::map< std::pair
< casacore::Int, casacore::Int >
, string > 
Ant1Ant2ToBaseline_p
 
casacore::ScalarMeasColumn
< casacore::MPosition > * 
antennaPositions_p
 
casacore::Vector
< casacore::Double > * 
antennaDiameters_p
 
casacore::Vector
< casacore::String > * 
fieldNames_p
 
std::vector< casacore::String > * corrProducts_p
 
VisBufferComponents2prefetchColumns_p
 RO Visibility Iterator. More...
 
casacore::uLong processedRows
 Iteration counters. More...
 
casacore::uShort chunkNo
 
casacore::uShort bufferNo
 
bool flushFlags_p
 FlagDataHanler-FlagAgents interaction. More...
 
bool flushFlagRow_p
 
casacore::uInt64 chunkCounts_p
 
casacore::uInt64 progressCounts_p
 
casacore::uInt64 msCounts_p
 
casacore::uShort summaryThreshold_p
 
bool printChunkSummary_p
 
casacore::uShort tableTye_p
 
casacore::Bool loadProcessorTable_p
 
casacore::Vector< bool > isCorrelatorType_p
 PROCESSOR sub-table section. More...
 
bool processorTableExist_p
 
vi::VisBuffer2visibilityBuffer_p
 Visibility Buffer WARNING: The attach mechanism only works with pointers or referenced variables. More...
 
bool groupTimeSteps_p
 Vis buffer characteristics (constant values) More...
 
casacore::Block< int > sortOrder_p
 
casacore::Bool enableTimeAvg_p
 casacore::Time average iterator parameters More...
 
casacore::Bool enableChanAvg_p
 
casacore::Double timeAverageBin_p
 
casacore::Vector< casacore::IntchanAverageBin_p
 
casacore::String dataColumnType_p
 
vi::AveragingOptions timeAvgOptions_p
 
casacore::Record chanAvgOptions_p
 

Protected Member Functions

virtual void generateAntennaPairMap ()
 Common casacore::MS/CalTables private interface. More...
 
virtual void generateSubIntegrationMap ()
 
virtual void generatePolarizationsMap ()
 
virtual void generateAntennaPointingMap ()
 
virtual void generateScanStartStopMap ()
 

Protected Attributes

bool anySelection_p
 casacore::Data Selection ranges More...
 
bool inrowSelection_p
 
casacore::String arraySelection_p
 
casacore::String fieldSelection_p
 
casacore::String scanSelection_p
 
casacore::String timeSelection_p
 
casacore::String spwSelection_p
 
casacore::String baselineSelection_p
 
casacore::String uvwSelection_p
 
casacore::String polarizationSelection_p
 
casacore::String scanIntentSelection_p
 
casacore::String observationSelection_p
 
bool asyncio_enabled_p
 Async I/O stuff. More...
 
std::vector< VisBufferComponent2preLoadColumns_p
 Pre-Load columns (in order to avoid parallelism problems when not using async i/o, and also to know what columns to pre-fetch in async i/o mode) More...
 
casacore::uShort iterationApproach_p
 Iteration parameters. More...
 
casacore::Double timeInterval_p
 
bool slurp_p
 Slurp flag. More...
 
bool chunksInitialized_p
 Iteration initialization parameters. More...
 
bool buffersInitialized_p
 
bool iteratorGenerated_p
 
bool stopIteration_p
 
casacore::Cube< casacore::BooloriginalFlagCube_p
 Flag Cubes. More...
 
casacore::Cube< casacore::BoolmodifiedFlagCube_p
 
casacore::Vector< casacore::BooloriginalFlagRow_p
 FlagRows. More...
 
casacore::Vector< casacore::BoolmodifiedFlagRow_p
 
antennaPairMapantennaPairMap_p
 Mapping members. More...
 
subIntegrationMapsubIntegrationMap_p
 
polarizationMappolarizationMap_p
 
polarizationIndexMappolarizationIndexMap_p
 
antennaPointingMapantennaPointingMap_p
 
scanStartStopMapscanStartStopMap_p
 
lambdaMaplambdaMap_p
 
bool mapAntennaPairs_p
 
bool mapSubIntegrations_p
 
bool mapPolarizations_p
 
bool mapAntennaPointing_p
 
bool mapScanStartStop_p
 
bool mapScanStartStopFlagged_p
 
bool stats_p
 Stats members. More...
 
casacore::uLong cubeAccessCounter_p
 
double cubeAccessTime_p
 
casacore::uLong cubeAccessCounterTotal_p
 
double cubeAccessTimeTotal_p
 
bool profiling_p
 Profiling. More...
 

Detailed Description

A top level class defining the data handling interface for the flagging module.

Intended use:

Public interface

Prerequisite

Etymology

FlagDataHandler stands for generic data handling (i.e. MSs, CalTables,...) specific to the flagging module

Synopsis

This is a top-level class defining the data handling interface for the flagging module. There are various methods (virtual) that must be re-implemented by the specific derived classes (e.g. FlagMSHandler, FlagCalTableHandler). These methods essentially cover:

Additionally there are public non-virtual methods to:

Also at this top level there are public members which are used by the FlagAgent classes, so that there is no dependency with the specific implementation classes (e.g. FlagMsHandler, FlagCalTableHandler), and thus no re-implementation is required at the FlagAgent level.

Motivation

The motivation for the FlagDataHandler class is having all the data operations encapsulated in one single class, with a common interface for all types of tables (MSs, CalTables, SingleDish), so that no specific specific table type implementation has to be done at the FlagAgent level.

Example

// The following code sets up a FlagDataHandler with either CalTable or casacore::MS implementation and
// iterates through the table applying a clip agent, flushing the flags, and extracting summaries.
// IMPORTANT NOTE:
// The order of FlagDataHandler and FlagAgent initialization is critical to have everything right,
// in particular data selection must happen before initializing FlagAgents, and iterator generation
// must be done after initializing FlagAgents, so that each agent can communicate to the FlagDataHandler
// which columns have to be pre-fetched (async i/o or parallel mode), and what mapping options are necessary.
// NOTE ON ASYNC I/O:
// Asyncnronous I/O is only enabled for casacore::MS-type tables, but not for CalTables, and it is necessary to switch
// it on before generating the iterators. Something else to take into account, is that there are 2 global
// switches at.casarc level which invalidate the application code selection:
//
// VisibilityIterator.async.enabled rules over
// |-> FlagDataHandler.asyncio, and in turns rules over
// |-> FlagDataHandler.enableAsyncIO(true)
// Identify table type
casacore::TableInfo& info = table.tableInfo();
casacore::String type=info.type();
// Create derived FlagDataHandler object with corresponding implementation
FlagDataHandler *fdh_p = NULL;
if (type == "Measurement Set")
{
fdh_p = new FlagMSHandler(msname_p, FlagDataHandler::COMPLETE_SCAN_UNMAPPED, timeInterval_p);
}
else
{
fdh_p = new FlagCalTableHandler(msname_p, FlagDataHandler::COMPLETE_SCAN_UNMAPPED, timeInterval_p);
}
// NOTE: It is also possible to independently set the iteration approach via the setIterationApproach
// method which accepts the following modes, defined in the FlagDataHandler iteration enumeration
//
// COMPLETE_SCAN_MAPPED:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, SCAN_NUMBER, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// - Generate baseline maps (to iterate trough rows with the same antenna1, antenna2)
// - Generate sub-integration maps (to iterate trough rows with the same timestamp)
// COMPLETE_SCAN_MAP_SUB_INTEGRATIONS_ONLY:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, SCAN_NUMBER, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// * Don't generate baseline maps
// - Generate sub-integration maps (to iterate trough rows with the same timestamp)
// COMPLETE_SCAN_MAP_ANTENNA_PAIRS_ONLY:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, SCAN_NUMBER, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// - Generate baseline maps (to iterate trough rows with the same antenna1, antenna2)
// * Don't generate sub-integration maps
// COMPLETE_SCAN_UNMAPPED:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, SCAN_NUMBER, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// * Don't generate baseline maps
// * Don't generate sub-integration maps
// COMBINE_SCANS_MAPPED:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// - Generate baseline maps (to iterate trough rows with the same antenna1, antenna2)
// - Generate sub-integration maps (to iterate trough rows with the same timestamp)
// COMBINE_SCANS_MAP_SUB_INTEGRATIONS_ONLY:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// * Don't generate baseline maps
// - Generate sub-integration maps (to iterate trough rows with the same timestamp)
// COMBINE_SCANS_MAP_ANTENNA_PAIRS_ONLY:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// - Generate baseline maps (to iterate trough rows with the same antenna1, antenna2)
// * Don't generate sub-integration maps
// COMBINE_SCANS_UNMAPPED:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, FIELD_ID, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// * Don't generate baseline maps
// * Don't generate sub-integration maps
// ANTENNA_PAIR:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, FIELD_ID, ANTENNA1, ANTENNA2, DATA_DESC_ID and TIME
// - Group all time steps together, so that there is no sub-chunk iteration
// * Don't generate baseline maps (they are not necessary because the chunks have constant ANTENNA1,ANTENNA2)
// * Don't generate sub-integration maps
// SUB_INTEGRATION:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, SCAN_NUMBER, FIELD_ID, DATA_DESC_ID and TIME
// - Don't group all time steps together, so it is necessary to add an inner sub-chunk iteration loop
// * Don't generate baseline maps (it is not possible because not all the rows corresponding to a given baseline are available)
// * Don't generate sub-integration maps (they are not necessary because the sub-chunks have constant TIME)
// ARRAY_FIELD:
// - casacore::Sort by OBSERVATION_ID, ARRAY_ID, FIELD_ID, DATA_DESC_ID and TIME
// - Don't group all time steps together, so it is necessary to add an inner sub-chunk iteration loop
// * Don't generate baseline maps (it is not possible because not all the rows corresponding to a given baseline are available)
// * Don't generate sub-integration maps (they are not necessary because the sub-chunks have constant TIME)
// * NOTE: This is the iteration approach used by the old flagger framework
// Open table
fdh_p->open();
// Parse data selection to Flag casacore::Data Handler
fdh_p->setDataSelection(dataSelection);
// Select data (thus creating selected table)
fdh_p->selectData();
// Create flagging agent and list
casacore::Record agentConfig;
agentConfig.define("mode","clip")
FlagAgentBase *agent = FlagAgentBase::create(fdh_p,agentConfig);
FlagAgentList agentList;
agentList.push_back(agent);
// Switch on/off async i/p
fdh_p->enableAsyncIO(true);
// Generate table iterator
fdh_p->generateIterator();
// Start Flag Agent
agentList.start();
// Iterates over chunks (constant column values)
while (fdh_p->nextChunk())
{
// Iterates over buffers (time steps)
while (fdh_p->nextBuffer())
{
// Apply flags
agentList.apply();
// Flush flag cube
fdh_p->flushFlags();
}
// Print end-of-chunk statistics
agentList.chunkSummary();
}
// Print total stats from each agent
agentList.msSummary();
// Stop Flag Agent
agentList.terminate();
agentList.join();
// Close MS
fdh_p->close();
// Clear Flag Agent List
agentList.clear();

Example

// The following code shows the FlagAgent-FlagDataHandler interaction works internally:
// First of all, at construction time, each agent has to communicate to the FlagDataHandler
// which columns have to be pre-fetched (for async i/o or parallel mode) and what mapping
// options are necessary
//...for instance in the case of FlagAgentShadow we need Ant1,Ant2,UVW,TimeCentroid and PhaseCenter:
flagDataHandler_p->preLoadColumn(vi::Antenna1);
flagDataHandler_p->preLoadColumn(vi::Antenna2);
flagDataHandler_p->preLoadColumn(vi::uvw);
flagDataHandler_p->preLoadColumn(vi::TimeCentroid);
flagDataHandler_p->preLoadColumn(vi::PhaseCenter);
//...and FlagAgentElevation needs to have the antenna pointing information globally available for each chunk:
flagDataHandler_p->setMapAntennaPointing(true);
// Then, at iteration time, the FlagAgentBase class has access to the VisBuffer held
// in the FlagDataHandler, in order to retrieve the meta-data columns needed for the
// data selection engine (agent-level row filtering).
// NOTE: The VisBuffer is actually held within an auto-pointer wrapper,
// thus there is an additional get() involved when accessing it.
if (spwList_p.size())
{
if (!find(spwList_p,visibilityBuffer_p->get()->spectralWindow())) return false;
}
// The sorting columns used for the iteration are also accessible to optimize the selection engine:
// (e.g.: If scan is constant check only 1st row)
if ((scanList_p.size()>0) and (find(flagDataHandler_p->sortOrder_p,casacore::MS::SCAN_NUMBER)==true))
{
if (!find(scanList_p,visibilityBuffer_p->get()->scan()[0])) return false;
}
// Once that chunk/rows are evaluated as eligible for the flagging process
// by the data selection engine, the previously booked maps at construction
// time can be access in order to iterate trough the data as desired:
// e.g.: Baseline (antenna pairs) iteration
for (myAntennaPairMapIterator=flagDataHandler_p->getAntennaPairMap()->begin();
myAntennaPairMapIterator != flagDataHandler_p->getAntennaPairMap()->end();
++myAntennaPairMapIterator)
{
// NOTE: The following code is also encapsulated in the FlagAgentBase::processAntennaPair(casacore::Int antenna1,casacore::Int antenna2) code
// From the antenna map we can retrieve the rows corresponding to the baseline defined by the antenna pair
std::vector<casacore::uInt> baselineRows = (*flagDataHandler_p->getAntennaPairMap())[std::make_pair(antennaPair.first,antennaPair.second)];
// This rows can be now inserted in the mapper classes (VisMapper and FlagMapper using the CubeView<T> template class)
VisMapper visibilitiesMap = VisMapper(expression_p,flagDataHandler_p->getPolarizationMap());
FlagMapper flagsMap = FlagMapper(flag_p,visibilitiesMap.getSelectedCorrelations());
setVisibilitiesMap(antennaRows,&visibilitiesMap);
setFlagsMap(antennaRows,&flagsMap);
}
// Finally, after flagging time, the FlagAgent can communicate to the FlagDataHandler
// that the modified FlagCube has to be flushed to disk, this is a small but very important
// step in order to avoid unnecessary I/O activity when a chunk is not eligible for flagging
// or the auto-flagging algorithms don't produce any flags.
// If any row was flag, then we have to flush the flagRow
if (flagRow_p) flagDataHandler_p->flushFlagRow_p = true;
// If any flag was raised, then we have to flush the flagCube
if (visBufferFlags_p>0) flagDataHandler_p->flushFlags_p = true;

Definition at line 791 of file FlagDataHandler.h.

Member Enumeration Documentation

Enumerator
COMPLETE_SCAN_MAPPED 
COMPLETE_SCAN_MAP_SUB_INTEGRATIONS_ONLY 
COMPLETE_SCAN_MAP_ANTENNA_PAIRS_ONLY 
COMPLETE_SCAN_UNMAPPED 
COMBINE_SCANS_MAPPED 
COMBINE_SCANS_MAP_SUB_INTEGRATIONS_ONLY 
COMBINE_SCANS_MAP_ANTENNA_PAIRS_ONLY 
COMBINE_SCANS_UNMAPPED 
ANTENNA_PAIR 
SUB_INTEGRATION 
ARRAY_FIELD 

Definition at line 796 of file FlagDataHandler.h.

Enumerator
MEASUREMENT_SET 
CALIBRATION_TABLE 

Definition at line 811 of file FlagDataHandler.h.

Constructor & Destructor Documentation

casa::FlagDataHandler::FlagDataHandler ( string  msname,
casacore::uShort  iterationApproach = SUB_INTEGRATION,
casacore::Double  timeInterval = 0 
)

Default constructor NOTE: casacore::Time interval 0 groups all time steps together in one chunk.

virtual casa::FlagDataHandler::~FlagDataHandler ( )
virtual

Default destructor.

Member Function Documentation

virtual bool casa::FlagDataHandler::checkIfColumnExists ( casacore::String  )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 834 of file FlagDataHandler.h.

virtual bool casa::FlagDataHandler::checkIfSourceModelColumnExists ( )
inlinevirtual

Reimplemented in casa::FlagMSHandler.

Definition at line 835 of file FlagDataHandler.h.

virtual bool casa::FlagDataHandler::close ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 826 of file FlagDataHandler.h.

void casa::FlagDataHandler::enableAsyncIO ( casacore::Bool  enable)

Methods to switch on/off async i/o.

virtual bool casa::FlagDataHandler::flushFlags ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 831 of file FlagDataHandler.h.

virtual void casa::FlagDataHandler::generateAntennaPairMap ( )
protectedvirtual

Common casacore::MS/CalTables private interface.

virtual void casa::FlagDataHandler::generateAntennaPointingMap ( )
protectedvirtual
virtual bool casa::FlagDataHandler::generateIterator ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 828 of file FlagDataHandler.h.

virtual void casa::FlagDataHandler::generatePolarizationsMap ( )
protectedvirtual
virtual void casa::FlagDataHandler::generateScanStartStopMap ( )
protectedvirtual
virtual void casa::FlagDataHandler::generateSubIntegrationMap ( )
protectedvirtual
antennaPairMap* casa::FlagDataHandler::getAntennaPairMap ( )
inline

Accessors for the mapping functions.

Definition at line 875 of file FlagDataHandler.h.

References antennaPairMap_p.

lambdaMap* casa::FlagDataHandler::getLambdaMap ( )
inline

Definition at line 881 of file FlagDataHandler.h.

References lambdaMap_p.

antennaPointingMap* casa::FlagDataHandler::getMapAntennaPointing ( )
inline

Definition at line 879 of file FlagDataHandler.h.

References antennaPointingMap_p.

scanStartStopMap* casa::FlagDataHandler::getMapScanStartStop ( )
inline

Definition at line 880 of file FlagDataHandler.h.

References scanStartStopMap_p.

casacore::Cube<casacore::Bool>* casa::FlagDataHandler::getModifiedFlagCube ( )
inline

As requested by Urvashi R.V.

provide access to the original and modified flag cubes

Definition at line 859 of file FlagDataHandler.h.

References modifiedFlagCube_p.

casacore::Vector<casacore::Bool>* casa::FlagDataHandler::getModifiedFlagRow ( )
inline

Definition at line 861 of file FlagDataHandler.h.

References modifiedFlagRow_p.

casacore::Cube<casacore::Bool>* casa::FlagDataHandler::getOriginalFlagCube ( )
inline

Definition at line 860 of file FlagDataHandler.h.

References originalFlagCube_p.

casacore::Vector<casacore::Bool>* casa::FlagDataHandler::getOriginalFlagRow ( )
inline

Definition at line 862 of file FlagDataHandler.h.

References originalFlagRow_p.

polarizationIndexMap* casa::FlagDataHandler::getPolarizationIndexMap ( )
inline

Definition at line 878 of file FlagDataHandler.h.

References polarizationIndexMap_p.

polarizationMap* casa::FlagDataHandler::getPolarizationMap ( )
inline

Definition at line 877 of file FlagDataHandler.h.

References polarizationMap_p.

subIntegrationMap* casa::FlagDataHandler::getSubIntegrationMap ( )
inline

Definition at line 876 of file FlagDataHandler.h.

References subIntegrationMap_p.

virtual casacore::String casa::FlagDataHandler::getTableName ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 832 of file FlagDataHandler.h.

virtual bool casa::FlagDataHandler::nextBuffer ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 830 of file FlagDataHandler.h.

virtual bool casa::FlagDataHandler::nextChunk ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 829 of file FlagDataHandler.h.

virtual bool casa::FlagDataHandler::open ( )
inlinevirtual

Common casacore::MS/CalTables public interface.

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 825 of file FlagDataHandler.h.

virtual bool casa::FlagDataHandler::parseExpression ( casacore::MSSelection )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 833 of file FlagDataHandler.h.

void casa::FlagDataHandler::preFetchColumns ( )
void casa::FlagDataHandler::preLoadColumn ( VisBufferComponent2  column)

Pre-Load columns (in order to avoid parallelism problems when not using async i/o, and also to know what columns to pre-fetch in async i/o mode)

virtual bool casa::FlagDataHandler::selectData ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 827 of file FlagDataHandler.h.

void casa::FlagDataHandler::setChanAverageIter ( casacore::Vector< casacore::Int chanbin)
bool casa::FlagDataHandler::setDataSelection ( casacore::Record  record)

Set casacore::Data Selection parameters.

void casa::FlagDataHandler::setIterationApproach ( casacore::uShort  iterationApproach)

Set the iteration approach.

void casa::FlagDataHandler::setMapAntennaPairs ( bool  activated)

Functions to switch on/off mapping functions.

void casa::FlagDataHandler::setMapAntennaPointing ( bool  activated)
void casa::FlagDataHandler::setMapPolarizations ( bool  activated)
void casa::FlagDataHandler::setMapSubIntegrations ( bool  activated)
void casa::FlagDataHandler::setProfiling ( casacore::Bool  value)
inline

Definition at line 883 of file FlagDataHandler.h.

References profiling_p, and casacore::value().

void casa::FlagDataHandler::setScanStartStopFlaggedMap ( bool  activated)
void casa::FlagDataHandler::setScanStartStopMap ( bool  activated)
void casa::FlagDataHandler::setTimeAverageIter ( bool  activated)
void casa::FlagDataHandler::setTimeInterval ( casacore::Double  timeInterval)

Set time interval (also known as ntime)

void casa::FlagDataHandler::stopIteration ( )
inline

Stop iterating.

Definition at line 856 of file FlagDataHandler.h.

References stopIteration_p.

virtual bool casa::FlagDataHandler::summarySignal ( )
inlinevirtual

Reimplemented in casa::FlagCalTableHandler, and casa::FlagMSHandler.

Definition at line 836 of file FlagDataHandler.h.

casacore::Cube<casacore::Complex>& casa::FlagDataHandler::weightVisCube ( )

Get a casacore::Float visCube and return a casacore::Complex one.

Member Data Documentation

std::map< std::pair<casacore::Int,casacore::Int>, string > casa::FlagDataHandler::Ant1Ant2ToBaseline_p

Definition at line 897 of file FlagDataHandler.h.

casacore::Vector<casacore::Double>* casa::FlagDataHandler::antennaDiameters_p

Definition at line 899 of file FlagDataHandler.h.

casacore::Vector<casacore::String>* casa::FlagDataHandler::antennaNames_p

Definition at line 895 of file FlagDataHandler.h.

antennaPairMap* casa::FlagDataHandler::antennaPairMap_p
protected

Mapping members.

Definition at line 995 of file FlagDataHandler.h.

Referenced by getAntennaPairMap().

antennaPointingMap* casa::FlagDataHandler::antennaPointingMap_p
protected

Definition at line 999 of file FlagDataHandler.h.

Referenced by getMapAntennaPointing().

casacore::ScalarMeasColumn<casacore::MPosition>* casa::FlagDataHandler::antennaPositions_p

Definition at line 898 of file FlagDataHandler.h.

bool casa::FlagDataHandler::anySelection_p
protected

casacore::Data Selection ranges

Definition at line 956 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::arraySelection_p
protected

Definition at line 958 of file FlagDataHandler.h.

bool casa::FlagDataHandler::asyncio_enabled_p
protected

Async I/O stuff.

Definition at line 970 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::baselineSelection_p
protected

Definition at line 963 of file FlagDataHandler.h.

std::map< string, std::pair<casacore::Int,casacore::Int> > casa::FlagDataHandler::baselineToAnt1Ant2_p

Definition at line 896 of file FlagDataHandler.h.

casacore::uShort casa::FlagDataHandler::bufferNo

Definition at line 908 of file FlagDataHandler.h.

bool casa::FlagDataHandler::buffersInitialized_p
protected

Definition at line 982 of file FlagDataHandler.h.

casacore::Vector<casacore::Int> casa::FlagDataHandler::chanAverageBin_p

Definition at line 941 of file FlagDataHandler.h.

casacore::Record casa::FlagDataHandler::chanAvgOptions_p

Definition at line 944 of file FlagDataHandler.h.

casacore::uInt64 casa::FlagDataHandler::chunkCounts_p

Definition at line 913 of file FlagDataHandler.h.

casacore::uShort casa::FlagDataHandler::chunkNo

Definition at line 907 of file FlagDataHandler.h.

bool casa::FlagDataHandler::chunksInitialized_p
protected

Iteration initialization parameters.

Definition at line 981 of file FlagDataHandler.h.

std::vector<casacore::String>* casa::FlagDataHandler::corrProducts_p

Definition at line 901 of file FlagDataHandler.h.

casacore::uLong casa::FlagDataHandler::cubeAccessCounter_p
protected

Definition at line 1011 of file FlagDataHandler.h.

casacore::uLong casa::FlagDataHandler::cubeAccessCounterTotal_p
protected

Definition at line 1013 of file FlagDataHandler.h.

double casa::FlagDataHandler::cubeAccessTime_p
protected

Definition at line 1012 of file FlagDataHandler.h.

double casa::FlagDataHandler::cubeAccessTimeTotal_p
protected

Definition at line 1014 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::dataColumnType_p

Definition at line 942 of file FlagDataHandler.h.

casacore::Bool casa::FlagDataHandler::enableChanAvg_p

Definition at line 939 of file FlagDataHandler.h.

casacore::Bool casa::FlagDataHandler::enableTimeAvg_p

casacore::Time average iterator parameters

Definition at line 938 of file FlagDataHandler.h.

casacore::Vector<casacore::String>* casa::FlagDataHandler::fieldNames_p

Definition at line 900 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::fieldSelection_p
protected

Definition at line 959 of file FlagDataHandler.h.

bool casa::FlagDataHandler::flushFlagRow_p

Definition at line 912 of file FlagDataHandler.h.

bool casa::FlagDataHandler::flushFlags_p

FlagDataHanler-FlagAgents interaction.

Definition at line 911 of file FlagDataHandler.h.

bool casa::FlagDataHandler::groupTimeSteps_p

Vis buffer characteristics (constant values)

Definition at line 934 of file FlagDataHandler.h.

bool casa::FlagDataHandler::inrowSelection_p
protected

Definition at line 957 of file FlagDataHandler.h.

casacore::Vector<bool> casa::FlagDataHandler::isCorrelatorType_p

PROCESSOR sub-table section.

Definition at line 922 of file FlagDataHandler.h.

casacore::uShort casa::FlagDataHandler::iterationApproach_p
protected

Iteration parameters.

Definition at line 976 of file FlagDataHandler.h.

bool casa::FlagDataHandler::iteratorGenerated_p
protected

Definition at line 983 of file FlagDataHandler.h.

lambdaMap* casa::FlagDataHandler::lambdaMap_p
protected

Definition at line 1001 of file FlagDataHandler.h.

Referenced by getLambdaMap().

casacore::Bool casa::FlagDataHandler::loadProcessorTable_p

Definition at line 919 of file FlagDataHandler.h.

casacore::LogIO* casa::FlagDataHandler::logger_p

Make the logger public to that we can use it from FlagAgentBase::create.

Definition at line 890 of file FlagDataHandler.h.

bool casa::FlagDataHandler::mapAntennaPairs_p
protected

Definition at line 1002 of file FlagDataHandler.h.

bool casa::FlagDataHandler::mapAntennaPointing_p
protected

Definition at line 1005 of file FlagDataHandler.h.

bool casa::FlagDataHandler::mapPolarizations_p
protected

Definition at line 1004 of file FlagDataHandler.h.

bool casa::FlagDataHandler::mapScanStartStop_p
protected

Definition at line 1006 of file FlagDataHandler.h.

bool casa::FlagDataHandler::mapScanStartStopFlagged_p
protected

Definition at line 1007 of file FlagDataHandler.h.

bool casa::FlagDataHandler::mapSubIntegrations_p
protected

Definition at line 1003 of file FlagDataHandler.h.

casacore::MSSelection* casa::FlagDataHandler::measurementSetSelection_p

Definition at line 894 of file FlagDataHandler.h.

casacore::Cube<casacore::Bool> casa::FlagDataHandler::modifiedFlagCube_p
protected

Definition at line 988 of file FlagDataHandler.h.

Referenced by getModifiedFlagCube().

casacore::Vector<casacore::Bool> casa::FlagDataHandler::modifiedFlagRow_p
protected

Definition at line 992 of file FlagDataHandler.h.

Referenced by getModifiedFlagRow().

casacore::uInt64 casa::FlagDataHandler::msCounts_p

Definition at line 915 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::observationSelection_p
protected

Definition at line 967 of file FlagDataHandler.h.

casacore::Cube<casacore::Bool> casa::FlagDataHandler::originalFlagCube_p
protected

Flag Cubes.

Definition at line 987 of file FlagDataHandler.h.

Referenced by getOriginalFlagCube().

casacore::Vector<casacore::Bool> casa::FlagDataHandler::originalFlagRow_p
protected

FlagRows.

Definition at line 991 of file FlagDataHandler.h.

Referenced by getOriginalFlagRow().

polarizationIndexMap* casa::FlagDataHandler::polarizationIndexMap_p
protected

Definition at line 998 of file FlagDataHandler.h.

Referenced by getPolarizationIndexMap().

polarizationMap* casa::FlagDataHandler::polarizationMap_p
protected

Definition at line 997 of file FlagDataHandler.h.

Referenced by getPolarizationMap().

casacore::String casa::FlagDataHandler::polarizationSelection_p
protected

Definition at line 965 of file FlagDataHandler.h.

VisBufferComponents2* casa::FlagDataHandler::prefetchColumns_p

RO Visibility Iterator.

Definition at line 904 of file FlagDataHandler.h.

std::vector<VisBufferComponent2> casa::FlagDataHandler::preLoadColumns_p
protected

Pre-Load columns (in order to avoid parallelism problems when not using async i/o, and also to know what columns to pre-fetch in async i/o mode)

Definition at line 973 of file FlagDataHandler.h.

bool casa::FlagDataHandler::printChunkSummary_p

Definition at line 917 of file FlagDataHandler.h.

casacore::uLong casa::FlagDataHandler::processedRows

Iteration counters.

Definition at line 906 of file FlagDataHandler.h.

bool casa::FlagDataHandler::processorTableExist_p

Definition at line 923 of file FlagDataHandler.h.

bool casa::FlagDataHandler::profiling_p
protected

Profiling.

Definition at line 1017 of file FlagDataHandler.h.

Referenced by setProfiling().

casacore::uInt64 casa::FlagDataHandler::progressCounts_p

Definition at line 914 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::scanIntentSelection_p
protected

Definition at line 966 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::scanSelection_p
protected

Definition at line 960 of file FlagDataHandler.h.

scanStartStopMap* casa::FlagDataHandler::scanStartStopMap_p
protected

Definition at line 1000 of file FlagDataHandler.h.

Referenced by getMapScanStartStop().

bool casa::FlagDataHandler::slurp_p
protected

Slurp flag.

Definition at line 979 of file FlagDataHandler.h.

casacore::Block<int> casa::FlagDataHandler::sortOrder_p

Definition at line 935 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::spwSelection_p
protected

Definition at line 962 of file FlagDataHandler.h.

bool casa::FlagDataHandler::stats_p
protected

Stats members.

Definition at line 1010 of file FlagDataHandler.h.

bool casa::FlagDataHandler::stopIteration_p
protected

Definition at line 984 of file FlagDataHandler.h.

Referenced by stopIteration().

subIntegrationMap* casa::FlagDataHandler::subIntegrationMap_p
protected

Definition at line 996 of file FlagDataHandler.h.

Referenced by getSubIntegrationMap().

casacore::uShort casa::FlagDataHandler::summaryThreshold_p

Definition at line 916 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::tablename_p

Measurement set section.

Definition at line 893 of file FlagDataHandler.h.

casacore::uShort casa::FlagDataHandler::tableTye_p

Definition at line 918 of file FlagDataHandler.h.

casacore::Double casa::FlagDataHandler::timeAverageBin_p

Definition at line 940 of file FlagDataHandler.h.

vi::AveragingOptions casa::FlagDataHandler::timeAvgOptions_p

Definition at line 943 of file FlagDataHandler.h.

casacore::Double casa::FlagDataHandler::timeInterval_p
protected

Definition at line 977 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::timeSelection_p
protected

Definition at line 961 of file FlagDataHandler.h.

casacore::String casa::FlagDataHandler::uvwSelection_p
protected

Definition at line 964 of file FlagDataHandler.h.

vi::VisBuffer2* casa::FlagDataHandler::visibilityBuffer_p

Visibility Buffer WARNING: The attach mechanism only works with pointers or referenced variables.

Otherwise the VisBuffer is created and attached, but when it is assigned to the member it is detached because of the dynamically called destructor

Definition at line 931 of file FlagDataHandler.h.

casacore::Cube<casacore::Complex> casa::FlagDataHandler::weight_spectrum_p

Definition at line 887 of file FlagDataHandler.h.


The documentation for this class was generated from the following file: