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

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

#include <AsynchronousInterface.h>

Public Types

enum  State {

Public Member Functions

 VlaDatum (SubChunkPair)
 ~VlaDatum ()
SubChunkPair getSubChunkPair () const
VisBufferAsyncgetVisBuffer ()
casacore::Bool isSubChunk (SubChunkPair) const
 const VisBufferAsync * getVisBuffer () const; More...
VisBufferAsyncreleaseVisBufferAsync ()
void reset ()

Private Member Functions

VlaDatumoperator= (const VlaDatum &other)
 Illegal operations. More...

Private Attributes

SubChunkPair subchunk_p

Detailed Description

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

Intended use:


Review Status

Date Reviewed:



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


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 ROVisibilityIterator. 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.



Thrown Exceptions

Definition at line 252 of file AsynchronousInterface.h.

Member Enumeration Documentation


Definition at line 256 of file AsynchronousInterface.h.

Constructor & Destructor Documentation

casa::asyncio::VlaDatum::VlaDatum ( SubChunkPair  )
casa::asyncio::VlaDatum::~VlaDatum ( )

Member Function Documentation

SubChunkPair casa::asyncio::VlaDatum::getSubChunkPair ( ) const
VisBufferAsync* casa::asyncio::VlaDatum::getVisBuffer ( )
casacore::Bool casa::asyncio::VlaDatum::isSubChunk ( SubChunkPair  ) const

const VisBufferAsync * getVisBuffer () const;

VlaDatum& casa::asyncio::VlaDatum::operator= ( const VlaDatum other)

Illegal operations.

VisBufferAsync* casa::asyncio::VlaDatum::releaseVisBufferAsync ( )
void casa::asyncio::VlaDatum::reset ( )

Member Data Documentation

SubChunkPair casa::asyncio::VlaDatum::subchunk_p

Definition at line 273 of file AsynchronousInterface.h.

VisBufferAsync* casa::asyncio::VlaDatum::visBuffer_p

Definition at line 274 of file AsynchronousInterface.h.

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