casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Private Attributes
casa::WCCompound Class Reference

Base class for compound WCRegion objects. More...

#include <WCCompound.h>

Inheritance diagram for casa::WCCompound:
casa::WCRegion casa::WCComplement casa::WCConcatenation casa::WCDifference casa::WCExtension casa::WCIntersection casa::WCUnion

List of all members.

Public Member Functions

 WCCompound (const ImageRegion &region1, const ImageRegion &region2)
 Construct from one or more image regions.
 WCCompound (const ImageRegion *region1, const ImageRegion *region2=0, const ImageRegion *region3=0, const ImageRegion *region4=0, const ImageRegion *region5=0, const ImageRegion *region6=0, const ImageRegion *region7=0, const ImageRegion *region8=0, const ImageRegion *region9=0, const ImageRegion *region10=0)
 WCCompound (const PtrBlock< const ImageRegion * > &regions)
 WCCompound (Bool takeOver, const PtrBlock< const WCRegion * > &regions)
 Construct from multiple regions given as a Block.
 WCCompound (const WCCompound &other)
 Copy constructor (copy semantics).
virtual ~WCCompound ()
virtual Bool operator== (const WCRegion &other) const
 Comparison.
const PtrBlock< const WCRegion * > & regions () const
 Get the contributing regions.

Protected Member Functions

WCCompoundoperator= (const WCCompound &other)
 Assignment (copy semantics) makes only sense for a derived class.
void multiToLCRegion (PtrBlock< const LCRegion * > &regions, const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &extendAxes) const
 Convert each WCRegion to an LCRegion.
TableRecord makeRecord (const String &tableName) const
 Store the contributing regions in a record.

Static Protected Member Functions

static void unmakeRecord (PtrBlock< const WCRegion * > &, const TableRecord &, const String &tableName)
 Retrieve the contributing objects from the record.

Private Member Functions

void makeWCRegion (const PtrBlock< const ImageRegion * > &)
 Check if the ImageRegion's contain WCRegion's and extract them.
void init (Bool takeOver)
 Check if the regions are correct.

Private Attributes

PtrBlock< const WCRegion * > itsRegions
Block< IPositionitsAxesUsed

Detailed Description

Base class for compound WCRegion objects.

Intended use:

Internal

Prerequisite

Synopsis

WCCompound is the base class for world coordinate regions. It defines the functionality simply as conversion to an LCRegion. This is because you need an LCRegion to be able to access the pixels in a Lattice.

The conversion functions should be flexible in that the supplied CoordinateSystem does not have to be the same as that with which the derived class was constructed. This means that you can apply a WCCompound from one image to another, provided that operation has some meaning.

Example

Definition at line 83 of file WCCompound.h.


Constructor & Destructor Documentation

casa::WCCompound::WCCompound ( const ImageRegion region1,
const ImageRegion region2 
)

Construct from one or more image regions.

The image regions have to contain WCRegion objects, otherwise an exception is thrown.

casa::WCCompound::WCCompound ( const ImageRegion region1,
const ImageRegion region2 = 0,
const ImageRegion region3 = 0,
const ImageRegion region4 = 0,
const ImageRegion region5 = 0,
const ImageRegion region6 = 0,
const ImageRegion region7 = 0,
const ImageRegion region8 = 0,
const ImageRegion region9 = 0,
const ImageRegion region10 = 0 
)
casa::WCCompound::WCCompound ( const PtrBlock< const ImageRegion * > &  regions)
casa::WCCompound::WCCompound ( Bool  takeOver,
const PtrBlock< const WCRegion * > &  regions 
)

Construct from multiple regions given as a Block.

When takeOver is True, the destructor will delete the given regions. Otherwise a copy of the regions is made.

Copy constructor (copy semantics).

virtual casa::WCCompound::~WCCompound ( ) [virtual]

Member Function Documentation

void casa::WCCompound::init ( Bool  takeOver) [private]

Check if the regions are correct.

If needed, make a copy of the region objects.

TableRecord casa::WCCompound::makeRecord ( const String tableName) const [protected]

Store the contributing regions in a record.

void casa::WCCompound::makeWCRegion ( const PtrBlock< const ImageRegion * > &  ) [private]

Check if the ImageRegion's contain WCRegion's and extract them.

void casa::WCCompound::multiToLCRegion ( PtrBlock< const LCRegion * > &  regions,
const CoordinateSystem cSys,
const IPosition shape,
const IPosition pixelAxesMap,
const IPosition extendAxes 
) const [protected]

Convert each WCRegion to an LCRegion.

The axes argument tells which axes to use from the coordinate system and shape.

WCCompound& casa::WCCompound::operator= ( const WCCompound other) [protected]

Assignment (copy semantics) makes only sense for a derived class.

virtual Bool casa::WCCompound::operator== ( const WCRegion other) const [virtual]
const PtrBlock< const WCRegion * > & casa::WCCompound::regions ( ) const [inline]

Get the contributing regions.

Definition at line 155 of file WCCompound.h.

References itsRegions.

static void casa::WCCompound::unmakeRecord ( PtrBlock< const WCRegion * > &  ,
const TableRecord ,
const String tableName 
) [static, protected]

Retrieve the contributing objects from the record.


Member Data Documentation

Definition at line 151 of file WCCompound.h.

Definition at line 150 of file WCCompound.h.

Referenced by regions().


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