28 #ifndef TABLES_MSMCOLUMN_H
29 #define TABLES_MSMCOLUMN_H
230 virtual void remove (
uInt rownr);
void putArrayPtr(uInt rownr, void *dataPtr)
Put the pointer for the given row.
void putuIntV(uInt rownr, const uInt *dataPtr)
void initData(void *datap, uInt nrval)
Initialize the data (after an open).
void putuShortV(uInt rownr, const uShort *dataPtr)
void putBlockBoolV(uInt rownr, uInt nrmax, const Bool *dataPtr)
Put nrmax scalars from the given row on.
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
void getInt64V(uInt rownr, Int64 *dataPtr)
uInt getBlockfloatV(uInt rownr, uInt nrmax, float *dataPtr)
void putBlockComplexV(uInt rownr, uInt nrmax, const Complex *dataPtr)
uInt nralloc_p
The number of allocated rows in the column.
uInt getBlockuShortV(uInt rownr, uInt nrmax, uShort *dataPtr)
void putBlockuIntV(uInt rownr, uInt nrmax, const uInt *dataPtr)
std::complex< Float > Complex
virtual void getScalarColumnCellsuShortV(const RefRows &rownrs, Vector< uShort > *dataPtr)
uInt getBlockBoolV(uInt rownr, uInt nrmax, Bool *dataPtr)
Get scalars from the given row on with a maximum of nrmax values.
void getComplexV(uInt rownr, Complex *dataPtr)
virtual void getScalarColumnCellsInt64V(const RefRows &rownrs, Vector< Int64 > *dataPtr)
void * allocData(uInt nrval, Bool byPtr)
Allocate an extension with the data type of the column.
void getfloatV(uInt rownr, float *dataPtr)
void putShortV(uInt rownr, const Short *dataPtr)
virtual void getScalarColumnCellsIntV(const RefRows &rownrs, Vector< Int > *dataPtr)
uInt findExt(uInt rownr, Bool setCache)
Find the extension in which the row number is.
uInt getBlockComplexV(uInt rownr, uInt nrmax, Complex *dataPtr)
Base class for memory-based table storage manager class.
MSMColumn(MSMBase *smptr, int dataType, Bool byPtr)
Create a column of the given type.
void putBlockfloatV(uInt rownr, uInt nrmax, const float *dataPtr)
virtual void getScalarColumnCellsStringV(const RefRows &rownrs, Vector< String > *dataPtr)
uInt getBlockIntV(uInt rownr, uInt nrmax, Int *dataPtr)
void putBlockdoubleV(uInt rownr, uInt nrmax, const double *dataPtr)
virtual ~MSMColumn()
Frees up the storage.
uInt getBlockStringV(uInt rownr, uInt nrmax, String *dataPtr)
Block< void * > data_p
The assembly of all extensions (actually Block<T*>).
void deleteAll()
Delete all extensions.
uInt getBlockuIntV(uInt rownr, uInt nrmax, uInt *dataPtr)
void getuIntV(uInt rownr, uInt *dataPtr)
void putBlockuCharV(uInt rownr, uInt nrmax, const uChar *dataPtr)
int dataType() const
Return the data type of the column.
uInt getBlockInt64V(uInt rownr, uInt nrmax, Int64 *dataPtr)
void putBlockStringV(uInt rownr, uInt nrmax, const String *dataPtr)
uInt getBlockDComplexV(uInt rownr, uInt nrmax, DComplex *dataPtr)
virtual Bool ok() const
Check if the class invariants still hold.
virtual void getScalarColumnCellsuCharV(const RefRows &rownrs, Vector< uChar > *dataPtr)
uInt getBlockdoubleV(uInt rownr, uInt nrmax, double *dataPtr)
void removeData(void *datap, uInt inx, uInt nrvalAfter)
Remove an entry (i.e.
void resize(uInt nrval)
Resize the data blocks.
virtual void getScalarColumnCellsShortV(const RefRows &rownrs, Vector< Short > *dataPtr)
void putBlockuShortV(uInt rownr, uInt nrmax, const uShort *dataPtr)
void getDComplexV(uInt rownr, DComplex *dataPtr)
virtual void getScalarColumnCellsfloatV(const RefRows &rownrs, Vector< float > *dataPtr)
void putBlockDComplexV(uInt rownr, uInt nrmax, const DComplex *dataPtr)
void putfloatV(uInt rownr, const float *dataPtr)
std::complex< Double > DComplex
Class holding the row numbers in a RefTable.
void deleteData(void *datap, Bool byPtr)
Delete an extension.
Block< uInt > ncum_p
The cumulative nr of rows in all extensions.
virtual void doCreate(uInt nrrow)
Create the number of rows in a new table.
void putComplexV(uInt rownr, const Complex *dataPtr)
virtual void getScalarColumnCellsComplexV(const RefRows &rownrs, Vector< Complex > *dataPtr)
virtual void addRow(uInt newNrrow, uInt oldNrrow)
Add (newNrrow-oldNrrow) rows to the column.
void putuCharV(uInt rownr, const uChar *dataPtr)
bool Bool
Define the standard types used by Casacore.
void getdoubleV(uInt rownr, double *dataPtr)
uInt nrext_p
The nr of extensions in use.
void putBlockInt64V(uInt rownr, uInt nrmax, const Int64 *dataPtr)
Column in the Memory table storage manager class.
void * getArrayPtr(uInt rownr)
Get the pointer for the given row.
virtual void getScalarColumnCellsDComplexV(const RefRows &rownrs, Vector< DComplex > *dataPtr)
MSMColumn & operator=(const MSMColumn &)
Forbid assignment.
void getuCharV(uInt rownr, uChar *dataPtr)
int dtype_p
The data type (for caching purposes).
void putBlockShortV(uInt rownr, uInt nrmax, const Short *dataPtr)
virtual void getScalarColumnCellsBoolV(const RefRows &rownrs, Vector< Bool > *dataPtr)
Get the scalar values in some cells of the column.
void putDComplexV(uInt rownr, const DComplex *dataPtr)
void putIntV(uInt rownr, const Int *dataPtr)
void putInt64V(uInt rownr, const Int64 *dataPtr)
void getStringV(uInt rownr, String *dataPtr)
virtual void getScalarColumnCellsuIntV(const RefRows &rownrs, Vector< uInt > *dataPtr)
uInt getBlockShortV(uInt rownr, uInt nrmax, Short *dataPtr)
void getuShortV(uInt rownr, uShort *dataPtr)
void getIntV(uInt rownr, Int *dataPtr)
String: the storage and methods of handling collections of characters.
void putBoolV(uInt rownr, const Bool *dataPtr)
Put a scalar value into the given row.
void putStringV(uInt rownr, const String *dataPtr)
uInt getBlockuCharV(uInt rownr, uInt nrmax, uChar *dataPtr)
void putBlockIntV(uInt rownr, uInt nrmax, const Int *dataPtr)
void getShortV(uInt rownr, Short *dataPtr)
void putdoubleV(uInt rownr, const double *dataPtr)
void getBoolV(uInt rownr, Bool *dataPtr)
Get a scalar value in the given row.
virtual void getScalarColumnCellsdoubleV(const RefRows &rownrs, Vector< double > *dataPtr)
Base table column storage manager class.
uInt nextExt(void *&ext, uInt &extnr, uInt nrmax) const
Get the next extension.
Bool byPtr_p
The data is indirectly accessed via a pointer (for the derived classes).
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.