26#ifndef LATTICES_LATTICEEXPR_H
27#define LATTICES_LATTICEEXPR_H
31#include <casacore/casa/aips.h>
32#include <casacore/lattices/Lattices/MaskedLattice.h>
33#include <casacore/lattices/LEL/LatticeExprNode.h>
34#include <casacore/lattices/LRegions/LatticeRegion.h>
35#include <casacore/casa/Arrays/Slicer.h>
36#include <casacore/casa/Arrays/ArrayFwd.h>
41template <
class T>
class LELArray;
250#ifndef CASACORE_NO_AUTO_TEMPLATES
251#include <casacore/lattices/LEL/LatticeExpr.tcc>
LockType
Define the possible lock types.
virtual void resync()
Resynchronize the Lattice object with the lattice file.
virtual void doPutSlice(const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
An expression is not writable so this functions throws an exception.
virtual MaskedLattice< T > * cloneML() const
Make a copy of the derived object (reference semantics).
virtual IPosition doNiceCursorShape(uInt maxPixels) const
Return the best cursor shape.
virtual Bool doGetMaskSlice(Array< Bool > &buffer, const Slicer §ion)
Do the actual get of the mask data.
virtual Bool doGetSlice(Array< T > &buffer, const Slicer §ion)
Do the actual get of the data.
virtual void copyDataTo(Lattice< T > &to) const
Copy the data from this lattice to the given lattice.
LELArray< T > * lastChunkPtr_p
virtual ~LatticeExpr()
Destructor, does nothing.
virtual Bool isWritable() const
Returns False, as the LatticeExpr lattice is not writable.
LatticeExpr(const LatticeExpr< T > &other)
Copy constructor (reference semantics)
LatticeExpr(const LatticeExprNode &expr)
Constructor from an arbitrary LatticeExprNode expression object.
virtual LELCoordinates lelCoordinates() const
Returns the coordinates of the lattice expression.
LatticeExpr(const LatticeExprNode &expr, const IPosition &latticeShape)
LatticeExpr< T > & operator=(const LatticeExpr< T > &other)
Assignment (reference semantics)
virtual Bool hasLock(FileLocker::LockType) const
virtual Bool isMasked() const
Has the object really a mask?
virtual IPosition shape() const
Returns the shape of the Lattice including all degenerate axes (i.e.
void init(const LatticeExprNode &expr)
Initialize the object from the expression.
virtual void handleMathTo(Lattice< T > &to, int oper) const
Handle the Math operators (+=, -=, *=, /=).
virtual Bool lock(FileLocker::LockType, uInt nattempts)
Handle locking of the LatticeExpr which is delegated to all of its parts.
LatticeExpr()
Default constructor.
virtual const LatticeRegion * getRegionPtr() const
Get the region used (always returns 0).
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.