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

Base class for LELArray holding the mask. More...

#include <LELArrayBase.h>

Inheritance diagram for casa::LELArrayBase:
casa::LELArray< T > casa::LELArrayRef< T >

List of all members.

Public Member Functions

 LELArrayBase ()
 Default constructor sets to mask all true.
 LELArrayBase (const Array< Bool > &mask)
 Constructor takes mask.
 LELArrayBase (const LELArrayBase &other)
 Copy constructor (reference semantics).
 ~LELArrayBase ()
LELArrayBaseoperator= (const LELArrayBase &other)
 Assignment (reference semantics).
Bool isMasked () const
 Does the value have a mask?
const Array< Bool > & mask () const
 Get mask.
Array< Bool > & mask ()
void removeMask ()
 Remove the mask.
void setMask (const Array< Bool > &other)
 Set the mask from given array (takes reference).
void setMask (const LELArrayBase &other)
 Set the mask from the mask of the other value.
void setMask (Array< Bool > &other)
 Set the mask from given array (takes reference).
void setMask (const LELArrayBase &left, const LELArrayBase &right)
 Set the mask by combining the masks of both values.
void combineMask (const LELArrayBase &other)
 Combine the mask of this and the other value (by anding them).
void combineMask (const Array< Bool > &mask)
void combineOrAnd (Bool desiredValue, const Array< Bool > &value)
 Combine the mask with the given value in case of an OR or AND.
void combineOrAnd (Bool desiredValue, Array< Bool > &value, const Array< Bool > &temp)
 Combine for two arrays taking the true/false array values into account.
void combineOrAnd (Bool desiredValue, Array< Bool > &value, const Array< Bool > &temp, const Array< Bool > &tempMask)
 Combine for two arrays taking the true/false array values and mask into account.

Private Attributes

Array< Bool > * itsMaskPtr
 
 


Detailed Description

Base class for LELArray holding the mask.

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Synopsis

This LEL class holds an array with a mask. The mask can be a single Bool valid for all elements of the array. Otherwise it is a full mask with the same shape as the array.

Motivation

It maskes it possible to handle an array with its mask as a single object.

Definition at line 61 of file LELArrayBase.h.


Constructor & Destructor Documentation

Default constructor sets to mask all true.

Definition at line 65 of file LELArrayBase.h.

casa::LELArrayBase::LELArrayBase ( const Array< Bool > &  mask) [inline]

Constructor takes mask.

Definition at line 69 of file LELArrayBase.h.

Copy constructor (reference semantics).


Member Function Documentation

void casa::LELArrayBase::combineMask ( const LELArrayBase other) [inline]

Combine the mask of this and the other value (by anding them).

Definition at line 110 of file LELArrayBase.h.

References isMasked(), and mask().

Referenced by setMask().

void casa::LELArrayBase::combineMask ( const Array< Bool > &  mask)
void casa::LELArrayBase::combineOrAnd ( Bool  desiredValue,
const Array< Bool > &  value 
)

Combine the mask with the given value in case of an OR or AND.

It means the mask is set to true if value is desiredValue (which should be True for OR and False for AND).

Combine with a single scalar value for which the mask is false.

void casa::LELArrayBase::combineOrAnd ( Bool  desiredValue,
Array< Bool > &  value,
const Array< Bool > &  temp 
)

Combine for two arrays taking the true/false array values into account.

The mask and value are set to desiredValue if the temp value is desiredValue.

void casa::LELArrayBase::combineOrAnd ( Bool  desiredValue,
Array< Bool > &  value,
const Array< Bool > &  temp,
const Array< Bool > &  tempMask 
)

Combine for two arrays taking the true/false array values and mask into account.

The mask and value are set to desiredValue if the temp value is desiredValue and its temp mask it true. The mask is set to false if the temp mask is False.

Bool casa::LELArrayBase::isMasked ( ) const [inline]

Does the value have a mask?

Definition at line 81 of file LELArrayBase.h.

References itsMaskPtr.

Referenced by combineMask().

const Array<Bool>& casa::LELArrayBase::mask ( ) const [inline]

Get mask.

Definition at line 86 of file LELArrayBase.h.

References itsMaskPtr.

Referenced by combineMask().

Definition at line 88 of file LELArrayBase.h.

References itsMaskPtr.

LELArrayBase& casa::LELArrayBase::operator= ( const LELArrayBase other)

Assignment (reference semantics).

Remove the mask.

void casa::LELArrayBase::setMask ( const Array< Bool > &  other)

Set the mask from given array (takes reference).

void casa::LELArrayBase::setMask ( const LELArrayBase other)

Set the mask from the mask of the other value.

void casa::LELArrayBase::setMask ( Array< Bool > &  other)

Set the mask from given array (takes reference).

void casa::LELArrayBase::setMask ( const LELArrayBase left,
const LELArrayBase right 
) [inline]

Set the mask by combining the masks of both values.

Definition at line 105 of file LELArrayBase.h.

References combineMask(), and setMask().

Referenced by setMask().


Member Data Documentation

 

Definition at line 137 of file LELArrayBase.h.

Referenced by isMasked(), and mask().


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