28 #ifndef LATTICES_LATTICECONCAT_H
29 #define LATTICES_LATTICECONCAT_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/lattices/Lattices/MaskedLattice.h>
35 #include <casacore/casa/Containers/Block.h>
289 #ifndef CASACORE_NO_AUTO_TEMPLATES
290 #include <casacore/lattices/Lattices/LatticeConcat.tcc>
LockType
Define the possible lock types.
virtual uInt ndim() const
Return the number of axes in this Lattice.
Bool isTempClose() const
Returns the tempClose constructor state.
virtual void tempClose()
Temporarily close the lattice.
MaskedLattice< T > * lattice(uInt i) const
Return pointer for specified lattice.
LatticeConcat()
Default constructor.
LatticeConcat< T > & operator=(const LatticeConcat< T > &other)
Assignment operator (reference semantics)
Bool getMaskSlice1(Array< Bool > &buffer, const Slicer §ion, uInt nLattices)
Slicer setup2(Bool &first, IPosition &blc2, IPosition &trc2, Int shape2, Int axis, const IPosition &blc, const IPosition &trc, const IPosition &stride, Int start)
virtual IPosition shape() const
Find the shape that the concatenated lattice will be.
Bool getSlice2(Array< T > &buffer, const Slicer §ion, uInt nLattices)
virtual LatticeConcat< T > * cloneML() const
Make a copy of the derived object (reference semantics).
virtual ~LatticeConcat()
Destructor.
virtual Bool lock(FileLocker::LockType, uInt nattempts)
Handle the (un)locking and syncing, etc.
virtual void resync()
Resynchronize the Lattice object with the lattice file.
void setup1(IPosition &blc, IPosition &trc, IPosition &stride, IPosition &blc2, IPosition &trc2, IPosition &blc3, IPosition &trc3, IPosition &stride3, const Slicer §ion)
virtual void reopen()
Explicitly reopen the temporarily closed lattice.
void setTempClose(Bool tmpClose)
Set the tempClose state.
uInt nlattices() const
Return the number of lattices set so far.
virtual void flush()
Flush the data (but do not unlock).
uInt latticeDim() const
Returns the number of dimensions of the input lattices (may be different by one from output lattice).
virtual Bool doGetSlice(Array< T > &buffer, const Slicer §ion)
Do the actual get of the data.
void setLattice(MaskedLattice< T > &lattice)
Adds a clone of the lattice to the list to be concatenated.
virtual Bool hasPixelMask() const
Does the lattice have a pixelmask?
LatticeConcat(uInt axis, Bool tempClose=True)
Constructor.
LatticeConcat(const LatticeConcat< T > &other)
Copy constructor (reference semantics)
virtual Bool hasLock(FileLocker::LockType) const
Bool putSlice2(const Array< T > &buffer, const IPosition &where, const IPosition &stride, uInt nLattices)
virtual void doPutSlice(const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
Do the actual put of the data into the Lattice.
virtual String name(Bool stripPath=False) const
Name.
virtual Bool doGetMaskSlice(Array< Bool > &buffer, const Slicer §ion)
Do the actual get of the mask data.
void checkAxis(uInt axis, uInt ndim) const
virtual IPosition doNiceCursorShape(uInt maxPixels) const
Return the best cursor shape.
uInt axis() const
Returns the current concatenation axis (0 relative)
virtual Lattice< Bool > & pixelMask()
Bool getSlice1(Array< T > &buffer, const Slicer §ion, uInt nLattices)
Bool getMaskSlice2(Array< Bool > &buffer, const Slicer §ion, uInt nLattices)
virtual const Lattice< Bool > & pixelMask() const
Get access to the pixelmask.
LatticeConcat< Bool > * pPixelMask_p
PtrBlock< MaskedLattice< T > * > lattices_p
virtual Bool isWritable() const
If all of the underlying lattices are writable returns True.
virtual const LatticeRegion * getRegionPtr() const
Get the region used (always returns 0).
void tempClose(uInt which)
Close/reopen a specific lattice.
Bool putSlice1(const Array< T > &buffer, const IPosition &where, const IPosition &stride, uInt nLattices)
virtual Bool isMasked() const
Has the object really a mask?
A drop-in replacement for Block<T*>.
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.