Loading...
Searching...
No Matches
casacore::DataManagerColumn Class Referenceabstract
tables package (libcasa_tables) » DataMan_module » DataMan_module_internal_classes

More...

`#include <DataManagerColumn.h>`

## Public Member Functions

| DataManagerColumn ()
| Create a column.
virtual | ~DataManagerColumn ()
| Frees up the storage.
| DataManagerColumn (const DataManagerColumn &)=delete
| The copy constructor cannot be used for this base class.
DataManagerColumn & | operator= (const DataManagerColumn &)=delete
| Assignment cannot be used for this base class.
void | setIsFixedShape (Bool isFixedShape)
| Set the isFixedShape flag.
Bool | isFixedShape () const
| Is this a fixed shape column?
virtual int | dataType () const =0
| Get the data type of the column as defined in DataType.h.
virtual String | dataTypeId () const
| Get the data type id of the column for dataType==TpOther.
virtual Bool | isWritable () const
| Test if data can be put into this column.
virtual void | setMaxLength (uInt maxLength)
| Set the maximum length of the value (can be used for strings).
void | setFixedShapeColumn (const IPosition &shape)
| Set the shape of all (fixed-shaped) arrays in the column.
virtual void | setShape (rownr_t rownr, const IPosition &shape)
| Set the shape of an (variable-shaped) array in the given row.
virtual void | setShapeTiled (rownr_t rownr, const IPosition &shape, const IPosition &tileShape)
| Set the shape and tile shape of an (variable-shaped) array in the given row.
virtual Bool | isShapeDefined (rownr_t rownr)
| Is the value shape defined in the given row?
virtual uInt | ndim (rownr_t rownr)
| Get the dimensionality of the item in the given row.
virtual IPosition | shape (rownr_t rownr)
| Get the shape of the item in the given row.
virtual IPosition | tileShape (rownr_t rownr)
| Get the tile shape of the item in the given row.
virtual Bool | canChangeShape () const
| Can the data manager handle chaging the shape of an existing array?
ColumnCache & | columnCache ()
| Get access to the ColumnCache object.
const ColumnCache * | columnCachePtr () const
void | get (rownr_t rownr, Bool *dataPtr)
| Get the scalar value in the given row.
void | get (rownr_t rownr, uChar *dataPtr)
void | get (rownr_t rownr, Short *dataPtr)
void | get (rownr_t rownr, uShort *dataPtr)
void | get (rownr_t rownr, Int *dataPtr)
void | get (rownr_t rownr, uInt *dataPtr)
void | get (rownr_t rownr, Int64 *dataPtr)
void | get (rownr_t rownr, float *dataPtr)
void | get (rownr_t rownr, double *dataPtr)
void | get (rownr_t rownr, Complex *dataPtr)
void | get (rownr_t rownr, DComplex *dataPtr)
void | get (rownr_t rownr, String *dataPtr)
void | get (rownr_t rownr, void *dataPtr)
| This function is the get for all non-standard data types.
void | put (rownr_t rownr, const Bool *dataPtr)
| Put the scalar value into the given row.
void | put (rownr_t rownr, const uChar *dataPtr)
void | put (rownr_t rownr, const Short *dataPtr)
void | put (rownr_t rownr, const uShort *dataPtr)
void | put (rownr_t rownr, const Int *dataPtr)
void | put (rownr_t rownr, const uInt *dataPtr)
void | put (rownr_t rownr, const Int64 *dataPtr)
void | put (rownr_t rownr, const float *dataPtr)
void | put (rownr_t rownr, const double *dataPtr)
void | put (rownr_t rownr, const Complex *dataPtr)
void | put (rownr_t rownr, const DComplex *dataPtr)
void | put (rownr_t rownr, const String *dataPtr)
void | put (rownr_t rownr, const void *dataPtr)
| This function is the put for all non-standard data types.
virtual void | getScalarColumnV (ArrayBase &dataPtr)
| Get all scalar values in the column.
virtual void | putScalarColumnV (const ArrayBase &dataPtr)
| Put all scalar values in the column.
virtual void | getScalarColumnCellsV (const RefRows &rownrs, ArrayBase &dataPtr)
| Get some scalar values in the column.
virtual void | putScalarColumnCellsV (const RefRows &rownrs, const ArrayBase &dataPtr)
| Put some scalar values in the column.
virtual void | getArrayV (rownr_t rownr, ArrayBase &dataPtr)
| Get the array value in the given row.
virtual void | putArrayV (rownr_t rownr, const ArrayBase &data)
| Put the array value into the given row.
virtual void | getArrayColumnV (ArrayBase &data)
| Get all array values in the column.
virtual void | putArrayColumnV (const ArrayBase &data)
| Put all array values in the column.
virtual void | getArrayColumnCellsV (const RefRows &rownrs, ArrayBase &data)
| Get some array values in the column.
virtual void | putArrayColumnCellsV (const RefRows &rownrs, const ArrayBase &data)
| Put some array values in the column.
virtual void | getSliceV (rownr_t rownr, const Slicer &slicer, ArrayBase &data)
| Get a section of the array in the given row.
virtual void | putSliceV (rownr_t rownr, const Slicer &slicer, const ArrayBase &data)
| Put into a section of the array in the given row.
virtual void | getColumnSliceV (const Slicer &slicer, ArrayBase &data)
| Get a section of all arrays in the column.
virtual void | putColumnSliceV (const Slicer &slicer, const ArrayBase &data)
| Put into a section of all arrays in the column.
virtual void | getColumnSliceCellsV (const RefRows &rownrs, const Slicer &slicer, ArrayBase &data)
| Get a section of some arrays in the column.
virtual void | putColumnSliceCellsV (const RefRows &rownrs, const Slicer &slicer, const ArrayBase &data)
| Put into a section of some arrays in the column.
void | throwGet () const
| Throw an "invalid operation" exception for the default implementation of get.
void | throwPut () const
| Throw an "invalid operation" exception for the default implementation of put.
void | setColumnName (const String &colName)
| Set the column name.
const String & | columnName () const
| Get rhe column name.

## Protected Member Functions

virtual void | getBool (rownr_t rownr, Bool *dataPtr)
| Get the scalar value in the given row.
virtual void | getuChar (rownr_t rownr, uChar *dataPtr)
virtual void | getShort (rownr_t rownr, Short *dataPtr)
virtual void | getuShort (rownr_t rownr, uShort *dataPtr)
virtual void | getInt (rownr_t rownr, Int *dataPtr)
virtual void | getuInt (rownr_t rownr, uInt *dataPtr)
virtual void | getInt64 (rownr_t rownr, Int64 *dataPtr)
virtual void | getfloat (rownr_t rownr, float *dataPtr)
virtual void | getdouble (rownr_t rownr, double *dataPtr)
virtual void | getComplex (rownr_t rownr, Complex *dataPtr)
virtual void | getDComplex (rownr_t rownr, DComplex *dataPtr)
virtual void | getString (rownr_t rownr, String *dataPtr)
virtual void | getOther (rownr_t rownr, void *dataPtr)
| This function is the get for all non-standard data types.
virtual void | putBool (rownr_t rownr, const Bool *dataPtr)
| Put the scalar value into the given row.
virtual void | putuChar (rownr_t rownr, const uChar *dataPtr)
virtual void | putShort (rownr_t rownr, const Short *dataPtr)
virtual void | putuShort (rownr_t rownr, const uShort *dataPtr)
virtual void | putInt (rownr_t rownr, const Int *dataPtr)
virtual void | putuInt (rownr_t rownr, const uInt *dataPtr)
virtual void | putInt64 (rownr_t rownr, const Int64 *dataPtr)
virtual void | putfloat (rownr_t rownr, const float *dataPtr)
virtual void | putdouble (rownr_t rownr, const double *dataPtr)
virtual void | putComplex (rownr_t rownr, const Complex *dataPtr)
virtual void | putDComplex (rownr_t rownr, const DComplex *dataPtr)
virtual void | putString (rownr_t rownr, const String *dataPtr)
virtual void | putOther (rownr_t rownr, const void *dataPtr)
| This function is the put for all non-standard data types.
void | getScalarColumnBase (ArrayBase &dataPtr)
| The default implementations of get and put functions.
void | putScalarColumnBase (const ArrayBase &dataPtr)
void | getScalarColumnCellsBase (const RefRows &rownrs, ArrayBase &dataPtr)
void | putScalarColumnCellsBase (const RefRows &rownrs, const ArrayBase &dataPtr)
void | getArrayColumnBase (ArrayBase &data)
void | putArrayColumnBase (const ArrayBase &data)
void | getArrayColumnCellsBase (const RefRows &rownrs, ArrayBase &data)
void | putArrayColumnCellsBase (const RefRows &rownrs, const ArrayBase &data)
void | getSliceBase (rownr_t rownr, const Slicer &slicer, ArrayBase &data)
void | putSliceBase (rownr_t rownr, const Slicer &slicer, const ArrayBase &data)
void | getColumnSliceBase (const Slicer &slicer, ArrayBase &data)
void | putColumnSliceBase (const Slicer &slicer, const ArrayBase &data)
void | getColumnSliceCellsBase (const RefRows &rownrs, const Slicer &slicer, ArrayBase &data)
void | putColumnSliceCellsBase (const RefRows &rownrs, const Slicer &slicer, const ArrayBase &data)

## Private Member Functions

virtual void | setShapeColumn (const IPosition &shape)
| Set the shape of all (fixed-shaped) arrays in the column.
void | getSliceArr (rownr_t row, const Slicer &section, std::shared_ptr< ArrayBase > &fullArr, ArrayBase &arr)
| Get a slice from the array in the given row.
void | putSliceArr (rownr_t row, const Slicer &section, std::shared_ptr< ArrayBase > &fullArr, const ArrayBase &arr)
| Put a slice into the array in the given row.

## Private Attributes

Bool | isFixedShape_p
String | colName_p
ColumnCache | colCache_p

## Detailed Description

Abstract base class for a column in a data manager

### Intended use:

Internal

### Review Status

Reviewed By:
  Gareth Hunt
Date Reviewed:
  94Nov17

### Prerequisite

- DataManager

### Etymology

DataManagerColumn handles a column for a data manager.

### Synopsis

DataManagerColumn is the abstract base class to handle a column in a data manager. Each data manager class must have one or more associated classes derived from DataManagerColumn to handle the columns. For example, storage manager StManAipsIO has columns classes StManColumnAipsIO, StManColumnArrayAipsIO and StManColumnIndArrayAipsIO to handle scalars, direct arrays and indirect arrays, resp.. However, using multiple inheritance it is possible that the derived DataManager and DataManagerColumn classes are the same. This is used in class ScaledArrayEngine<S,T> which represents both the data manager and its column class. It can do that, because the virtual column engine ScaledArrayEngine can handle only one column.

In the synopsis of class DataManager it is described how the (derived) DataManagerColumn objects gets created and deleted.

DataManagerColumn defines various virtual functions to get or put (slices) of data in a column. These functions are called by the table column classes ScalarColumnData and ArrayColumnData. It does not define functions create, open, flush and prepare like those defined in DataManager. It is left to the derived classes to define those as needed and to interact properly with their data manager object.

The get/put interface has changed per 1-Sep-2017. The old interface for ArrayColumn::getArray worked as follows:

1. ArrayColumn calls (virtual) BaseColumn::get passing the array as a void*. void* is used to support the derived RefColumn class which is not templated.
2. BaseColumn::get calls (virtual) DataManagerColumn::getArrayV. This function can be implemented by a derived storage manager or virtual column engine class.
3. Storage managers derive from StManColumn. Its getArrayV function calls the appropriate getArrayXXV function where XX is the data type (e.g. Int). These getArrayXXV functions are implemented in the storage managers.
4. Virtual column engines derive from the templated VirtArrCol class which implements getArrayV by calling a templated virtual getArray function.

The old interface for a function such as getArrayColumn works more or less the same. However, this function does not need to be implemented by a data manager. ArrayColumn will first ask the data manager if it supports getting an entire array column. If not, ArrayColumn will call getArray for each row. Functions such as getSlice, etc. work similarly.

A new interface has been developed which should result in a smaller code base and simpler classes. The new interface could be developed thanks to same Array enhancements making it possible to use quite some Array functionality in non-templated classes. The new interface works differently in a number of points:

- Arrays are passed as ArrayBase* instead of void* making it possible to get shapes, etc. in a non-templated way.
- ArrayColumn does not ask anymore if a data manager supports getArrayColumn. Instead, the default implementation in DataManagerColumn::getArrayColumnV will call getArrayV repetitively.
- The StManColumn interface is not really necessary anymore.

However, some plug-in data managers exist outside the Casacore repository (e.g., LofarStMan and AdiosStMan). It should be possible to build and use them for some time with the old and new interface. To make this possible the new interface has to be backward compatible for some time. This is achieved by:

- StManColumn is maintained (but getArrayV takes ArrayBase&, not void*). It calls getArrayXXV(void*) depending on the data type. A storage manager can implemented getArrayV itself bypassing StManColumn.
- Functions such as getArrayColumn are a bit more complicated. StManColumn::getArrayColumnV calls getArrayColumnXXV, which calls DataManager::getArrayColumnAB doing the getArrayV per row. A derived class can have getArrayColumnXXV implemented.

### Motivation

An abstract base class is needed to support multiple data managers in the table system

Definition at line 148 of file DataManagerColumn.h.

## Constructor & Destructor Documentation

## DataManagerColumn() [1/2]

casacore::DataManagerColumn::DataManagerColumn | ( |  | ) |

inline

Create a column.

Definition at line 153 of file DataManagerColumn.h.

References casacore::False, and isFixedShape_p.

Referenced by DataManagerColumn(), casacore::VirtualTaQLColumn::makeIndArrColumn(), casacore::VirtualTaQLColumn::makeScalarColumn(), and operator=().

## ~DataManagerColumn()

virtual casacore::DataManagerColumn::~DataManagerColumn | ( |  | ) |

virtual

Frees up the storage.

## DataManagerColumn() [2/2]

casacore::DataManagerColumn::DataManagerColumn | ( | const DataManagerColumn & |  | ) |

delete

The copy constructor cannot be used for this base class.

References DataManagerColumn().

## Member Function Documentation

## canChangeShape()

virtual Bool casacore::DataManagerColumn::canChangeShape | ( |  | ) | const

virtual

Can the data manager handle chaging the shape of an existing array?

Default is no.

Reimplemented in casacore::Adios2StManColumn, casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMIndColumn, casacore::MSMIndColumn, casacore::SiscoStManColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumnIndArrayAipsIO, and casacore::TSMDataColumn.

## columnCache()

ColumnCache & casacore::DataManagerColumn::columnCache | ( |  | ) |

inline

Get access to the ColumnCache object.

Definition at line 232 of file DataManagerColumn.h.

References colCache_p.

## columnCachePtr()

const ColumnCache * casacore::DataManagerColumn::columnCachePtr | ( |  | ) | const

inline

Definition at line 234 of file DataManagerColumn.h.

References colCache_p.

## columnName()

const String & casacore::DataManagerColumn::columnName | ( |  | ) | const

inline

Get rhe column name.

Definition at line 429 of file DataManagerColumn.h.

References colName_p.

Referenced by casacore::ForwardColumn::ForwardColumn(), casacore::ForwardColumnIndexedRow::ForwardColumnIndexedRow(), casacore::VACEngine< T >::makeDirArrColumn(), casacore::BaseMappedArrayEngine< VirtualType, StoredType >::makeIndArrColumn(), casacore::VACEngine< T >::makeIndArrColumn(), casacore::VirtualTaQLColumn::makeIndArrColumn(), casacore::VirtualTaQLColumn::makeScalarColumn(), casacore::VSCEngine< T >::makeScalarColumn(), and casacore::BaseMappedArrayEngine< VirtualType, StoredType >::makeTableColumn().

## dataType()

virtual int casacore::DataManagerColumn::dataType | ( |  | ) | const

pure virtual

Get the data type of the column as defined in DataType.h.

Implemented in casacore::ForwardColumn, casacore::StManColumnBase, casacore::TSMColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

## dataTypeId()

virtual String casacore::DataManagerColumn::dataTypeId | ( |  | ) | const

virtual

Get the data type id of the column for dataType==TpOther.

The default implementation returns an emptry string. This function is required for virtual column engines handling non-standard data types. It is used to check the data type.

Reimplemented in casacore::ForwardColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by casacore::VirtualTaQLColumn::makeIndArrColumn().

## get() [1/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | Bool * | dataPtr )

inline

Get the scalar value in the given row.

These functions are non-virtual and are converted to their virtual getXX equivalent to achieve that a derived templated class (such as VirtualScalarColumn) does not have to declare and implement all these functions. The compiler complains about hiding virtual functions if you do not declare all virtual functions with the same name in a derived class.

Definition at line 246 of file DataManagerColumn.h.

References getBool().

## get() [2/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | Complex * | dataPtr )

inline

Definition at line 264 of file DataManagerColumn.h.

References getComplex().

## get() [3/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | DComplex * | dataPtr )

inline

Definition at line 266 of file DataManagerColumn.h.

References getDComplex().

## get() [4/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | double * | dataPtr )

inline

Definition at line 262 of file DataManagerColumn.h.

References getdouble().

## get() [5/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | float * | dataPtr )

inline

Definition at line 260 of file DataManagerColumn.h.

References getfloat().

## get() [6/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | Int * | dataPtr )

inline

Definition at line 254 of file DataManagerColumn.h.

References getInt().

## get() [7/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | Int64 * | dataPtr )

inline

Definition at line 258 of file DataManagerColumn.h.

References getInt64().

## get() [8/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | Short * | dataPtr )

inline

Definition at line 250 of file DataManagerColumn.h.

References getShort().

## get() [9/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | String * | dataPtr )

inline

Definition at line 268 of file DataManagerColumn.h.

References getString().

## get() [10/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | uChar * | dataPtr )

inline

Definition at line 248 of file DataManagerColumn.h.

References getuChar().

## get() [11/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | uInt * | dataPtr )

inline

Definition at line 256 of file DataManagerColumn.h.

References getuInt().

## get() [12/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | uShort * | dataPtr )

inline

Definition at line 252 of file DataManagerColumn.h.

References getuShort().

## get() [13/13]

void casacore::DataManagerColumn::get | ( | rownr_t | rownr,
|  | void * | dataPtr )

inline

This function is the get for all non-standard data types.

Definition at line 271 of file DataManagerColumn.h.

References getOther().

## getArrayColumnBase()

void casacore::DataManagerColumn::getArrayColumnBase | ( | ArrayBase & | data | ) |

protected

## getArrayColumnCellsBase()

void casacore::DataManagerColumn::getArrayColumnCellsBase | ( | const RefRows & | rownrs,
|  | ArrayBase & | data )

protected

## getArrayColumnCellsV()

virtual void casacore::DataManagerColumn::getArrayColumnCellsV | ( | const RefRows & | rownrs,
|  | ArrayBase & | data )

virtual

Get some array values in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn getColumn function). The default implementation does a getArrayV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## getArrayColumnV()

virtual void casacore::DataManagerColumn::getArrayColumnV | ( | ArrayBase & | data | ) |

virtual

Get all array values in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn getColumn function). The default implementation does a getArrayV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## getArrayV()

virtual void casacore::DataManagerColumn::getArrayV | ( | rownr_t | rownr,
|  | ArrayBase & | dataPtr )

virtual

Get the array value in the given row.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn get function). The default implementation throws an "invalid operation" exception.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::ISMIndColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::SiscoStManColumn, casacore::SSMDirColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumn, casacore::StManColumnArrayAipsIO, casacore::StManColumnIndArrayAipsIO, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::UvwStManColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, casacore::VirtualScalarColumnBase, and casacore::VirtualTaQLColumn.

Referenced by dyscostman::ThreadedDyscoColumn< DataType >::getArrayV().

## getBool()

virtual void casacore::DataManagerColumn::getBool | ( | rownr_t | rownr,
|  | Bool * | dataPtr )

protected virtual

Get the scalar value in the given row.

The default implementation throws an "invalid operation" exception.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getColumnSliceBase()

void casacore::DataManagerColumn::getColumnSliceBase | ( | const Slicer & | slicer,
|  | ArrayBase & | data )

protected

## getColumnSliceCellsBase()

void casacore::DataManagerColumn::getColumnSliceCellsBase | ( | const RefRows & | rownrs,
|  | const Slicer & | slicer,
|  | ArrayBase & | data )

protected

## getColumnSliceCellsV()

virtual void casacore::DataManagerColumn::getColumnSliceCellsV | ( | const RefRows & | rownrs,
|  | const Slicer & | slicer,
|  | ArrayBase & | data )

virtual

Get a section of some arrays in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn getColumn function). The default implementation does a getSliceV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## getColumnSliceV()

virtual void casacore::DataManagerColumn::getColumnSliceV | ( | const Slicer & | slicer,
|  | ArrayBase & | data )

virtual

Get a section of all arrays in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn getColumn function). The default implementation does a getSliceV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## getComplex()

virtual void casacore::DataManagerColumn::getComplex | ( | rownr_t | rownr,
|  | Complex * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getDComplex()

virtual void casacore::DataManagerColumn::getDComplex | ( | rownr_t | rownr,
|  | DComplex * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getdouble()

virtual void casacore::DataManagerColumn::getdouble | ( | rownr_t | rownr,
|  | double * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getfloat()

virtual void casacore::DataManagerColumn::getfloat | ( | rownr_t | rownr,
|  | float * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getInt()

virtual void casacore::DataManagerColumn::getInt | ( | rownr_t | rownr,
|  | Int * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::AntennaPairStManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getInt64()

virtual void casacore::DataManagerColumn::getInt64 | ( | rownr_t | rownr,
|  | Int64 * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getOther()

virtual void casacore::DataManagerColumn::getOther | ( | rownr_t | rownr,
|  | void * | dataPtr )

protected virtual

This function is the get for all non-standard data types.

Reimplemented in casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by get().

## getScalarColumnBase()

void casacore::DataManagerColumn::getScalarColumnBase | ( | ArrayBase & | dataPtr | ) |

protected

The default implementations of get and put functions.

## getScalarColumnCellsBase()

void casacore::DataManagerColumn::getScalarColumnCellsBase | ( | const RefRows & | rownrs,
|  | ArrayBase & | dataPtr )

protected

## getScalarColumnCellsV()

virtual void casacore::DataManagerColumn::getScalarColumnCellsV | ( | const RefRows & | rownrs,
|  | ArrayBase & | dataPtr )

virtual

Get some scalar values in the column.

The vector given in data has to have the correct length (which is guaranteed by the ScalarColumn getColumn function). The default implementation does a getXX per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ISMColumn, casacore::StManColumn, casacore::VirtualArrayColumnBase, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

## getScalarColumnV()

virtual void casacore::DataManagerColumn::getScalarColumnV | ( | ArrayBase & | dataPtr | ) |

virtual

Get all scalar values in the column.

The vector given in data has to have the correct length (which is guaranteed by the ScalarColumn getColumn function). The default implementation does a getXX per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::VirtualArrayColumnBase, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

## getShort()

virtual void casacore::DataManagerColumn::getShort | ( | rownr_t | rownr,
|  | Short * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getSliceArr()

void casacore::DataManagerColumn::getSliceArr | ( | rownr_t | row,
|  | const Slicer & | section,
|  | std::shared_ptr< ArrayBase > & | fullArr,
|  | ArrayBase & | arr )

private

Get a slice from the array in the given row.

It reads the full array in the possibly reshaped ArrayBase object.

## getSliceBase()

void casacore::DataManagerColumn::getSliceBase | ( | rownr_t | rownr,
|  | const Slicer & | slicer,
|  | ArrayBase & | data )

protected

## getSliceV()

virtual void casacore::DataManagerColumn::getSliceV | ( | rownr_t | rownr,
|  | const Slicer & | slicer,
|  | ArrayBase & | data )

virtual

Get a section of the array in the given row.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn getSlice function). The default implementation does getArrayV and takes the slice.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMIndColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::SSMIndColumn, casacore::StManColumn, casacore::StManColumnIndArrayAipsIO, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## getString()

virtual void casacore::DataManagerColumn::getString | ( | rownr_t | rownr,
|  | String * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getuChar()

virtual void casacore::DataManagerColumn::getuChar | ( | rownr_t | rownr,
|  | uChar * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getuInt()

virtual void casacore::DataManagerColumn::getuInt | ( | rownr_t | rownr,
|  | uInt * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## getuShort()

virtual void casacore::DataManagerColumn::getuShort | ( | rownr_t | rownr,
|  | uShort * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualScalarColumn< T >, casacore::VirtualScalarColumn< Double >, and casacore::VirtualTaQLColumn.

Referenced by get().

## isFixedShape()

Bool casacore::DataManagerColumn::isFixedShape | ( |  | ) | const

inline

Is this a fixed shape column?

Definition at line 171 of file DataManagerColumn.h.

References isFixedShape_p.

Referenced by setIsFixedShape().

## isShapeDefined()

virtual Bool casacore::DataManagerColumn::isShapeDefined | ( | rownr_t | rownr | ) |

virtual

Is the value shape defined in the given row?

By default it returns True.

Reimplemented in casacore::AzElColumn, casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::HaDecColumn, casacore::ISMIndColumn, casacore::ItrfColumn, casacore::MSMIndColumn, casacore::SiscoStManColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumn, casacore::StManColumnIndArrayAipsIO, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::UVWJ2000Column, casacore::VirtualArrayColumnBase, and casacore::VirtualTaQLColumn.

## isWritable()

virtual Bool casacore::DataManagerColumn::isWritable | ( |  | ) | const

virtual

Test if data can be put into this column.

This does not test if the data file is writable, only if it is in principle allowed to store data into the column. (It may not be allowed for virtual columns). The default is True.

Reimplemented in casacore::AntennaPairStManColumn, casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::SiscoStManColumn, casacore::StokesIStManColumn, casacore::UvwStManColumn, casacore::VACEngine< T >, casacore::VirtualArrayColumnBase, casacore::VirtualScalarColumnBase, casacore::VirtualTaQLColumn, casacore::VSCEngine< T >, and dyscostman::DyscoStManColumn.

## ndim()

virtual uInt casacore::DataManagerColumn::ndim | ( | rownr_t | rownr | ) |

virtual

Get the dimensionality of the item in the given row.

By default it returns shape(rownr).nelements().

Reimplemented in casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::ISMIndColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::RetypedArrayEngine< VirtualType, StoredType >, casacore::ScaledComplexData< VirtualType, StoredType >, casacore::SSMColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumn, casacore::StManColumnArrayAipsIO, casacore::StManColumnIndArrayAipsIO, and casacore::VirtualTaQLColumn.

## operator=()

DataManagerColumn & casacore::DataManagerColumn::operator= | ( | const DataManagerColumn & |  | ) |

delete

Assignment cannot be used for this base class.

References DataManagerColumn().

## put() [1/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const Bool * | dataPtr )

inline

Put the scalar value into the given row.

These functions are non-virtual and are converted to their virtual putXX equivalent to achieve that a derived templated class (such as VirtualScalarColumn) does not have to declare and implement all these functions. The compiler complains about hiding virtual functions if you do not declare all virtual functions with the same name in a derived class.

Definition at line 283 of file DataManagerColumn.h.

References putBool().

## put() [2/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const Complex * | dataPtr )

inline

Definition at line 301 of file DataManagerColumn.h.

References putComplex().

## put() [3/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const DComplex * | dataPtr )

inline

Definition at line 303 of file DataManagerColumn.h.

References putDComplex().

## put() [4/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const double * | dataPtr )

inline

Definition at line 299 of file DataManagerColumn.h.

References putdouble().

## put() [5/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const float * | dataPtr )

inline

Definition at line 297 of file DataManagerColumn.h.

References putfloat().

## put() [6/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const Int * | dataPtr )

inline

Definition at line 291 of file DataManagerColumn.h.

References putInt().

## put() [7/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const Int64 * | dataPtr )

inline

Definition at line 295 of file DataManagerColumn.h.

References putInt64().

## put() [8/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const Short * | dataPtr )

inline

Definition at line 287 of file DataManagerColumn.h.

References putShort().

## put() [9/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const String * | dataPtr )

inline

Definition at line 305 of file DataManagerColumn.h.

References putString().

## put() [10/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const uChar * | dataPtr )

inline

Definition at line 285 of file DataManagerColumn.h.

References putuChar().

## put() [11/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const uInt * | dataPtr )

inline

Definition at line 293 of file DataManagerColumn.h.

References putuInt().

## put() [12/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const uShort * | dataPtr )

inline

Definition at line 289 of file DataManagerColumn.h.

References putuShort().

## put() [13/13]

void casacore::DataManagerColumn::put | ( | rownr_t | rownr,
|  | const void * | dataPtr )

inline

This function is the put for all non-standard data types.

Definition at line 308 of file DataManagerColumn.h.

References putOther().

## putArrayColumnBase()

void casacore::DataManagerColumn::putArrayColumnBase | ( | const ArrayBase & | data | ) |

protected

## putArrayColumnCellsBase()

void casacore::DataManagerColumn::putArrayColumnCellsBase | ( | const RefRows & | rownrs,
|  | const ArrayBase & | data )

protected

## putArrayColumnCellsV()

virtual void casacore::DataManagerColumn::putArrayColumnCellsV | ( | const RefRows & | rownrs,
|  | const ArrayBase & | data )

virtual

Put some array values in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn getColumn function). The default implementation does a putArrayV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## putArrayColumnV()

virtual void casacore::DataManagerColumn::putArrayColumnV | ( | const ArrayBase & | data | ) |

virtual

Put all array values in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn putColumn function). The default implementation does a putArrayV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## putArrayV()

virtual void casacore::DataManagerColumn::putArrayV | ( | rownr_t | rownr,
|  | const ArrayBase & | data )

virtual

Put the array value into the given row.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn put function). The default implementation throws an "invalid operation" exception.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::ISMIndColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::SiscoStManColumn, casacore::SSMDirColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumn, casacore::StManColumnArrayAipsIO, casacore::StManColumnIndArrayAipsIO, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::UvwStManColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

Referenced by dyscostman::ThreadedDyscoColumn< DataType >::putArrayV().

## putBool()

virtual void casacore::DataManagerColumn::putBool | ( | rownr_t | rownr,
|  | const Bool * | dataPtr )

protected virtual

Put the scalar value into the given row.

The default implementation throws an "invalid operation" exception.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putColumnSliceBase()

void casacore::DataManagerColumn::putColumnSliceBase | ( | const Slicer & | slicer,
|  | const ArrayBase & | data )

protected

## putColumnSliceCellsBase()

void casacore::DataManagerColumn::putColumnSliceCellsBase | ( | const RefRows & | rownrs,
|  | const Slicer & | slicer,
|  | const ArrayBase & | data )

protected

## putColumnSliceCellsV()

virtual void casacore::DataManagerColumn::putColumnSliceCellsV | ( | const RefRows & | rownrs,
|  | const Slicer & | slicer,
|  | const ArrayBase & | data )

virtual

Put into a section of some arrays in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn putColumn function). The default implementation does a putSliceV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## putColumnSliceV()

virtual void casacore::DataManagerColumn::putColumnSliceV | ( | const Slicer & | slicer,
|  | const ArrayBase & | data )

virtual

Put into a section of all arrays in the column.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn putColumn function). The default implementation does a putSliceV per row.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## putComplex()

virtual void casacore::DataManagerColumn::putComplex | ( | rownr_t | rownr,
|  | const Complex * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putDComplex()

virtual void casacore::DataManagerColumn::putDComplex | ( | rownr_t | rownr,
|  | const DComplex * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putdouble()

virtual void casacore::DataManagerColumn::putdouble | ( | rownr_t | rownr,
|  | const double * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putfloat()

virtual void casacore::DataManagerColumn::putfloat | ( | rownr_t | rownr,
|  | const float * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putInt()

virtual void casacore::DataManagerColumn::putInt | ( | rownr_t | rownr,
|  | const Int * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::AntennaPairStManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putInt64()

virtual void casacore::DataManagerColumn::putInt64 | ( | rownr_t | rownr,
|  | const Int64 * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putOther()

virtual void casacore::DataManagerColumn::putOther | ( | rownr_t | rownr,
|  | const void * | dataPtr )

protected virtual

This function is the put for all non-standard data types.

Reimplemented in casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putScalarColumnBase()

void casacore::DataManagerColumn::putScalarColumnBase | ( | const ArrayBase & | dataPtr | ) |

protected

## putScalarColumnCellsBase()

void casacore::DataManagerColumn::putScalarColumnCellsBase | ( | const RefRows & | rownrs,
|  | const ArrayBase & | dataPtr )

protected

## putScalarColumnCellsV()

virtual void casacore::DataManagerColumn::putScalarColumnCellsV | ( | const RefRows & | rownrs,
|  | const ArrayBase & | dataPtr )

virtual

Put some scalar values in the column.

The vector given in data has to have the correct length (which is guaranteed by the ScalarColumn getColumn function). The default implementation does a putXX per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::StManColumn, casacore::VirtualArrayColumnBase, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

## putScalarColumnV()

virtual void casacore::DataManagerColumn::putScalarColumnV | ( | const ArrayBase & | dataPtr | ) |

virtual

Put all scalar values in the column.

The vector given in data has to have the correct length (which is guaranteed by the ScalarColumn putColumn function). The default implementation does a putXX per row.

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::VirtualArrayColumnBase, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

## putShort()

virtual void casacore::DataManagerColumn::putShort | ( | rownr_t | rownr,
|  | const Short * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putSliceArr()

void casacore::DataManagerColumn::putSliceArr | ( | rownr_t | row,
|  | const Slicer & | section,
|  | std::shared_ptr< ArrayBase > & | fullArr,
|  | const ArrayBase & | arr )

private

Put a slice into the array in the given row.

It reads and writes the full array in the possibly reshaped ArrayBase object.

## putSliceBase()

void casacore::DataManagerColumn::putSliceBase | ( | rownr_t | rownr,
|  | const Slicer & | slicer,
|  | const ArrayBase & | data )

protected

## putSliceV()

virtual void casacore::DataManagerColumn::putSliceV | ( | rownr_t | rownr,
|  | const Slicer & | slicer,
|  | const ArrayBase & | data )

virtual

Put into a section of the array in the given row.

The array given in data has to have the correct shape (which is guaranteed by the ArrayColumn putSlice function). The default implementation does get/putArrayV and puts the slice.

Reimplemented in casacore::Adios2StManColumn, casacore::Adios2StManColumnString, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMIndColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::SSMIndColumn, casacore::StManColumn, casacore::StManColumnIndArrayAipsIO, casacore::TSMDataColumn, casacore::VirtualArrayColumn< T >, casacore::VirtualArrayColumn< Bool >, casacore::VirtualArrayColumn< Complex >, casacore::VirtualArrayColumn< Double >, casacore::VirtualArrayColumn< Float >, casacore::VirtualArrayColumn< VirtualType >, and casacore::VirtualScalarColumnBase.

## putString()

virtual void casacore::DataManagerColumn::putString | ( | rownr_t | rownr,
|  | const String * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putuChar()

virtual void casacore::DataManagerColumn::putuChar | ( | rownr_t | rownr,
|  | const uChar * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putuInt()

virtual void casacore::DataManagerColumn::putuInt | ( | rownr_t | rownr,
|  | const uInt * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::TSMIdColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## putuShort()

virtual void casacore::DataManagerColumn::putuShort | ( | rownr_t | rownr,
|  | const uShort * | dataPtr )

protected virtual

Reimplemented in casacore::Adios2StManColumn, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMColumn, casacore::MSMColumn, casacore::SSMColumn, casacore::StManColumn, casacore::TSMDataColumn, casacore::VirtualScalarColumn< T >, and casacore::VirtualScalarColumn< Double >.

Referenced by put().

## setColumnName()

void casacore::DataManagerColumn::setColumnName | ( | const String & | colName | ) |

inline

Set the column name.

Definition at line 425 of file DataManagerColumn.h.

References colName_p.

## setFixedShapeColumn()

void casacore::DataManagerColumn::setFixedShapeColumn | ( | const IPosition & | shape | ) |

inline

Set the shape of all (fixed-shaped) arrays in the column.

Effectively it is the same as setShapeColumn, but it also sets the isFixedShape_p flag.

Definition at line 197 of file DataManagerColumn.h.

References isFixedShape_p, setShapeColumn(), shape(), and casacore::True.

## setIsFixedShape()

void casacore::DataManagerColumn::setIsFixedShape | ( | Bool | isFixedShape | ) |

inline

Set the isFixedShape flag.

Definition at line 167 of file DataManagerColumn.h.

References isFixedShape(), and isFixedShape_p.

## setMaxLength()

virtual void casacore::DataManagerColumn::setMaxLength | ( | uInt | maxLength | ) |

virtual

Set the maximum length of the value (can be used for strings).

By default the maximum length is ignored.

Reimplemented in casacore::SSMColumn, casacore::SSMDirColumn, casacore::SSMIndColumn, and casacore::VirtualTaQLColumn.

## setShape()

virtual void casacore::DataManagerColumn::setShape | ( | rownr_t | rownr,
|  | const IPosition & | shape )

virtual

Set the shape of an (variable-shaped) array in the given row.

By default it throws a "not possible" exception.

Reimplemented in casacore::Adios2StManColumn, casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::ISMIndColumn, casacore::MSMIndColumn, casacore::RetypedArrayEngine< VirtualType, StoredType >, casacore::ScaledComplexData< VirtualType, StoredType >, casacore::SiscoStManColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumn, casacore::StManColumnIndArrayAipsIO, casacore::TSMCoordColumn, casacore::TSMDataColumn, and casacore::VirtualArrayColumnBase.

References shape().

## setShapeColumn()

virtual void casacore::DataManagerColumn::setShapeColumn | ( | const IPosition & | shape | ) |

private virtual

Set the shape of all (fixed-shaped) arrays in the column.

By default it throws a "not possible" exception.

Reimplemented in casacore::Adios2StManColumn, casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::ISMColumn, casacore::ISMIndColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::RetypedArrayEngine< VirtualType, StoredType >, casacore::ScaledComplexData< VirtualType, StoredType >, casacore::SiscoStManColumn, casacore::SSMColumn, casacore::SSMIndColumn, casacore::StManColumnArrayAipsIO, casacore::StManColumnIndArrayAipsIO, casacore::StokesIStManColumn, casacore::TSMColumn, casacore::UvwStManColumn, casacore::VirtualArrayColumnBase, casacore::VirtualTaQLColumn, dyscostman::ThreadedDyscoColumn< DataType >, dyscostman::ThreadedDyscoColumn< float >, and dyscostman::ThreadedDyscoColumn< std::complex< float > >.

References shape().

Referenced by setFixedShapeColumn().

## setShapeTiled()

virtual void casacore::DataManagerColumn::setShapeTiled | ( | rownr_t | rownr,
|  | const IPosition & | shape,
|  | const IPosition & | tileShape )

virtual

Set the shape and tile shape of an (variable-shaped) array in the given row.

By default it ignores the tile shape (thus only sets the shape).

Reimplemented in casacore::StManColumn, and casacore::TSMDataColumn.

References shape(), and tileShape().

## shape()

virtual IPosition casacore::DataManagerColumn::shape | ( | rownr_t | rownr | ) |

virtual

Get the shape of the item in the given row.

By default it returns a zero-length IPosition (for a scalar value).

Reimplemented in casacore::Adios2StManColumn, casacore::AzElColumn, casacore::BaseMappedArrayEngine< VirtualType, StoredType >, casacore::BaseMappedArrayEngine< Bool, StoredType >, casacore::BaseMappedArrayEngine< Complex, Int >, casacore::BaseMappedArrayEngine< Float, Short >, casacore::ForwardColumn, casacore::ForwardColumnIndexedRow, casacore::HaDecColumn, casacore::ISMColumn, casacore::ISMIndColumn, casacore::ItrfColumn, casacore::MSMDirColumn, casacore::MSMIndColumn, casacore::RetypedArrayEngine< VirtualType, StoredType >, casacore::ScaledComplexData< VirtualType, StoredType >, casacore::SiscoStManColumn, casacore::SSMColumn, casacore::SSMIndColumn, casacore::SSMIndStringColumn, casacore::StManColumn, casacore::StManColumnArrayAipsIO, casacore::StManColumnIndArrayAipsIO, casacore::StokesIStManColumn, casacore::TSMCoordColumn, casacore::TSMDataColumn, casacore::UVWJ2000Column, casacore::UvwStManColumn, casacore::VirtualArrayColumnBase, and casacore::VirtualTaQLColumn.

Referenced by setFixedShapeColumn(), setShape(), setShapeColumn(), and setShapeTiled().

## throwGet()

void casacore::DataManagerColumn::throwGet | ( |  | ) | const

Throw an "invalid operation" exception for the default implementation of get.

Referenced by casacore::VirtScaCol_global_functions_get_putVirtualScalar::getVirtualScalar().

## throwPut()

void casacore::DataManagerColumn::throwPut | ( |  | ) | const

Throw an "invalid operation" exception for the default implementation of put.

Referenced by casacore::VirtScaCol_global_functions_get_putVirtualScalar::putVirtualScalar().

## tileShape()

virtual IPosition casacore::DataManagerColumn::tileShape | ( | rownr_t | rownr | ) |

virtual

Get the tile shape of the item in the given row.

By default it returns a zero-length IPosition.

Reimplemented in casacore::StManColumn, and casacore::TSMDataColumn.

Referenced by setShapeTiled().

## Member Data Documentation

## colCache_p

ColumnCache casacore::DataManagerColumn::colCache_p

private

Definition at line 512 of file DataManagerColumn.h.

Referenced by columnCache(), and columnCachePtr().

## colName_p

String casacore::DataManagerColumn::colName_p

private

Definition at line 511 of file DataManagerColumn.h.

Referenced by columnName(), and setColumnName().

## isFixedShape_p

Bool casacore::DataManagerColumn::isFixedShape_p

private

Definition at line 510 of file DataManagerColumn.h.

Referenced by DataManagerColumn(), isFixedShape(), setFixedShapeColumn(), and setIsFixedShape().

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

- tables/DataMan/DataManagerColumn.h