Go to the documentation of this file.
28 #ifndef TABLES_TABLEDESC_H
29 #define TABLES_TABLEDESC_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/tables/Tables/ColDescSet.h>
35 #include <casacore/casa/IO/AipsIO.h>
36 #include <casacore/casa/iosfwd.h>
45 template<
class T>
class Vector;
337 void show (ostream& os)
const;
479 const String& hypercolumnName);
534 {
return col_p[name]; }
536 {
return col_p[name]; }
538 {
return col_p[index]; }
540 {
return col_p[index]; }
542 {
return col_p[name]; }
544 {
return col_p[index]; }
uInt ncolumn() const
Get number of columns.
Define the structure of a Casacore table.
const String & comment() const
Get comment string.
const TableRecord & keywordSet() const
const TableRecord & privateKeywordSet() const
Get readonly access to the private set of keywords.
ColumnDesc & rwColumnDesc(const String &name)
void putFile(AipsIO &, const TableAttr &) const
Put the table description into the file.
AipsIO is the object persistency mechanism of Casacore
const ColumnDesc & operator[](const String &name) const
void removeIDhypercolumns(const Vector< String > &hcNames)
Remove ID-columns from the given hypercolumn definitions and set their default data manager type to I...
void getFile(AipsIO &, const TableAttr &)
Get the table description from the file.
Vector< String > columnNames() const
Get a vector containing all column names.
TableRecord & rwKeywordSet()
Get access to the keyword set.
A hierarchical collection of named fields of various types.
void defineHypercolumn(const String &hypercolumnName, uInt ndim, const Vector< String > &dataColumnNames)
Define a hypercolumn.
uInt hypercolumnDesc(const String &hypercolumnName, Vector< String > &dataColumnNames, Vector< String > &coordColumnNames, Vector< String > &idColumnNames) const
Get the columns involved in a hypercolumn.
~TableDesc()
The destructor writes the table description if changed.
LatticeExprNode ndim(const LatticeExprNode &expr)
1-argument function to get the dimensionality of a lattice.
void removeHypercolumnDesc(const String &hypercolumnName)
Remove given hypercolumn definition.
void show() const
Show the table description on cout.
Vector< String > hypercolumnNames() const
Get the names of all hypercolumns.
void renameHypercolumn(const String &newHypercolumnName, const String &hypercolumnName)
static Bool isReadable(const String &tableDescName)
Test if a description file exists (i.e.
void renameColumn(const String &newname, const String &oldname)
Rename a column.
const ColumnDescSet & columnDescSet() const
Get access to the set of column descriptions.
void checkSubTableDesc() const
Check recursively if the descriptions of all subtables are known.
Bool isDefined(const String &name) const
Test if a column is defined in this set.
void throwHypercolumn(const String &hyperColumnName, const String &message)
Throw an invalid hypercolumn exception.
const ColumnDesc & columnDesc(const String &name) const
Get the column description by name or by index.
void add(const TableDesc &other, Bool addKeywordSet=True)
Add another table description to this table description.
TableDesc & operator=(const TableDesc &)
Assignment is not supported, because it is impossible to define its semantics.
void init(const TabPath &)
Initialize the table description.
void adjustHypercolumns(const std::map< String, String > &old2new, Bool keepUnknownData=False, Bool keepUnknownCoord=False, Bool keppUnknownId=False)
Adjust the hypercolumn definitions (for a RefTable).
const String & version() const
Get the table description version.
ColumnDesc & addColumn(const ColumnDesc &)
Add a column to the table description.
this file contains all the compiler specific defines
void copy(const TableDesc &, const TabPath &, Bool copyColumns)
Initialize and copy a table description.
void checkSubTableDesc() const
Check recursevily if the descriptions of all subtables are known.
void remove(const String &name)
Remove a column.
Bool isHypercolumn(const String &hypercolumnName) const
Test if the given hypercolumn exists.
ColumnDesc & addColumn(const ColumnDesc &)
Add a column.
String: the storage and methods of handling collections of characters.
bool Bool
Define the standard types used by Casacore.
TableDesc()
The default constructor creates a table description with option = Scratch and a blank name.
uInt ncolumn() const
Get nr of columns in this set.
A 1-D Specialization of the Array class.
void removeColumn(const String &name)
Remove a column.
const String & getType() const
Get the table type (i.e.
Bool isColumn(const String &name) const
Test if a column with this name exists.
Set of table column descriptions.
Envelope class for the description of a table column.
Some attributes of a table.
Search path for table files.