28 #ifndef TABLES_COLDESCSET_H
29 #define TABLES_COLDESCSET_H
32 #include <casacore/casa/aips.h>
33 #include <casacore/tables/Tables/ColumnDesc.h>
34 #include <casacore/casa/Containers/Block.h>
35 #include <casacore/casa/BasicSL/String.h>
36 #include <casacore/casa/Utilities/CountedPtr.h>
37 #include <casacore/casa/iosfwd.h>
132 Bool& equalDataTypes)
const;
136 {
return other.
isSubset (*
this, equalDataTypes); }
141 Bool& equalDataTypes)
const
194 std::map<String,CountedPtr<ColumnDesc>>
cols_p;
ColumnDesc & operator[](const String &name)
Get a column by its name.
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.
std::map< String, CountedPtr< ColumnDesc > > cols_p
The set of all columns.
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.
ColumnDescSet & operator=(const ColumnDescSet &)
Assignment (copy semantics).
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.
void getFile(AipsIO &, const TableAttr &)
Get the object.
ColumnDescSet()
Construct an empty column set.
ColumnDesc & addColumn(const ColumnDesc &, const String &newname)
Add a column with another name.
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.
Bool isSuperset(const ColumnDescSet &other, Bool &equalDataTypes) const
Test if this set is a superset of another one.
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.
ColumnDesc & addColumn(const ColumnDesc &)
Add a column.
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.