32 #include <casacore/casa/aips.h> 33 #include <casacore/casa/Utilities/DataType.h> 34 #include <casacore/tables/Tables/Table.h> 35 #include <casacore/casa/Utilities/CountedPtr.h> 36 #include <casacore/casa/BasicSL/String.h> 37 #include <casacore/tables/Tables/ColumnDesc.h> 45 template <
class T>
class Block;
74 {
return mapType (columnMap_p, name); }
76 {
return mapType (keywordMap_p, name); }
150 typedef typename MSEnum::PredefinedColumns
ColEnum;
151 typedef typename MSEnum::PredefinedKeywords
KeyEnum;
156 Bool isColumn(ColEnum which)
const;
160 Bool isColumnWritable(ColEnum which)
const;
169 Bool isScalar(ColEnum which)
const;
170 Bool isArray(ColEnum which)
const;
177 {
return unit(columnName(which)); }
181 static const String& columnName(ColEnum which);
185 static DataType columnDataType(ColEnum which);
187 static const String& columnStandardComment(ColEnum which);
189 static const String& columnUnit(ColEnum which);
191 static const String& columnMeasureType(ColEnum which);
201 static void addColumnToDesc(
TableDesc & tabDesc, ColEnum which,
206 static void addColumnToDesc(
TableDesc & tabDesc, ColEnum which,
209 static void addColumnToDesc(
MSTableMaps&, ColEnum which,
214 static void addColumnToDesc(
MSTableMaps&, ColEnum which,
222 static const String& keywordName(KeyEnum which);
224 static DataType keywordDataType(KeyEnum which);
225 static const String& keywordStandardComment(KeyEnum which);
228 Bool isKeyword(KeyEnum which)
const;
236 static void addKeyToDesc(
TableDesc&, KeyEnum key);
237 static void addKeyToDesc(
MSTableMaps&, KeyEnum key);
252 {
return this->isNull() ?
False : validate(this->tableDesc());}
255 static const TableDesc& requiredTableDesc();
262 static void addColumnCompression (
TableDesc& td, ColEnum which,
308 const String& colMeasureType=
"");
315 const String& keyComment);
std::map< Int, String > colCommentMap_p
ColEnum -> comment string.
A Vector of integers, for indexing into Array<T> objects.
MSEnum::PredefinedKeywords KeyEnum
std::map< Int, String > keyCommentMap_p
KeyEnum -> comment string.
Int keywordType(const String &name) const
Create a new table - define shapes, data managers, etc.
Int mapType(const std::map< Int, String > &, const String &name) const
Main interface class to a read/write table.
static DataType columnDataType(const MSTableMaps &maps, ColEnum which)
Bool isColumnWritable(const String &columnName) const
Test if the given column is writable.
Int columnType(const String &name) const
Convert a name to a ColEnum or KeyEnum.
PtrHolder< T > & operator=(const PtrHolder< T > &other)
std::map< Int, String > colUnitMap_p
ColEnum -> UNIT string.
std::map< Int, String > columnMap_p
ColEnum -> name.
std::map< Int, String > keywordMap_p
KeyEnum -> name.
static const String & keywordStandardComment(const MSTableMaps &maps, KeyEnum which)
static const String & columnName(const MSTableMaps &maps, ColEnum which)
Convert a ColEnum to the actual column name.
static const String & keywordName(const MSTableMaps &maps, KeyEnum which)
static const String & columnStandardComment(const MSTableMaps &maps, ColEnum which)
static const String & columnUnit(const MSTableMaps &maps, ColEnum which)
std::map< Int, Int > colDTypeMap_p
ColEnum -> DataType.
std::map< Int, Int > keyDTypeMap_p
KeyEnum -> DataType.
LatticeExprNode ndim(const LatticeExprNode &expr)
1-argument function to get the dimensionality of a lattice.
Bool validate() const
validate self (make sure that this MS is valid)
Bool isColumnWritable(uInt columnIndex) const
static DataType keywordDataType(const MSTableMaps &maps, KeyEnum which)
Bool isColumnWritable(const String &columnName) const
bool Bool
Define the standard types used by Casacore.
MSEnum::PredefinedColumns ColEnum
Define the column and keyword enuym types.
Class to hold table lock options.
TableExprNode shape(const TableExprNode &array)
Function operating on any scalar or array resulting in a Double array containing the shape...
A hierarchical collection of named fields of various types.
A struct holding the maps used in MSTable.
static const String & columnMeasureType(const MSTableMaps &maps, ColEnum which)
TableDesc requiredTD_p
The required TableDesc.
const String & unit(ColEnum which) const
A Table intended to hold astronomical data.
String: the storage and methods of handling collections of characters.
Define the structure of a Casacore table.
this file contains all the compiler specific defines
Option
Enumerate the possible column options.
std::map< Int, String > colMeasureTypeMap_p
ColEnum -> MEASURE_TYPE string.
TableOption
Define the possible options how a table can be opened.