#include <VirtScaCol.h>
Inheritance diagram for casa::VirtualScalarColumn< T >:


Internal
VirtualScalarColumn handles a virtual column containing a scalar.
VirtualScalarColumn is the abstract base class to handle a scalar column for a virtual column engine. It is derived from DataManagerColumn and reimplements some virtual functions to make life easier for the derived classes. It does the following:
This class reimplements some virtual functions implemented by DataManagerColumn and types the data argument. In that way they are easier to implement in derived classes. Furthermore they allow default implementations.
static String dataTypeId(); // unique name of the class
Definition at line 126 of file VirtScaCol.h.
Public Member Functions | |
| VirtualScalarColumn () | |
| Create a column. | |
| virtual | ~VirtualScalarColumn () |
| Frees up the storage. | |
| int | dataType () const |
| Return the data type of the column. | |
| String | dataTypeId () const |
| Return the data type Id of the column. | |
| virtual Bool | isWritable () const |
| By default no data can be put in a virtual column. | |
Protected Member Functions | |
| Bool | canAccessScalarColumn (Bool &reask) const |
| The class can handle a get/putScalarColumn. | |
| virtual void | get (uInt rownr, T &data)=0 |
| Get the scalar value in the given row. | |
| virtual void | put (uInt rownr, const T &data) |
| Put the scalar value into the given row. | |
| virtual void | getScalarColumn (Vector< T > &data) |
| Get all scalar values in the column. | |
| virtual void | putScalarColumn (const Vector< T > &data) |
| Put all scalar values in the column. | |
| virtual uInt | getBlock (uInt rownr, uInt nrmax, T *dataPtr) |
| Get scalars from the given row on with a maximum of nrmax values. | |
| virtual void | putBlock (uInt rownr, uInt nrmax, const T *dataPtr) |
| Put nrmax scalars from the given row on. | |
Private Member Functions | |
| void | getScalarColumnV (void *dataPtr) |
| Implement the virtual functions defined in DataManagerColumn. | |
| void | putScalarColumnV (const void *dataPtr) |
| Implement the virtual functions defined in DataManagerColumn. | |
| uInt | getBlockV (uInt rownr, uInt nrmax, void *dataPtr) |
| Implement the virtual functions defined in DataManagerColumn. | |
| void | putBlockV (uInt rownr, uInt nrmax, const void *dataPtr) |
| Implement the virtual functions defined in DataManagerColumn. | |
| VirtualScalarColumn (const VirtualScalarColumn< T > &) | |
| The object cannot be copied. | |
| VirtualScalarColumn< T > & | operator= (const VirtualScalarColumn< T > &) |
| The object cannot be assigned to. | |
| void | getBoolV (uInt rownr, Bool *dataPtr) |
| Implement the virtual functions defined in DataManagerColumn. | |
| void | getuCharV (uInt rownr, uChar *dataPtr) |
| void | getShortV (uInt rownr, Short *dataPtr) |
| void | getuShortV (uInt rownr, uShort *dataPtr) |
| void | getIntV (uInt rownr, Int *dataPtr) |
| void | getuIntV (uInt rownr, uInt *dataPtr) |
| void | getfloatV (uInt rownr, float *dataPtr) |
| void | getdoubleV (uInt rownr, double *dataPtr) |
| void | getComplexV (uInt rownr, Complex *dataPtr) |
| void | getDComplexV (uInt rownr, DComplex *dataPtr) |
| void | getStringV (uInt rownr, String *dataPtr) |
| void | getOtherV (uInt rownr, void *dataPtr) |
| This function is the get for all non-standard data types. | |
| void | putBoolV (uInt rownr, const Bool *dataPtr) |
| Implement the virtual functions defined in DataManagerColumn. | |
| void | putuCharV (uInt rownr, const uChar *dataPtr) |
| void | putShortV (uInt rownr, const Short *dataPtr) |
| void | putuShortV (uInt rownr, const uShort *dataPtr) |
| void | putIntV (uInt rownr, const Int *dataPtr) |
| void | putuIntV (uInt rownr, const uInt *dataPtr) |
| void | putfloatV (uInt rownr, const float *dataPtr) |
| void | putdoubleV (uInt rownr, const double *dataPtr) |
| void | putComplexV (uInt rownr, const Complex *dataPtr) |
| void | putDComplexV (uInt rownr, const DComplex *dataPtr) |
| void | putStringV (uInt rownr, const String *dataPtr) |
| void | putOtherV (uInt rownr, const void *dataPtr) |
| This function is the put for all non-standard data types. | |
| casa::VirtualScalarColumn< T >::VirtualScalarColumn | ( | ) | [inline] |
| virtual casa::VirtualScalarColumn< T >::~VirtualScalarColumn | ( | ) | [virtual] |
Frees up the storage.
| casa::VirtualScalarColumn< T >::VirtualScalarColumn | ( | const VirtualScalarColumn< T > & | ) | [private] |
The object cannot be copied.
| int casa::VirtualScalarColumn< T >::dataType | ( | ) | const [virtual] |
| String casa::VirtualScalarColumn< T >::dataTypeId | ( | ) | const [virtual] |
| virtual Bool casa::VirtualScalarColumn< T >::isWritable | ( | ) | const [virtual] |
| Bool casa::VirtualScalarColumn< T >::canAccessScalarColumn | ( | Bool & | reask | ) | const [protected, virtual] |
| virtual void casa::VirtualScalarColumn< T >::get | ( | uInt | rownr, | |
| T & | data | |||
| ) | [protected, pure virtual] |
Get the scalar value in the given row.
| virtual void casa::VirtualScalarColumn< T >::put | ( | uInt | rownr, | |
| const T & | data | |||
| ) | [protected, virtual] |
Put the scalar value into the given row.
The default implementation throws an exception.
| virtual void casa::VirtualScalarColumn< T >::getScalarColumn | ( | Vector< T > & | data | ) | [protected, virtual] |
Get all scalar values in the column.
The argument dataPtr is in fact a Vector<T>*, but a void* is needed to be generic. The vector pointed to by dataPtr has to have the correct length (which is guaranteed by the ScalarColumn getColumn function).
| virtual void casa::VirtualScalarColumn< T >::putScalarColumn | ( | const Vector< T > & | data | ) | [protected, virtual] |
Put all scalar values in the column.
The argument dataPtr is in fact a const Vector<T>*, but a const void* is needed to be generic. The vector pointed to by dataPtr has to have the correct length (which is guaranteed by the ScalarColumn putColumn function).
| virtual uInt casa::VirtualScalarColumn< T >::getBlock | ( | uInt | rownr, | |
| uInt | nrmax, | |||
| T * | dataPtr | |||
| ) | [protected, virtual] |
Get scalars from the given row on with a maximum of nrmax values.
It returns the actual number of values got. This can be used to get an entire column of scalars or to get a part of a column (for a cache for example). The argument dataPtr is in fact a T*, but a void* is needed to be generic. It must have length nrmax.
| virtual void casa::VirtualScalarColumn< T >::putBlock | ( | uInt | rownr, | |
| uInt | nrmax, | |||
| const T * | dataPtr | |||
| ) | [protected, virtual] |
Put nrmax scalars from the given row on.
It returns the actual number of values put. This can be used to put an entire column of scalars or to put a part of a column (for a cache for example). The argument dataPtr is in fact a const T*, but a const void* is needed to be generic. It must have length nrmax.
| void casa::VirtualScalarColumn< T >::getBoolV | ( | uInt | rownr, | |
| Bool * | dataPtr | |||
| ) | [private, virtual] |
Implement the virtual functions defined in DataManagerColumn.
Get the scalar value in the given row.
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getuCharV | ( | uInt | rownr, | |
| uChar * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getShortV | ( | uInt | rownr, | |
| Short * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getuShortV | ( | uInt | rownr, | |
| uShort * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getIntV | ( | uInt | rownr, | |
| Int * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getuIntV | ( | uInt | rownr, | |
| uInt * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getfloatV | ( | uInt | rownr, | |
| float * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getdoubleV | ( | uInt | rownr, | |
| double * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getComplexV | ( | uInt | rownr, | |
| Complex * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getDComplexV | ( | uInt | rownr, | |
| DComplex * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getStringV | ( | uInt | rownr, | |
| String * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getOtherV | ( | uInt | rownr, | |
| void * | dataPtr | |||
| ) | [private, virtual] |
This function is the get for all non-standard data types.
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putBoolV | ( | uInt | rownr, | |
| const Bool * | dataPtr | |||
| ) | [private, virtual] |
Implement the virtual functions defined in DataManagerColumn.
Put the scalar value into the given row.
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putuCharV | ( | uInt | rownr, | |
| const uChar * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putShortV | ( | uInt | rownr, | |
| const Short * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putuShortV | ( | uInt | rownr, | |
| const uShort * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putIntV | ( | uInt | rownr, | |
| const Int * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putuIntV | ( | uInt | rownr, | |
| const uInt * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putfloatV | ( | uInt | rownr, | |
| const float * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putdoubleV | ( | uInt | rownr, | |
| const double * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putComplexV | ( | uInt | rownr, | |
| const Complex * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putDComplexV | ( | uInt | rownr, | |
| const DComplex * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putStringV | ( | uInt | rownr, | |
| const String * | dataPtr | |||
| ) | [private, virtual] |
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putOtherV | ( | uInt | rownr, | |
| const void * | dataPtr | |||
| ) | [private, virtual] |
This function is the put for all non-standard data types.
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::getScalarColumnV | ( | void * | dataPtr | ) | [private, virtual] |
Implement the virtual functions defined in DataManagerColumn.
Get all scalar values in the column.
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putScalarColumnV | ( | const void * | dataPtr | ) | [private, virtual] |
Implement the virtual functions defined in DataManagerColumn.
Put all scalar values in the column.
Reimplemented from casa::DataManagerColumn.
| uInt casa::VirtualScalarColumn< T >::getBlockV | ( | uInt | rownr, | |
| uInt | nrmax, | |||
| void * | dataPtr | |||
| ) | [private, virtual] |
Implement the virtual functions defined in DataManagerColumn.
Get scalars from the given row on with a maximum of nrmax values.
Reimplemented from casa::DataManagerColumn.
| void casa::VirtualScalarColumn< T >::putBlockV | ( | uInt | rownr, | |
| uInt | nrmax, | |||
| const void * | dataPtr | |||
| ) | [private, virtual] |
Implement the virtual functions defined in DataManagerColumn.
Put nrmax scalars from the given row on.
Reimplemented from casa::DataManagerColumn.
| VirtualScalarColumn<T>& casa::VirtualScalarColumn< T >::operator= | ( | const VirtualScalarColumn< T > & | ) | [private] |
The object cannot be assigned to.
1.5.1