Memory storage manager for table arrays. More...
#include <MSMDirColumn.h>
Public Member Functions | |
MSMDirColumn (MSMBase *smptr, int dataType) | |
Create a column of the given type. | |
~MSMDirColumn () | |
Frees up the storage. | |
Bool | canAccessSlice (Bool &reask) const |
It can handle access to a slice in a cell. | |
Bool | canAccessArrayColumn (Bool &reask) const |
It can handle access to an entire column. | |
void | setShapeColumn (const IPosition &shape) |
Set the (fixed) shape of the arrays in the entire column. | |
void | addRow (uInt newNrrow, uInt oldNrrow) |
Add (newNrrow-oldNrrow) rows to the column. | |
uInt | ndim (uInt rownr) |
Get the dimensionality of the item in the given row. | |
IPosition | shape (uInt rownr) |
Get the shape of the array in the given row. | |
void | getArrayBoolV (uInt rownr, Array< Bool > *dataPtr) |
Get an array value in the given row. | |
void | getArrayuCharV (uInt rownr, Array< uChar > *dataPtr) |
void | getArrayShortV (uInt rownr, Array< Short > *dataPtr) |
void | getArrayuShortV (uInt rownr, Array< uShort > *dataPtr) |
void | getArrayIntV (uInt rownr, Array< Int > *dataPtr) |
void | getArrayuIntV (uInt rownr, Array< uInt > *dataPtr) |
void | getArrayfloatV (uInt rownr, Array< float > *dataPtr) |
void | getArraydoubleV (uInt rownr, Array< double > *dataPtr) |
void | getArrayComplexV (uInt rownr, Array< Complex > *dataPtr) |
void | getArrayDComplexV (uInt rownr, Array< DComplex > *dataPtr) |
void | getArrayStringV (uInt rownr, Array< String > *dataPtr) |
void | putArrayBoolV (uInt rownr, const Array< Bool > *dataPtr) |
Put an array value into the given row. | |
void | putArrayuCharV (uInt rownr, const Array< uChar > *dataPtr) |
void | putArrayShortV (uInt rownr, const Array< Short > *dataPtr) |
void | putArrayuShortV (uInt rownr, const Array< uShort > *dataPtr) |
void | putArrayIntV (uInt rownr, const Array< Int > *dataPtr) |
void | putArrayuIntV (uInt rownr, const Array< uInt > *dataPtr) |
void | putArrayfloatV (uInt rownr, const Array< float > *dataPtr) |
void | putArraydoubleV (uInt rownr, const Array< double > *dataPtr) |
void | putArrayComplexV (uInt rownr, const Array< Complex > *dataPtr) |
void | putArrayDComplexV (uInt rownr, const Array< DComplex > *dataPtr) |
void | putArrayStringV (uInt rownr, const Array< String > *dataPtr) |
void | getSliceBoolV (uInt rownr, const Slicer &, Array< Bool > *dataPtr) |
Get a section of the array in the given row. | |
void | getSliceuCharV (uInt rownr, const Slicer &, Array< uChar > *dataPtr) |
void | getSliceShortV (uInt rownr, const Slicer &, Array< Short > *dataPtr) |
void | getSliceuShortV (uInt rownr, const Slicer &, Array< uShort > *dataPtr) |
void | getSliceIntV (uInt rownr, const Slicer &, Array< Int > *dataPtr) |
void | getSliceuIntV (uInt rownr, const Slicer &, Array< uInt > *dataPtr) |
void | getSlicefloatV (uInt rownr, const Slicer &, Array< float > *dataPtr) |
void | getSlicedoubleV (uInt rownr, const Slicer &, Array< double > *dataPtr) |
void | getSliceComplexV (uInt rownr, const Slicer &, Array< Complex > *dataPtr) |
void | getSliceDComplexV (uInt rownr, const Slicer &, Array< DComplex > *dataPtr) |
void | getSliceStringV (uInt rownr, const Slicer &, Array< String > *dataPtr) |
void | putSliceBoolV (uInt rownr, const Slicer &, const Array< Bool > *dataPtr) |
Put into a section of the array in the given row. | |
void | putSliceuCharV (uInt rownr, const Slicer &, const Array< uChar > *dataPtr) |
void | putSliceShortV (uInt rownr, const Slicer &, const Array< Short > *dataPtr) |
void | putSliceuShortV (uInt rownr, const Slicer &, const Array< uShort > *dataPtr) |
void | putSliceIntV (uInt rownr, const Slicer &, const Array< Int > *dataPtr) |
void | putSliceuIntV (uInt rownr, const Slicer &, const Array< uInt > *dataPtr) |
void | putSlicefloatV (uInt rownr, const Slicer &, const Array< float > *dataPtr) |
void | putSlicedoubleV (uInt rownr, const Slicer &, const Array< double > *dataPtr) |
void | putSliceComplexV (uInt rownr, const Slicer &, const Array< Complex > *dataPtr) |
void | putSliceDComplexV (uInt rownr, const Slicer &, const Array< DComplex > *dataPtr) |
void | putSliceStringV (uInt rownr, const Slicer &, const Array< String > *dataPtr) |
void | getArrayColumnBoolV (Array< Bool > *dataPtr) |
Get all array values in the column. | |
void | getArrayColumnuCharV (Array< uChar > *dataPtr) |
void | getArrayColumnShortV (Array< Short > *dataPtr) |
void | getArrayColumnuShortV (Array< uShort > *dataPtr) |
void | getArrayColumnIntV (Array< Int > *dataPtr) |
void | getArrayColumnuIntV (Array< uInt > *dataPtr) |
void | getArrayColumnfloatV (Array< float > *dataPtr) |
void | getArrayColumndoubleV (Array< double > *dataPtr) |
void | getArrayColumnComplexV (Array< Complex > *dataPtr) |
void | getArrayColumnDComplexV (Array< DComplex > *dataPtr) |
void | getArrayColumnStringV (Array< String > *dataPtr) |
void | putArrayColumnBoolV (const Array< Bool > *dataPtr) |
Put all arrays in the column. | |
void | putArrayColumnuCharV (const Array< uChar > *dataPtr) |
void | putArrayColumnShortV (const Array< Short > *dataPtr) |
void | putArrayColumnuShortV (const Array< uShort > *dataPtr) |
void | putArrayColumnIntV (const Array< Int > *dataPtr) |
void | putArrayColumnuIntV (const Array< uInt > *dataPtr) |
void | putArrayColumnfloatV (const Array< float > *dataPtr) |
void | putArrayColumndoubleV (const Array< double > *dataPtr) |
void | putArrayColumnComplexV (const Array< Complex > *dataPtr) |
void | putArrayColumnDComplexV (const Array< DComplex > *dataPtr) |
void | putArrayColumnStringV (const Array< String > *dataPtr) |
void | remove (uInt rownr) |
Remove the value in the given row. | |
void | doCreate (uInt nrrow) |
Let the column create its arrays. | |
Bool | ok () const |
Check if the class invariants still hold. | |
Private Member Functions | |
void | deleteArray (uInt rownr) |
Delete the array in the given row. | |
MSMDirColumn (const MSMDirColumn &) | |
Forbid copy constructor. | |
MSMDirColumn & | operator= (const MSMDirColumn &) |
Forbid assignment. | |
Private Attributes | |
uInt | seqnr_p |
The (unique) sequence number of the column. | |
IPosition | shape_p |
The shape of the array. | |
uInt | nrelem_p |
The nr of elements in the array. |
Memory storage manager for table arrays.
Internal
MSMDirColumn handles arrays in a table column. It only keeps them in memory, so they are not persistent.
Definition at line 65 of file MSMDirColumn.h.
casacore::MSMDirColumn::MSMDirColumn | ( | MSMBase * | smptr, | |
int | dataType | |||
) |
Create a column of the given type.
casacore::MSMDirColumn::~MSMDirColumn | ( | ) |
Frees up the storage.
casacore::MSMDirColumn::MSMDirColumn | ( | const MSMDirColumn & | ) | [private] |
Forbid copy constructor.
Add (newNrrow-oldNrrow) rows to the column.
Allocate the data arrays in these rows if the shape is fixed.
Reimplemented from casacore::MSMColumn.
It can handle access to an entire column.
Reimplemented from casacore::DataManagerColumn.
It can handle access to a slice in a cell.
Reimplemented from casacore::DataManagerColumn.
void casacore::MSMDirColumn::deleteArray | ( | uInt | rownr | ) | [private] |
Delete the array in the given row.
void casacore::MSMDirColumn::doCreate | ( | uInt | nrrow | ) | [virtual] |
Let the column create its arrays.
Reimplemented from casacore::MSMColumn.
Get an array value in the given row.
The buffer pointed to by dataPtr has to have the correct length (which is guaranteed by the ArrayColumn get function).
Reimplemented from casacore::StManColumn.
Get all array values in the column.
The buffer pointed to by dataPtr has to have the correct length (which is guaranteed by the ArrayColumn getColumn function).
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getArrayColumnComplexV | ( | Array< Complex > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getArrayColumnDComplexV | ( | Array< DComplex > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getArrayColumndoubleV | ( | Array< double > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getArrayColumnfloatV | ( | Array< float > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getArrayDComplexV | ( | uInt | rownr, | |
Array< DComplex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceBoolV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< Bool > * | dataPtr | |||
) | [virtual] |
Get a section of the array in the given row.
The buffer pointed to by dataPtr has to have the correct length (which is guaranteed by the ArrayColumn getSlice function).
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceComplexV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< Complex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceDComplexV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< DComplex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSlicedoubleV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< double > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSlicefloatV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< float > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceIntV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< Int > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceShortV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< Short > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceStringV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< String > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceuCharV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< uChar > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceuIntV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< uInt > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::getSliceuShortV | ( | uInt | rownr, | |
const Slicer & | , | |||
Array< uShort > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
Get the dimensionality of the item in the given row.
0 is returned if there is no array.
Reimplemented from casacore::DataManagerColumn.
Bool casacore::MSMDirColumn::ok | ( | ) | const [virtual] |
Check if the class invariants still hold.
Reimplemented from casacore::MSMColumn.
MSMDirColumn& casacore::MSMDirColumn::operator= | ( | const MSMDirColumn & | ) | [private] |
Forbid assignment.
Reimplemented from casacore::MSMColumn.
Put an array value into the given row.
The buffer pointed to by dataPtr has to have the correct length (which is guaranteed by the ArrayColumn put function).
Reimplemented from casacore::StManColumn.
Put all arrays in the column.
The buffer pointed to by dataPtr has to have the correct length (which is guaranteed by the ArrayColumn putColumn function).
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayColumnComplexV | ( | const Array< Complex > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayColumnDComplexV | ( | const Array< DComplex > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayColumndoubleV | ( | const Array< double > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayColumnfloatV | ( | const Array< float > * | dataPtr | ) | [virtual] |
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayComplexV | ( | uInt | rownr, | |
const Array< Complex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayDComplexV | ( | uInt | rownr, | |
const Array< DComplex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArraydoubleV | ( | uInt | rownr, | |
const Array< double > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayfloatV | ( | uInt | rownr, | |
const Array< float > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayShortV | ( | uInt | rownr, | |
const Array< Short > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayStringV | ( | uInt | rownr, | |
const Array< String > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayuCharV | ( | uInt | rownr, | |
const Array< uChar > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putArrayuShortV | ( | uInt | rownr, | |
const Array< uShort > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceBoolV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< Bool > * | dataPtr | |||
) | [virtual] |
Put into a section of the array in the given row.
The buffer pointed to by dataPtr has to have the correct length (which is guaranteed by the ArrayColumn putSlice function).
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceComplexV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< Complex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceDComplexV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< DComplex > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSlicedoubleV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< double > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSlicefloatV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< float > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceIntV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< Int > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceShortV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< Short > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceStringV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< String > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceuCharV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< uChar > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceuIntV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< uInt > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::putSliceuShortV | ( | uInt | rownr, | |
const Slicer & | , | |||
const Array< uShort > * | dataPtr | |||
) | [virtual] |
Reimplemented from casacore::StManColumn.
void casacore::MSMDirColumn::remove | ( | uInt | rownr | ) | [virtual] |
Remove the value in the given row.
Reimplemented from casacore::MSMColumn.
void casacore::MSMDirColumn::setShapeColumn | ( | const IPosition & | shape | ) | [virtual] |
Set the (fixed) shape of the arrays in the entire column.
Reimplemented from casacore::DataManagerColumn.
Get the shape of the array in the given row.
An zero-length IPosition is returned if there is no array.
Reimplemented from casacore::DataManagerColumn.
uInt casacore::MSMDirColumn::nrelem_p [private] |
The nr of elements in the array.
Definition at line 223 of file MSMDirColumn.h.
uInt casacore::MSMDirColumn::seqnr_p [private] |
The (unique) sequence number of the column.
Definition at line 219 of file MSMDirColumn.h.
IPosition casacore::MSMDirColumn::shape_p [private] |
The shape of the array.
Definition at line 221 of file MSMDirColumn.h.