Loading...
Searching...
No Matches
casacore::WCCompound Class Reference
images package (libcasa_images) » Regions_module » Regions_module_internal_classes

More...

`#include <WCCompound.h>`

## 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 Block< const ImageRegion * > &regions)
| WCCompound (Bool takeOver, const Block< 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 Block< const WCRegion * > & | regions () const
| Get the contributing regions.
Public Member Functions inherited from casacore::WCRegion
| WCRegion ()
| WCRegion (const WCRegion &other)
| Copy constructor (copy semantics).
virtual | ~WCRegion ()
| Destructor.
Bool | operator!= (const WCRegion &other) const
virtual WCRegion * | cloneRegion () const =0
| Clone a WCRegion object.
virtual String | type () const =0
| Return region type.
virtual uInt | ndim () const
| Get the dimensionality (i.e.
const Record & | getAxesDesc () const
| Get the description of all axes.
const Record & | getAxisDesc (uInt axis) const
| Get the description of the given axis.
Int | axisNr (const Record &desc, const Record &axesDesc) const
| Return the axis number of the description of an axis in the full axes description.
Bool | isAxisDescEqual (const Record &desc1, const Record &desc2) const
| Are both axis descriptions equal?
virtual Bool | canExtend () const
| Can the region extend itself?
const String & | comment () const
| Get or set the comment.
void | setComment (const String &comment)
virtual LCRegion * | toLCRegion (const CoordinateSystem &cSys, const IPosition &shape) const
| Convert to an LCRegion using the given new coordinate system and shape.
LCRegion * | toLCRegionAxes (const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &outOrder) const
| Convert to an LCRegion using the given coordinate system and shape.
virtual TableRecord | toRecord (const String &tableName) const =0
| Convert the (derived) object to a record.
void | defineRecordFields (RecordInterface &record, const String &className) const
| Define the type and class name in the record.

## Protected Member Functions

WCCompound & | operator= (const WCCompound &other)
| Assignment (copy semantics) makes only sense for a derived class.
void | multiToLCRegion (Block< 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.
Protected Member Functions inherited from casacore::WCRegion
WCRegion & | operator= (const WCRegion &other)
| Assignment (copy semantics) makes only sense for a derived class.
void | addAxisDesc (const Record &axisDesc)
| Add an axis with its description.
Record | makeAxisDesc (const CoordinateSystem &cSys, uInt pixelAxis) const
| Make a description of a pixel axis in the coordinate system.
Record | makeAxesDesc (const CoordinateSystem &cSys) const
| Make a description of all pixel axes in the coordinate system (in pixel axes order).
virtual LCRegion * | doToLCRegion (const CoordinateSystem &cSys, const IPosition &shape, const IPosition &pixelAxesMap, const IPosition &extendAxes) const =0
| Convert to an LCRegion using the given coordinate system and shape.
void | makeWorldAbsolute (Vector< Double > &world, const Vector< Int > &absRel, const CoordinateSystem &cSys, const IPosition &shape) const
| Convert relative to absolute world as needed.
void | checkAxes (const IPosition &pixelAxes, const CoordinateSystem &cSys, const Vector< String > &quantityUnits) const

## Static Protected Member Functions

static void | unmakeRecord (Block< const WCRegion * > &, const TableRecord &, const String &tableName)
| Retrieve the contributing objects from the record.
Static Protected Member Functions inherited from casacore::WCRegion
static void | unitInit ()
static void | convertPixel (Double &pixel, const Double &value, const String &unit, const Int absRel, const Double refPix, const Int shape)

## Private Member Functions

void | makeWCRegion (const Block< 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

Block< const WCRegion * > | itsRegions
Block< IPosition > | itsAxesUsed

## Additional Inherited Members

Static Public Member Functions inherited from casacore::WCRegion
static WCRegion * | fromRecord (const TableRecord &rec, const String &tableName)
| Convert correct object from a record.

## Detailed Description

Base class for compound WCRegion objects.

### Intended use:

Internal

### Prerequisite

- WCRegion

### 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 82 of file WCCompound.h.

## Constructor & Destructor Documentation

## WCCompound() [1/5]

casacore::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.

Referenced by operator=(), and WCCompound().

## WCCompound() [2/5]

casacore::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 )

## WCCompound() [3/5]

casacore::WCCompound::WCCompound | ( | const Block< const ImageRegion * > & | regions | ) |

References regions().

## WCCompound() [4/5]

casacore::WCCompound::WCCompound | ( | Bool | takeOver,
|  | const Block< 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.

References regions().

## WCCompound() [5/5]

casacore::WCCompound::WCCompound | ( | const WCCompound & | other | ) |

Copy constructor (copy semantics).

References WCCompound().

## ~WCCompound()

virtual casacore::WCCompound::~WCCompound | ( |  | ) |

virtual

## Member Function Documentation

## init()

void casacore::WCCompound::init | ( | Bool | takeOver | ) |

private

Check if the regions are correct.

If needed, make a copy of the region objects.

## makeRecord()

TableRecord casacore::WCCompound::makeRecord | ( | const String & | tableName | ) | const

protected

Store the contributing regions in a record.

## makeWCRegion()

void casacore::WCCompound::makeWCRegion | ( | const Block< const ImageRegion * > & |  | ) |

private

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

## multiToLCRegion()

void casacore::WCCompound::multiToLCRegion | ( | Block< 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.

References regions(), and casacore::shape().

## operator=()

WCCompound & casacore::WCCompound::operator= | ( | const WCCompound & | other | ) |

protected

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

References WCCompound().

## operator==()

virtual Bool casacore::WCCompound::operator== | ( | const WCRegion & | other | ) | const

virtual

Comparison.

Reimplemented from casacore::WCRegion.

Reimplemented in casacore::WCComplement, casacore::WCConcatenation, casacore::WCDifference, casacore::WCExtension, casacore::WCIntersection, and casacore::WCUnion.

References casacore::WCRegion::WCRegion().

## regions()

const Block< const WCRegion * > & casacore::WCCompound::regions | ( |  | ) | const

inline

Get the contributing regions.

Definition at line 154 of file WCCompound.h.

References itsRegions.

Referenced by multiToLCRegion(), casacore::WCComplement::WCComplement(), WCCompound(), WCCompound(), casacore::WCConcatenation::WCConcatenation(), casacore::WCConcatenation::WCConcatenation(), casacore::WCDifference::WCDifference(), casacore::WCDifference::WCDifference(), casacore::WCExtension::WCExtension(), casacore::WCIntersection::WCIntersection(), casacore::WCIntersection::WCIntersection(), casacore::WCUnion::WCUnion(), and casacore::WCUnion::WCUnion().

## unmakeRecord()

void casacore::WCCompound::unmakeRecord | ( | Block< const WCRegion * > & | ,
|  | const TableRecord & | ,
|  | const String & | tableName )

static protected

Retrieve the contributing objects from the record.

## Member Data Documentation

## itsAxesUsed

Block<IPosition> casacore::WCCompound::itsAxesUsed

private

Definition at line 150 of file WCCompound.h.

## itsRegions

Block<const WCRegion*> casacore::WCCompound::itsRegions

private

Definition at line 149 of file WCCompound.h.

Referenced by regions().

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

- images/Regions/WCCompound.h