28 #ifndef TABLES_SCARECORDCOLDATA_H
29 #define TABLES_SCARECORDCOLDATA_H
40 class ScalarRecordColumnDesc;
42 template<
class T>
class Vector;
121 virtual void get (
uInt rownr,
void*)
const;
132 void* dataPtr)
const;
137 virtual void put (
uInt rownr,
const void* dataPtr);
148 const void* dataPtr);
155 const void*& dataSave);
160 const void*& dataSave);
169 virtual void allocIterBuf (
void*& lastVal,
void*& curVal,
173 virtual void freeIterBuf (
void*& lastVal,
void*& curVal);
virtual Bool canAccessScalarColumnCells(Bool &reask) const
Ask if the data manager can handle some cells in a column.
std::vector< double > Vector
virtual void put(uInt rownr, const void *dataPtr)
Put the value in a particular cell.
AipsIO is the object persistency mechanism of Casacore.
ScalarRecordColumnData & operator=(const ScalarRecordColumnData &)
Assignment cannot be used.
virtual Bool isDefined(uInt rownr) const
Test if the given cell contains a defined value.
Access to a table column containing scalar records.
virtual void getScalarColumn(void *dataPtr) const
Get the array of all values in the column.
Class to manage a set of table columns.
virtual void makeSortKey(Sort &, CountedPtr< BaseCompare > &cmpObj, Int order, const void *&dataSave)
Add this column and its data to the Sort object.
Sort on one or more keys, ascending and/or descending.
virtual void makeRefSortKey(Sort &, CountedPtr< BaseCompare > &cmpObj, Int order, const Vector< uInt > &rownrs, const void *&dataSave)
Do it only for the given row numbers.
Referenced counted pointer for constant data.
void getRecord(uInt rownr, TableRecord &rec) const
Handle getting and putting a record.
Class holding the row numbers in a RefTable.
virtual void createDataManagerColumn()
Create a data manager column object for this column.
bool Bool
Define the standard types used by Casacore.
virtual void putScalarColumn(const void *dataPtr)
Put the array of all values in the column.
virtual void allocIterBuf(void *&lastVal, void *&curVal, CountedPtr< BaseCompare > &cmpObj)
Allocate value buffers for the table iterator.
Class to define columns of scalar records in tables.
const ScalarRecordColumnDesc * scaDescPtr_p
Pointer to column description.
A hierarchical collection of named fields of various types.
virtual void freeIterBuf(void *&lastVal, void *&curVal)
Free the value buffers allocated by allocIterBuf.
~ScalarRecordColumnData()
Base class for a column in a plain table.
ScalarRecordColumnData(const ScalarRecordColumnDesc *, ColumnSet *)
Construct a scalar column object from the given description in the given column set.
virtual void getScalarColumnCells(const RefRows &rownrs, void *dataPtr) const
Get the array of some values in the column (on behalf of RefColumn).
virtual void putScalarColumnCells(const RefRows &rownrs, const void *dataPtr)
Put the array of some values in the column (on behalf on RefColumn).
virtual void putFileDerived(AipsIO &)
Write the column data.
virtual void getFileDerived(AipsIO &, const ColumnSet &)
Read the column data back.
void putRecord(uInt rownr, const TableRecord &rec)
virtual Bool canAccessScalarColumn(Bool &reask) const
Ask if the data manager can handle a column.
virtual void initialize(uInt startRownr, uInt endRownr)
Initialize the rows from startRownr till endRownr (inclusive) with the default value defined in the c...
virtual void freeSortKey(const void *&dataSave)
Free storage on the heap allocated by makeSortkey().
#define casacore
<X11/Intrinsic.h> #defines true, false, casacore::Bool, and String.