casacore
Public Member Functions | Private Member Functions | Private Attributes | List of all members
casacore::ImageConcat< T > Class Template Reference

More...

#include <ImageConcat.h>

Public Member Functions

 ImageConcat (uInt axis, Bool tempClose=True, Bool combineMiscInfo=True)
 Constructor. More...
 
 ImageConcat (const JsonKVMap &, const String &fileName)
 Construct the object from a Json file with the given name. More...
 
 ImageConcat ()
 Default constructor, Sets the concatenation axis to 0. More...
 
 ImageConcat (const ImageConcat< T > &other)
 Copy constructor (reference semantics) More...
 
virtual ~ImageConcat ()
 Destructor. More...
 
ImageConcat< T > & operator= (const ImageConcat< T > &other)
 Assignment operator (reference semantics) More...
 
virtual ImageInterface< T > * cloneII () const
 Make a copy of the object (reference semantics). More...
 
virtual void save (const String &fileName) const
 Save the image in file 'image.concat' in a directory with the given name. More...
 
virtual Bool setMiscInfo (const RecordInterface &newInfo)
 Replace the miscinfo in the ConcatImage, which writes the image.concat file. More...
 
virtual Bool setImageInfo (const ImageInfo &info)
 Set the ImageInfo in the super class ImageInterface and in each underlying image. More...
 
virtual String imageType () const
 Get the image type (returns name of derived class). More...
 
virtual Bool isPersistent () const
 Is the lattice persistent and can it be loaded by other processes as well? More...
 
void setImage (ImageInterface< T > &image, Bool relax)
 Sets a new image into the list to be concatenated. More...
 
void setLattice (MaskedLattice< T > &lattice)
 Add a clone of the lattice to the list to be concatenated. More...
 
uInt nimages () const
 Return the number of images/lattices set so far. More...
 
uInt axis () const
 Returns the current concatenation axis (0 relative) More...
 
uInt imageDim () const
 Returns the number of dimensions of the input images/lattices Returns 0 if none yet set. More...
 
ImageInterface< T > & image (uInt i) const
 Return a reference to the i-th image. 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 ()
 Resynchronize the Lattice object with the lattice file. More...
 
virtual void flush ()
 Flush the data (but do not unlock). More...
 
virtual void tempClose ()
 Temporarily close the lattice. More...
 
virtual void reopen ()
 Explicitly reopen the temporarily closed lattice. More...
 
virtual String name (Bool stripPath=False) const
 Return the name of the current ImageInterface object. More...
 
virtual Bool isMasked () const
 Has the object really a mask? More...
 
virtual Bool hasPixelMask () const
 Does the image have a pixelmask? More...
 
virtual const Lattice< Bool > & pixelMask () const
 Get access to the pixelmask. More...
 
virtual Lattice< Bool > & pixelMask ()
 
virtual const LatticeRegiongetRegionPtr () 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 IPosition shape () const
 Return the shape of the concatenated image. More...
 
virtual IPosition doNiceCursorShape (uInt maxPixels) const
 Return the best cursor shape. More...
 
virtual Bool doGetSlice (Array< T > &buffer, const Slicer &section)
 Do the actual get of the data. More...
 
virtual Bool doGetMaskSlice (Array< Bool > &buffer, const Slicer &section)
 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...
 
virtual void resize (const TiledShape &)
 Throws an excpetion as you cannot reshape an ImageConcat object. More...
 
virtual Bool ok () const
 Check class invariants. More...
 
virtual LatticeIterInterface< T > * makeIter (const LatticeNavigator &navigator, Bool useRef) const
 These are the implementations of the LatticeIterator letters. More...
 
- Public Member Functions inherited from casacore::ImageInterface< T >
 ImageInterface ()
 
 ImageInterface (const RegionHandler &regionHandler)
 Construct for a specific region handler object. More...
 
 ImageInterface (const ImageInterface &other)
 Copy constructor (copy semantics). More...
 
virtual ~ImageInterface ()
 
virtual MaskedLattice< T > * cloneML () const
 Make a copy of the derived object (reference semantics). More...
 
virtual Bool setUnits (const Unit &newUnits)
 Function which get and set the units associated with the image pixels (i.e. More...
 
virtual const Unitunits () const
 
virtual Bool setCoordinateInfo (const CoordinateSystem &coords)
 Functions to set or replace the coordinate information in the Image Returns False on failure, e.g. More...
 
const CoordinateSystemcoordinates () const
 
virtual LELCoordinates lelCoordinates () const
 Function to get a LELCoordinate object containing the coordinates. More...
 
LoggerHolderlogger ()
 Get access to the LoggerHolder. More...
 
const LoggerHolderlogger () const
 
LogIOlogSink ()
 Allow messages to be logged to this ImageInterface. More...
 
const LogIOlogSink () const
 
void appendLog (const LoggerHolder &other)
 Add the messages from the other image logger to this one. More...
 
const TableRecordmiscInfo () const
 Often we have miscellaneous information we want to attach to an image. More...
 
const ImageInfoimageInfo () const
 The ImageInfo object contains some miscellaneous information about the image which unlike that stored in MiscInfo, has a standard list of things, such as the restoring beam. More...
 
ImageInforwImageInfo ()
 Get non-const access to the ImageInfo. More...
 
virtual ImageAttrHandlerattrHandler (Bool createHandler=False)
 Get access to the attribute handler. More...
 
ImageAttrHandlerroAttrHandler () const
 
Bool canDefineRegion () const
 Can the image handle region definition? More...
 
virtual ImageRegion makeMask (const String &name, Bool defineAsRegion=True, Bool setAsDefaultMask=True, Bool initialize=False, Bool value=True)
 Make a mask which is suitable for the type of image. More...
 
virtual void defineRegion (const String &name, const ImageRegion &region, RegionHandler::GroupType, Bool overwrite=False)
 Define a region/mask belonging to the image. More...
 
virtual Bool hasRegion (const String &regionName, RegionHandler::GroupType=RegionHandler::Any) const
 Does the image have a region with the given name? More...
 
virtual ImageRegiongetImageRegionPtr (const String &name, RegionHandler::GroupType=RegionHandler::Any, Bool throwIfUnknown=True) const
 Get a region/mask belonging to the image from the given group (which can be Any). More...
 
virtual void renameRegion (const String &newName, const String &oldName, RegionHandler::GroupType=RegionHandler::Any, Bool overwrite=False)
 Rename a region. More...
 
virtual void removeRegion (const String &name, RegionHandler::GroupType=RegionHandler::Any, Bool throwIfUnknown=True)
 Remove a region/mask belonging to the image from the given group (which can be Any). More...
 
virtual Vector< StringregionNames (RegionHandler::GroupType=RegionHandler::Any) const
 Get the names of all regions/masks. More...
 
virtual void useMask (MaskSpecifier=MaskSpecifier())
 Use the mask as specified. More...
 
virtual void setDefaultMask (const String &regionName)
 Set the default pixelmask to the mask with the given name (which has to exist in the "masks" group). More...
 
virtual String getDefaultMask () const
 Get the name of the default pixelmask. More...
 
ImageRegion getRegion (const String &regionName, RegionHandler::GroupType=RegionHandler::Any) const
 Get a region belonging to the image. More...
 
String makeUniqueRegionName (const String &rootName, uInt startNumber=1) const
 Make a unique region name from the given root name, thus make it such that the name is not already in use for a region or mask. More...
 
Bool toRecord (String &error, RecordInterface &outRec)
 Save and restore an ImageInterface object to or from a state Record. More...
 
Bool fromRecord (String &error, const RecordInterface &inRec)
 
- Public Member Functions inherited from casacore::MaskedLattice< T >
 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
 Make a copy of the derived object (reference semantics). More...
 
const LatticeRegionregion () 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 &section, 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 &section, 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< BoolgetMask (Bool removeDegenerateAxes=False) const
 
Array< BoolgetMaskSlice (const Slicer &section, Bool removeDegenerateAxes=False) const
 
Array< BoolgetMaskSlice (const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False) const
 
Array< BoolgetMaskSlice (const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False) const
 
- Public Member Functions inherited from casacore::Lattice< T >
virtual ~Lattice ()
 a virtual destructor is needed so that it will use the actual destructor in the derived class More...
 
virtual DataType dataType () const
 Get the data type of the lattice. More...
 
operator() (const IPosition &where) const
 Return the value of the single element located at the argument IPosition. More...
 
virtual T getAt (const IPosition &where) const
 
virtual void putAt (const T &value, const IPosition &where)
 Put the value of a single element. More...
 
Bool get (COWPtr< Array< T > > &buffer, Bool removeDegenerateAxes=False) const
 Functions which extract an Array of values from a Lattice. More...
 
Bool getSlice (COWPtr< Array< T > > &buffer, const Slicer &section, Bool removeDegenerateAxes=False) const
 
Bool getSlice (COWPtr< Array< T > > &buffer, const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False) const
 
Bool getSlice (COWPtr< Array< T > > &buffer, const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False) const
 
Bool get (Array< T > &buffer, Bool removeDegenerateAxes=False)
 
Bool getSlice (Array< T > &buffer, const Slicer &section, Bool removeDegenerateAxes=False)
 
Bool getSlice (Array< T > &buffer, const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False)
 
Bool getSlice (Array< T > &buffer, const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False)
 
Array< T > get (Bool removeDegenerateAxes=False) const
 
Array< T > getSlice (const Slicer &section, Bool removeDegenerateAxes=False) const
 
Array< T > getSlice (const IPosition &start, const IPosition &shape, Bool removeDegenerateAxes=False) const
 
Array< T > getSlice (const IPosition &start, const IPosition &shape, const IPosition &stride, Bool removeDegenerateAxes=False) const
 
void putSlice (const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
 A function which places an Array of values within this instance of the Lattice at the location specified by the IPosition "where", incrementing by "stride". More...
 
void putSlice (const Array< T > &sourceBuffer, const IPosition &where)
 
void put (const Array< T > &sourceBuffer)
 
virtual void set (const T &value)
 Set all elements in the Lattice to the given value. More...
 
virtual void apply (T(*function)(T))
 Replace every element, x, of the Lattice with the result of f(x). More...
 
virtual void apply (T(*function)(const T &))
 
virtual void apply (const Functional< T, T > &function)
 
void operator+= (const Lattice< T > &other)
 Add, subtract, multiple, or divide by another Lattice. More...
 
void operator-= (const Lattice< T > &other)
 
void operator*= (const Lattice< T > &other)
 
void operator/= (const Lattice< T > &other)
 
virtual void copyData (const Lattice< T > &from)
 Copy the data from the given lattice to this one. More...
 
virtual void copyDataTo (Lattice< T > &to) const
 Copy the data from this lattice to the given lattice. More...
 
virtual uInt advisedMaxPixels () const
 This function returns the advised maximum number of pixels to include in the cursor of an iterator. More...
 
- Public Member Functions inherited from casacore::LatticeBase
virtual ~LatticeBase ()
 A virtual destructor is needed so that it will use the actual destructor in the derived class. More...
 
virtual Bool isPaged () const
 Is the lattice paged to disk?
The default implementation returns False. More...
 
virtual Bool canReferenceArray () const
 Can the lattice data be referenced as an array section? That is the case for an ArrayLattice or a Temp/SubLattice using it. More...
 
virtual uInt ndim () const
 Return the number of axes in this Lattice. More...
 
virtual size_t nelements () const
 Return the total number of elements in this Lattice. More...
 
size_t size () const
 
Bool conform (const LatticeBase &other) const
 Return a value of "True" if this instance of Lattice and 'other' have the same shape, otherwise returns a value of "False". More...
 
IPosition niceCursorShape (uInt maxPixels) const
 Returns a recommended cursor shape for iterating through all the pixels in the Lattice. More...
 
IPosition niceCursorShape () const
 
virtual uInt maximumCacheSize () const
 Maximum cache size - not necessarily all used. More...
 
virtual void setMaximumCacheSize (uInt howManyPixels)
 Set the maximum (allowed) cache size as indicated. More...
 
virtual void setCacheSizeInTiles (uInt howManyTiles)
 Set the actual cache size for this Array to be big enough for the indicated number of tiles. More...
 
virtual void setCacheSizeFromPath (const IPosition &sliceShape, const IPosition &windowStart, const IPosition &windowLength, const IPosition &axisPath)
 Set the cache size as to "fit" the indicated path. More...
 
virtual void clearCache ()
 Clears and frees up the caches, but the maximum allowed cache size is unchanged from when setCacheSize was called. More...
 
virtual void showCacheStatistics (ostream &os) const
 Report on cache success. More...
 

Private Member Functions

Double coordConvert (Int &worldAxis, LogIO &os, const CoordinateSystem &cSys, uInt axis, Double pixelCoord) const
 
void _checkContiguous (const IPosition &shape1, const CoordinateSystem &cSys1, const CoordinateSystem &cSys2, LogIO &os, uInt axis, Bool relax)
 
void checkNonConcatAxisCoordinates (LogIO &os, const ImageInterface< T > &image, Bool relax)
 
Vector< IntmakeNewStokes (const Vector< Int > &stokes1, const Vector< Int > &stokes2)
 
void setCoordinates ()
 Updates the CoordinateSystem in the ImageConcat image. More...
 
void _updatePixelAndWorldValues (uInt iIm)
 

Private Attributes

LatticeConcat< T > latticeConcat_p
 
Bool combineMiscInfo_p
 
Bool warnAxisNames_p
 
Bool warnAxisUnits_p
 
Bool warnImageUnits_p
 
Bool warnContig_p
 
Bool warnRefPix_p
 
Bool warnRefVal_p
 
Bool warnInc_p
 
Bool warnTab_p
 
Bool isContig_p
 
String fileName_p
 
Vector< BoolisImage_p
 
Vector< DoublepixelValues_p
 
Vector< DoubleworldValues_p
 
Coordinate::Type originalAxisType_p
 

Additional Inherited Members

- Protected Member Functions inherited from casacore::ImageInterface< T >
ImageInterfaceoperator= (const ImageInterface &other)
 Assignment (copy semantics) is only useful for derived classes. More...
 
Bool restoreImageInfo (const RecordInterface &rec)
 Restore the image info from the record. More...
 
void setLogMember (const LoggerHolder &logger)
 Set the image logger variable. More...
 
void setImageInfoMember (const ImageInfo &imageInfo)
 Set the image info variable. More...
 
void setCoordsMember (const CoordinateSystem &coords)
 Set the coordinate system variable. More...
 
void setUnitMember (const Unit &unit)
 Set the unit variable. More...
 
void setMiscInfoMember (const RecordInterface &rec)
 Set the miscinfo variable. More...
 
RegionHandlergetRegionHandler ()
 Get access to the region handler. More...
 
- Protected Member Functions inherited from casacore::MaskedLattice< T >
MaskedLattice< T > & operator= (const MaskedLattice< T > &)
 Assignment can only be used by derived classes. More...
 
- Protected Member Functions inherited from casacore::Lattice< T >
 Lattice ()
 Define default constructor to satisfy compiler. More...
 
virtual void handleMath (const Lattice< T > &from, int oper)
 Handle the Math operators (+=, -=, *=, /=). More...
 
virtual void handleMathTo (Lattice< T > &to, int oper) const
 
 Lattice (const Lattice< T > &)
 Copy constructor and assignment can only be used by derived classes. More...
 
Lattice< T > & operator= (const Lattice< T > &)
 
void handleMathTo (Lattice< Bool > &, int) const
 
- Protected Member Functions inherited from casacore::LatticeBase
 LatticeBase ()
 Define default constructor to be used by derived classes. More...
 
 LatticeBase (const LatticeBase &)
 Copy constructor and assignment can only be used by derived classes. More...
 
LatticeBaseoperator= (const LatticeBase &)
 
void throwBoolMath () const
 Throw an exception for arithmetic on a Bool Lattice. More...
 

Detailed Description

template<class T>
class casacore::ImageConcat< T >

Concatenates images along a specified axis

Intended use:

Public interface

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

This is a class designed to concatenate images along a specified axis

Synopsis

This is a class designed to concatenate images along a specified axis. This means you can join them together. E.g., join images of shape [10,20,30] and [10,20,40] into a lattice of shape [10,20,70].

The ImageConcat object does not copy the input images, it just references them. You can use the Lattice<T>::copyData(Lattice<T>) function to fill an output image with the concatenated input images

If you use the putSlice function, be aware that it will change the underlying images if they are writable.

You can also concatenate a lattice to an image.

Example

IPosition shape(2, 10, 20);
PagedImage<Float> im1(shape, CoordinateUtil::defaultCoords2D(),
"tImageConcat_tmp1.img");
im1.set(1.0);
PagedImage<Float> im2(shape, CoordinateUtil::defaultCoords2D(),
"tImageConcat_tmp2.img");
im2.set(2.0);
// Make concatenator for axis 0
ImageConcat<Float> concat(0);
// Relax coordinate constraints
concat.setImage(im1, True);
concat.setImage(im2, True);
// Make output image and mask (if required, which it will be in this case)
PagedImage<Float> im3(concat.shape(), CoordinateUtil::defaultCoords2D(),
"tImageConcat_tmp3.img");
// Copy to output
im3.copyData(concat);
static CoordinateSystem defaultCoords2D()
Return a 2-dimensional coordinate system with RA/DEC axes only.
virtual IPosition shape() const
Return the shape of the concatenated image.
const Bool True
Definition: aipstype.h:43

See tImageConcat.cc for more examples.

Motivation

Image concatentation is a useful enduser requirement.

To Do

Definition at line 126 of file ImageConcat.h.

Constructor & Destructor Documentation

◆ ImageConcat() [1/4]

template<class T >
casacore::ImageConcat< T >::ImageConcat ( uInt  axis,
Bool  tempClose = True,
Bool  combineMiscInfo = True 
)
explicit

Constructor.

Specify the pixel axis for concatenation

◆ ImageConcat() [2/4]

template<class T >
casacore::ImageConcat< T >::ImageConcat ( const JsonKVMap ,
const String fileName 
)

Construct the object from a Json file with the given name.

This constructor is usually called by ImageOpener::openImageConcat.

◆ ImageConcat() [3/4]

template<class T >
casacore::ImageConcat< T >::ImageConcat ( )

Default constructor, Sets the concatenation axis to 0.

◆ ImageConcat() [4/4]

template<class T >
casacore::ImageConcat< T >::ImageConcat ( const ImageConcat< T > &  other)

Copy constructor (reference semantics)

◆ ~ImageConcat()

template<class T >
virtual casacore::ImageConcat< T >::~ImageConcat ( )
virtual

Destructor.

Member Function Documentation

◆ _checkContiguous()

template<class T >
void casacore::ImageConcat< T >::_checkContiguous ( const IPosition shape1,
const CoordinateSystem cSys1,
const CoordinateSystem cSys2,
LogIO os,
uInt  axis,
Bool  relax 
)
private

◆ _updatePixelAndWorldValues()

template<class T >
void casacore::ImageConcat< T >::_updatePixelAndWorldValues ( uInt  iIm)
private

◆ axis()

template<class T >
uInt casacore::ImageConcat< T >::axis ( ) const
inline

Returns the current concatenation axis (0 relative)

Definition at line 192 of file ImageConcat.h.

References casacore::ImageConcat< T >::latticeConcat_p.

◆ checkNonConcatAxisCoordinates()

template<class T >
void casacore::ImageConcat< T >::checkNonConcatAxisCoordinates ( LogIO os,
const ImageInterface< T > &  image,
Bool  relax 
)
private

◆ cloneII()

template<class T >
virtual ImageInterface<T>* casacore::ImageConcat< T >::cloneII ( ) const
virtual

Make a copy of the object (reference semantics).

Implements casacore::ImageInterface< T >.

◆ coordConvert()

template<class T >
Double casacore::ImageConcat< T >::coordConvert ( Int worldAxis,
LogIO os,
const CoordinateSystem cSys,
uInt  axis,
Double  pixelCoord 
) const
private

◆ doGetMaskSlice()

template<class T >
virtual Bool casacore::ImageConcat< T >::doGetMaskSlice ( Array< Bool > &  buffer,
const Slicer section 
)
virtual

Do the actual get of the mask data.

The return value is always False, thus the buffer does not reference another array. Generally the user should use function getMaskSlice

Reimplemented from casacore::MaskedLattice< T >.

◆ doGetSlice()

template<class T >
virtual Bool casacore::ImageConcat< T >::doGetSlice ( Array< T > &  buffer,
const Slicer section 
)
virtual

Do the actual get of the data.

The return value is always False, thus the buffer does not reference another array. Generally the user should use function getSlice

Implements casacore::Lattice< T >.

◆ doNiceCursorShape()

template<class T >
virtual IPosition casacore::ImageConcat< T >::doNiceCursorShape ( uInt  maxPixels) const
virtual

Return the best cursor shape.

It will try to return the best cusrsor of the smallest constituent image along the non-direction axes (in order to minimize bouncing from one image to another while iterating which may involve lots of open and tempclose).

Reimplemented from casacore::LatticeBase.

◆ doPutSlice()

template<class T >
virtual void casacore::ImageConcat< T >::doPutSlice ( const Array< T > &  sourceBuffer,
const IPosition where,
const IPosition stride 
)
virtual

Do the actual put of the data into the Lattice.

This will change the underlying images (if they are writable) that were used to create the ImageConcat object. It throws an exception if not writable. Generally the user should use function putSlice

Implements casacore::Lattice< T >.

◆ flush()

template<class T >
virtual void casacore::ImageConcat< T >::flush ( )
virtual

Flush the data (but do not unlock).


By default the function does not do anything at all.

Reimplemented from casacore::LatticeBase.

◆ getRegionPtr()

template<class T >
virtual const LatticeRegion* casacore::ImageConcat< T >::getRegionPtr ( ) const
virtual

Get the region used (always returns 0)

Implements casacore::MaskedLattice< T >.

◆ hasLock()

template<class T >
virtual Bool casacore::ImageConcat< T >::hasLock ( FileLocker::LockType  ) const
virtual

Reimplemented from casacore::LatticeBase.

◆ hasPixelMask()

template<class T >
virtual Bool casacore::ImageConcat< T >::hasPixelMask ( ) const
virtual

Does the image have a pixelmask?

Reimplemented from casacore::MaskedLattice< T >.

◆ image()

template<class T >
ImageInterface<T>& casacore::ImageConcat< T >::image ( uInt  i) const
inline

Return a reference to the i-th image.

Definition at line 201 of file ImageConcat.h.

References casacore::ImageConcat< T >::latticeConcat_p.

◆ imageDim()

template<class T >
uInt casacore::ImageConcat< T >::imageDim ( ) const
inline

Returns the number of dimensions of the input images/lattices Returns 0 if none yet set.


Definition at line 197 of file ImageConcat.h.

References casacore::ImageConcat< T >::latticeConcat_p.

◆ imageType()

template<class T >
virtual String casacore::ImageConcat< T >::imageType ( ) const
virtual

Get the image type (returns name of derived class).

Implements casacore::ImageInterface< T >.

◆ isMasked()

template<class T >
virtual Bool casacore::ImageConcat< T >::isMasked ( ) const
virtual

Has the object really a mask?

Reimplemented from casacore::MaskedLattice< T >.

◆ isPersistent()

template<class T >
virtual Bool casacore::ImageConcat< T >::isPersistent ( ) const
virtual

Is the lattice persistent and can it be loaded by other processes as well?

Reimplemented from casacore::LatticeBase.

◆ isWritable()

template<class T >
virtual Bool casacore::ImageConcat< T >::isWritable ( ) const
virtual

If all of the underlying lattices are writable returns True.

Reimplemented from casacore::LatticeBase.

◆ lock()

template<class T >
virtual Bool casacore::ImageConcat< T >::lock ( FileLocker::LockType  ,
uInt  nattempts 
)
virtual

Handle the (un)locking and syncing, etc.

Reimplemented from casacore::LatticeBase.

◆ makeIter()

template<class T >
virtual LatticeIterInterface<T>* casacore::ImageConcat< T >::makeIter ( const LatticeNavigator navigator,
Bool  useRef 
) const
virtual

These are the implementations of the LatticeIterator letters.


Note: not for public use

Reimplemented from casacore::Lattice< T >.

◆ makeNewStokes()

template<class T >
Vector<Int> casacore::ImageConcat< T >::makeNewStokes ( const Vector< Int > &  stokes1,
const Vector< Int > &  stokes2 
)
private

◆ name()

template<class T >
virtual String casacore::ImageConcat< T >::name ( Bool  stripPath = False) const
virtual

Return the name of the current ImageInterface object.

If the object is persistent, it returns its file name. Otherwise it returns the string "Concatenation :"

Implements casacore::ImageInterface< T >.

◆ nimages()

template<class T >
uInt casacore::ImageConcat< T >::nimages ( ) const
inline

Return the number of images/lattices set so far.

Definition at line 188 of file ImageConcat.h.

References casacore::ImageConcat< T >::latticeConcat_p.

◆ ok()

template<class T >
virtual Bool casacore::ImageConcat< T >::ok ( ) const
virtual

Check class invariants.

Implements casacore::ImageInterface< T >.

◆ operator=()

template<class T >
ImageConcat<T>& casacore::ImageConcat< T >::operator= ( const ImageConcat< T > &  other)

Assignment operator (reference semantics)

◆ pixelMask() [1/2]

template<class T >
virtual Lattice<Bool>& casacore::ImageConcat< T >::pixelMask ( )
virtual

Reimplemented from casacore::MaskedLattice< T >.

◆ pixelMask() [2/2]

template<class T >
virtual const Lattice<Bool>& casacore::ImageConcat< T >::pixelMask ( ) const
virtual

Get access to the pixelmask.

An exception is thrown if the image does not have a pixelmask

Reimplemented from casacore::MaskedLattice< T >.

◆ reopen()

template<class T >
virtual void casacore::ImageConcat< T >::reopen ( )
virtual

Explicitly reopen the temporarily closed lattice.


By default the function does not do anything at all.

Reimplemented from casacore::LatticeBase.

◆ resize()

template<class T >
virtual void casacore::ImageConcat< T >::resize ( const TiledShape )
virtual

Throws an excpetion as you cannot reshape an ImageConcat object.

Implements casacore::ImageInterface< T >.

◆ resync()

template<class T >
virtual void casacore::ImageConcat< T >::resync ( )
virtual

Resynchronize the Lattice object with the lattice file.

This function is only useful if no read-locking is used, ie. if the table lock option is UserNoReadLocking or AutoNoReadLocking. In that cases the table system does not acquire a read-lock, thus does not synchronize itself automatically.
By default the function does not do anything at all.

Reimplemented from casacore::LatticeBase.

◆ save()

template<class T >
virtual void casacore::ImageConcat< T >::save ( const String fileName) const
virtual

Save the image in file 'image.concat' in a directory with the given name.

An exception is thrown if such a directory or file already exists. It can be opened by ImageOpener::openImage(Concat).

Reimplemented from casacore::LatticeBase.

◆ setCoordinates()

template<class T >
void casacore::ImageConcat< T >::setCoordinates ( )
private

Updates the CoordinateSystem in the ImageConcat image.

The first lattice must be an image. The first lattice is contiguous by definition. The Coordinate System for the first image must be set before calling this function. For the first image, this function just sets up worldValues and pixelValues

◆ setImage()

template<class T >
void casacore::ImageConcat< T >::setImage ( ImageInterface< T > &  image,
Bool  relax 
)

Sets a new image into the list to be concatenated.


If relax is False, throws an exception if the images are not contiguous along the concatenation axis. If relax is True, it will create a non-regular TabularCoordinate for non-contiguous images if the coordinates are monotonic. Otherwise, it just uses the coordinates of the image

◆ setImageInfo()

template<class T >
virtual Bool casacore::ImageConcat< T >::setImageInfo ( const ImageInfo info)
virtual

Set the ImageInfo in the super class ImageInterface and in each underlying image.

If needed, its restoring beam is split along the frequency or polarisation axis and set in each underlying image.

Reimplemented from casacore::ImageInterface< T >.

◆ setLattice()

template<class T >
void casacore::ImageConcat< T >::setLattice ( MaskedLattice< T > &  lattice)

Add a clone of the lattice to the list to be concatenated.


You can only concatenate a lattice with an image if you have first used setImage to set an image (this provides the CooridinateSystem information)

◆ setMiscInfo()

template<class T >
virtual Bool casacore::ImageConcat< T >::setMiscInfo ( const RecordInterface newInfo)
virtual

Replace the miscinfo in the ConcatImage, which writes the image.concat file.

It can fail if, e.g., the directory to write to is not writable.

Reimplemented from casacore::ImageInterface< T >.

◆ shape()

template<class T >
virtual IPosition casacore::ImageConcat< T >::shape ( ) const
virtual

Return the shape of the concatenated image.

Implements casacore::LatticeBase.

◆ tempClose()

template<class T >
virtual void casacore::ImageConcat< T >::tempClose ( )
virtual

Temporarily close the lattice.

It will be reopened automatically on the next access.
By default the function does not do anything at all.

Reimplemented from casacore::LatticeBase.

◆ unlock()

template<class T >
virtual void casacore::ImageConcat< T >::unlock ( )
virtual

Reimplemented from casacore::LatticeBase.

Member Data Documentation

◆ combineMiscInfo_p

template<class T >
Bool casacore::ImageConcat< T >::combineMiscInfo_p
private

Definition at line 282 of file ImageConcat.h.

◆ fileName_p

template<class T >
String casacore::ImageConcat< T >::fileName_p
mutableprivate

Definition at line 286 of file ImageConcat.h.

◆ isContig_p

template<class T >
Bool casacore::ImageConcat< T >::isContig_p
private

Definition at line 285 of file ImageConcat.h.

◆ isImage_p

template<class T >
Vector<Bool> casacore::ImageConcat< T >::isImage_p
private

Definition at line 287 of file ImageConcat.h.

◆ latticeConcat_p

template<class T >
LatticeConcat<T> casacore::ImageConcat< T >::latticeConcat_p
private

◆ originalAxisType_p

template<class T >
Coordinate::Type casacore::ImageConcat< T >::originalAxisType_p
private

Definition at line 290 of file ImageConcat.h.

◆ pixelValues_p

template<class T >
Vector<Double> casacore::ImageConcat< T >::pixelValues_p
private

Definition at line 288 of file ImageConcat.h.

◆ warnAxisNames_p

template<class T >
Bool casacore::ImageConcat< T >::warnAxisNames_p
private

Definition at line 283 of file ImageConcat.h.

◆ warnAxisUnits_p

template<class T >
Bool casacore::ImageConcat< T >::warnAxisUnits_p
private

Definition at line 283 of file ImageConcat.h.

◆ warnContig_p

template<class T >
Bool casacore::ImageConcat< T >::warnContig_p
private

Definition at line 284 of file ImageConcat.h.

◆ warnImageUnits_p

template<class T >
Bool casacore::ImageConcat< T >::warnImageUnits_p
private

Definition at line 283 of file ImageConcat.h.

◆ warnInc_p

template<class T >
Bool casacore::ImageConcat< T >::warnInc_p
private

Definition at line 284 of file ImageConcat.h.

◆ warnRefPix_p

template<class T >
Bool casacore::ImageConcat< T >::warnRefPix_p
private

Definition at line 284 of file ImageConcat.h.

◆ warnRefVal_p

template<class T >
Bool casacore::ImageConcat< T >::warnRefVal_p
private

Definition at line 284 of file ImageConcat.h.

◆ warnTab_p

template<class T >
Bool casacore::ImageConcat< T >::warnTab_p
private

Definition at line 284 of file ImageConcat.h.

◆ worldValues_p

template<class T >
Vector<Double> casacore::ImageConcat< T >::worldValues_p
private

Definition at line 289 of file ImageConcat.h.


The documentation for this class was generated from the following file: