EPVisTimeAverager.h

Classes

EPVisTimeAverager -- A class to average VisBuffers in time (full description)

class EPVisTimeAverager

Interface

Public Members
EPVisTimeAverager (const Int& nAnt, const Double& interval, const Bool& prenorm, Bool doUVW=False, VBDataStructure useVisCubes=VISIBILITY)
EPVisTimeAverager (const Int& nAnt, const Double& interval, const Bool& prenorm)
~EPVisTimeAverager()
Bool doUVW(Bool val)
VBDataStructure setDataStructure(VBDataStructure val)
void reset()
void accumulate (const VisBuffer& vb)
void accumulateVisibility (const VisBuffer& vb)
void accumulateVisCubes (const VisBuffer& vb)
void finalizeAverage (VisBuffer& avBuf)
Private Members
EPVisTimeAverager()
EPVisTimeAverager& operator= (const EPVisTimeAverager&)
EPVisTimeAverager (const EPVisTimeAverager&)
void initialize()
void initializeVisibility()
void initializeVisCubes()
void normalize()
void normalizeVisibility()
void normalizeVisCubes()
void getOutVisCube(const VisBuffer& vb, VBDataStructure which=MODELVISCUBE)
void getInVisCube(VBDataStructure which=MODELVISCUBE)
void copyData(VisBuffer& vb)
Int hashFunction (const Int& ant1, const Int& ant2)
void (EPVisTimeAverager::*Initializer)()
void (EPVisTimeAverager::*Normalizer)()
void (EPVisTimeAverager::*Accumulater)(const VisBuffer &)

Description

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

From "visibility", "time" and "averaging".

Synopsis

This class averages VisBuffers in time.

Example

Motivation

Collect all time averaging capabilities for VisBuffer averaging.

Thrown Exceptions

To Do

Member Description

EPVisTimeAverager (const Int& nAnt, const Double& interval, const Bool& prenorm, Bool doUVW=False, VBDataStructure useVisCubes=VISIBILITY)

Construct from the number of antennas, the averaging interval and the pre-normalization flag

EPVisTimeAverager (const Int& nAnt, const Double& interval, const Bool& prenorm)

~EPVisTimeAverager()

Null destructor

Bool doUVW(Bool val)

Set internal switches

VBDataStructure setDataStructure(VBDataStructure val)

void reset()

Reset the averager

void accumulate (const VisBuffer& vb)

Accumulate a VisBuffer

Extract the appropriate buffer from the given VisBuffer and then call the appropriate accumulater using the function pointer.

void accumulateVisibility (const VisBuffer& vb)

void accumulateVisCubes (const VisBuffer& vb)

void finalizeAverage (VisBuffer& avBuf)

Finalize averaging, and return the result

EPVisTimeAverager()

Prohibit null constructor, copy constructor and assignment for now

EPVisTimeAverager& operator= (const EPVisTimeAverager&)

EPVisTimeAverager (const EPVisTimeAverager&)

void initialize()

Initialize the next accumulation interval Call the appropriate initializer using the function pointer.

void initializeVisibility()

void initializeVisCubes()

void normalize()

Normalize the current accumulation Call the appropriate Normalizer using the funtion pointer.

void normalizeVisibility()

void normalizeVisCubes()

void getOutVisCube(const VisBuffer& vb, VBDataStructure which=MODELVISCUBE)

Extract the appropriate buffer from the supplied VisBuffer

void getInVisCube(VBDataStructure which=MODELVISCUBE)

Extract the appropriate buffer from the internal VisBuffer for accumulation

void copyData(VisBuffer& vb)

Copy the accumulated buffer into the internal buffer of the supplied VisBuffer.

Int hashFunction (const Int& ant1, const Int& ant2)

Hash function to return the row offset for an interferometer (ant1, ant2)

void (EPVisTimeAverager::*Initializer)()

Pointers to member function - these are set to the appropriate values in the constructor.

void (EPVisTimeAverager::*Normalizer)()

void (EPVisTimeAverager::*Accumulater)(const VisBuffer &)