LCPagedMask.h

Classes

LCPagedMask -- Class to define a rectangular mask as a region (full description)

class LCPagedMask: public LCRegionSingle

Interface

Public Members
LCPagedMask()
LCPagedMask (const TiledShape& latticeShape, const String& tableName)
LCPagedMask (const TiledShape& maskShape, const LCBox& box, const String& tableName)
LCPagedMask (PagedArray<Bool>& mask, const LCBox& box)
LCPagedMask (const LCPagedMask& other)
virtual ~LCPagedMask()
LCPagedMask& operator= (const LCPagedMask& other)
virtual Bool operator==(const LCRegion& other) const
virtual LCRegion* cloneRegion() const
virtual LatticeIterInterface<Bool>* makeIter (const LatticeNavigator& navigator, Bool useRef) const
virtual uInt advisedMaxPixels() const
virtual IPosition doNiceCursorShape (uInt maxPixels) const
virtual uInt maximumCacheSize() const
virtual void setMaximumCacheSize (uInt howManyPixels)
virtual void setCacheSizeFromPath (const IPosition& sliceShape, const IPosition& windowStart, const IPosition& windowLength, const IPosition& axisPath)
virtual void setCacheSizeInTiles (uInt howManyTiles)
virtual void clearCache()
virtual void showCacheStatistics (ostream& os) const
virtual void handleDelete()
virtual void handleRename (const String& newName, Bool overwrite)
virtual Bool lock (FileLocker::LockType, uInt nattempts)
virtual void unlock()
virtual Bool hasLock (FileLocker::LockType) const
virtual void resync()
virtual void flush()
virtual void tempClose()
virtual void reopen()
static String className()
virtual String type() const
virtual TableRecord toRecord (const String& tableName) const
static LCPagedMask* fromRecord (const TableRecord&, const String& tablename)
virtual Bool isWritable() const
Protected Members
virtual LCRegion* doTranslate (const Vector<Float>& translateVector, const IPosition& newLatticeShape) const
Private Members
LCPagedMask (PagedArray<Bool>& mask, const IPosition& blc, const IPosition& latticeShape)

Description

Prerequisite

Synopsis

The LCPagedMask class is a specialization of class LCRegion.

Example


 

To Do

Member Description

LCPagedMask()

LCPagedMask (const TiledShape& latticeShape, const String& tableName)
LCPagedMask (const TiledShape& maskShape, const LCBox& box, const String& tableName)
LCPagedMask (PagedArray<Bool>& mask, const LCBox& box)

Construct a PagedMask object for (part of) a lattice. The box defines the position of the mask. The default mask shape is the lattice shape.

LCPagedMask (const LCPagedMask& other)

Copy constructor (copy semantics).

virtual ~LCPagedMask()

Destructor

LCPagedMask& operator= (const LCPagedMask& other)

Assignment (reference semantics).

virtual Bool operator==(const LCRegion& other) const

Comparison

virtual LCRegion* cloneRegion() const

Make a copy of the derived object.

virtual LatticeIterInterface<Bool>* makeIter (const LatticeNavigator& navigator, Bool useRef) const

This function is used by the LatticeIterator class to generate an iterator of the correct type for this Lattice. Not recommended for general use.

virtual uInt advisedMaxPixels() const

Returns the maximum recommended number of pixels for a cursor. This is the number of pixels in a tile.

virtual IPosition doNiceCursorShape (uInt maxPixels) const

Help the user pick a cursor for most efficient access.

virtual uInt maximumCacheSize() const

Maximum size - not necessarily all used. In pixels.

virtual void setMaximumCacheSize (uInt howManyPixels)

Set the maximum (allowed) cache size as indicated.

virtual void setCacheSizeFromPath (const IPosition& sliceShape, const IPosition& windowStart, const IPosition& windowLength, const IPosition& axisPath)

Set the cache size as to "fit" the indicated path.

virtual void setCacheSizeInTiles (uInt howManyTiles)

Set the actual cache size for this Array to be be big enough for the indicated number of tiles. This cache is not shared with PagedArrays in other rows and is always clipped to be less than the maximum value set using the setMaximumCacheSize member function. tiles. Tiles are cached using a first in first out algorithm.

virtual void clearCache()

Clears and frees up the caches, but the maximum allowed cache size is unchanged from when setCacheSize was called

virtual void showCacheStatistics (ostream& os) const

Report on cache success.

virtual void handleDelete()

Handle deletion of the region by deleting the associated table.

virtual void handleRename (const String& newName, Bool overwrite)

Handle renaming the region by renaming the associated table. If overwrite=False, an exception will be thrown if a table with the new name already exists.

virtual Bool lock (FileLocker::LockType, uInt nattempts)
virtual void unlock()
virtual Bool hasLock (FileLocker::LockType) const

Handle the (un)locking.

virtual void resync()

Resynchronize the PagedArray object with the lattice file. This function is only useful if no read-locking is used, ie. if the table lock option is UserNoReadLocking or AutoNoReadLocking. In that cases the table system does not acquire a read-lock, thus does not synchronize itself automatically.

virtual void flush()

Flush the data (but do not unlock).

virtual void tempClose()

Temporarily close the lattice. It will be reopened automatically on the next access.

virtual void reopen()

Explicitly reopen the temporarily closed lattice.

static String className()

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

virtual String type() const

Region type. Returns class name.

virtual TableRecord toRecord (const String& tableName) const

Convert the (derived) object to a record.

static LCPagedMask* fromRecord (const TableRecord&, const String& tablename)

Convert correct object from a record.

virtual Bool isWritable() const

An LCPagedMask is writable if the underlying PagedArray is.

virtual LCRegion* doTranslate (const Vector<Float>& translateVector, const IPosition& newLatticeShape) const

Construct another LCPagedMask (for e.g. another lattice) by moving this one. It recalculates the bounding mask. A positive translation value indicates "to right".

LCPagedMask (PagedArray<Bool>& mask, const IPosition& blc, const IPosition& latticeShape)

Create the object from a record (for an existing mask).