casa::vi::VlaDatum Class Reference

VlaDatum is a single elemement in the VlaDatum buffer ring used to support the VisibilityIterator2Async. More...

#include <AsynchronousInterface2.h>

List of all members.

Public Types

enum  State {
  Empty,
  Filling,
  Full,
  Reading
}

Public Member Functions

 VlaDatum (Subchunk)
 ~VlaDatum ()
Subchunk getSubchunk () const
VisBufferImplAsync2getVisBuffer ()
Bool isSubchunk (Subchunk) const
 const VisBufferAsync2 * getVisBuffer () const;
VisBufferImplAsync2releaseVisBufferAsync2 ()
void reset ()

Private Member Functions

VlaDatumoperator= (const VlaDatum &other)
 Illegal operations.

Private Attributes

Subchunk subchunk_p
VisBufferImplAsync2visBuffer_p

Detailed Description

VlaDatum is a single elemement in the VlaDatum buffer ring used to support the VisibilityIterator2Async.

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

VlaDatum is the quantum of data associated with a single position of the visibility look-ahead scheme.

Synopsis

VlaDatum is a single buffer for data produced by the VLAT thread and consumed by the main thread. A collection of VlaDatum objects is organized as a buffer ring in a VlaData object.

A VlaDatum object is responsible for maintaining its state as well as containing the set of data accessed from a single position of a VisibilityIterator2. It contains a VisibilityBufferAsync object to hold the data that will be used by the main thread; other data is maintained in member variables.

VlaDatum has no concurrency mechanisms built in it; that is handled by the VlaData object. It does support a set of states that indicate its current use: Empty -> Filling -> Full -> Reading -> Empty. Changing state is accomplished by the methods fillStart, fillComplete, readStart and readComplete.

Example

Motivation

Thrown Exceptions

Definition at line 250 of file AsynchronousInterface2.h.


Member Enumeration Documentation

Enumerator:
Empty 
Filling 
Full 
Reading 

Definition at line 254 of file AsynchronousInterface2.h.


Constructor & Destructor Documentation

casa::vi::VlaDatum::VlaDatum ( Subchunk   ) 
casa::vi::VlaDatum::~VlaDatum (  ) 

Member Function Documentation

Subchunk casa::vi::VlaDatum::getSubchunk (  )  const
VisBufferImplAsync2* casa::vi::VlaDatum::getVisBuffer (  ) 
Bool casa::vi::VlaDatum::isSubchunk ( Subchunk   )  const

const VisBufferAsync2 * getVisBuffer () const;

VlaDatum& casa::vi::VlaDatum::operator= ( const VlaDatum other  )  [private]

Illegal operations.

VisBufferImplAsync2* casa::vi::VlaDatum::releaseVisBufferAsync2 (  ) 
void casa::vi::VlaDatum::reset (  ) 

Member Data Documentation

Subchunk casa::vi::VlaDatum::subchunk_p [private]

Definition at line 271 of file AsynchronousInterface2.h.

Definition at line 272 of file AsynchronousInterface2.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