28#ifndef TABLES_RETYPEDARRAYENGINE_H
29#define TABLES_RETYPEDARRAYENGINE_H
32#include <casacore/casa/aips.h>
33#include <casacore/tables/DataMan/BaseMappedArrayEngine.h>
34#include <casacore/tables/Tables/TableRecord.h>
461 const String& storedColumnName);
472 const String& storedColumnName,
599#ifndef CASACORE_NO_AUTO_TEMPLATES
600#include <casacore/tables/DataMan/RetypedArrayEngine.tcc>
ArrayColumn< StoredType > & column()
Give access to the stored column.
void setNames(const String &virtualName, const String &storedName)
Set the virtual and stored column name.
const String & storedName() const
Get the stored column name.
const String & virtualName() const
Get the virtual column name.
Abstract base class for a data manager.
Table & table() const
Get the table this object is associated with.
void prepare()
Preparing consists of setting the writable switch and adding the initial number of rows in case of cr...
virtual void mapOnPut(const Array< VirtualType > &array, Array< StoredType > &stored)
Copy the virtual array to the stored array.
static DataManager * makeObject(const String &dataManagerType, const Record &spec)
RetypedArrayEngine(const RetypedArrayEngine< VirtualType, StoredType > &)
Copy constructor is only used by clone().
void setShapeColumn(const IPosition &shape)
Set the shape of the FixedShape arrays in the column.
void create64(rownr_t initialNrrow)
Initialize the object for a new table.
RetypedArrayEngine(const Record &spec)
Construct from a record specification as created by getmanagerSpec().
virtual void mapOnGet(Array< VirtualType > &array, const Array< StoredType > &stored)
Copy the stored array to the virtual array.
virtual IPosition getStoredShape(rownr_t rownr, const IPosition &virtualShape)
Map the virtual shape to the stored shape.
~RetypedArrayEngine()
Destructor is mandatory.
virtual String dataManagerType() const
Return the type name of the engine (i.e.
IPosition virtualFixedShape_p
virtual Record dataManagerSpec() const
Record a record containing data manager specifications.
virtual String dataManagerName() const
Get the name given to the engine (is the virtual column name).
static void registerClass()
Register the class name and the static makeObject "constructor".
RetypedArrayEngine(const String &virtualColumnName, const String &storedColumnName, const IPosition &virtualElementShape, const TableRecord &extraInformation)
Construct an engine to map a virtual column containing arrays with an arbitrary data type to arrays i...
uInt ndim(rownr_t rownr)
Get the dimensionality of the array in the given row.
IPosition checkShape(const Array< VirtualType > &source, const Array< StoredType > &target)
Check if the shapes of virtual and stored match.
void setShape(rownr_t rownr, const IPosition &shape)
Define the shape of the array in the given row.
DataManager * clone() const
Clone the engine object.
IPosition shape(rownr_t rownr)
Get the shape of the array in the given row.
virtual Slicer getStoredSlicer(const Slicer &virtualSlicer) const
Convert the Slicer for a virtual to a Slicer for the stored.
Bool isVirtualFixedShape_p
RetypedArrayEngine(const String &virtualColumnName, const String &storedColumnName)
Construct an engine to map a virtual column containing arrays with an arbitrary data type to arrays i...
static String className()
Return the name of the class.
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
TableExprNode array(const TableExprNode &values, const TableExprNodeSet &shape)
Create an array of the given shape and fill it with the values.
bool Bool
Define the standard types used by Casacore.
uInt64 rownr_t
Define the type of a row number in a table.