28 #ifndef TABLES_BASECOLDESC_H
29 #define TABLES_BASECOLDESC_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/casa/Utilities/DataType.h>
35 #include <casacore/casa/Arrays/IPosition.h>
36 #include <casacore/casa/BasicSL/String.h>
37 #include <casacore/casa/iosfwd.h>
135 virtual void show (ostream& os)
const = 0;
300 const String& newName)
const;
const String & dataManagerGroup() const
Get the data manager group.
const String & dataManagerType() const
Get the type name of the default data manager.
RefColumn * makeRefColumn(RefTable *, BaseColumn *) const
Make a RefColumn object out of the description.
void setMaxLength(uInt maxLength)
Set the maximum value length.
void setNdim(uInt ndim)
Set the number of dimensions.
String & dataManagerType()
Get the type name of the default data manager.
const String & name() const
Get the name of the column.
const String & comment() const
Get comment string.
virtual void checkAdd(const ColumnDescSet &cds) const
Check if a column can be handled by ColumnDescSet.
void putFile(AipsIO &, const TableAttr &) const
Put the object.
void getFile(AipsIO &, const TableAttr &)
Get the object.
virtual void show(ostream &os) const =0
Show the column.
TableRecord * keySetPtr_p
virtual ~BaseColumnDesc()
virtual BaseColumnDesc * clone() const =0
Clone a column description (creating a new column description object).
virtual void handleRemove(ColumnDescSet &cds)
virtual TableDesc * tableDesc()
virtual void handleRename(ColumnDescSet &cds, const String &oldName)
virtual PlainColumn * makeColumn(ColumnSet *) const =0
Make a PlainColumn object out of the description.
const String & dataTypeId() const
Get the type id for non-standard data types (i.e.
void setDefaultDataManager(Bool always)
Set the data manager type and group to the default.
BaseColumnDesc & operator=(const BaseColumnDesc &)
Assignment (copy semantics).
Int options() const
Get the options.
virtual void getDesc(AipsIO &)=0
Get the derived object.
uInt maxLength() const
Get the maximum value length.
BaseColumnDesc(const String &name, const String &comment, const String &dataManagerType, const String &dataManagerGroup, DataType, const String &dataTypeId, Int options, uInt ndim, const IPosition &shape, Bool isScalar, Bool isArray, Bool isTable)
Construct the column base object.
virtual String className() const =0
Get the underlying class name.
Bool isScalar() const
Test if column is scalar, array or table.
String & dataManagerGroup()
Get the data manager group.
virtual void handleAdd(ColumnDescSet &cds)
Take action after a column has been handled by ColumnDescSet.
void setName(const String &name)
Set the name of the column (for a rename).
virtual void checkRename(const ColumnDescSet &cds, const String &newName) const
virtual ConcatColumn * makeConcatColumn(ConcatTable *) const
Make a ConcatColumn object out of the description.
virtual void putDesc(AipsIO &) const =0
Put the derived object.
const IPosition & shape() const
Get the predefined shape.
BaseColumnDesc(const BaseColumnDesc &)
Copy constructor (copy semantics).
void setOptions(Int options)
Set the options to the given value.
void setShape(const IPosition &shape, Bool directOption)
void setShape(const IPosition &shape)
Set the predefined shape.
Int ndim() const
Get the number of dimensions.
virtual void renameAction(const String &newName, const String &oldName)
This function allows each column to act upon a rename of another column.
DataType dataType() const
Get the data type of the column.
TableRecord & rwKeywordSet()
Get access to the set of keywords.
const TableRecord & keywordSet() const
const TableDesc * tableDesc() const
Get table description (in case column contains subtables).
String & comment()
Get comment string (allowing it to be changed).
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.