casa
5.7.0-16
|
A non-templated, abstract base class for array-like objects. More...
#include <LatticeBase.h>
Public Member Functions | |
virtual | ~LatticeBase () |
A virtual destructor is needed so that it will use the actual destructor in the derived class. More... | |
virtual LatticeBase * | clone () const =0 |
Make a copy of the derived object (reference semantics). More... | |
virtual String | imageType () const |
Get the image type (returns name of derived class). More... | |
virtual DataType | dataType () const =0 |
Get the data type of the lattice. More... | |
virtual Bool | isPersistent () const |
Is the lattice persistent and can it be loaded by other processes as well? That is the case for a PagedArray or PagedImage and for an ImageExpr which does not use transient lattices or regions. More... | |
virtual Bool | isPaged () const |
Is the lattice paged to disk? The default implementation returns False. More... | |
virtual Bool | canReferenceArray () const |
Can the lattice data be referenced as an array section? That is the case for an ArrayLattice or a Temp/SubLattice using it. More... | |
virtual Bool | isWritable () const |
Is the lattice writable? The default implementation returns True. More... | |
virtual void | save (const String &fileName) const |
Save the image in an AipsIO file with the given name. More... | |
virtual Bool | lock (FileLocker::LockType, uInt nattempts) |
It is strongly recommended to use class LatticeLocker to handle lattice locking. More... | |
virtual void | unlock () |
virtual Bool | hasLock (FileLocker::LockType) const |
virtual void | resync () |
Resynchronize the Lattice object with the lattice file. More... | |
virtual void | flush () |
Flush the data (but do not unlock). More... | |
virtual void | tempClose () |
Temporarily close the lattice. More... | |
virtual void | reopen () |
Explicitly reopen the temporarily closed lattice. More... | |
virtual String | name (Bool stripPath=False) const |
Return the name of the current Lattice object. More... | |
virtual IPosition | shape () const =0 |
Return the shape of the Lattice including all degenerate axes (ie. More... | |
virtual uInt | ndim () const |
Return the number of axes in this Lattice. More... | |
virtual size_t | nelements () const |
Return the total number of elements in this Lattice. More... | |
size_t | size () const |
Bool | conform (const LatticeBase &other) const |
Return a value of "True" if this instance of Lattice and 'other' have the same shape, otherwise returns a value of "False". More... | |
virtual LELCoordinates | lelCoordinates () const |
Return the coordinates of the lattice. More... | |
virtual uInt | advisedMaxPixels () const =0 |
This function returns the recommended maximum number of pixels to include in the cursor of an iterator. More... | |
IPosition | niceCursorShape (uInt maxPixels) const |
Returns a recommended cursor shape for iterating through all the pixels in the Lattice. More... | |
IPosition | niceCursorShape () const |
virtual Bool | ok () const |
Check class internals - used for debugging. More... | |
virtual IPosition | doNiceCursorShape (uInt maxPixels) const |
The function (in the derived classes) doing the actual work. More... | |
virtual uInt | maximumCacheSize () const |
Maximum cache size - not necessarily all used. More... | |
virtual void | setMaximumCacheSize (uInt howManyPixels) |
Set the maximum (allowed) cache size as indicated. More... | |
virtual void | setCacheSizeInTiles (uInt howManyTiles) |
Set the actual cache size for this Array to be big enough for the indicated number of tiles. More... | |
virtual void | setCacheSizeFromPath (const IPosition &sliceShape, const IPosition &windowStart, const IPosition &windowLength, const IPosition &axisPath) |
Set the cache size as to "fit" the indicated path. More... | |
virtual void | clearCache () |
Clears and frees up the caches, but the maximum allowed cache size is unchanged from when setCacheSize was called. More... | |
virtual void | showCacheStatistics (ostream &os) const |
Report on cache success. More... | |
Protected Member Functions | |
LatticeBase () | |
Define default constructor to be used by derived classes. More... | |
LatticeBase (const LatticeBase &) | |
Copy constructor and assignment can only be used by derived classes. More... | |
LatticeBase & | operator= (const LatticeBase &) |
void | throwBoolMath () const |
Throw an exception for arithmetic on a Bool Lattice. More... | |
A non-templated, abstract base class for array-like objects.
Public interface
This pure abstract base class defines the operations which may be performed on a lattice of any type.
See class Lattice for a detailed description of a lattice.
It is very useful to be able to keep a pointer to a non-templated base class. Furthermore it gives the opportunity to factor out some non-templated code.
Note: The cache functions (maximumCacheSize, setMaximumCacheSize, setCacheSizeInTiles, setCacheSizeFromPath, clearCache, and showCacheStatistics) should all be over-ridden together as in PagedArray;
Definition at line 80 of file LatticeBase.h.
|
virtual |
A virtual destructor is needed so that it will use the actual destructor in the derived class.
|
inlineprotected |
Define default constructor to be used by derived classes.
Definition at line 259 of file LatticeBase.h.
|
inlineprotected |
Copy constructor and assignment can only be used by derived classes.
Definition at line 263 of file LatticeBase.h.
|
pure virtual |
This function returns the recommended maximum number of pixels to include in the cursor of an iterator.
The Lattice class has a default implementation which returns a number that is a power of two and includes enough pixels to consume between 4 and 8 MBytes of memory.
Implemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::Lattice< T >, casacore::Lattice< casacore::Float >, casacore::Lattice< Bool >, casacore::Lattice< casacore::Int >, casacore::Lattice< casacore::Complex >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::HDF5Image< T >, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::ArrayLattice< T >, casacore::ArrayLattice< Bool >, casacore::MIRIADImage, casacore::FITSImage, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::FITSQualityImage, casacore::ExtendLattice< T >, casacore::CurvedLattice2D< T >, casacore::LatticeRegion, casacore::RebinLattice< T >, casacore::RebinImage< T >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, and casacore::LCHDF5Mask.
Referenced by niceCursorShape().
|
virtual |
Can the lattice data be referenced as an array section? That is the case for an ArrayLattice or a Temp/SubLattice using it.
It is used by LatticeIterInterface.
The default implementation returns False.
Reimplemented in casacore::ArrayLattice< T >, casacore::ArrayLattice< Bool >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::SubImage< T >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, and casacore::TempImage< casacore::Complex >.
|
virtual |
Clears and frees up the caches, but the maximum allowed cache size is unchanged from when setCacheSize was called.
The default implementation does nothing.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::LatticeRegion, casacore::LCMask, and casacore::LCPagedMask.
|
pure virtual |
Make a copy of the derived object (reference semantics).
Implemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::Lattice< T >, casacore::MaskedLattice< T >, casacore::Lattice< casacore::Float >, casacore::Lattice< Bool >, casacore::Lattice< casacore::Int >, casacore::Lattice< casacore::Complex >, casacore::MaskedLattice< casacore::Float >, casacore::ArrayLattice< T >, casacore::ArrayLattice< Bool >, casacore::TempLattice< T >, casacore::HDF5Lattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::HDF5Lattice< Bool >, casacore::FITSMask, casacore::FITSQualityMask, casacore::LCRegion, and casacore::LatticeRegion.
|
inline |
Return a value of "True" if this instance of Lattice and 'other' have the same shape, otherwise returns a value of "False".
Definition at line 183 of file LatticeBase.h.
References casacore::IPosition::isEqual(), and shape().
|
pure virtual |
Get the data type of the lattice.
Implemented in casacore::Lattice< T >, casacore::Lattice< casacore::Float >, casacore::Lattice< Bool >, casacore::Lattice< casacore::Int >, casacore::Lattice< casacore::Complex >, casacore::MIRIADImage, casacore::FITSImage, and casacore::FITSQualityImage.
The function (in the derived classes) doing the actual work.
This function is public, so it can be used internally in the various Lattice classes.
The default implementation tries to fit as many axes as possible given maxPixels
.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::HDF5Image< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::ImageConcat< T >, casacore::SubImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::CurvedImage2D< T >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::MIRIADImage, casacore::FITSImage, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::ExtendLattice< T >, casacore::FITSQualityImage, casacore::CurvedLattice2D< T >, casacore::RebinImage< T >, casacore::ExtendImage< T >, casacore::LatticeRegion, casacore::LCConcatenation, casacore::LCRegionMulti, casacore::LCExtension, casacore::LCStretch, casacore::LCRegionSingle, casacore::LCMask, casacore::LCPagedMask, and casacore::LCHDF5Mask.
Referenced by niceCursorShape().
|
virtual |
Flush the data (but do not unlock).
By default the function does not do anything at all.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::HDF5Image< T >, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::RebinImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::ExtendImage< T >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCHDF5Mask.
|
virtual |
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::RebinImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCLELMask.
Referenced by casacore::LatticeLocker::hasLock().
|
virtual |
Get the image type (returns name of derived class).
The default implementation returns "Lattice". Note it is made pure virtual in ImageInterface.
Reimplemented in casa::ComponentListImage, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::ImageInterface< T >, casacore::ImageInterface< Float >, casacore::ImageInterface< Double >, casacore::ImageInterface< float >, casacore::ImageInterface< casacore::Float >, casacore::ImageInterface< DComplex >, casacore::ImageInterface< Complex >, casacore::ImageInterface< casacore::Complex >, casacore::ImageConcat< T >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::CurvedImage2D< T >, casacore::HDF5Image< T >, casacore::SubImage< T >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSQualityImage, casacore::FITSErrorImage, casacore::RebinImage< T >, and casacore::ExtendImage< T >.
|
virtual |
Is the lattice paged to disk?
The default implementation returns False.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casa::ComponentListImage, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::MIRIADImage, casacore::FITSImage, casacore::HDF5Image< T >, casacore::CurvedImage2D< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::SubImage< T >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::RebinImage< T >, casacore::ExtendImage< T >, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, and casacore::RebinLattice< T >.
|
virtual |
Is the lattice persistent and can it be loaded by other processes as well? That is the case for a PagedArray or PagedImage and for an ImageExpr which does not use transient lattices or regions.
The default implementation returns False.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casa::ComponentListImage, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::MIRIADImage, casacore::FITSImage, casacore::HDF5Image< T >, casacore::CurvedImage2D< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::FITSQualityImage, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::ImageConcat< T >, casacore::SubImage< T >, casacore::RebinImage< T >, casacore::ExtendImage< T >, and casacore::ExtendLattice< T >.
|
virtual |
Is the lattice writable?
The default implementation returns True.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::ImageConcat< T >, casa::ComponentListImage, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::MIRIADImage, casacore::ImageExpr< T >, casacore::FITSImage, casacore::ImageExpr< Bool >, casacore::LCMask, casacore::ArrayLattice< T >, casacore::ArrayLattice< Bool >, casacore::SubLattice< T >, casacore::HDF5Image< T >, casacore::LCPagedMask, casacore::SubLattice< casacore::Float >, casacore::LCRegion, casacore::CurvedImage2D< T >, casacore::TempLattice< T >, casacore::HDF5Lattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::HDF5Lattice< Bool >, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::FITSQualityImage, casacore::SubImage< T >, casacore::FITSMask, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::RebinImage< T >, casacore::ExtendImage< T >, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::LCHDF5Mask, casacore::FITSQualityMask, casacore::RebinLattice< T >, and casacore::LatticeRegion.
|
virtual |
Return the coordinates of the lattice.
The default implementation returns an 'empty' LELLattCoord object.
Reimplemented in casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::ImageInterface< T >, casacore::ImageInterface< Float >, casacore::ImageInterface< Double >, casacore::ImageInterface< float >, casacore::ImageInterface< casacore::Float >, casacore::ImageInterface< DComplex >, casacore::ImageInterface< Complex >, and casacore::ImageInterface< casacore::Complex >.
|
virtual |
It is strongly recommended to use class LatticeLocker to handle lattice locking.
It also contains a more detailed explanation of the locking process.
By default the functions do not do anything at all. lock() and hasLock return True, which is suitable for all non-paged lattices.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::RebinImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCLELMask.
|
virtual |
Maximum cache size - not necessarily all used.
In pixels. Default returns 0, which means that there is no maximum.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::LatticeRegion, casacore::LCMask, and casacore::LCPagedMask.
Return the name of the current Lattice object.
This will generally be a file name for lattices that have a persistent form. Any path before the actual file name can be optionally stripped off.
The default implementation returns an empty string.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casa::ComponentListImage, casacore::ImageConcat< T >, casacore::SubImage< T >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::MIRIADImage, casacore::FITSImage, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::CurvedImage2D< T >, casacore::ImageInterface< T >, casacore::ImageInterface< Float >, casacore::ImageInterface< Double >, casacore::ImageInterface< float >, casacore::ImageInterface< casacore::Float >, casacore::ImageInterface< DComplex >, casacore::ImageInterface< Complex >, casacore::ImageInterface< casacore::Complex >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::FITSQualityImage, casacore::ExtendLattice< T >, casacore::CurvedLattice2D< T >, casacore::HDF5Image< T >, casacore::RebinLattice< T >, casacore::RebinImage< T >, and casacore::ExtendImage< T >.
|
virtual |
Return the number of axes in this Lattice.
This includes all degenerate axes.
The default implementation returns shape().nelements().
Reimplemented in casacore::SubImage< T >, casacore::LCRegion, and casacore::LatticeRegion.
|
virtual |
Return the total number of elements in this Lattice.
The default implementation returns shape().product().
Reimplemented in casacore::SubImage< T >, and casacore::LatticeRegion.
Referenced by size().
Returns a recommended cursor shape for iterating through all the pixels in the Lattice.
The default implementation sets up a shape that completely fills as many axes as possible, but always at least the first axis. For example, given a 10x20x30 Lattice
The default argument is the result of advisedMaxPixels()
.
Definition at line 208 of file LatticeBase.h.
References doNiceCursorShape().
|
inline |
Definition at line 210 of file LatticeBase.h.
References advisedMaxPixels(), and doNiceCursorShape().
|
virtual |
Check class internals - used for debugging.
Should always return True
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::ImageInterface< T >, casacore::ImageInterface< Float >, casacore::ImageInterface< Double >, casacore::ImageInterface< float >, casacore::ImageInterface< casacore::Float >, casacore::ImageInterface< DComplex >, casacore::ImageInterface< Complex >, casacore::ImageInterface< casacore::Complex >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::ImageConcat< T >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::MIRIADImage, casacore::FITSImage, casa::ComponentListImage, casacore::SubImage< T >, casacore::ArrayLattice< T >, casacore::ArrayLattice< Bool >, casacore::CurvedImage2D< T >, casacore::FITSQualityImage, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ExtendLattice< T >, casacore::CurvedLattice2D< T >, casacore::LatticeRegion, casacore::HDF5Image< T >, casacore::RebinLattice< T >, casacore::RebinImage< T >, and casacore::ExtendImage< T >.
|
inlineprotected |
Definition at line 264 of file LatticeBase.h.
|
virtual |
Explicitly reopen the temporarily closed lattice.
By default the function does not do anything at all.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::MIRIADImage, casacore::FITSImage, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::FITSQualityImage, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::RebinImage< T >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCLELMask.
|
virtual |
Resynchronize the Lattice object with the lattice file.
This function is only useful if no read-locking is used, ie. if the table lock option is UserNoReadLocking or AutoNoReadLocking. In that cases the table system does not acquire a read-lock, thus does not synchronize itself automatically.
By default the function does not do anything at all.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::RebinImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCLELMask.
|
virtual |
Save the image in an AipsIO file with the given name.
Its purpose is to make ImageConcat and ImageExpr objects persistent.
The default implementation throws an exception.
Reimplemented in casacore::ImageConcat< T >, casacore::ImageExpr< T >, and casacore::ImageExpr< Bool >.
|
virtual |
Set the cache size as to "fit" the indicated path.
The default implementation does nothing.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::LatticeRegion, casacore::LCMask, and casacore::LCPagedMask.
|
virtual |
Set the actual cache size for this Array to be big enough for the indicated number of tiles.
This cache is not shared with PagedArrays in other rows and is always clipped to be less than the maximum value set using the setMaximumCacheSize member function. Tiles are cached using a first in first out algorithm.
The default implementation does nothing.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::LatticeRegion, casacore::LCMask, and casacore::LCPagedMask.
|
virtual |
Set the maximum (allowed) cache size as indicated.
The default implementation does nothing.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::LatticeRegion, casacore::LCMask, and casacore::LCPagedMask.
|
pure virtual |
Return the shape of the Lattice including all degenerate axes (ie.
axes with a length of one)
Implemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casa::ComponentListImage, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::MIRIADImage, casacore::FITSImage, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::ArrayLattice< T >, casacore::ArrayLattice< Bool >, casacore::CurvedImage2D< T >, casacore::SubImage< T >, casacore::FITSQualityImage, casacore::HDF5Lattice< T >, casacore::HDF5Lattice< Bool >, casacore::LCRegion, casacore::ExtendLattice< T >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::CurvedLattice2D< T >, casacore::HDF5Image< T >, casacore::LatticeRegion, casacore::RebinLattice< T >, casacore::FITSMask, casacore::RebinImage< T >, casacore::ExtendImage< T >, and casacore::FITSQualityMask.
Referenced by conform(), casa::ScrollingRasterDD::latticesShape(), casa::nPBWProjectFT::verifyAvgPB(), casa::AWProjectFT::verifyAvgPB(), and casa::refim::AWProjectFT::verifyAvgPB().
|
virtual |
Report on cache success.
The default implementation does nothing.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::FITSImage, casacore::MIRIADImage, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::FITSQualityImage, casacore::LatticeRegion, casacore::LCMask, and casacore::LCPagedMask.
|
inline |
Definition at line 177 of file LatticeBase.h.
References nelements().
|
virtual |
Temporarily close the lattice.
It will be reopened automatically on the next access.
By default the function does not do anything at all.
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::MIRIADImage, casacore::FITSImage, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::FITSQualityImage, casacore::TempImage< T >, casacore::TempImage< casacore::DComplex >, casacore::TempImage< casacore::Float >, casacore::TempImage< casacore::Complex >, casacore::RebinImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::TempLattice< T >, casacore::TempLattice< Float >, casacore::TempLattice< typename casacore::NumericTraits< T >::ConjugateType >, casacore::TempLattice< casacore::DComplex >, casacore::TempLattice< casacore::Float >, casacore::TempLattice< typename casacore::NumericTraits< casacore::Float >::ConjugateType >, casacore::TempLattice< Complex >, casacore::TempLattice< casacore::Complex >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCLELMask.
|
protected |
Throw an exception for arithmetic on a Bool Lattice.
|
virtual |
Reimplemented in casacore::PagedArray< T >, casacore::PagedArray< casacore::Float >, casacore::PagedArray< Bool >, casacore::PagedImage< T >, casacore::PagedImage< casacore::Float >, casacore::SubImage< T >, casacore::CurvedImage2D< T >, casacore::ImageExpr< T >, casacore::ImageExpr< Bool >, casacore::ImageConcat< T >, casacore::SubLattice< T >, casacore::SubLattice< casacore::Float >, casacore::LatticeExpr< T >, casacore::LatticeExpr< Bool >, casacore::RebinImage< T >, casacore::LatticeConcat< T >, casacore::LatticeConcat< casacore::Float >, casacore::ExtendImage< T >, casacore::LCMask, casacore::LCPagedMask, casacore::CurvedLattice2D< T >, casacore::ExtendLattice< T >, casacore::RebinLattice< T >, casacore::LatticeRegion, and casacore::LCLELMask.