casa
$Rev:20696$
|
A read/write Lattice iterator for PagedArrays. More...
#include <PagedArrIter.h>
Protected Member Functions | |
PagedArrIter (const PagedArray< T > &data, const LatticeNavigator &method, Bool useRef) | |
Construct the Iterator with the supplied data, and iteration strategy. | |
PagedArrIter (const PagedArrIter< T > &other) | |
The copy constructor uses reference sematics for the PagedArray and copy semantics for the cursor and Navigator. | |
virtual | ~PagedArrIter () |
Destructor (cleans up dangling references and releases cursor memory) | |
PagedArrIter< T > & | operator= (const PagedArrIter< T > &other) |
The assignment operator uses reference sematics for the PagedArray and copy semantics for the cursor and Navigator. | |
virtual LatticeIterInterface< T > * | clone () const |
Clone the object. | |
Private Member Functions | |
void | setupTileCache () |
Setup the cache in the tiled storage manager. | |
Private Attributes | |
PagedArray< T > | itsData |
reference to the PagedArray | |
Friends | |
class | PagedArray< T > |
A read/write Lattice iterator for PagedArrays.
Internal
The PagedArrIter class name is a contraction of Paged Array Iterator and reflects its role as the methods for iterating through Lattices which are resident on disk.
This class is not meant for general use. Instead class LatticeIterator should be used to iterate through a PagedArray
or any other Lattice object (like a ArrayLattice ).
PagedArrIter is derived from LatticeIterInterface and implements the iterator for a PagedArray object. This iterator is somewhat special because it sets the PagedArray cache size at the start of an iteration.
For for each derivation of Lattice to make as efficient an iterator as possible. The letter/envelope scheme allowed us to hide the special bits in classes like the one you see here.
Definition at line 91 of file PagedArrIter.h.
casa::PagedArrIter< T >::PagedArrIter | ( | const PagedArray< T > & | data, |
const LatticeNavigator & | method, | ||
Bool | useRef | ||
) | [protected] |
Construct the Iterator with the supplied data, and iteration strategy.
casa::PagedArrIter< T >::PagedArrIter | ( | const PagedArrIter< T > & | other | ) | [protected] |
The copy constructor uses reference sematics for the PagedArray and copy semantics for the cursor and Navigator.
This way the newly constructed PagedArrIter can independently iterate through the same data set. (with the same cursor shape etc.)
virtual casa::PagedArrIter< T >::~PagedArrIter | ( | ) | [protected, virtual] |
Destructor (cleans up dangling references and releases cursor memory)
virtual LatticeIterInterface<T>* casa::PagedArrIter< T >::clone | ( | ) | const [protected, virtual] |
Clone the object.
Reimplemented from casa::LatticeIterInterface< T >.
PagedArrIter<T>& casa::PagedArrIter< T >::operator= | ( | const PagedArrIter< T > & | other | ) | [protected] |
The assignment operator uses reference sematics for the PagedArray and copy semantics for the cursor and Navigator.
This way the PagedArrIter objects share the same data set but independently iterate with cursors of the same size.
void casa::PagedArrIter< T >::setupTileCache | ( | ) | [private] |
Setup the cache in the tiled storage manager.
friend class PagedArray< T > [friend] |
Definition at line 93 of file PagedArrIter.h.
PagedArray<T> casa::PagedArrIter< T >::itsData [private] |
reference to the PagedArray
Definition at line 129 of file PagedArrIter.h.