LELAttribute.h

Classes

LELAttribute -- Ancillary information for the LEL letter classes. (full description)

class LELAttribute

Interface

Public Members
LELAttribute()
LELAttribute(Bool isMasked, const IPosition& shape, const IPosition& tileShape, const LELCoordinates& coordinates, Bool isReduced = False)
explicit LELAttribute(uInt regionNdim)
LELAttribute(const LELAttribute& attr)
LELAttribute(const LELAttribute& attrLeft, const LELAttribute& attrRight, Bool matchAxes = True)
~LELAttribute()
LELAttribute& operator= (const LELAttribute& other)
Bool isScalar() const
Bool isReduced() const
Bool isRegion() const
Bool isMasked() const
const IPosition& shape() const
const IPosition& tileShape() const
const LELCoordinates& coordinates() const
Int compareCoord (const LELAttribute& other) const

Description

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

Holds attribute information for the Lattice Expression Language letter classes.

Synopsis

The Lattice Expression Language letter classes provide expression objects. There is ancilliary information or attributes associated with these objects: Two attribute objects can be combined mirroring the combination of two expressions (like the addition of two lattices). Regions cannot be combined.

Member Description

LELAttribute()

Default constructor sets it as a scalar.

LELAttribute(Bool isMasked, const IPosition& shape, const IPosition& tileShape, const LELCoordinates& coordinates, Bool isReduced = False)

Constructor sets it as lattice with given attributes. An empty shape indicates that the shape is not known.

explicit LELAttribute(uInt regionNdim)

Constructor sets it as a region with given attributes.

LELAttribute(const LELAttribute& attr)

Copy constructor (copy semantics)

LELAttribute(const LELAttribute& attrLeft, const LELAttribute& attrRight, Bool matchAxes = True)

Constructor that combines the two attributes given. An array can be combined with a scalar. If matchAxes is True and if two arrays are given, the shapes and coordinates have to match exactly, otherwise one can be a subset of the other (and LEL will auto-extend).

~LELAttribute()

Destructor

LELAttribute& operator= (const LELAttribute& other)

Assignment (copy semantics)

Bool isScalar() const

Is expression a scalar?

Bool isReduced() const

Is expression a reduced array? A scalar is always reduced.

Bool isRegion() const

Is expression a region?

Bool isMasked() const

Is the expression result masked?

const IPosition& shape() const

What is the shape of the expression?

const IPosition& tileShape() const

What is the tile shape of the expression?

const LELCoordinates& coordinates() const

What are the coordinates of the expression?

Int compareCoord (const LELAttribute& other) const

Compare the coordinates and shapes to see if this is a subset of other.