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

#include <CCList.h>

List of all members.

Public Member Functions

 CCList ()
 vanilla constructor (npol=1, nComp=0)
 CCList (const uInt nPol, const uInt nDim=2, const uInt nComp=0)
 more controlling constructor: How many Stokes per flux Block? How many spatial dimensions per position? How many total components to allocate for?
 CCList (const CCList &other)
 copy constructor
 ~CCList ()
 destructor
CCListoperator= (const CCList &other)
 operator=
IntpositionPtr ()
 get pointer to the Block<Int> which holds the CC's positions in pixel coordinates.
const IntpositionPtr () const
IntpixelPosition (const uInt whichCC)
 get pointer to the whichCC'th component's position
IntfreePositionPtr ()
 Get a pointer into the Position Block for the next free clean component.
const IntfreePositionPtr () const
FloatfluxPtr ()
 get pointer to the Block<Float> which holds the CC's Flux.
const FloatfluxPtr () const
FloatpixelFlux (const uInt whichCC)
 get pointer to the whichCC'th component's flux
FloatfreeFluxPtr ()
 Get a pointer into the Flux Block for the next free clean component.
const FloatfreeFluxPtr () const
uInt nPol () const
 How many polarizations?
uInt nDim () const
 How many dimentions?
uInt nComp () const
 How many components have been filled into the list?
uIntnComp ()
uInt maxComp () const
 How many components have been allocated for this list?
uInt freeComp () const
 We have free space for how many more components?
void resize (const uInt nComp)
 Make the list bigger or smaller.
void addComp (const Block< Float > &flux, const Block< Int > &position)
 add a Component; if not enough space, resize the storage blocks to 2*maxComp()+1
void tiledSort (const IPosition &tileShape)
 Sort components to be organized by tile number.
Bool ok () const
 ok() is called to check for an internally consistent state by most everything, often behind the scenes; sometimes, the internal state is in flux after a partial operation, and ok() fails; to turn off ok() checking, set itsSuspendOKCheck = True and remember to reset it to False when the state-changing operation is complete.

Private Member Functions

void suspendOKCheck ()
 turn OFF error checking via "ok()"
void reactivateOKCheck ()
 turn ON error checking vua "ok()"

Private Attributes

uInt itsPol
uInt itsDim
uInt itsComp
Block< FloatitsFlux
Block< IntitsPos
Bool itsSuspendOKCheck

Detailed Description

Intended use:

Internal or

Intended use:

Internal

 <h3>Review Status</h3><dl><dt>Date Reviewed:<dd>yyyy/mm/dd</dl> 

Prerequisite

Etymology

Synopsis

Example

Motivation

Template Type Argument Requirements (T)

Thrown Exceptions

To Do

Definition at line 83 of file CCList.h.


Constructor & Destructor Documentation

vanilla constructor (npol=1, nComp=0)

casa::CCList::CCList ( const uInt  nPol,
const uInt  nDim = 2,
const uInt  nComp = 0 
)

more controlling constructor: How many Stokes per flux Block? How many spatial dimensions per position? How many total components to allocate for?

casa::CCList::CCList ( const CCList other)

copy constructor

destructor


Member Function Documentation

void casa::CCList::addComp ( const Block< Float > &  flux,
const Block< Int > &  position 
)

add a Component; if not enough space, resize the storage blocks to 2*maxComp()+1

get pointer to the Block<Float> which holds the CC's Flux.

The flux itself is a Block, as it may be 1, 2, or 4 Stokes. Block[nPol()*i + iPol] holds the ith component's iPol Stokes.

const Float* casa::CCList::fluxPtr ( ) const

We have free space for how many more components?

Get a pointer into the Flux Block for the next free clean component.

const Float* casa::CCList::freeFluxPtr ( ) const

Get a pointer into the Position Block for the next free clean component.

How many components have been allocated for this list?

uInt casa::CCList::nComp ( ) const [inline]

How many components have been filled into the list?

Definition at line 203 of file CCList.h.

References DebugAssert, itsComp, and ok().

uInt & casa::CCList::nComp ( ) [inline]

Definition at line 208 of file CCList.h.

References DebugAssert, itsComp, and ok().

uInt casa::CCList::nDim ( ) const [inline]

How many dimentions?

Definition at line 198 of file CCList.h.

References DebugAssert, itsDim, and ok().

uInt casa::CCList::nPol ( ) const [inline]

How many polarizations?

Definition at line 193 of file CCList.h.

References DebugAssert, itsPol, and ok().

ok() is called to check for an internally consistent state by most everything, often behind the scenes; sometimes, the internal state is in flux after a partial operation, and ok() fails; to turn off ok() checking, set itsSuspendOKCheck = True and remember to reset it to False when the state-changing operation is complete.

Referenced by nComp(), nDim(), and nPol().

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

operator=

Float* casa::CCList::pixelFlux ( const uInt  whichCC)

get pointer to the whichCC'th component's flux

Int* casa::CCList::pixelPosition ( const uInt  whichCC)

get pointer to the whichCC'th component's position

get pointer to the Block<Int> which holds the CC's positions in pixel coordinates.

Block[nDim()*i] holds ith x, Block[nDim()*i+1] holds ith y

const Int* casa::CCList::positionPtr ( ) const
void casa::CCList::reactivateOKCheck ( ) [private]

turn ON error checking vua "ok()"

void casa::CCList::resize ( const uInt  nComp)

Make the list bigger or smaller.

void casa::CCList::suspendOKCheck ( ) [private]

turn OFF error checking via "ok()"

void casa::CCList::tiledSort ( const IPosition tileShape)

Sort components to be organized by tile number.

If the position and Flux blocks have free space at the end, it gets cut off.


Member Data Documentation

Definition at line 186 of file CCList.h.

Referenced by nComp().

Definition at line 185 of file CCList.h.

Referenced by nDim().

Definition at line 187 of file CCList.h.

Definition at line 184 of file CCList.h.

Referenced by nPol().

Definition at line 188 of file CCList.h.

Definition at line 189 of file CCList.h.


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