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, SiscoStoreMode mode)
| ~SiscoStManColumn () override
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) final
| Is the value shape defined in the given row?
bool | isShapeDefined (unsigned row) 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 | PrepareReadingOfRow (rownr_t row)
void | ResetWriter ()
void | ResetReader ()
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 ()
constexpr int | GetNStoredCorrelations (const size_t n_column_correlations) const

## 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_
IPosition | fixed_shape_
std::vector< IPosition > | shape_buffer_
| A circular buffer to store the already read shapes.
size_t | shape_read_position_
| Points inside shape_buffer_ to the location corresponding to the shape for the current_read_row_.
size_t | shape_write_position_
| When reading a new shape from file, this is the place inside the shape buffer to write it to.
rownr_t | current_requested_reading_row_
rownr_t | current_read_row_
rownr_t | current_write_row_
rownr_t | row_count_
| When reading, this value is set to the number of rows in the measurement set.
std::vector< std::complex< float > > | buffer_
| Scratch buffer.
std::map< std::array< int, 5 >, size_t > | baseline_ids_
size_t | baseline_count_
bool | file_exists_
SiscoStoreMode | store_mode_
bool | has_temporary_file_
| If true, writing is done to a temporary file such that reading can still take place from the old file.

## 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 []
static constexpr char | kTemporaryExtension []

## 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 30 of file SiscoStManColumn.h.

## Constructor & Destructor Documentation

## SiscoStManColumn() [1/2]

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

inline explicit

Parameters

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

  mode

  Allows storing only one or two polarization values instead of four. If set to SiscoStoreMode::StokesI, the column will need to have an "apparent" shape of four correlations (e.g. xx, xy, yx, yy) but will only store Stokes I values, i.e., values for which the 1st and 4th value are equal and the other terms are zero. For SiscoStoreMode::Diagional, it will store two values: the first and fourth components, and the other values should be zero. When using SiscoStoreMode::Original, Sisco will store all correlations. In this mode, the (apparent) shape of the column can have any number of correlations.

This saves a small bit of space (Sisco is able to decrease the size of such redundant data, but explicitly decreasing it to Stokes I has a small additional effect), and makes compression more than double as fast.

Definition at line 49 of file SiscoStManColumn.h.

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

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

## ~SiscoStManColumn()

casacore::SiscoStManColumn::~SiscoStManColumn | ( |  | ) |

inline override

Definition at line 58 of file SiscoStManColumn.h.

References ResetWriter().

## 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 66 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 118 of file SiscoStManColumn.h.

References casacore::array, buffer_, current_read_row_, casacore::Diagonal, casacore::ExpandFromDiagonal(), casacore::ExpandFromStokesI(), fixed_shape_, GetNStoredCorrelations(), casacore::DataManagerColumn::isFixedShape(), casacore::Original, PrepareReadingOfRow(), reader_, RequestOneMoreRow(), shape(), shape_buffer_, shape_read_position_, casacore::StokesI, casacore::storage(), and store_mode_.

## GetBaselineId()

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

inline private

Definition at line 411 of file SiscoStManColumn.h.

References baseline_count_, and baseline_ids_.

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

## GetNStoredCorrelations()

int casacore::SiscoStManColumn::GetNStoredCorrelations | ( | const size_t | n_column_correlations | ) | const

inline constexpr private

Definition at line 472 of file SiscoStManColumn.h.

References casacore::Diagonal, casacore::Original, casacore::StokesI, and store_mode_.

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

## 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 74 of file SiscoStManColumn.h.

References file_exists_, and casacore::DataManagerColumn::isFixedShape().

Referenced by isShapeDefined().

## isShapeDefined() [2/2]

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

inline final

Definition at line 81 of file SiscoStManColumn.h.

References isShapeDefined().

## isWritable()

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

inline final virtual

Whether this column is writable.

Returns
  `true`

Reimplemented from casacore::DataManagerColumn.

Definition at line 64 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 324 of file SiscoStManColumn.h.

References baseline_count_, baseline_ids_, current_read_row_, current_requested_reading_row_, casacore::Diagonal, field_id_column_, has_temporary_file_, casacore::DataManagerColumn::isFixedShape(), kHeaderSize, kMagicSize, kVersionMajor, casacore::Original, parent_, reader_, RequestOneMoreRow(), ResetReader(), ResetWriter(), row_count_, shape_buffer_, shape_read_position_, shape_write_position_, shapes_reader_, ShapesFilename(), casacore::StokesI, and store_mode_.

Referenced by PrepareReadingOfRow().

## OpenWriter()

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

inline private

Definition at line 281 of file SiscoStManColumn.h.

References baseline_count_, baseline_ids_, current_write_row_, casacore::Diagonal, has_temporary_file_, casacore::DataManagerColumn::isFixedShape(), kHeaderSize, kMagic, kMagicSize, kTemporaryExtension, kVersionMajor, kVersionMinor, casacore::Original, parent_, reader_, ResetWriter(), shapes_writer_, ShapesFilename(), casacore::StokesI, store_mode_, 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 539 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, data_desc_id_column_, field_id_column_, file_exists_, casacore::DataManagerColumn::isFixedShape(), parent_, and ShapesFilename().

## PrepareReadingOfRow()

void casacore::SiscoStManColumn::PrepareReadingOfRow | ( | rownr_t | row | ) |

inline private

if row < current_read_row_, we have to reset the reader and start from the beginning. if row < current_write_row_, we are trying to read something that was already written. Writing may have been to a temporary file, which needs to be moved back first (by resetting), and if writing was not to a temporary file, it is the same file that we now need to open for reading, and the same file can not be written and read at the same time (e.g. due to caching). Ergo, the writer needs to be reset. The consequence is that another write after this read will reset (empty) the file. This is surprising, but it shouldn't happen in streaming processing, so it is a compromise. If writing is done to a temporary file, and reading is done from data that has not yet been written (row >= current_write_row_), no reset is necessary.

To check above condition, some boolean algebra gives: !is_reading_after_writing = !writer_ || (has_temporary_file_ && row >= current_write_row_) which is indeed also correct in that no writer reset is required in that case.

Definition at line 228 of file SiscoStManColumn.h.

References current_read_row_, current_write_row_, has_temporary_file_, OpenReader(), reader_, SkipRow(), and writer_.

Referenced by getArrayV(), and shape().

## 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 165 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, casacore::array, buffer_, casacore::CheckIsDiagonal(), current_write_row_, data_desc_id_column_, casacore::Diagonal, field_id_column_, GetBaselineId(), GetNStoredCorrelations(), casacore::DataManagerColumn::isFixedShape(), OpenWriter(), shapes_writer_, casacore::StokesI, casacore::storage(), store_mode_, casacore::TransformToStokesI(), WriteEmptyRow(), and writer_.

## RequestOneMoreRow()

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

inline private

Definition at line 383 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, current_requested_reading_row_, data_desc_id_column_, field_id_column_, fixed_shape_, GetBaselineId(), GetNStoredCorrelations(), casacore::DataManagerColumn::isFixedShape(), reader_, row_count_, shape(), shape_buffer_, shape_write_position_, and shapes_reader_.

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

## ResetReader()

void casacore::SiscoStManColumn::ResetReader | ( |  | ) |

inline private

Definition at line 276 of file SiscoStManColumn.h.

References reader_, and shapes_reader_.

Referenced by OpenReader().

## ResetWriter()

void casacore::SiscoStManColumn::ResetWriter | ( |  | ) |

inline private

In case has_temporary_file_ is true, the writers were initialized with a temporary filename such that reading of "old" values could take place simultaneously. These new files need to be moved over the old files.

Definition at line 255 of file SiscoStManColumn.h.

References has_temporary_file_, casacore::DataManagerColumn::isFixedShape(), kTemporaryExtension, parent_, shapes_writer_, ShapesFilename(), and writer_.

Referenced by OpenReader(), OpenWriter(), and ~SiscoStManColumn().

## 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 68 of file SiscoStManColumn.h.

## setShape() [2/2]

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

inline final

Definition at line 72 of file SiscoStManColumn.h.

## setShapeColumn()

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

inline final virtual

Set the dimensions of values in this column.

Reimplemented from casacore::DataManagerColumn.

Definition at line 86 of file SiscoStManColumn.h.

References fixed_shape_, and 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 99 of file SiscoStManColumn.h.

References file_exists_, fixed_shape_, casacore::DataManagerColumn::isFixedShape(), PrepareReadingOfRow(), shape_buffer_, and shape_read_position_.

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

## shape() [2/2]

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

inline final

Definition at line 109 of file SiscoStManColumn.h.

References shape().

## ShapesFilename()

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

inline private

Definition at line 424 of file SiscoStManColumn.h.

References kShapesExtension, and parent_.

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

## SkipRow()

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

inline private

Definition at line 449 of file SiscoStManColumn.h.

References buffer_, current_read_row_, fixed_shape_, GetNStoredCorrelations(), casacore::DataManagerColumn::isFixedShape(), reader_, RequestOneMoreRow(), shape(), shape_buffer_, and shape_read_position_.

Referenced by PrepareReadingOfRow().

## WriteEmptyRow()

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

inline private

Definition at line 428 of file SiscoStManColumn.h.

References antenna1_column_, antenna2_column_, buffer_, current_write_row_, data_desc_id_column_, field_id_column_, fixed_shape_, GetBaselineId(), GetNStoredCorrelations(), casacore::DataManagerColumn::isFixedShape(), shapes_writer_, and writer_.

Referenced by putArrayV().

## Member Data Documentation

## antenna1_column_

ScalarColumn<int> casacore::SiscoStManColumn::antenna1_column_

private

Definition at line 495 of file SiscoStManColumn.h.

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

## antenna2_column_

ScalarColumn<int> casacore::SiscoStManColumn::antenna2_column_

private

Definition at line 496 of file SiscoStManColumn.h.

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

## baseline_count_

size_t casacore::SiscoStManColumn::baseline_count_

private

Definition at line 522 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 521 of file SiscoStManColumn.h.

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

## buffer_

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

private

Scratch buffer.

It does not have a specific state between function calls, but is stored in class scope so that can reuse its memory.

Definition at line 520 of file SiscoStManColumn.h.

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

## current_read_row_

rownr_t casacore::SiscoStManColumn::current_read_row_

private

Definition at line 513 of file SiscoStManColumn.h.

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

## current_requested_reading_row_

rownr_t casacore::SiscoStManColumn::current_requested_reading_row_

private

Definition at line 512 of file SiscoStManColumn.h.

Referenced by OpenReader(), and RequestOneMoreRow().

## current_write_row_

rownr_t casacore::SiscoStManColumn::current_write_row_

private

Definition at line 514 of file SiscoStManColumn.h.

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

## data_desc_id_column_

ScalarColumn<int> casacore::SiscoStManColumn::data_desc_id_column_

private

Definition at line 494 of file SiscoStManColumn.h.

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

## field_id_column_

ScalarColumn<int> casacore::SiscoStManColumn::field_id_column_

private

Definition at line 493 of file SiscoStManColumn.h.

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

## file_exists_

bool casacore::SiscoStManColumn::file_exists_

private

Definition at line 523 of file SiscoStManColumn.h.

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

## fixed_shape_

IPosition casacore::SiscoStManColumn::fixed_shape_

private

Definition at line 503 of file SiscoStManColumn.h.

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

## has_temporary_file_

bool casacore::SiscoStManColumn::has_temporary_file_

private

If true, writing is done to a temporary file such that reading can still take place from the old file.

The temporary file will be moved over the old file once writing is finished.

Definition at line 530 of file SiscoStManColumn.h.

Referenced by OpenReader(), OpenWriter(), PrepareReadingOfRow(), and ResetWriter().

## kHeaderSize

size_t casacore::SiscoStManColumn::kHeaderSize

static constexpr private

Definition at line 485 of file SiscoStManColumn.h.

Referenced by OpenReader(), and OpenWriter().

## kMagic

char casacore::SiscoStManColumn::kMagic[]

static constexpr private

Definition at line 486 of file SiscoStManColumn.h.

Referenced by OpenWriter().

## kMagicSize

size_t casacore::SiscoStManColumn::kMagicSize

static constexpr private

Definition at line 487 of file SiscoStManColumn.h.

Referenced by OpenReader(), and OpenWriter().

## kShapesExtension

char casacore::SiscoStManColumn::kShapesExtension[]

static constexpr private

Definition at line 490 of file SiscoStManColumn.h.

Referenced by ShapesFilename().

## kTemporaryExtension

char casacore::SiscoStManColumn::kTemporaryExtension[]

static constexpr private

Definition at line 491 of file SiscoStManColumn.h.

Referenced by OpenWriter(), and ResetWriter().

## kVersionMajor

uint16_t casacore::SiscoStManColumn::kVersionMajor

static constexpr private

Definition at line 488 of file SiscoStManColumn.h.

Referenced by OpenReader(), and OpenWriter().

## kVersionMinor

uint16_t casacore::SiscoStManColumn::kVersionMinor

static constexpr private

Definition at line 489 of file SiscoStManColumn.h.

Referenced by OpenWriter().

## parent_

SiscoStMan& casacore::SiscoStManColumn::parent_

private

Definition at line 498 of file SiscoStManColumn.h.

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

## reader_

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

private

Definition at line 500 of file SiscoStManColumn.h.

Referenced by getArrayV(), OpenReader(), OpenWriter(), PrepareReadingOfRow(), RequestOneMoreRow(), ResetReader(), and SkipRow().

## row_count_

rownr_t casacore::SiscoStManColumn::row_count_

private

When reading, this value is set to the number of rows in the measurement set.

Definition at line 517 of file SiscoStManColumn.h.

Referenced by OpenReader(), and RequestOneMoreRow().

## shape_buffer_

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

private

A circular buffer to store the already read shapes.

Definition at line 505 of file SiscoStManColumn.h.

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

## shape_read_position_

size_t casacore::SiscoStManColumn::shape_read_position_

private

Points inside shape_buffer_ to the location corresponding to the shape for the current_read_row_.

Definition at line 508 of file SiscoStManColumn.h.

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

## shape_write_position_

size_t casacore::SiscoStManColumn::shape_write_position_

private

When reading a new shape from file, this is the place inside the shape buffer to write it to.

Definition at line 511 of file SiscoStManColumn.h.

Referenced by OpenReader(), and RequestOneMoreRow().

## shapes_reader_

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

private

Definition at line 502 of file SiscoStManColumn.h.

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

## shapes_writer_

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

private

Definition at line 501 of file SiscoStManColumn.h.

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

## store_mode_

SiscoStoreMode casacore::SiscoStManColumn::store_mode_

private

Definition at line 524 of file SiscoStManColumn.h.

Referenced by getArrayV(), GetNStoredCorrelations(), OpenReader(), OpenWriter(), putArrayV(), and SiscoStManColumn().

## writer_

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

private

Definition at line 499 of file SiscoStManColumn.h.

Referenced by OpenWriter(), PrepareReadingOfRow(), putArrayV(), ResetWriter(), and WriteEmptyRow().

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

- tables/AlternateMans/SiscoStManColumn.h