casacore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
casacore::SubImage< T > Class Template Reference

A (masked) subset of an ImageInterface object. More...

#include <SubImage.h>

Inheritance diagram for casacore::SubImage< T >:
casacore::ImageInterface< T > casacore::MaskedLattice< T > casacore::Lattice< T > casacore::LatticeBase

Public Member Functions

 SubImage ()
 The default constructor. More...
 
 SubImage (const ImageInterface< T > &image, AxesSpecifier=AxesSpecifier(), Bool preserveAxesOrder=False)
 Create a SubImage from a Image. More...
 
 SubImage (ImageInterface< T > &image, Bool writableIfPossible, AxesSpecifier=AxesSpecifier(), Bool preserveAxesOrder=False)
 
 SubImage (const ImageInterface< T > &image, const LattRegionHolder &region, AxesSpecifier=AxesSpecifier(), Bool preserveAxesOrder=False)
 Create a SubImage from the given Image and region. More...
 
 SubImage (ImageInterface< T > &image, const LattRegionHolder &region, Bool writableIfPossible, AxesSpecifier=AxesSpecifier(), Bool preserveAxesOrder=False)
 
 SubImage (const ImageInterface< T > &image, const Slicer &slicer, AxesSpecifier=AxesSpecifier(), Bool preserveAxesOrder=False)
 Create a SubImage from the given Image and slicer. More...
 
 SubImage (ImageInterface< T > &image, const Slicer &slicer, Bool writableIfPossible, AxesSpecifier=AxesSpecifier(), Bool preserveAxesOrder=False)
 
 SubImage (const SubImage< T > &other)
 Copy constructor (reference semantics). More...
 
virtual ~SubImage ()
 
SubImage< T > & operator= (const SubImage< T > &other)
 Assignment (reference semantics). More...
 
virtual ImageInterface< T > * cloneII () const
 Make a copy of the object (reference semantics). More...
 
virtual String imageType () const
 Get the image type (returns name of derived class). More...
 
virtual Bool isMasked () const
 Is the SubImage masked? It is if its parent image or its region is masked. More...
 
virtual Bool hasPixelMask () const
 Does the image object have a pixelmask? It does if its parent has a pixelmask. More...
 
virtual const Lattice< Bool > & pixelMask () const
 Get access to the pixelmask in use (thus to the pixelmask of the parent). More...
 
virtual Lattice< Bool > & pixelMask ()
 
virtual Bool isPersistent () const
 A SubImage is persistent if no region is applied to the parent image. More...
 
virtual Bool isPaged () const
 Is the SubImage paged to disk? More...
 
virtual Bool canReferenceArray () const
 Can the lattice data be referenced as an array section? More...
 
virtual Bool isWritable () const
 Is the SubImage writable? More...
 
virtual const LatticeRegiongetRegionPtr () const
 Get the region/mask object describing this subImage. More...
 
virtual IPosition shape () const
 Returns the shape of the SubImage including all degenerate axes (i.e. More...
 
virtual uInt ndim () const
 Returns the number of axes in this SubImage. More...
 
virtual size_t nelements () const
 Returns the total number of elements in this SubImage. More...
 
virtual Bool conform (const Lattice< T > &other) const
 returns a value of "True" if this instance of Lattice and 'other' have the same shape, otherwise returns a value of "False". More...
 
virtual uInt advisedMaxPixels () const
 This function returns the recommended maximum number of pixels to include in the cursor of an iterator. More...
 
virtual ImageAttrHandlerattrHandler (Bool createHandler=False)
 Get access to the attribute handler (of the parent image). More...
 
virtual T getAt (const IPosition &where) const
 Get or put a single element in the lattice. More...
 
virtual void putAt (const T &value, const IPosition &where)
 Put the value of a single element. More...
 
virtual void resize (const TiledShape &newShape)
 Function which changes the shape of the SubImage. More...
 
virtual String name (Bool stripPath=False) const
 Return the name of the parent ImageInterface object. More...
 
virtual Bool ok () const
 Check class invariants. More...
 
virtual Bool doGetSlice (Array< T > &buffer, const Slicer &section)
 Do the actual getting of an array of values. More...
 
virtual void doPutSlice (const Array< T > &sourceBuffer, const IPosition &where, const IPosition &stride)
 Do the actual getting of an array of values. More...
 
virtual Bool doGetMaskSlice (Array< Bool > &buffer, const Slicer &section)
 Get a section of the mask. More...
 
virtual LatticeIterInterface< T > * makeIter (const LatticeNavigator &navigator, Bool useRef) const
 This function is used by the LatticeIterator class to generate an iterator of the correct type for this Lattice. More...
 
virtual IPosition doNiceCursorShape (uInt maxPixels) const
 Get the best cursor shape. 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...
 
- 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...
 
virtual Bool setMiscInfo (const RecordInterface &newInfo)
 
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 Bool setImageInfo (const ImageInfo &info)
 
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...
 
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...
 
- 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 void save (const String &fileName) const
 Save the image in an AipsIO file with the given name. 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

void setCoords (const CoordinateSystem &coords, Bool preserveAxesOrder)
 Set the coordinates. More...
 
void setCoords (const CoordinateSystem &coords)
 
void setMembers ()
 Set the other members to the one in itsImagePtr. More...
 
void setMembers (const Slicer &slicer)
 Set the members to the subset (in particular, the beamset). More...
 
void convertIPosition (Vector< Float > &x, const IPosition &pos) const
 Helper. More...
 

Private Attributes

ImageInterface< T > * itsImagePtr
 
SubLattice< T > * itsSubLatPtr
 

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 > &)
 
template<>
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::SubImage< T >

A (masked) subset of an ImageInterface object.

Intended use:

Public interface

Review Status

Test programs:
tSubImage

Prerequisite

Synopsis

Class SubImage has to be used to apply a region or mask to an image. Several functions are inherited from SubLattice and not declared in this class.

Using an AxesSpecifier object it is possible to remove some or all degenerate axes (i.e. axes with length 1) to get an image with a lower dimensionality.

Example

Motivation

Definition at line 86 of file SubImage.h.

Constructor & Destructor Documentation

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

The default constructor.

template<class T>
casacore::SubImage< T >::SubImage ( const ImageInterface< T > &  image,
AxesSpecifier  = AxesSpecifier(),
Bool  preserveAxesOrder = False 
)

Create a SubImage from a Image.

This results in a SubImage without a real mask.
The "const Image" version yields a non-writable SubImage, while for the non-const version one has to specify if the SubImage should be writable (if the original image is non-writable, the SubImage is always set to non-writable).
If preserveAxesOrder is True, the axes order will be preserved. This is only important in cases where pixel axes are to be dropped, if not the axes order will be preserved. If False and pixel axes are dropped, the order of the coordinates will be preserved, but not necessarily the axes.

template<class T>
casacore::SubImage< T >::SubImage ( ImageInterface< T > &  image,
Bool  writableIfPossible,
AxesSpecifier  = AxesSpecifier(),
Bool  preserveAxesOrder = False 
)
template<class T>
casacore::SubImage< T >::SubImage ( const ImageInterface< T > &  image,
const LattRegionHolder region,
AxesSpecifier  = AxesSpecifier(),
Bool  preserveAxesOrder = False 
)

Create a SubImage from the given Image and region.


An exception is thrown if the image shape used in the region differs from the shape of the image.

template<class T>
casacore::SubImage< T >::SubImage ( ImageInterface< T > &  image,
const LattRegionHolder region,
Bool  writableIfPossible,
AxesSpecifier  = AxesSpecifier(),
Bool  preserveAxesOrder = False 
)
template<class T>
casacore::SubImage< T >::SubImage ( const ImageInterface< T > &  image,
const Slicer slicer,
AxesSpecifier  = AxesSpecifier(),
Bool  preserveAxesOrder = False 
)

Create a SubImage from the given Image and slicer.

The slicer can be strided.
An exception is thrown if the slicer exceeds the image shape.

template<class T>
casacore::SubImage< T >::SubImage ( ImageInterface< T > &  image,
const Slicer slicer,
Bool  writableIfPossible,
AxesSpecifier  = AxesSpecifier(),
Bool  preserveAxesOrder = False 
)
template<class T>
casacore::SubImage< T >::SubImage ( const SubImage< T > &  other)

Copy constructor (reference semantics).

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

Member Function Documentation

template<class T>
virtual uInt casacore::SubImage< T >::advisedMaxPixels ( ) const
virtual

This function returns the recommended maximum number of pixels to include in the cursor of an iterator.

Reimplemented from casacore::Lattice< T >.

template<class T>
virtual ImageAttrHandler& casacore::SubImage< T >::attrHandler ( Bool  createHandler = False)
virtual

Get access to the attribute handler (of the parent image).

If a handler keyword does not exist yet, it is created if createHandler is set. Otherwise the handler is empty and no groups can be created for it.

Reimplemented from casacore::ImageInterface< T >.

template<class T>
virtual Bool casacore::SubImage< T >::canReferenceArray ( ) const
virtual

Can the lattice data be referenced as an array section?

Reimplemented from casacore::LatticeBase.

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

Make a copy of the object (reference semantics).

Implements casacore::ImageInterface< T >.

template<class T>
virtual Bool casacore::SubImage< T >::conform ( const Lattice< T > &  other) const
virtual

returns a value of "True" if this instance of Lattice and 'other' have the same shape, otherwise returns a value of "False".

template<class T>
void casacore::SubImage< T >::convertIPosition ( Vector< Float > &  x,
const IPosition pos 
) const
private

Helper.

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

Get a section of the mask.

Reimplemented from casacore::MaskedLattice< T >.

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

Do the actual getting of an array of values.

Implements casacore::Lattice< T >.

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

Get the best cursor shape.

Reimplemented from casacore::LatticeBase.

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

Do the actual getting of an array of values.

Implements casacore::Lattice< T >.

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

Flush the data (but do not unlock).


By default the function does not do anything at all.

Reimplemented from casacore::LatticeBase.

template<class T>
virtual T casacore::SubImage< T >::getAt ( const IPosition where) const
virtual

Get or put a single element in the lattice.

Reimplemented from casacore::Lattice< T >.

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

Get the region/mask object describing this subImage.

Implements casacore::MaskedLattice< T >.

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

Reimplemented from casacore::LatticeBase.

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

Does the image object have a pixelmask? It does if its parent has a pixelmask.

Reimplemented from casacore::MaskedLattice< T >.

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

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

Implements casacore::ImageInterface< T >.

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

Is the SubImage masked? It is if its parent image or its region is masked.

Reimplemented from casacore::MaskedLattice< T >.

template<class T>
virtual Bool casacore::SubImage< T >::isPaged ( ) const
virtual

Is the SubImage paged to disk?

Reimplemented from casacore::LatticeBase.

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

A SubImage is persistent if no region is applied to the parent image.

That is true if the region has the same shape as the parent image and the region has no mask.

Reimplemented from casacore::LatticeBase.

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

Is the SubImage writable?

Reimplemented from casacore::LatticeBase.

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

Handle the (un)locking and syncing, etc.

Reimplemented from casacore::LatticeBase.

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

This function is used by the LatticeIterator class to generate an iterator of the correct type for this Lattice.

Not recommended for general use.

Reimplemented from casacore::Lattice< T >.

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

Return the name of the parent ImageInterface object.

Implements casacore::ImageInterface< T >.

template<class T>
virtual uInt casacore::SubImage< T >::ndim ( ) const
virtual

Returns the number of axes in this SubImage.

This includes all degenerate axes.

Reimplemented from casacore::LatticeBase.

template<class T>
virtual size_t casacore::SubImage< T >::nelements ( ) const
virtual

Returns the total number of elements in this SubImage.

Reimplemented from casacore::LatticeBase.

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

Check class invariants.

Implements casacore::ImageInterface< T >.

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

Assignment (reference semantics).

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

Get access to the pixelmask in use (thus to the pixelmask of the parent).

An exception is thrown if the parent does not have a pixelmask.

Reimplemented from casacore::MaskedLattice< T >.

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

Reimplemented from casacore::MaskedLattice< T >.

template<class T>
virtual void casacore::SubImage< T >::putAt ( const T &  value,
const IPosition where 
)
virtual

Put the value of a single element.


The default implementation uses putSlice.

Reimplemented from casacore::Lattice< T >.

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

Explicitly reopen the temporarily closed lattice.


By default the function does not do anything at all.

Reimplemented from casacore::LatticeBase.

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

Function which changes the shape of the SubImage.

Throws an exception as resizing a SubImage is not possible.

Implements casacore::ImageInterface< T >.

template<class T>
virtual void casacore::SubImage< 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.

template<class T>
void casacore::SubImage< T >::setCoords ( const CoordinateSystem coords,
Bool  preserveAxesOrder 
)
private

Set the coordinates.

It removes world axes if the subimage has axes removed.
If preserveAxesOrder is True and axes are dropped, it will preserve the order of the axes as well as the order of the coordinates.

template<class T>
void casacore::SubImage< T >::setCoords ( const CoordinateSystem coords)
private
template<class T>
void casacore::SubImage< T >::setMembers ( )
private

Set the other members to the one in itsImagePtr.

template<class T>
void casacore::SubImage< T >::setMembers ( const Slicer slicer)
private

Set the members to the subset (in particular, the beamset).

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

Returns the shape of the SubImage including all degenerate axes (i.e.

axes with a length of one).

Implements casacore::LatticeBase.

template<class T>
virtual void casacore::SubImage< 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.

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

Reimplemented from casacore::LatticeBase.

Member Data Documentation

template<class T>
ImageInterface<T>* casacore::SubImage< T >::itsImagePtr
private

Definition at line 272 of file SubImage.h.

template<class T>
SubLattice<T>* casacore::SubImage< T >::itsSubLatPtr
private

Definition at line 273 of file SubImage.h.


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