casacore::SSMIndStringColumn Class Reference

An Indirect String Array Column in the Standard Storage Manager. More...

#include <SSMIndStringColumn.h>

Inheritance diagram for casacore::SSMIndStringColumn:
casacore::SSMDirColumn casacore::SSMColumn casacore::StManColumn casacore::DataManagerColumn

List of all members.

Public Member Functions

 SSMIndStringColumn (SSMBase *aParent, int aDataType, uInt aColNr)
 Create a SSMIndStringColumn object with the given parent.
virtual ~SSMIndStringColumn ()
virtual void getArrayStringV (uInt rownr, Array< String > *dataPtr)
 Get an array value in the given row.
virtual void putArrayStringV (uInt rownr, const Array< String > *dataPtr)
 Put an array value in the given row.
void setShape (uInt aRowNr, const IPosition &aShape)
 Set the shape of the array in the given row.
virtual IPosition shape (uInt aRowNr)
 Get the shape of the array in the given row.
Bool canChangeShape () const
 This storage manager can handle changing array shapes.
virtual Bool isShapeDefined (uInt aRowNr)
 Is the shape defined (i.e.
virtual uInt ndim (uInt aRowNr)
 Get the dimensionality of the item in the given row.

Private Member Functions

 SSMIndStringColumn (const SSMIndStringColumn &)
 Forbid copy constructor.
SSMIndStringColumnoperator= (const SSMIndStringColumn &)
 Forbid assignment.

Detailed Description

An Indirect String Array Column in the Standard Storage Manager.

Intended use:

Internal

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25
Test programs:
tSSMStringHandler

Prerequisite

Etymology

SSMIndStringColumn represents an Indirect String Array Column in the Standard Storage Manager.

Synopsis

SSMIndStringColumn handles indirect variable shaped string arrays. Note that indirect fixed shape string arrays are handled by SSMDirColumn .

All string array access is handled by class SSMStringHandler , so SSMIndStringColumn is merely an interface to this class. The only thing it does is accessing the bucketnr, offset, and length in the data bucket.

Motivation

The reason that indirect string arrays are handled here instead of in SSMIndColumn is that the string buckets are more disk space efficient when string arrays are frequently updated.

Definition at line 86 of file SSMIndStringColumn.h.


Constructor & Destructor Documentation

casacore::SSMIndStringColumn::SSMIndStringColumn ( SSMBase aParent,
int  aDataType,
uInt  aColNr 
)

Create a SSMIndStringColumn object with the given parent.

It initializes the various variables. It keeps the pointer to its parent (but does not own it).

virtual casacore::SSMIndStringColumn::~SSMIndStringColumn (  )  [virtual]
casacore::SSMIndStringColumn::SSMIndStringColumn ( const SSMIndStringColumn  )  [private]

Forbid copy constructor.


Member Function Documentation

Bool casacore::SSMIndStringColumn::canChangeShape (  )  const [virtual]

This storage manager can handle changing array shapes.

Reimplemented from casacore::DataManagerColumn.

virtual void casacore::SSMIndStringColumn::getArrayStringV ( uInt  rownr,
Array< String > *  dataPtr 
) [virtual]

Get an array value in the given row.

An exception is thrown if no array is defined in this row.

Reimplemented from casacore::SSMDirColumn.

virtual Bool casacore::SSMIndStringColumn::isShapeDefined ( uInt  aRowNr  )  [virtual]

Is the shape defined (i.e.

is there an array) in this row?

Reimplemented from casacore::DataManagerColumn.

virtual uInt casacore::SSMIndStringColumn::ndim ( uInt  aRowNr  )  [virtual]

Get the dimensionality of the item in the given row.

Reimplemented from casacore::SSMColumn.

SSMIndStringColumn& casacore::SSMIndStringColumn::operator= ( const SSMIndStringColumn  )  [private]

Forbid assignment.

Reimplemented from casacore::SSMDirColumn.

virtual void casacore::SSMIndStringColumn::putArrayStringV ( uInt  rownr,
const Array< String > *  dataPtr 
) [virtual]

Put an array value in the given row.

Reimplemented from casacore::SSMDirColumn.

void casacore::SSMIndStringColumn::setShape ( uInt  aRowNr,
const IPosition aShape 
) [virtual]

Set the shape of the array in the given row.

Reimplemented from casacore::DataManagerColumn.

virtual IPosition casacore::SSMIndStringColumn::shape ( uInt  aRowNr  )  [virtual]

Get the shape of the array in the given row.

Reimplemented from casacore::SSMColumn.


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