26#ifndef TABLES_COLDESCSET_H
27#define TABLES_COLDESCSET_H
30#include <casacore/casa/aips.h>
31#include <casacore/tables/Tables/ColumnDesc.h>
32#include <casacore/casa/Containers/Block.h>
33#include <casacore/casa/BasicSL/String.h>
34#include <casacore/casa/iosfwd.h>
130 Bool& equalDataTypes)
const;
134 {
return other.
isSubset (*
this, equalDataTypes); }
139 Bool& equalDataTypes)
const
192 std::map<String,std::shared_ptr<ColumnDesc>>
cols_p;
Bool isStrictSubset(const ColumnDescSet &other, Bool &equalDataTypes) const
Test if this set is a strict subset of another one, thus if it is a subset and not equal.
Bool isStrictSuperset(const ColumnDescSet &other, Bool &equalDataTypes) const
Test if this set is a strict superset of another one, thus if it is a superset and not equal.
void rename(const String &newname, const String &oldname)
Rename a column in the set.
uInt ncolumn() const
Get nr of columns in this set.
Bool isDisjoint(const ColumnDescSet &other) const
Test if this and the other column set are disjoint.
ColumnDesc & operator[](const String &name)
Get a column by its name.
void checkSubTableDesc() const
Check recursevily if the descriptions of all subtables are known.
Bool allExist(const ColumnDescSet &, Bool &equalDataTypes) const
Test if all columns are part of the other set.
Bool isEqual(const ColumnDescSet &other, Bool &equalDataTypes) const
Test if this set equals another one.
ColumnDescSet & operator=(const ColumnDescSet &)
Assignment (copy semantics).
void getFile(AipsIO &, const TableAttr &)
Get the object.
ColumnDescSet()
Construct an empty column set.
ColumnDesc & addColumn(const ColumnDesc &)
Add a column.
Block< void * > colSeq_p
The order of addition of column descriptions.
ColumnDescSet(const ColumnDescSet &)
Copy constructor (copy semantics).
void remove(const String &name)
Remove a column.
void add(const ColumnDescSet &set)
Add another (disjoint) column set.
std::map< String, std::shared_ptr< ColumnDesc > > cols_p
The set of all columns.
Bool isSuperset(const ColumnDescSet &other, Bool &equalDataTypes) const
Test if this set is a superset of another one.
ColumnDesc & addColumn(const ColumnDesc &, const String &newname)
Add a column with another name.
Bool isSubset(const ColumnDescSet &other, Bool &equalDataTypes) const
Test if this set is a subset of another one.
void putFile(AipsIO &ios, const TableAttr &) const
Put the object.
Bool isDefined(const String &name) const
Test if a column is defined in this set.
void show(ostream &os) const
Get const access to the column descriptions.
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
String name() const
Return the name of the field.
bool Bool
Define the standard types used by Casacore.