Go to the documentation of this file.
28 #ifndef LATTICES_LATTICEEXPR_H
29 #define LATTICES_LATTICEEXPR_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/lattices/Lattices/MaskedLattice.h>
35 #include <casacore/lattices/LEL/LatticeExprNode.h>
36 #include <casacore/lattices/LRegions/LatticeRegion.h>
37 #include <casacore/casa/Arrays/Slicer.h>
42 template <
class T>
class Array;
252 #ifndef CASACORE_NO_AUTO_TEMPLATES
253 #include <casacore/lattices/LEL/LatticeExpr.tcc>
254 #endif //# CASACORE_NO_AUTO_TEMPLATES
Specify which elements to extract from an n-dimensional array.
LatticeExpr(const LatticeExprNode &expr, const IPosition &latticeShape)
virtual IPosition doNiceCursorShape(uInt maxPixels) const
Return the best cursor shape.
A Vector of integers, for indexing into Array<T> objects.
virtual void handleMathTo(Lattice< T > &to, int oper) const
Handle the Math operators (+=, -=, *=, /=).
virtual void copyDataTo(Lattice< T > &to) const
Copy the data from this lattice to the given lattice.
A templated, abstract base class for array-like objects with masks.
virtual Bool hasLock(FileLocker::LockType) const
Class to allow C++ expressions involving lattices.
LockType
Define the possible lock types.
virtual MaskedLattice< T > * cloneML() const
Make a copy of the derived object (reference semantics).
virtual Bool isWritable() const
Returns False, as the LatticeExpr lattice is not writable.
This LEL class holds an array with a mask.
virtual Bool lock(FileLocker::LockType, uInt nattempts)
Handle locking of the LatticeExpr which is delegated to all of its parts.
An optionally strided region in a Lattice.
virtual LELCoordinates lelCoordinates() const
Returns the coordinates of the lattice expression.
virtual IPosition shape() const
Returns the shape of the Lattice including all degenerate axes (i.e.
LatticeExpr(const LatticeExprNode &expr)
Constructor from an arbitrary LatticeExprNode expression object.
LatticeExpr< T > & operator=(const LatticeExpr< T > &other)
Assignment (reference semantics)
virtual Bool doGetSlice(Array< T > &buffer, const Slicer §ion)
Do the actual get of the data.
virtual Bool isMasked() const
Has the object really a mask?
void init(const LatticeExprNode &expr)
Initialize the object from the expression.
LatticeExpr(const LatticeExpr< T > &other)
Copy constructor (reference semantics)
virtual Bool doGetMaskSlice(Array< Bool > &buffer, const Slicer §ion)
Do the actual get of the mask data.
virtual void doPutSlice(const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
An expression is not writable so this functions throws an exception.
this file contains all the compiler specific defines
Envelope class to handle Lattice Coordinates in LEL.
Bridging class to allow C++ expressions involving lattices.
LELArray< T > * lastChunkPtr_p
virtual const LatticeRegion * getRegionPtr() const
Get the region used (always returns 0).
A templated, abstract base class for array-like objects.
template <class T, class U> class vector;
LatticeExpr()
Default constructor.
virtual ~LatticeExpr()
Destructor, does nothing.
bool Bool
Define the standard types used by Casacore.
virtual void resync()
Resynchronize the Lattice object with the lattice file.