|
| LatticeConcat (uInt axis, Bool tempClose=True) |
| Constructor. More...
|
|
| LatticeConcat () |
| Default constructor. More...
|
|
| LatticeConcat (const LatticeConcat< T > &other) |
| Copy constructor (reference semantics) More...
|
|
virtual | ~LatticeConcat () |
| Destructor. More...
|
|
LatticeConcat< T > & | operator= (const LatticeConcat< T > &other) |
| Assignment operator (reference semantics) More...
|
|
void | setLattice (MaskedLattice< T > &lattice) |
| Adds a clone of the lattice to the list to be concatenated. More...
|
|
uInt | nlattices () const |
| Return the number of lattices set so far. More...
|
|
uInt | axis () const |
| Returns the current concatenation axis (0 relative) More...
|
|
void | setTempClose (Bool tmpClose) |
| Set the tempClose state. More...
|
|
Bool | isTempClose () const |
| Returns the tempClose constructor state. More...
|
|
uInt | latticeDim () const |
| Returns the number of dimensions of the input lattices (may be different by one from output lattice). More...
|
|
MaskedLattice< T > * | lattice (uInt i) const |
| Return pointer for specified lattice. More...
|
|
virtual Bool | lock (FileLocker::LockType, uInt nattempts) |
| Handle the (un)locking and syncing, etc. More...
|
|
virtual void | unlock () |
|
virtual Bool | hasLock (FileLocker::LockType) const |
|
virtual void | resync () |
|
virtual void | flush () |
|
virtual void | tempClose () |
|
virtual void | reopen () |
|
void | tempClose (uInt which) |
| Close/reopen a specific lattice. More...
|
|
void | reopen (uInt which) |
|
virtual String | name (Bool stripPath=False) const |
| Name. More...
|
|
virtual LatticeConcat< T > * | cloneML () const |
| Make a copy of the derived object (reference semantics). More...
|
|
virtual Bool | isMasked () const |
| Has the object really a mask? More...
|
|
virtual const LatticeRegion * | getRegionPtr () const |
| Get the region used (always returns 0). More...
|
|
virtual Bool | isWritable () const |
| If all of the underlying lattices are writable returns True. More...
|
|
virtual Bool | hasPixelMask () const |
| Does the lattice have a pixelmask? More...
|
|
virtual const Lattice< Bool > & | pixelMask () const |
| Get access to the pixelmask. More...
|
|
virtual Lattice< Bool > & | pixelMask () |
|
virtual IPosition | shape () const |
| Find the shape that the concatenated lattice will be. More...
|
|
virtual IPosition | doNiceCursorShape (uInt maxPixels) const |
| Return the best cursor shape. More...
|
|
virtual Bool | doGetSlice (Array< T > &buffer, const Slicer §ion) |
| Do the actual get of the data. More...
|
|
virtual Bool | doGetMaskSlice (Array< Bool > &buffer, const Slicer §ion) |
| Do the actual get of the mask data. More...
|
|
virtual void | doPutSlice (const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride) |
| Do the actual put of the data into the Lattice. More...
|
|
| MaskedLattice () |
| Default constructor. More...
|
|
| MaskedLattice (const MaskedLattice< T > &) |
| Copy constructor. More...
|
|
virtual | ~MaskedLattice () |
| a virtual destructor is needed so that it will use the actual destructor in the derived class More...
|
|
virtual Lattice< T > * | clone () const |
|
const LatticeRegion & | region () const |
| Get the region used. More...
|
|
Bool | getMask (COWPtr< Array< Bool > > &buffer, Bool removeDegenerateAxes=False) const |
| Get the mask or a slice from the mask. More...
|
|
Bool | getMaskSlice (COWPtr< Array< Bool > > &buffer, const Slicer §ion, Bool removeDegenerateAxes=False) const |
|
Bool | getMaskSlice (COWPtr< Array< Bool > > &buffer, const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False) const |
|
Bool | getMaskSlice (COWPtr< Array< Bool > > &buffer, const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False) const |
|
Bool | getMask (Array< Bool > &buffer, Bool removeDegenerateAxes=False) |
|
Bool | getMaskSlice (Array< Bool > &buffer, const Slicer §ion, Bool removeDegenerateAxes=False) |
|
Bool | getMaskSlice (Array< Bool > &buffer, const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False) |
|
Bool | getMaskSlice (Array< Bool > &buffer, const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False) |
|
Array< Bool > | getMask (Bool removeDegenerateAxes=False) const |
|
Array< Bool > | getMaskSlice (const Slicer §ion, Bool removeDegenerateAxes=False) const |
|
Array< Bool > | getMaskSlice (const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False) const |
|
Array< Bool > | getMaskSlice (const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False) const |
|
|
void | checkAxis (uInt axis, uInt ndim) const |
|
void | setup1 (IPosition &blc, IPosition &trc, IPosition &stride, IPosition &blc2, IPosition &trc2, IPosition &blc3, IPosition &trc3, IPosition &stride3, const Slicer §ion) |
|
Slicer | setup2 (Bool &first, IPosition &blc2, IPosition &trc2, Int shape2, Int axis, const IPosition &blc, const IPosition &trc, const IPosition &stride, Int start) |
|
Bool | getSlice1 (Array< T > &buffer, const Slicer §ion, uInt nLattices) |
|
Bool | getSlice2 (Array< T > &buffer, const Slicer §ion, uInt nLattices) |
|
Bool | putSlice1 (const Array< T > &buffer, const IPosition &where, const IPosition &stride, uInt nLattices) |
|
Bool | putSlice2 (const Array< T > &buffer, const IPosition &where, const IPosition &stride, uInt nLattices) |
|
Bool | getMaskSlice1 (Array< Bool > &buffer, const Slicer §ion, uInt nLattices) |
|
Bool | getMaskSlice2 (Array< Bool > &buffer, const Slicer §ion, uInt nLattices) |
|
template<class T>
class casacore::LatticeConcat< T >
Concatenates lattices along a specified axis.
Intended use:
Public interface
Review Status
- Date Reviewed:
- yyyy/mm/dd
Prerequisite
Etymology
This is a class designed to concatenate lattices along a specified axis
Synopsis
This is a class designed to concatenate lattices along a specified axis. This means you can join them together. E.g., join lattices of shape [10,20,30] and [10,20,40] into a lattice of shape [10,20,70].
In addition, you can increase the dimensionality and join lattices [10,20] and [10,20] to [10,20,2]. This is done by specifying the concatenation axis to be higher than currently exists in the input lattices
The LatticeConcat object does not copy the input lattices, it just references them. You can use the Lattice<T>::copyData(Lattice<T>) function to fill an output lattice with the concatenated input lattices.
If you use the putSlice function, be aware that it will change the underlying lattices if they are writable.
Example
ArrayLattice<Float> al1(a1); al1.set(1.0);
ArrayLattice<Float> al2(a2); al2.set(10.0);
SubLattice<Float> ml1(al1,
True);
SubLattice<Float> ml2(al2,
True);
LatticeConcat<Float> lc (1);
lc.setLattice(ml1);
lc.setLattice(ml2);
ArrayLattice<Float> al3(lc.shape());
SubLattice<Float> ml3(al3,
True);
ml3.copyData(lc);
In this example no masks are involved. See tLatticeConcat for more examples.
Motivation
Image concatentation is a useful enduser requirement. An object of this class is contained by an ImageConcat object.
Definition at line 124 of file LatticeConcat.h.