Loading...
Searching...
No Matches
casacore::SiscoStManColumn Class Referencefinal

Base class for columns of the StokesIStMan. More...

`#include <SiscoStManColumn.h>`

## Public Member Functions

| SiscoStManColumn (SiscoStMan &parent, DataType dtype)
| Constructor, to be overloaded by subclass.
bool | isWritable () const final
| Whether this column is writable.
bool | canChangeShape () const final
| Can the data manager handle chaging the shape of an existing array?
void | setShape (rownr_t, const IPosition &) final
| Set the shape of an (variable-shaped) array in the given row.
void | setShape (unsigned, const IPosition &) final
bool | isShapeDefined (rownr_t row) final
| Is the value shape defined in the given row?
bool | isShapeDefined (unsigned) final
void | setShapeColumn (const IPosition &shape) final
| Set the dimensions of values in this column.
IPosition | shape (rownr_t row) final
| Get the dimensions of the values in a particular row.
IPosition | shape (unsigned row) final
void | getArrayV (rownr_t row, ArrayBase &dataPtr) final
| Read the values for a particular row.
void | putArrayV (rownr_t row, const ArrayBase &dataPtr) final
| Write values into a particular row.
void | Prepare ()
Public Member Functions inherited from casacore::StManColumn
| StManColumn (int dataType)
| Default constructor.
virtual | ~StManColumn ()
| StManColumn (const StManColumn &)=delete
| The object cannot be copied.
StManColumn & | operator= (const StManColumn &)=delete
| The object cannot be assigned to.
virtual void | setShape (uInt rownr, const IPosition &shape)
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 void | setShapeTiled (uInt rownr, const IPosition &shape, const IPosition &tileShape)
virtual Bool | isShapeDefined (uInt rownr)
virtual uInt | ndim (rownr_t rownr)
| Get the dimensionality of the item in the given row.
virtual uInt | ndim (uInt rownr)
virtual IPosition | shape (uInt rownr)
virtual IPosition | tileShape (rownr_t rownr)
| Get the tile shape of the item in the given row.
virtual IPosition | tileShape (uInt rownr)
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 | 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 | putBool (rownr_t rownr, const Bool *dataPtr)
| Put the scalar value in 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 | 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 | 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 | getArrayColumnV (ArrayBase &dataPtr)
| Get all array values in the column.
virtual void | putArrayColumnV (const ArrayBase &dataPtr)
| Put all array values in the column.
virtual void | getArrayColumnCellsV (const RefRows &rownrs, ArrayBase &dataPtr)
| Get some array values in the column.
virtual void | putArrayColumnCellsV (const RefRows &rownrs, const ArrayBase &dataPtr)
| Put some array values in the column.
virtual void | getSliceV (rownr_t rownr, const Slicer &slicer, ArrayBase &dataPtr)
| Get a section of the array in the given row.
virtual void | putSliceV (rownr_t rownr, const Slicer &slicer, const ArrayBase &dataPtr)
| Put into a section of the array in the given row.
virtual void | getColumnSliceV (const Slicer &slicer, ArrayBase &dataPtr)
| Get a section of all arrays in the column.
virtual void | putColumnSliceV (const Slicer &slicer, const ArrayBase &dataPtr)
| Put into a section of all arrays in the column.
virtual void | getColumnSliceCellsV (const RefRows &rownrs, const Slicer &slicer, ArrayBase &dataPtr)
| Get a section of some arrays in the column.
virtual void | putColumnSliceCellsV (const RefRows &rownrs, const Slicer &slicer, const ArrayBase &dataPtr)
| Put into a section of some arrays in the column.
Public Member Functions inherited from casacore::StManColumnBase
| StManColumnBase (int dataType)
| Default constructor.
| ~StManColumnBase ()
| StManColumnBase (const StManColumnBase &)=delete
| The object cannot be copied.
StManColumnBase & | operator= (const StManColumnBase &)=delete
| The object cannot be assigned to.
virtual int | dataType () const
| Return the data type of the column.
DataType | dtype () const
Int | elemSize () const
| Return the size of an element of the column's data type.
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 String | dataTypeId () const
| Get the data type id of the column for dataType==TpOther.
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.
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

| SiscoStManColumn (const SiscoStManColumn &source)=delete
void | operator= (const SiscoStManColumn &source)=delete
void | Reset ()
void | OpenWriter ()
void | OpenReader ()
void | RequestOneMoreRow ()
size_t | GetBaselineId (int field_id, int data_desc_id, int antenna1, int antenna2, int polarization)
std::string | ShapesFilename () const
void | WriteEmptyRow ()
void | SkipRow ()

## Private Attributes

ScalarColumn< int > | field_id_column_
ScalarColumn< int > | data_desc_id_column_
ScalarColumn< int > | antenna1_column_
ScalarColumn< int > | antenna2_column_
SiscoStMan & | parent_
std::optional< sisco::SiscoWriter > | writer_
std::optional< sisco::SiscoReader > | reader_
std::optional< ShapesFileWriter > | shapes_writer_
std::optional< ShapesFileReader > | shapes_reader_
std::vector< IPosition > | shape_buffer_
| A circular buffer to store the already read shapes.
size_t | shape_read_position_
size_t | shape_write_position_
rownr_t | current_shape_reading_row_
rownr_t | current_row_
std::vector< std::complex< float > > | buffer_
std::map< std::array< int, 5 >, size_t > | baseline_ids_
size_t | baseline_count_
bool | file_exists_

## Static Private Attributes

static constexpr size_t | kHeaderSize
static constexpr char | kMagic []
static constexpr size_t | kMagicSize
static constexpr uint16_t | kVersionMajor
static constexpr uint16_t | kVersionMinor
static constexpr char | kShapesExtension []

## Additional Inherited Members

Static Public Member Functions inherited from casacore::StManColumnBase
static Bool | isNativeDataType (int dtype)
| Test if the given data type is supported by storage managers.
Protected Member Functions inherited from casacore::StManColumn
virtual void | getBoolV (uInt rownr, Bool *dataPtr)
| Get the scalar value in the given row.
virtual void | getuCharV (uInt rownr, uChar *dataPtr)
virtual void | getShortV (uInt rownr, Short *dataPtr)
virtual void | getuShortV (uInt rownr, uShort *dataPtr)
virtual void | getIntV (uInt rownr, Int *dataPtr)
virtual void | getuIntV (uInt rownr, uInt *dataPtr)
virtual void | getfloatV (uInt rownr, float *dataPtr)
virtual void | getdoubleV (uInt rownr, double *dataPtr)
virtual void | getComplexV (uInt rownr, Complex *dataPtr)
virtual void | getDComplexV (uInt rownr, DComplex *dataPtr)
virtual void | getStringV (uInt rownr, String *dataPtr)
virtual void | putBoolV (uInt rownr, const Bool *dataPtr)
| Put the scalar value in the given row.
virtual void | putuCharV (uInt rownr, const uChar *dataPtr)
virtual void | putShortV (uInt rownr, const Short *dataPtr)
virtual void | putuShortV (uInt rownr, const uShort *dataPtr)
virtual void | putIntV (uInt rownr, const Int *dataPtr)
virtual void | putuIntV (uInt rownr, const uInt *dataPtr)
virtual void | putfloatV (uInt rownr, const float *dataPtr)
virtual void | putdoubleV (uInt rownr, const double *dataPtr)
virtual void | putComplexV (uInt rownr, const Complex *dataPtr)
virtual void | putDComplexV (uInt rownr, const DComplex *dataPtr)
virtual void | putStringV (uInt rownr, const String *dataPtr)
virtual void | getScalarColumnBoolV (Vector< Bool > *dataPtr)
| Get the scalar values in the entire column.
virtual void | getScalarColumnuCharV (Vector< uChar > *dataPtr)
virtual void | getScalarColumnShortV (Vector< Short > *dataPtr)
virtual void | getScalarColumnuShortV (Vector< uShort > *dataPtr)
virtual void | getScalarColumnIntV (Vector< Int > *dataPtr)
virtual void | getScalarColumnuIntV (Vector< uInt > *dataPtr)
virtual void | getScalarColumnInt64V (Vector< Int64 > *dataPtr)
virtual void | getScalarColumnfloatV (Vector< float > *dataPtr)
virtual void | getScalarColumndoubleV (Vector< double > *dataPtr)
virtual void | getScalarColumnComplexV (Vector< Complex > *dataPtr)
virtual void | getScalarColumnDComplexV (Vector< DComplex > *dataPtr)
virtual void | getScalarColumnStringV (Vector< String > *dataPtr)
virtual void | putScalarColumnBoolV (const Vector< Bool > *dataPtr)
| Put the scalar values into the entire column.
virtual void | putScalarColumnuCharV (const Vector< uChar > *dataPtr)
virtual void | putScalarColumnShortV (const Vector< Short > *dataPtr)
virtual void | putScalarColumnuShortV (const Vector< uShort > *dataPtr)
virtual void | putScalarColumnIntV (const Vector< Int > *dataPtr)
virtual void | putScalarColumnuIntV (const Vector< uInt > *dataPtr)
virtual void | putScalarColumnInt64V (const Vector< Int64 > *dataPtr)
virtual void | putScalarColumnfloatV (const Vector< float > *dataPtr)
virtual void | putScalarColumndoubleV (const Vector< double > *dataPtr)
virtual void | putScalarColumnComplexV (const Vector< Complex > *dataPtr)
virtual void | putScalarColumnDComplexV (const Vector< DComplex > *dataPtr)
virtual void | putScalarColumnStringV (const Vector< String > *dataPtr)
virtual void | getScalarColumnCellsBoolV (const RefRows &rownrs, Vector< Bool > *dataPtr)
| Get the scalar values in some cells of the column.
virtual void | getScalarColumnCellsuCharV (const RefRows &rownrs, Vector< uChar > *dataPtr)
virtual void | getScalarColumnCellsShortV (const RefRows &rownrs, Vector< Short > *dataPtr)
virtual void | getScalarColumnCellsuShortV (const RefRows &rownrs, Vector< uShort > *dataPtr)
virtual void | getScalarColumnCellsIntV (const RefRows &rownrs, Vector< Int > *dataPtr)
virtual void | getScalarColumnCellsuIntV (const RefRows &rownrs, Vector< uInt > *dataPtr)
virtual void | getScalarColumnCellsInt64V (const RefRows &rownrs, Vector< Int64 > *dataPtr)
virtual void | getScalarColumnCellsfloatV (const RefRows &rownrs, Vector< float > *dataPtr)
virtual void | getScalarColumnCellsdoubleV (const RefRows &rownrs, Vector< double > *dataPtr)
virtual void | getScalarColumnCellsComplexV (const RefRows &rownrs, Vector< Complex > *dataPtr)
virtual void | getScalarColumnCellsDComplexV (const RefRows &rownrs, Vector< DComplex > *dataPtr)
virtual void | getScalarColumnCellsStringV (const RefRows &rownrs, Vector< String > *dataPtr)
virtual void | putScalarColumnCellsBoolV (const RefRows &rownrs, const Vector< Bool > *dataPtr)
| Put the scalar values into some cells of the column.
virtual void | putScalarColumnCellsuCharV (const RefRows &rownrs, const Vector< uChar > *dataPtr)
virtual void | putScalarColumnCellsShortV (const RefRows &rownrs, const Vector< Short > *dataPtr)
virtual void | putScalarColumnCellsuShortV (const RefRows &rownrs, const Vector< uShort > *dataPtr)
virtual void | putScalarColumnCellsIntV (const RefRows &rownrs, const Vector< Int > *dataPtr)
virtual void | putScalarColumnCellsuIntV (const RefRows &rownrs, const Vector< uInt > *dataPtr)
virtual void | putScalarColumnCellsInt64V (const RefRows &rownrs, const Vector< Int64 > *dataPtr)
virtual void | putScalarColumnCellsfloatV (const RefRows &rownrs, const Vector< float > *dataPtr)
virtual void | putScalarColumnCellsdoubleV (const RefRows &rownrs, const Vector< double > *dataPtr)
virtual void | putScalarColumnCellsComplexV (const RefRows &rownrs, const Vector< Complex > *dataPtr)
virtual void | putScalarColumnCellsDComplexV (const RefRows &rownrs, const Vector< DComplex > *dataPtr)
virtual void | putScalarColumnCellsStringV (const RefRows &rownrs, const Vector< String > *dataPtr)
virtual void | getArrayBoolV (uInt rownr, Array< Bool > *dataPtr)
| Get the array value in the given row.
virtual void | getArrayuCharV (uInt rownr, Array< uChar > *dataPtr)
virtual void | getArrayShortV (uInt rownr, Array< Short > *dataPtr)
virtual void | getArrayuShortV (uInt rownr, Array< uShort > *dataPtr)
virtual void | getArrayIntV (uInt rownr, Array< Int > *dataPtr)
virtual void | getArrayuIntV (uInt rownr, Array< uInt > *dataPtr)
virtual void | getArrayInt64V (uInt rownr, Array< Int64 > *dataPtr)
virtual void | getArrayfloatV (uInt rownr, Array< float > *dataPtr)
virtual void | getArraydoubleV (uInt rownr, Array< double > *dataPtr)
virtual void | getArrayComplexV (uInt rownr, Array< Complex > *dataPtr)
virtual void | getArrayDComplexV (uInt rownr, Array< DComplex > *dataPtr)
virtual void | getArrayStringV (uInt rownr, Array< String > *dataPtr)
virtual void | putArrayBoolV (uInt rownr, const Array< Bool > *dataPtr)
| Put the array value into the given row.
virtual void | putArrayuCharV (uInt rownr, const Array< uChar > *dataPtr)
virtual void | putArrayShortV (uInt rownr, const Array< Short > *dataPtr)
virtual void | putArrayuShortV (uInt rownr, const Array< uShort > *dataPtr)
virtual void | putArrayIntV (uInt rownr, const Array< Int > *dataPtr)
virtual void | putArrayuIntV (uInt rownr, const Array< uInt > *dataPtr)
virtual void | putArrayInt64V (uInt rownr, const Array< Int64 > *dataPtr)
virtual void | putArrayfloatV (uInt rownr, const Array< float > *dataPtr)
virtual void | putArraydoubleV (uInt rownr, const Array< double > *dataPtr)
virtual void | putArrayComplexV (uInt rownr, const Array< Complex > *dataPtr)
virtual void | putArrayDComplexV (uInt rownr, const Array< DComplex > *dataPtr)
virtual void | putArrayStringV (uInt rownr, const Array< String > *dataPtr)
virtual void | getArrayColumnBoolV (Array< Bool > *dataPtr)
| Get the array values in the entire column.
virtual void | getArrayColumnuCharV (Array< uChar > *dataPtr)
virtual void | getArrayColumnShortV (Array< Short > *dataPtr)
virtual void | getArrayColumnuShortV (Array< uShort > *dataPtr)
virtual void | getArrayColumnIntV (Array< Int > *dataPtr)
virtual void | getArrayColumnuIntV (Array< uInt > *dataPtr)
virtual void | getArrayColumnInt64V (Array< Int64 > *dataPtr)
virtual void | getArrayColumnfloatV (Array< float > *dataPtr)
virtual void | getArrayColumndoubleV (Array< double > *dataPtr)
virtual void | getArrayColumnComplexV (Array< Complex > *dataPtr)
virtual void | getArrayColumnDComplexV (Array< DComplex > *dataPtr)
virtual void | getArrayColumnStringV (Array< String > *dataPtr)
virtual void | putArrayColumnBoolV (const Array< Bool > *dataPtr)
| Put the array values into the entire column.
virtual void | putArrayColumnuCharV (const Array< uChar > *dataPtr)
virtual void | putArrayColumnShortV (const Array< Short > *dataPtr)
virtual void | putArrayColumnuShortV (const Array< uShort > *dataPtr)
virtual void | putArrayColumnIntV (const Array< Int > *dataPtr)
virtual void | putArrayColumnuIntV (const Array< uInt > *dataPtr)
virtual void | putArrayColumnInt64V (const Array< Int64 > *dataPtr)
virtual void | putArrayColumnfloatV (const Array< float > *dataPtr)
virtual void | putArrayColumndoubleV (const Array< double > *dataPtr)
virtual void | putArrayColumnComplexV (const Array< Complex > *dataPtr)
virtual void | putArrayColumnDComplexV (const Array< DComplex > *dataPtr)
virtual void | putArrayColumnStringV (const Array< String > *dataPtr)
virtual void | getArrayColumnCellsBoolV (const RefRows &rownrs, Array< Bool > *dataPtr)
| Get the array values in some cells of the column.
virtual void | getArrayColumnCellsuCharV (const RefRows &rownrs, Array< uChar > *dataPtr)
virtual void | getArrayColumnCellsShortV (const RefRows &rownrs, Array< Short > *dataPtr)
virtual void | getArrayColumnCellsuShortV (const RefRows &rownrs, Array< uShort > *dataPtr)
virtual void | getArrayColumnCellsIntV (const RefRows &rownrs, Array< Int > *dataPtr)
virtual void | getArrayColumnCellsuIntV (const RefRows &rownrs, Array< uInt > *dataPtr)
virtual void | getArrayColumnCellsInt64V (const RefRows &rownrs, Array< Int64 > *dataPtr)
virtual void | getArrayColumnCellsfloatV (const RefRows &rownrs, Array< float > *dataPtr)
virtual void | getArrayColumnCellsdoubleV (const RefRows &rownrs, Array< double > *dataPtr)
virtual void | getArrayColumnCellsComplexV (const RefRows &rownrs, Array< Complex > *dataPtr)
virtual void | getArrayColumnCellsDComplexV (const RefRows &rownrs, Array< DComplex > *dataPtr)
virtual void | getArrayColumnCellsStringV (const RefRows &rownrs, Array< String > *dataPtr)
virtual void | putArrayColumnCellsBoolV (const RefRows &rownrs, const Array< Bool > *dataPtr)
| Put the array values into some cells of the column.
virtual void | putArrayColumnCellsuCharV (const RefRows &rownrs, const Array< uChar > *dataPtr)
virtual void | putArrayColumnCellsShortV (const RefRows &rownrs, const Array< Short > *dataPtr)
virtual void | putArrayColumnCellsuShortV (const RefRows &rownrs, const Array< uShort > *dataPtr)
virtual void | putArrayColumnCellsIntV (const RefRows &rownrs, const Array< Int > *dataPtr)
virtual void | putArrayColumnCellsuIntV (const RefRows &rownrs, const Array< uInt > *dataPtr)
virtual void | putArrayColumnCellsInt64V (const RefRows &rownrs, const Array< Int64 > *dataPtr)
virtual void | putArrayColumnCellsfloatV (const RefRows &rownrs, const Array< float > *dataPtr)
virtual void | putArrayColumnCellsdoubleV (const RefRows &rownrs, const Array< double > *dataPtr)
virtual void | putArrayColumnCellsComplexV (const RefRows &rownrs, const Array< Complex > *dataPtr)
virtual void | putArrayColumnCellsDComplexV (const RefRows &rownrs, const Array< DComplex > *dataPtr)
virtual void | putArrayColumnCellsStringV (const RefRows &rownrs, const Array< String > *dataPtr)
virtual void | getSliceBoolV (uInt rownr, const Slicer &ns, Array< Bool > *dataPtr)
| Get the array value in the given row.
virtual void | getSliceuCharV (uInt rownr, const Slicer &ns, Array< uChar > *dataPtr)
virtual void | getSliceShortV (uInt rownr, const Slicer &ns, Array< Short > *dataPtr)
virtual void | getSliceuShortV (uInt rownr, const Slicer &ns, Array< uShort > *dataPtr)
virtual void | getSliceIntV (uInt rownr, const Slicer &ns, Array< Int > *dataPtr)
virtual void | getSliceuIntV (uInt rownr, const Slicer &ns, Array< uInt > *dataPtr)
virtual void | getSliceInt64V (uInt rownr, const Slicer &ns, Array< Int64 > *dataPtr)
virtual void | getSlicefloatV (uInt rownr, const Slicer &ns, Array< float > *dataPtr)
virtual void | getSlicedoubleV (uInt rownr, const Slicer &ns, Array< double > *dataPtr)
virtual void | getSliceComplexV (uInt rownr, const Slicer &ns, Array< Complex > *dataPtr)
virtual void | getSliceDComplexV (uInt rownr, const Slicer &ns, Array< DComplex > *dataPtr)
virtual void | getSliceStringV (uInt rownr, const Slicer &ns, Array< String > *dataPtr)
virtual void | putSliceBoolV (uInt rownr, const Slicer &ns, const Array< Bool > *dataPtr)
| Put the array value into the given row.
virtual void | putSliceuCharV (uInt rownr, const Slicer &ns, const Array< uChar > *dataPtr)
virtual void | putSliceShortV (uInt rownr, const Slicer &ns, const Array< Short > *dataPtr)
virtual void | putSliceuShortV (uInt rownr, const Slicer &ns, const Array< uShort > *dataPtr)
virtual void | putSliceIntV (uInt rownr, const Slicer &ns, const Array< Int > *dataPtr)
virtual void | putSliceuIntV (uInt rownr, const Slicer &ns, const Array< uInt > *dataPtr)
virtual void | putSliceInt64V (uInt rownr, const Slicer &ns, const Array< Int64 > *dataPtr)
virtual void | putSlicefloatV (uInt rownr, const Slicer &ns, const Array< float > *dataPtr)
virtual void | putSlicedoubleV (uInt rownr, const Slicer &ns, const Array< double > *dataPtr)
virtual void | putSliceComplexV (uInt rownr, const Slicer &ns, const Array< Complex > *dataPtr)
virtual void | putSliceDComplexV (uInt rownr, const Slicer &ns, const Array< DComplex > *dataPtr)
virtual void | putSliceStringV (uInt rownr, const Slicer &ns, const Array< String > *dataPtr)
virtual void | getColumnSliceBoolV (const Slicer &ns, Array< Bool > *dataPtr)
| Get the array values in the entire column.
virtual void | getColumnSliceuCharV (const Slicer &ns, Array< uChar > *dataPtr)
virtual void | getColumnSliceShortV (const Slicer &ns, Array< Short > *dataPtr)
virtual void | getColumnSliceuShortV (const Slicer &ns, Array< uShort > *dataPtr)
virtual void | getColumnSliceIntV (const Slicer &ns, Array< Int > *dataPtr)
virtual void | getColumnSliceuIntV (const Slicer &ns, Array< uInt > *dataPtr)
virtual void | getColumnSliceInt64V (const Slicer &ns, Array< Int64 > *dataPtr)
virtual void | getColumnSlicefloatV (const Slicer &ns, Array< float > *dataPtr)
virtual void | getColumnSlicedoubleV (const Slicer &ns, Array< double > *dataPtr)
virtual void | getColumnSliceComplexV (const Slicer &ns, Array< Complex > *dataPtr)
virtual void | getColumnSliceDComplexV (const Slicer &ns, Array< DComplex > *dataPtr)
virtual void | getColumnSliceStringV (const Slicer &ns, Array< String > *dataPtr)
virtual void | putColumnSliceBoolV (const Slicer &ns, const Array< Bool > *dataPtr)
| Put the array values into the entire column.
virtual void | putColumnSliceuCharV (const Slicer &ns, const Array< uChar > *dataPtr)
virtual void | putColumnSliceShortV (const Slicer &ns, const Array< Short > *dataPtr)
virtual void | putColumnSliceuShortV (const Slicer &ns, const Array< uShort > *dataPtr)
virtual void | putColumnSliceIntV (const Slicer &ns, const Array< Int > *dataPtr)
virtual void | putColumnSliceuIntV (const Slicer &ns, const Array< uInt > *dataPtr)
virtual void | putColumnSliceInt64V (const Slicer &ns, const Array< Int64 > *dataPtr)
virtual void | putColumnSlicefloatV (const Slicer &ns, const Array< float > *dataPtr)
virtual void | putColumnSlicedoubleV (const Slicer &ns, const Array< double > *dataPtr)
virtual void | putColumnSliceComplexV (const Slicer &ns, const Array< Complex > *dataPtr)
virtual void | putColumnSliceDComplexV (const Slicer &ns, const Array< DComplex > *dataPtr)
virtual void | putColumnSliceStringV (const Slicer &ns, const Array< String > *dataPtr)
virtual void | getColumnSliceCellsBoolV (const RefRows &rownrs, const Slicer &ns, Array< Bool > *dataPtr)
| Get the array values in some cells of the column.
virtual void | getColumnSliceCellsuCharV (const RefRows &rownrs, const Slicer &ns, Array< uChar > *dataPtr)
virtual void | getColumnSliceCellsShortV (const RefRows &rownrs, const Slicer &ns, Array< Short > *dataPtr)
virtual void | getColumnSliceCellsuShortV (const RefRows &rownrs, const Slicer &ns, Array< uShort > *dataPtr)
virtual void | getColumnSliceCellsIntV (const RefRows &rownrs, const Slicer &ns, Array< Int > *dataPtr)
virtual void | getColumnSliceCellsuIntV (const RefRows &rownrs, const Slicer &ns, Array< uInt > *dataPtr)
virtual void | getColumnSliceCellsInt64V (const RefRows &rownrs, const Slicer &ns, Array< Int64 > *dataPtr)
virtual void | getColumnSliceCellsfloatV (const RefRows &rownrs, const Slicer &ns, Array< float > *dataPtr)
virtual void | getColumnSliceCellsdoubleV (const RefRows &rownrs, const Slicer &ns, Array< double > *dataPtr)
virtual void | getColumnSliceCellsComplexV (const RefRows &rownrs, const Slicer &ns, Array< Complex > *dataPtr)
virtual void | getColumnSliceCellsDComplexV (const RefRows &rownrs, const Slicer &ns, Array< DComplex > *dataPtr)
virtual void | getColumnSliceCellsStringV (const RefRows &rownrs, const Slicer &ns, Array< String > *dataPtr)
virtual void | putColumnSliceCellsBoolV (const RefRows &rownrs, const Slicer &ns, const Array< Bool > *dataPtr)
| Put the array values into some cells of the column.
virtual void | putColumnSliceCellsuCharV (const RefRows &rownrs, const Slicer &ns, const Array< uChar > *dataPtr)
virtual void | putColumnSliceCellsShortV (const RefRows &rownrs, const Slicer &ns, const Array< Short > *dataPtr)
virtual void | putColumnSliceCellsuShortV (const RefRows &rownrs, const Slicer &ns, const Array< uShort > *dataPtr)
virtual void | putColumnSliceCellsIntV (const RefRows &rownrs, const Slicer &ns, const Array< Int > *dataPtr)
virtual void | putColumnSliceCellsuIntV (const RefRows &rownrs, const Slicer &ns, const Array< uInt > *dataPtr)
virtual void | putColumnSliceCellsInt64V (const RefRows &rownrs, const Slicer &ns, const Array< Int64 > *dataPtr)
virtual void | putColumnSliceCellsfloatV (const RefRows &rownrs, const Slicer &ns, const Array< float > *dataPtr)
virtual void | putColumnSliceCellsdoubleV (const RefRows &rownrs, const Slicer &ns, const Array< double > *dataPtr)
virtual void | putColumnSliceCellsComplexV (const RefRows &rownrs, const Slicer &ns, const Array< Complex > *dataPtr)
virtual void | putColumnSliceCellsDComplexV (const RefRows &rownrs, const Slicer &ns, const Array< DComplex > *dataPtr)
virtual void | putColumnSliceCellsStringV (const RefRows &rownrs, const Slicer &ns, const Array< String > *dataPtr)
Protected Member Functions inherited from casacore::DataManagerColumn
virtual void | getInt64 (rownr_t rownr, Int64 *dataPtr)
virtual void | getOther (rownr_t rownr, void *dataPtr)
| This function is the get for all non-standard data types.
virtual void | putInt64 (rownr_t rownr, const Int64 *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)

## Detailed Description

Base class for columns of the StokesIStMan.

Author
  André Offringa

Definition at line 27 of file SiscoStManColumn.h.

## Constructor & Destructor Documentation

## SiscoStManColumn() [1/2]

casacore::SiscoStManColumn::SiscoStManColumn | ( | SiscoStMan & | parent,
|  | DataType | dtype )

inline explicit

Constructor, to be overloaded by subclass.

Parameters

  parent | The parent stman to which this column belongs.
  dtype | The column's type as defined by Casacore.

Definition at line 34 of file SiscoStManColumn.h.

References casacore::StManColumnBase::dtype(), parent_, and casacore::StManColumn::StManColumn().

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

## SiscoStManColumn() [2/2]

casacore::SiscoStManColumn::SiscoStManColumn | ( | const SiscoStManColumn & | source | ) |

private delete

References SiscoStManColumn().

## Member Function Documentation

## canChangeShape()

bool casacore::SiscoStManColumn::canChangeShape | ( |  | ) | const

inline final virtual

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

Default is no.

Reimplemented from casacore::DataManagerColumn.

Definition at line 49 of file SiscoStManColumn.h.

## getArrayV()

void casacore::SiscoStManColumn::getArrayV | ( | rownr_t | row,
|  | ArrayBase & | dataPtr )

inline final virtual

Read the values for a particular row.

Parameters

  row | The row number to get the values for.
  dataPtr | The array of values.

Reimplemented from casacore::StManColumn.

Definition at line 102 of file SiscoStManColumn.h.

References casacore::array, buffer_, current_row_, OpenReader(), reader_, RequestOneMoreRow(), shape(), shape_buffer_, shape_read_position_, and SkipRow().

## GetBaselineId()

size_t casacore::SiscoStManColumn::GetBaselineId | ( | int | field_id,
|  | int | data_desc_id,
|  | int | antenna1,
|  | int | antenna2,
|  | int | polarization )

inline private

Definition at line 278 of file SiscoStManColumn.h.

References baseline_count_, and baseline_ids_.

Referenced by putArrayV(), and RequestOneMoreRow().

## isShapeDefined() [1/2]

bool casacore::SiscoStManColumn::isShapeDefined | ( | rownr_t | rownr | ) |

inline final virtual

Is the value shape defined in the given row?

By default it returns True.

Reimplemented from casacore::StManColumn.

Definition at line 57 of file SiscoStManColumn.h.

References current_row_, file_exists_, and writer_.

## isShapeDefined() [2/2]

bool casacore::SiscoStManColumn::isShapeDefined | ( | unsigned |  | ) |

inline final

Definition at line 64 of file SiscoStManColumn.h.

## isWritable()

bool casacore::SiscoStManColumn::isWritable | ( |  | ) | const

inline final virtual

Whether this column is writable.

Returns
  `true`

Reimplemented from casacore::DataManagerColumn.

Definition at line 47 of file SiscoStManColumn.h.

## OpenReader()

void casacore::SiscoStManColumn::OpenReader | ( |  | ) |

inline private

Always request half of the requests that fit in the buffer of SiscoReader, so that SiscoReader can preprocess requests using multiple threads. Every time a row is read/skipped, another row is requested.

Definition at line 218 of file SiscoStManColumn.h.

References baseline_count_, baseline_ids_, current_row_, current_shape_reading_row_, kHeaderSize, kMagicSize, kVersionMajor, parent_, reader_, RequestOneMoreRow(), Reset(), shape_buffer_, shape_read_position_, shape_write_position_, shapes_reader_, and ShapesFilename().

Referenced by getArrayV(), and shape().

## OpenWriter()

void casacore::SiscoStManColumn::OpenWriter | ( |  | ) |

inline private

Definition at line 196 of file SiscoStManColumn.h.

References baseline_count_, baseline_ids_, current_row_, kHeaderSize, kMagic, kMagicSize, kVersionMajor, kVersionMinor, parent_, Reset(), shapes_writer_, ShapesFilename(), and writer_.

Referenced by putArrayV().

## operator=()

void casacore::SiscoStManColumn::operator= | ( | const SiscoStManColumn & | source | ) |

private delete

References SiscoStManColumn().

## Prepare()

void casacore::SiscoStManColumn::Prepare | ( |  | ) |

Definition at line 353 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, data_desc_id_column_, field_id_column_, file_exists_, parent_, and ShapesFilename().

## putArrayV()

void casacore::SiscoStManColumn::putArrayV | ( | rownr_t | row,
|  | const ArrayBase & | dataPtr )

inline final virtual

Write values into a particular row.

Parameters

  row | The row number to write the values to.
  dataPtr | The data pointer.

Reimplemented from casacore::StManColumn.

Definition at line 143 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, casacore::array, buffer_, current_row_, data_desc_id_column_, field_id_column_, GetBaselineId(), OpenWriter(), shapes_writer_, WriteEmptyRow(), and writer_.

## RequestOneMoreRow()

void casacore::SiscoStManColumn::RequestOneMoreRow | ( |  | ) |

inline private

Definition at line 257 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, current_shape_reading_row_, data_desc_id_column_, field_id_column_, GetBaselineId(), reader_, shape(), shape_buffer_, shape_write_position_, and shapes_reader_.

Referenced by getArrayV(), OpenReader(), and SkipRow().

## Reset()

void casacore::SiscoStManColumn::Reset | ( |  | ) |

inline private

Definition at line 189 of file SiscoStManColumn.h.

References reader_, shapes_reader_, shapes_writer_, and writer_.

Referenced by OpenReader(), and OpenWriter().

## setShape() [1/2]

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

inline final virtual

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

By default it throws a "not possible" exception.

Shape is implied from the array; explicit setting of the shape is not required.

Reimplemented from casacore::StManColumn.

Definition at line 51 of file SiscoStManColumn.h.

## setShape() [2/2]

void casacore::SiscoStManColumn::setShape | ( | unsigned | ,
|  | const IPosition & | )

inline final

Definition at line 55 of file SiscoStManColumn.h.

## setShapeColumn()

void casacore::SiscoStManColumn::setShapeColumn | ( | const IPosition & | shape | ) |

inline final virtual

Set the dimensions of values in this column.

This call is ignored; shape will always be determined from array size.

Reimplemented from casacore::DataManagerColumn.

Definition at line 67 of file SiscoStManColumn.h.

References shape().

## shape() [1/2]

IPosition casacore::SiscoStManColumn::shape | ( | rownr_t | row | ) |

inline final virtual

Get the dimensions of the values in a particular row.

Parameters

  rownr | The row to get the shape for.

Reimplemented from casacore::StManColumn.

Definition at line 80 of file SiscoStManColumn.h.

References current_row_, file_exists_, OpenReader(), reader_, shape_buffer_, shape_read_position_, SkipRow(), and writer_.

Referenced by getArrayV(), RequestOneMoreRow(), setShapeColumn(), shape(), and SkipRow().

## shape() [2/2]

IPosition casacore::SiscoStManColumn::shape | ( | unsigned | row | ) |

inline final

Definition at line 93 of file SiscoStManColumn.h.

References shape().

## ShapesFilename()

std::string casacore::SiscoStManColumn::ShapesFilename | ( |  | ) | const

inline private

Definition at line 291 of file SiscoStManColumn.h.

References kShapesExtension, and parent_.

Referenced by OpenReader(), OpenWriter(), and Prepare().

## SkipRow()

void casacore::SiscoStManColumn::SkipRow | ( |  | ) |

inline private

Definition at line 300 of file SiscoStManColumn.h.

References buffer_, current_row_, reader_, RequestOneMoreRow(), shape(), shape_buffer_, and shape_read_position_.

Referenced by getArrayV(), and shape().

## WriteEmptyRow()

void casacore::SiscoStManColumn::WriteEmptyRow | ( |  | ) |

inline private

Definition at line 295 of file SiscoStManColumn.h.

References current_row_, and shapes_writer_.

Referenced by putArrayV().

## Member Data Documentation

## antenna1_column_

ScalarColumn<int> casacore::SiscoStManColumn::antenna1_column_

private

Definition at line 327 of file SiscoStManColumn.h.

Referenced by Prepare(), putArrayV(), and RequestOneMoreRow().

## antenna2_column_

ScalarColumn<int> casacore::SiscoStManColumn::antenna2_column_

private

Definition at line 328 of file SiscoStManColumn.h.

Referenced by Prepare(), putArrayV(), and RequestOneMoreRow().

## baseline_count_

size_t casacore::SiscoStManColumn::baseline_count_

private

Definition at line 343 of file SiscoStManColumn.h.

Referenced by GetBaselineId(), OpenReader(), and OpenWriter().

## baseline_ids_

std::map<std::array<int, 5>, size_t> casacore::SiscoStManColumn::baseline_ids_

private

Definition at line 342 of file SiscoStManColumn.h.

Referenced by GetBaselineId(), OpenReader(), and OpenWriter().

## buffer_

std::vector<std::complex<float> > casacore::SiscoStManColumn::buffer_

private

Definition at line 341 of file SiscoStManColumn.h.

Referenced by getArrayV(), putArrayV(), and SkipRow().

## current_row_

rownr_t casacore::SiscoStManColumn::current_row_

private

Definition at line 340 of file SiscoStManColumn.h.

Referenced by getArrayV(), isShapeDefined(), OpenReader(), OpenWriter(), putArrayV(), shape(), SkipRow(), and WriteEmptyRow().

## current_shape_reading_row_

rownr_t casacore::SiscoStManColumn::current_shape_reading_row_

private

Definition at line 339 of file SiscoStManColumn.h.

Referenced by OpenReader(), and RequestOneMoreRow().

## data_desc_id_column_

ScalarColumn<int> casacore::SiscoStManColumn::data_desc_id_column_

private

Definition at line 326 of file SiscoStManColumn.h.

Referenced by Prepare(), putArrayV(), and RequestOneMoreRow().

## field_id_column_

ScalarColumn<int> casacore::SiscoStManColumn::field_id_column_

private

Definition at line 325 of file SiscoStManColumn.h.

Referenced by Prepare(), putArrayV(), and RequestOneMoreRow().

## file_exists_

bool casacore::SiscoStManColumn::file_exists_

private

Definition at line 344 of file SiscoStManColumn.h.

Referenced by isShapeDefined(), Prepare(), and shape().

## kHeaderSize

size_t casacore::SiscoStManColumn::kHeaderSize

static constexpr private

Definition at line 318 of file SiscoStManColumn.h.

Referenced by OpenReader(), and OpenWriter().

## kMagic

char casacore::SiscoStManColumn::kMagic[]

static constexpr private

Definition at line 319 of file SiscoStManColumn.h.

Referenced by OpenWriter().

## kMagicSize

size_t casacore::SiscoStManColumn::kMagicSize

static constexpr private

Definition at line 320 of file SiscoStManColumn.h.

Referenced by OpenReader(), and OpenWriter().

## kShapesExtension

char casacore::SiscoStManColumn::kShapesExtension[]

static constexpr private

Definition at line 323 of file SiscoStManColumn.h.

Referenced by ShapesFilename().

## kVersionMajor

uint16_t casacore::SiscoStManColumn::kVersionMajor

static constexpr private

Definition at line 321 of file SiscoStManColumn.h.

Referenced by OpenReader(), and OpenWriter().

## kVersionMinor

uint16_t casacore::SiscoStManColumn::kVersionMinor

static constexpr private

Definition at line 322 of file SiscoStManColumn.h.

Referenced by OpenWriter().

## parent_

SiscoStMan& casacore::SiscoStManColumn::parent_

private

Definition at line 330 of file SiscoStManColumn.h.

Referenced by OpenReader(), OpenWriter(), Prepare(), ShapesFilename(), and SiscoStManColumn().

## reader_

std::optional<sisco::SiscoReader> casacore::SiscoStManColumn::reader_

private

Definition at line 332 of file SiscoStManColumn.h.

Referenced by getArrayV(), OpenReader(), RequestOneMoreRow(), Reset(), shape(), and SkipRow().

## shape_buffer_

std::vector<IPosition> casacore::SiscoStManColumn::shape_buffer_

private

A circular buffer to store the already read shapes.

Definition at line 336 of file SiscoStManColumn.h.

Referenced by getArrayV(), OpenReader(), RequestOneMoreRow(), shape(), and SkipRow().

## shape_read_position_

size_t casacore::SiscoStManColumn::shape_read_position_

private

Definition at line 337 of file SiscoStManColumn.h.

Referenced by getArrayV(), OpenReader(), shape(), and SkipRow().

## shape_write_position_

size_t casacore::SiscoStManColumn::shape_write_position_

private

Definition at line 338 of file SiscoStManColumn.h.

Referenced by OpenReader(), and RequestOneMoreRow().

## shapes_reader_

std::optional<ShapesFileReader> casacore::SiscoStManColumn::shapes_reader_

private

Definition at line 334 of file SiscoStManColumn.h.

Referenced by OpenReader(), RequestOneMoreRow(), and Reset().

## shapes_writer_

std::optional<ShapesFileWriter> casacore::SiscoStManColumn::shapes_writer_

private

Definition at line 333 of file SiscoStManColumn.h.

Referenced by OpenWriter(), putArrayV(), Reset(), and WriteEmptyRow().

## writer_

std::optional<sisco::SiscoWriter> casacore::SiscoStManColumn::writer_

private

Definition at line 331 of file SiscoStManColumn.h.

Referenced by isShapeDefined(), OpenWriter(), putArrayV(), Reset(), and shape().

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

- tables/AlternateMans/SiscoStManColumn.h