casacore::LCIntersection Class Reference

Make the intersection of 2 or more regions. More...

#include <LCIntersection.h>

Inheritance diagram for casacore::LCIntersection:
casacore::LCRegionMulti casacore::LCRegion casacore::Lattice< Bool > casacore::LatticeBase

List of all members.

Public Member Functions

 LCIntersection ()
 LCIntersection (const LCRegion &region1, const LCRegion &region2)
 Construct the intersection of the given regions.
 LCIntersection (Bool takeOver, const LCRegion *region1, const LCRegion *region2=0, const LCRegion *region3=0, const LCRegion *region4=0, const LCRegion *region5=0, const LCRegion *region6=0, const LCRegion *region7=0, const LCRegion *region8=0, const LCRegion *region9=0, const LCRegion *region10=0)
 Construct from multiple regions.
 LCIntersection (Bool takeOver, const PtrBlock< const LCRegion * > &regions)
 Construct from multiple regions given as a Block.
 LCIntersection (const LCIntersection &other)
 Copy constructor (copy semantics).
virtual ~LCIntersection ()
LCIntersectionoperator= (const LCIntersection &other)
 Assignment (copy semantics).
virtual Bool operator== (const LCRegion &other) const
 Comparison.
virtual LCRegioncloneRegion () const
 Make a copy of the derived object.
virtual String type () const
 Get the region type.
virtual TableRecord toRecord (const String &tableName) const
 Convert the (derived) object to a record.

Static Public Member Functions

static String className ()
 Get the class name (to store in the record).
static LCIntersectionfromRecord (const TableRecord &, const String &tableName)
 Convert correct object from a record.

Protected Member Functions

virtual LCRegiondoTranslate (const Vector< Float > &translateVector, const IPosition &newLatticeShape) const
 Construct another LCRegion (for e.g.
virtual void multiGetSlice (Array< Bool > &buffer, const Slicer &section)
 Do the actual getting of the mask.

Private Member Functions

void defineBox ()
 Make the bounding box and determine the offsets.

Private Attributes

Block< IPositionitsOffsets

Detailed Description

Make the intersection of 2 or more regions.

Intended use:

Public interface

Prerequisite

Synopsis

The LCIntersection class is a specialization of class LCRegion . It makes it possible to find the intersection of given regions.

The center of the intersection must be inside the lattice

Example

To Do

Definition at line 69 of file LCIntersection.h.


Constructor & Destructor Documentation

casacore::LCIntersection::LCIntersection (  ) 
casacore::LCIntersection::LCIntersection ( const LCRegion region1,
const LCRegion region2 
)

Construct the intersection of the given regions.

casacore::LCIntersection::LCIntersection ( Bool  takeOver,
const LCRegion region1,
const LCRegion region2 = 0,
const LCRegion region3 = 0,
const LCRegion region4 = 0,
const LCRegion region5 = 0,
const LCRegion region6 = 0,
const LCRegion region7 = 0,
const LCRegion region8 = 0,
const LCRegion region9 = 0,
const LCRegion region10 = 0 
)

Construct from multiple regions.

casacore::LCIntersection::LCIntersection ( Bool  takeOver,
const PtrBlock< const LCRegion * > &  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.

casacore::LCIntersection::LCIntersection ( const LCIntersection other  ) 

Copy constructor (copy semantics).

virtual casacore::LCIntersection::~LCIntersection (  )  [virtual]

Member Function Documentation

static String casacore::LCIntersection::className (  )  [static]

Get the class name (to store in the record).

virtual LCRegion* casacore::LCIntersection::cloneRegion (  )  const [virtual]

Make a copy of the derived object.

Implements casacore::LCRegion.

void casacore::LCIntersection::defineBox (  )  [private]

Make the bounding box and determine the offsets.

virtual LCRegion* casacore::LCIntersection::doTranslate ( const Vector< Float > &  translateVector,
const IPosition newLatticeShape 
) const [protected, virtual]

Construct another LCRegion (for e.g.

another lattice) by moving this one. It recalculates the bounding box and mask. A positive translation value indicates "to right".

Implements casacore::LCRegion.

static LCIntersection* casacore::LCIntersection::fromRecord ( const TableRecord ,
const String tableName 
) [static]

Convert correct object from a record.

Reimplemented from casacore::LCRegion.

virtual void casacore::LCIntersection::multiGetSlice ( Array< Bool > &  buffer,
const Slicer section 
) [protected, virtual]

Do the actual getting of the mask.

Implements casacore::LCRegionMulti.

LCIntersection& casacore::LCIntersection::operator= ( const LCIntersection other  ) 

Assignment (copy semantics).

Reimplemented from casacore::LCRegionMulti.

virtual Bool casacore::LCIntersection::operator== ( const LCRegion other  )  const [virtual]

Comparison.

Reimplemented from casacore::LCRegionMulti.

virtual TableRecord casacore::LCIntersection::toRecord ( const String tableName  )  const [virtual]

Convert the (derived) object to a record.

Implements casacore::LCRegion.

virtual String casacore::LCIntersection::type (  )  const [virtual]

Get the region type.

Returns className()

Implements casacore::LCRegion.


Member Data Documentation

Definition at line 137 of file LCIntersection.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1