26#ifndef TABLES_VIRTCOLENG_H
27#define TABLES_VIRTCOLENG_H
30#include <casacore/casa/aips.h>
31#include <casacore/tables/DataMan/DataManager.h>
208 const String& dataTypeId);
214 const String& dataTypeId);
220 const String& dataTypeId);
Abstract base class for a data manager.
String: the storage and methods of handling collections of characters.
virtual void prepare()
Let the data manager initialize itself further.
virtual DataManagerColumn * makeScalarColumn(const String &columnName, int dataType, const String &dataTypeId)
Make a column object in the engine on behalf of a table column.
virtual ~VirtualColumnEngine()
VirtualColumnEngine & operator=(const VirtualColumnEngine &)=delete
Assignment cannot be used for this base class.
VirtualColumnEngine()
Create the object.
virtual Bool flush(AipsIO &, Bool fsync)
Flush the data in the engine object.
virtual Bool canRemoveRow() const
Does the data manager allow to delete rows? (default no)
virtual rownr_t open64(rownr_t nrrow, AipsIO &mainTableFile)
Initialize the object for an existing table containing nrrow rows.
virtual Bool isStorageManager() const
The data manager is not a storage manager?
virtual void deleteManager()
The data manager will be deleted (because all its columns are requested to be deleted).
virtual DataManagerColumn * makeIndArrColumn(const String &columnName, int dataType, const String &dataTypeId)
Create an indirect array column.
virtual void removeRow64(rownr_t rownr)
Delete a row from all columns.
virtual rownr_t resync64(rownr_t nrrow)
Resync the storage manager with the new file contents.
virtual DataManagerColumn * makeDirArrColumn(const String &columnName, int dataType, const String &dataTypeId)
Create a direct array column.
virtual void addRow64(rownr_t nrrow)
Add rows to all columns.
virtual void create64(rownr_t initialNrrow)
Initialize the object for a new table containing initially nrrow rows.
VirtualColumnEngine(const VirtualColumnEngine &)=delete
The copy constructor cannot be used for this base class.
virtual Bool canAddRow() const
Does the data manager allow to add rows? (default no)
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.
uInt64 rownr_t
Define the type of a row number in a table.