casa::vi::AveragingTvi2 Class Reference

#include <AveragingTvi2.h>

Inheritance diagram for casa::vi::AveragingTvi2:
casa::vi::TransformingVi2 casa::vi::ViImplementation2

List of all members.

Public Member Functions

 AveragingTvi2 (ViImplementation2 *inputVii, const AveragingParameters &averagingParameters)
 ~AveragingTvi2 ()
virtual String ViiType () const
 Report the the ViImplementation type.
Chunk Subchunk structure in
the AveragingTvi2 The
averaging in is specified at
construction time The 
interval (i.e., the size of the chunk in time) is also specified at creation time
the interval must be an
integer multiple of the
averaging interval The input
VI s setting must be
compatible with those of the
AveragingTvi2 This means that
the chunk size of the input VI
must have the same duration as
the averaging VI Although the
input VI and the averaging VI
have the same the averaging VI
will have fewer subchunks
since N input subchunks will
be averaged down to create a
single output subchunk The
input VI will also define the
averaging boundaries by its
definition of a chunk For if
the input VI allows data with
different scans to be in the
same then they will
potentially be averaged
together The input VI must use
the data description ID as a
sort column so that a chunk
will only contain data from a
single DDID setting *void 
originChunks (Bool forceRewind=False)
 Methods to control chunk iterator.
void nextChunk ()
Bool moreChunks () const
void origin ()
 +==================================+ | | | Iteration Control and Monitoring | | | +==================================+
void next ()
Bool more () const
void writeFlag (const Cube< Bool > &flag)
 Write/modify the flags in the data.
void writeFlagRow (const Vector< Bool > &rowflags)
 Write/modify the flag row column; dimension Vector (nrow).

Static Public Member Functions

static Float weightToSigma (Float weight)
static Float sigmaToWeight (Float sigma)
static Vector< Float > average (const Matrix< Float > &data, const Matrix< Bool > &flags)
static Matrix< Float > average (const Cube< Float > &data, const Cube< Bool > &flags)

Public Attributes

Chunk Subchunk structure in
the AveragingTvi2 The
averaging 
interval
Chunk Subchunk structure in
the AveragingTvi2 The
averaging in 
seconds
the interval must be an
integer multiple of the
averaging interval The input
VI s setting must be
compatible with those of the
AveragingTvi2 This means that
the chunk size of the input VI
must have the same duration as
the averaging VI Although the
input VI and the averaging VI
have the same 
duration
the interval must be an
integer multiple of the
averaging interval The input
VI s setting must be
compatible with those of the
AveragingTvi2 This means that
the chunk size of the input VI
must have the same duration as
the averaging VI Although the
input VI and the averaging VI
have the same the averaging VI
will have fewer subchunks
since N input subchunks will
be averaged down to create a
single output subchunk The
input VI will also define the
averaging boundaries by its
definition of a chunk For 
example
the interval must be an
integer multiple of the
averaging interval The input
VI s setting must be
compatible with those of the
AveragingTvi2 This means that
the chunk size of the input VI
must have the same duration as
the averaging VI Although the
input VI and the averaging VI
have the same the averaging VI
will have fewer subchunks
since N input subchunks will
be averaged down to create a
single output subchunk The
input VI will also define the
averaging boundaries by its
definition of a chunk For if
the input VI allows data with
different scans to be in the
same 
chunk

Protected Member Functions

void advanceInputVii ()
Int determineDdidToUse () const
Bool inputExceedsTimeDistance (ms::MsRow *rowInput, avg::MsRowAvg *rowAveraged)
Bool inputExceedsUvwDistance (ms::MsRow *rowInput, avg::MsRowAvg *rowAveraged)
void produceSubchunk ()
void processInputSubchunk (const VisBuffer2 *)
Bool reachedAveragingBoundary ()
void captureIterationInfo (const VisBuffer2 *vb2)
bool subchunksReady () const
void validateInputVi (ViImplementation2 *)

Private Attributes

const Double averagingInterval_p
AveragingOptions averagingOptions_p
AveragingParameters averagingParameters_p
Int ddidLastUsed_p
Bool inputViiAdvanced_p
Bool more_p
Subchunk subchunk_p
Bool subchunkExists_p
avg::VbAvg * vbAvg_p
WeightScalingweightScaling_p
Int startBuffer_p
Int endBuffer_p

Detailed Description

Definition at line 28 of file AveragingTvi2.h.


Constructor & Destructor Documentation

casa::vi::AveragingTvi2::AveragingTvi2 ( ViImplementation2 inputVii,
const AveragingParameters averagingParameters 
)
casa::vi::AveragingTvi2::~AveragingTvi2 (  ) 

Member Function Documentation

void casa::vi::AveragingTvi2::advanceInputVii (  )  [protected]
static Matrix<Float> casa::vi::AveragingTvi2::average ( const Cube< Float > &  data,
const Cube< Bool > &  flags 
) [static]
static Vector<Float> casa::vi::AveragingTvi2::average ( const Matrix< Float > &  data,
const Matrix< Bool > &  flags 
) [static]
void casa::vi::AveragingTvi2::captureIterationInfo ( const VisBuffer2 vb2  )  [protected]
Int casa::vi::AveragingTvi2::determineDdidToUse (  )  const [protected]
Bool casa::vi::AveragingTvi2::inputExceedsTimeDistance ( ms::MsRow rowInput,
avg::MsRowAvg *  rowAveraged 
) [protected]
Bool casa::vi::AveragingTvi2::inputExceedsUvwDistance ( ms::MsRow rowInput,
avg::MsRowAvg *  rowAveraged 
) [protected]
Chunk Subchunk structure in the AveragingTvi2 The averaging in is specified at construction time The casa::vi::AveragingTvi2::interval ( i.  e.,
the size of the chunk in  time 
)
Type Constraints
Bool casa::vi::AveragingTvi2::more (  )  const [virtual]

Reimplemented from casa::vi::TransformingVi2.

Bool casa::vi::AveragingTvi2::moreChunks (  )  const [virtual]

Reimplemented from casa::vi::TransformingVi2.

void casa::vi::AveragingTvi2::next (  )  [virtual]

Reimplemented from casa::vi::TransformingVi2.

void casa::vi::AveragingTvi2::nextChunk (  )  [virtual]

Reimplemented from casa::vi::TransformingVi2.

void casa::vi::AveragingTvi2::origin (  )  [virtual]

+==================================+ | | | Iteration Control and Monitoring | | | +==================================+

Methods to control and monitor subchunk iteration

Reimplemented from casa::vi::TransformingVi2.

the interval must be an integer multiple of the averaging interval The input VI s setting must be compatible with those of the AveragingTvi2 This means that the chunk size of the input VI must have the same duration as the averaging VI Although the input VI and the averaging VI have the same the averaging VI will have fewer subchunks since N input subchunks will be averaged down to create a single output subchunk The input VI will also define the averaging boundaries by its definition of a chunk For if the input VI allows data with different scans to be in the same then they will potentially be averaged together The input VI must use the data description ID as a sort column so that a chunk will only contain data from a single DDID setting* void casa::vi::AveragingTvi2::originChunks ( Bool  forceRewind = False  )  [virtual]

Methods to control chunk iterator.

Reimplemented from casa::vi::TransformingVi2.

Type Constraints
void casa::vi::AveragingTvi2::processInputSubchunk ( const VisBuffer2  )  [protected]
void casa::vi::AveragingTvi2::produceSubchunk (  )  [protected]
Bool casa::vi::AveragingTvi2::reachedAveragingBoundary (  )  [protected]
static Float casa::vi::AveragingTvi2::sigmaToWeight ( Float  sigma  )  [inline, static]

Definition at line 75 of file AveragingTvi2.h.

bool casa::vi::AveragingTvi2::subchunksReady (  )  const [protected]
void casa::vi::AveragingTvi2::validateInputVi ( ViImplementation2  )  [protected]
virtual String casa::vi::AveragingTvi2::ViiType (  )  const [inline, virtual]

Report the the ViImplementation type.

Reimplemented from casa::vi::TransformingVi2.

Definition at line 37 of file AveragingTvi2.h.

References casa::vi::TransformingVi2::getVii(), String, and casa::vi::ViImplementation2::ViiType().

static Float casa::vi::AveragingTvi2::weightToSigma ( Float  weight  )  [static]
void casa::vi::AveragingTvi2::writeFlag ( const Cube< Bool > &  flag  )  [virtual]

Write/modify the flags in the data.

This writes the flags as found in the MS, Cube (npol,nchan,nrow), where nrow is the number of rows in the current iteration (given by nRow ()).

Reimplemented from casa::vi::TransformingVi2.

void casa::vi::AveragingTvi2::writeFlagRow ( const Vector< Bool > &  rowflags  )  [virtual]

Write/modify the flag row column; dimension Vector (nrow).

Reimplemented from casa::vi::TransformingVi2.


Member Data Documentation

Definition at line 99 of file AveragingTvi2.h.

Definition at line 100 of file AveragingTvi2.h.

Definition at line 101 of file AveragingTvi2.h.

the interval must be an integer multiple of the averaging interval The input VI s setting must be compatible with those of the AveragingTvi2 This means that the chunk size of the input VI must have the same duration as the averaging VI Although the input VI and the averaging VI have the same the averaging VI will have fewer subchunks since N input subchunks will be averaged down to create a single output subchunk The input VI will also define the averaging boundaries by its definition of a chunk For if the input VI allows data with different scans to be in the same casa::vi::AveragingTvi2::chunk

Definition at line 51 of file AveragingTvi2.h.

Definition at line 102 of file AveragingTvi2.h.

the interval must be an integer multiple of the averaging interval The input VI s setting must be compatible with those of the AveragingTvi2 This means that the chunk size of the input VI must have the same duration as the averaging VI Although the input VI and the averaging VI have the same casa::vi::AveragingTvi2::duration

Definition at line 51 of file AveragingTvi2.h.

Definition at line 110 of file AveragingTvi2.h.

the interval must be an integer multiple of the averaging interval The input VI s setting must be compatible with those of the AveragingTvi2 This means that the chunk size of the input VI must have the same duration as the averaging VI Although the input VI and the averaging VI have the same the averaging VI will have fewer subchunks since N input subchunks will be averaged down to create a single output subchunk The input VI will also define the averaging boundaries by its definition of a chunk For casa::vi::AveragingTvi2::example

Definition at line 51 of file AveragingTvi2.h.

Definition at line 103 of file AveragingTvi2.h.

Chunk Subchunk structure in the AveragingTvi2 The averaging casa::vi::AveragingTvi2::interval

Definition at line 37 of file AveragingTvi2.h.

Definition at line 104 of file AveragingTvi2.h.

Chunk Subchunk structure in the AveragingTvi2 The averaging in casa::vi::AveragingTvi2::seconds

Definition at line 37 of file AveragingTvi2.h.

Definition at line 109 of file AveragingTvi2.h.

Definition at line 105 of file AveragingTvi2.h.

Definition at line 106 of file AveragingTvi2.h.

avg::VbAvg* casa::vi::AveragingTvi2::vbAvg_p [private]

Definition at line 107 of file AveragingTvi2.h.

Reimplemented from casa::vi::TransformingVi2.

Definition at line 108 of file AveragingTvi2.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1