casacore
Loading...
Searching...
No Matches
casacore::VirtualScalarColumn< T > Class Template Referenceabstract

#include <VirtScaCol.h>

Public Member Functions

 VirtualScalarColumn ()
 Create a column.
virtual ~VirtualScalarColumn ()
 Frees up the storage.
 VirtualScalarColumn (const VirtualScalarColumn< T > &)=delete
 The object cannot be copied.
VirtualScalarColumn< T > & operator= (const VirtualScalarColumn< T > &)=delete
 The object cannot be assigned to.
int dataType () const override
 Return the data type of the column.
String dataTypeId () const override
 Return the data type Id of the column.
virtual void get (rownr_t rownr, T &data)=0
 Let a derived class get the scalar value in the given row.
virtual void put (rownr_t rownr, const T &data)
 Let a derived class put the scalar value into the given row.
Public Member Functions inherited from casacore::VirtualScalarColumnBase
 VirtualScalarColumnBase ()
 Create a column.
virtual ~VirtualScalarColumnBase ()
virtual Bool isWritable () const
 By default no data can be put in a virtual column.
Public Member Functions inherited from casacore::DataManagerColumn
 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 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.
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.

Private Member Functions

void getBool (rownr_t rownr, Bool *dataPtr) override
 Implement the virtual functions defined in DataManagerColumn.
void getuChar (rownr_t rownr, uChar *dataPtr) override
void getShort (rownr_t rownr, Short *dataPtr) override
void getuShort (rownr_t rownr, uShort *dataPtr) override
void getInt (rownr_t rownr, Int *dataPtr) override
void getuInt (rownr_t rownr, uInt *dataPtr) override
void getInt64 (rownr_t rownr, Int64 *dataPtr) override
void getfloat (rownr_t rownr, float *dataPtr) override
void getdouble (rownr_t rownr, double *dataPtr) override
void getComplex (rownr_t rownr, Complex *dataPtr) override
void getDComplex (rownr_t rownr, DComplex *dataPtr) override
void getString (rownr_t rownr, String *dataPtr) override
void getOther (rownr_t rownr, void *dataPtr) override
 This function is the get for all non-standard data types.
void putBool (rownr_t rownr, const Bool *dataPtr) override
 Implement the virtual functions defined in DataManagerColumn.
void putuChar (rownr_t rownr, const uChar *dataPtr) override
void putShort (rownr_t rownr, const Short *dataPtr) override
void putuShort (rownr_t rownr, const uShort *dataPtr) override
void putInt (rownr_t rownr, const Int *dataPtr) override
void putuInt (rownr_t rownr, const uInt *dataPtr) override
void putInt64 (rownr_t rownr, const Int64 *dataPtr) override
void putfloat (rownr_t rownr, const float *dataPtr) override
void putdouble (rownr_t rownr, const double *dataPtr) override
void putComplex (rownr_t rownr, const Complex *dataPtr) override
void putDComplex (rownr_t rownr, const DComplex *dataPtr) override
void putString (rownr_t rownr, const String *dataPtr) override
void putOther (rownr_t rownr, const void *dataPtr) override
 This function is the put for all non-standard data types.
void getScalarColumnV (ArrayBase &dataPtr) override
 Get all scalar values in the column.
void putScalarColumnV (const ArrayBase &dataPtr) override
 Put all scalar values in the column.
void getScalarColumnCellsV (const RefRows &rownrs, ArrayBase &dataPtr) override
 Get some scalar values in the column.
void putScalarColumnCellsV (const RefRows &rownrs, const ArrayBase &dataPtr) override
 Put some scalar values in the column.

Additional Inherited Members

Protected Member Functions inherited from casacore::VirtualScalarColumnBase
virtual void getArrayV (rownr_t rownr, ArrayBase &dataPtr)
 The array access functions throw an exception.
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.
Protected Member Functions inherited from casacore::DataManagerColumn
template<typename T>
void getValueGeneric (rownr_t rownr, T *dataPtr)
template<typename T>
void putValueGeneric (rownr_t rownr, const T *dataPtr)
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)

Detailed Description

template<class T>
class casacore::VirtualScalarColumn< T >

Definition at line 149 of file VirtScaCol.h.

Constructor & Destructor Documentation

◆ VirtualScalarColumn() [1/2]

template<class T>
casacore::VirtualScalarColumn< T >::VirtualScalarColumn ( )
inline

Create a column.

Definition at line 152 of file VirtScaCol.h.

Referenced by operator=(), and VirtualScalarColumn().

◆ ~VirtualScalarColumn()

template<class T>
virtual casacore::VirtualScalarColumn< T >::~VirtualScalarColumn ( )
virtual

Frees up the storage.

◆ VirtualScalarColumn() [2/2]

template<class T>
casacore::VirtualScalarColumn< T >::VirtualScalarColumn ( const VirtualScalarColumn< T > & )
delete

The object cannot be copied.

References VirtualScalarColumn().

Member Function Documentation

◆ dataType()

template<class T>
int casacore::VirtualScalarColumn< T >::dataType ( ) const
overridevirtual

Return the data type of the column.

Implements casacore::DataManagerColumn.

Referenced by casacore::VSCEngine< T >::makeScalarColumn().

◆ dataTypeId()

template<class T>
String casacore::VirtualScalarColumn< T >::dataTypeId ( ) const
overridevirtual

Return the data type Id of the column.

Reimplemented from casacore::DataManagerColumn.

◆ get()

template<class T>
virtual void casacore::VirtualScalarColumn< T >::get ( rownr_t rownr,
T & data )
pure virtual

Let a derived class get the scalar value in the given row.

Implemented in casacore::HourangleColumn, casacore::LASTColumn, and casacore::ParAngleColumn.

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

◆ getBool()

template<class T>
void casacore::VirtualScalarColumn< T >::getBool ( rownr_t rownr,
Bool * dataPtr )
inlineoverrideprivatevirtual

Implement the virtual functions defined in DataManagerColumn.

Get the scalar value in the given row.

Reimplemented from casacore::DataManagerColumn.

Definition at line 180 of file VirtScaCol.h.

◆ getComplex()

template<class T>
void casacore::VirtualScalarColumn< T >::getComplex ( rownr_t rownr,
Complex * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 193 of file VirtScaCol.h.

◆ getDComplex()

template<class T>
void casacore::VirtualScalarColumn< T >::getDComplex ( rownr_t rownr,
DComplex * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 196 of file VirtScaCol.h.

◆ getdouble()

template<class T>
void casacore::VirtualScalarColumn< T >::getdouble ( rownr_t rownr,
double * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 190 of file VirtScaCol.h.

◆ getfloat()

template<class T>
void casacore::VirtualScalarColumn< T >::getfloat ( rownr_t rownr,
float * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 189 of file VirtScaCol.h.

◆ getInt()

template<class T>
void casacore::VirtualScalarColumn< T >::getInt ( rownr_t rownr,
Int * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 186 of file VirtScaCol.h.

◆ getInt64()

template<class T>
void casacore::VirtualScalarColumn< T >::getInt64 ( rownr_t rownr,
Int64 * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 188 of file VirtScaCol.h.

◆ getOther()

template<class T>
void casacore::VirtualScalarColumn< T >::getOther ( rownr_t rownr,
void * dataPtr )
overrideprivatevirtual

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

Reimplemented from casacore::DataManagerColumn.

◆ getScalarColumnCellsV()

template<class T>
void casacore::VirtualScalarColumn< T >::getScalarColumnCellsV ( const RefRows & rownrs,
ArrayBase & dataPtr )
overrideprivatevirtual

Get some scalar values in the column.

The default implementation loops over the rows.

Reimplemented from casacore::DataManagerColumn.

◆ getScalarColumnV()

template<class T>
void casacore::VirtualScalarColumn< T >::getScalarColumnV ( ArrayBase & dataPtr)
overrideprivatevirtual

Get all scalar values in the column.

The default implementation loops over the rows.

Reimplemented from casacore::DataManagerColumn.

◆ getShort()

template<class T>
void casacore::VirtualScalarColumn< T >::getShort ( rownr_t rownr,
Short * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 182 of file VirtScaCol.h.

◆ getString()

template<class T>
void casacore::VirtualScalarColumn< T >::getString ( rownr_t rownr,
String * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 199 of file VirtScaCol.h.

◆ getuChar()

template<class T>
void casacore::VirtualScalarColumn< T >::getuChar ( rownr_t rownr,
uChar * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 181 of file VirtScaCol.h.

◆ getuInt()

template<class T>
void casacore::VirtualScalarColumn< T >::getuInt ( rownr_t rownr,
uInt * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 187 of file VirtScaCol.h.

◆ getuShort()

template<class T>
void casacore::VirtualScalarColumn< T >::getuShort ( rownr_t rownr,
uShort * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 183 of file VirtScaCol.h.

◆ operator=()

template<class T>
VirtualScalarColumn< T > & casacore::VirtualScalarColumn< T >::operator= ( const VirtualScalarColumn< T > & )
delete

The object cannot be assigned to.

References VirtualScalarColumn().

◆ put()

template<class T>
virtual void casacore::VirtualScalarColumn< T >::put ( rownr_t rownr,
const T & data )
virtual

Let a derived class put the scalar value into the given row.

The default implementation throws an exception.

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

◆ putBool()

template<class T>
void casacore::VirtualScalarColumn< T >::putBool ( rownr_t rownr,
const Bool * dataPtr )
inlineoverrideprivatevirtual

Implement the virtual functions defined in DataManagerColumn.

Put the scalar value into the given row.

Reimplemented from casacore::DataManagerColumn.

Definition at line 209 of file VirtScaCol.h.

◆ putComplex()

template<class T>
void casacore::VirtualScalarColumn< T >::putComplex ( rownr_t rownr,
const Complex * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 236 of file VirtScaCol.h.

◆ putDComplex()

template<class T>
void casacore::VirtualScalarColumn< T >::putDComplex ( rownr_t rownr,
const DComplex * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 239 of file VirtScaCol.h.

◆ putdouble()

template<class T>
void casacore::VirtualScalarColumn< T >::putdouble ( rownr_t rownr,
const double * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 233 of file VirtScaCol.h.

◆ putfloat()

template<class T>
void casacore::VirtualScalarColumn< T >::putfloat ( rownr_t rownr,
const float * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 230 of file VirtScaCol.h.

◆ putInt()

template<class T>
void casacore::VirtualScalarColumn< T >::putInt ( rownr_t rownr,
const Int * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 221 of file VirtScaCol.h.

◆ putInt64()

template<class T>
void casacore::VirtualScalarColumn< T >::putInt64 ( rownr_t rownr,
const Int64 * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 227 of file VirtScaCol.h.

◆ putOther()

template<class T>
void casacore::VirtualScalarColumn< T >::putOther ( rownr_t rownr,
const void * dataPtr )
overrideprivatevirtual

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

Reimplemented from casacore::DataManagerColumn.

◆ putScalarColumnCellsV()

template<class T>
void casacore::VirtualScalarColumn< T >::putScalarColumnCellsV ( const RefRows & rownrs,
const ArrayBase & dataPtr )
overrideprivatevirtual

Put some scalar values in the column.

The default implementation loops over the rows.

Reimplemented from casacore::DataManagerColumn.

◆ putScalarColumnV()

template<class T>
void casacore::VirtualScalarColumn< T >::putScalarColumnV ( const ArrayBase & dataPtr)
overrideprivatevirtual

Put all scalar values in the column.

The default implementation loops over the rows.

Reimplemented from casacore::DataManagerColumn.

◆ putShort()

template<class T>
void casacore::VirtualScalarColumn< T >::putShort ( rownr_t rownr,
const Short * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 215 of file VirtScaCol.h.

◆ putString()

template<class T>
void casacore::VirtualScalarColumn< T >::putString ( rownr_t rownr,
const String * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 242 of file VirtScaCol.h.

◆ putuChar()

template<class T>
void casacore::VirtualScalarColumn< T >::putuChar ( rownr_t rownr,
const uChar * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 212 of file VirtScaCol.h.

◆ putuInt()

template<class T>
void casacore::VirtualScalarColumn< T >::putuInt ( rownr_t rownr,
const uInt * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 224 of file VirtScaCol.h.

◆ putuShort()

template<class T>
void casacore::VirtualScalarColumn< T >::putuShort ( rownr_t rownr,
const uShort * dataPtr )
inlineoverrideprivatevirtual

Reimplemented from casacore::DataManagerColumn.

Definition at line 218 of file VirtScaCol.h.


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