Go to the documentation of this file.
28 #ifndef LATTICES_HDF5LATTICE_H
29 #define LATTICES_HDF5LATTICE_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/lattices/Lattices/Lattice.h>
34 #include <casacore/lattices/Lattices/TiledShape.h>
35 #include <casacore/casa/HDF5/HDF5File.h>
36 #include <casacore/casa/HDF5/HDF5Group.h>
37 #include <casacore/casa/HDF5/HDF5DataSet.h>
38 #include <casacore/casa/BasicSL/String.h>
275 #ifndef CASACORE_NO_AUTO_TEMPLATES
276 #include <casacore/lattices/Lattices/HDF5Lattice.tcc>
277 #endif //# CASACORE_NO_AUTO_TEMPLATES
Specify which elements to extract from an n-dimensional array.
A Vector of integers, for indexing into Array<T> objects.
virtual LatticeIterInterface< T > * makeIter(const LatticeNavigator &navigator, Bool useRef) const
This function is used by the LatticeIterator class to generate an iterator of the correct type for a ...
HDF5Lattice(const CountedPtr< HDF5File > &file, const String &arrayName, const String &groupName=String())
Reconstruct from a pre-existing HDF5Lattice in the HDF5 file and group with the given name.
void checkWritable() const
Check if the file is writable.
virtual void flush()
Flush the data (but do not unlock).
virtual Bool ok() const
A function which checks for internal consistency.
const CountedPtr< HDF5Group > & group() const
Return the current HDF5Group object.
HDF5Lattice()
The default constructor creates an HDF5Lattice that is useless for just about everything,...
HDF5Lattice(const TiledShape &shape)
Construct a temporary HDF5Lattice with the specified shape.
HDF5Lattice(const HDF5Lattice< T > &other)
The copy constructor which uses reference semantics.
Referenced counted pointer for constant data.
A Lattice that is read from or written to an HDF5 dataset.
void openArray(const String &arrayName, const String &groupName)
Open the Array in the HDF5 file and group.
virtual uInt advisedMaxPixels() const
Returns the maximum recommended number of pixels for a cursor.
~HDF5Lattice()
The destructor flushes the HDF5Lattice's contents to disk.
virtual T getAt(const IPosition &where) const
Return the value of the single element located at the argument IPosition.
virtual void setCacheSizeInTiles(uInt howManyTiles)
Set the actual cache size for this Array to be big enough for the indicated number of tiles.
CountedPtr< HDF5File > itsFile
HDF5Lattice(const String &fileName, const String &arrayName="array", const String &groupName=String())
Reconstruct from a pre-existing HDF5Lattice in the HDF5 file and group with the given names.
virtual IPosition doNiceCursorShape(uInt maxPixels) const
Get the best cursor shape.
LatticeExprNode value(const LatticeExprNode &expr)
This function returns the value of the expression without a mask.
void makeArray(const TiledShape &shape, const String &arrayName, const String &groupName)
Make the Array in the HDF5 file and group.
Abstract base class to steer lattice iterators.
virtual Bool isWritable() const
Is the HDF5Lattice writable?
const CountedPtr< HDF5DataSet > & array() const
Returns the current HDF5DataSet object.
IPosition tileShape() const
Returns the current tile shape for this HDF5Lattice.
HDF5Lattice(const TiledShape &shape, const CountedPtr< HDF5File > &file, const String &arrayName, const String &groupName=String())
Construct a new HDF5Lattice, with the specified shape, in the given HDF5 file.
this file contains all the compiler specific defines
HDF5Lattice(const TiledShape &shape, const String &filename, const String &arrayName="array", const String &groupName=String())
Construct a new HDF5Lattice with the specified shape.
virtual void setCacheSizeFromPath(const IPosition &sliceShape, const IPosition &windowStart, const IPosition &windowLength, const IPosition &axisPath)
Set the cache size as to "fit" the indicated access pattern.
virtual String name(Bool stripPath=False) const
Return the current HDF5 file name.
CountedPtr< HDF5Group > itsGroup
virtual IPosition shape() const
Returns the shape of the HDF5Lattice.
virtual void doPutSlice(const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
Do the actual getting of an array of values.
A templated, abstract base class for array-like objects.
virtual void putAt(const T &value, const IPosition &where)
Put the value of a single element.
template <class T, class U> class vector;
String: the storage and methods of handling collections of characters.
virtual Bool isPersistent() const
A HDF5Lattice is always persistent.
virtual Bool doGetSlice(Array< T > &buffer, const Slicer §ion)
Do the actual getting of an array of values.
bool Bool
Define the standard types used by Casacore.
const CountedPtr< HDF5File > & file() const
Return the current HDF5File object.
HDF5Lattice< T > & operator=(const HDF5Lattice< T > &other)
The assignment operator with reference semantics.
virtual Lattice< T > * clone() const
Make a copy of the object (reference semantics).
virtual Bool isPaged() const
A HDF5Lattice is always paged to disk.
CountedPtr< HDF5DataSet > itsDataSet
Define the shape and tile shape.
A base class for Lattice iterators.
const String & arrayName() const
Returns the name of this HDF5Lattice.