casa
$Rev:20696$
|
Class with static functions to manipulate a datamanager record. More...
#include <DataManInfo.h>
Static Public Member Functions | |
static void | removeHypercolumns (TableDesc &tabDesc) |
Remove hypercolumn definitions from the table description. | |
static void | adjustTSM (TableDesc &tabDesc, Record &dminfo) |
Replace TiledDataStMan by TiledShapeStMan in the DataManagerInfo record. | |
static Record | adjustStMan (const Record &dminfo, const String &dmType, Bool replaceMSM=True) |
Replace non-writable storage managers by the given storage manager (usually StandardStMan or IncrementalStMan). | |
static void | setTiledStMan (Record &dminfo, const Vector< String > &columns, const String &dmType, const String &dmName, const IPosition &defaultTileShape) |
Set the data managers of the given column(s) to the given tiled storage manager (normally TiledShapeStMan or TiledColumnStMan). | |
static Vector< String > | removeDminfoColumns (Record &dminfo, const Vector< String > &columns, const String &keepType=String()) |
Remove the columns from the dminfo record and return a vector with the names of the columns actually removed. | |
static void | adjustDesc (TableDesc &tabDesc, const Record &dminfo) |
Adjust the data manager types and groups and the hypercolumn definitions to the actual data manager info. |
Class with static functions to manipulate a datamanager record.
Public interface
DataManInfo is a class to manipulate a datamanager info record and table descriptions. Often an existing table description and datamanager info record is used to construct a new table, but it might be necessary to change it somewhat.
Such things might be necessary in a number
Definition at line 76 of file DataManInfo.h.
static void casa::DataManInfo::adjustDesc | ( | TableDesc & | tabDesc, |
const Record & | dminfo | ||
) | [static] |
Adjust the data manager types and groups and the hypercolumn definitions to the actual data manager info.
static Record casa::DataManInfo::adjustStMan | ( | const Record & | dminfo, |
const String & | dmType, | ||
Bool | replaceMSM = True |
||
) | [static] |
Replace non-writable storage managers by the given storage manager (usually StandardStMan or IncrementalStMan).
It is possible to specify the new data manager type to use. This is needed for special storage managers like LofarStMan. If replaceMSM is set, MemoryStMan is also replaced.
static void casa::DataManInfo::adjustTSM | ( | TableDesc & | tabDesc, |
Record & | dminfo | ||
) | [static] |
Replace TiledDataStMan by TiledShapeStMan in the DataManagerInfo record.
Since TiledShapeStMan does not support ID columns, they are adjusted as well in tabDesc and dminfo.
static Vector<String> casa::DataManInfo::removeDminfoColumns | ( | Record & | dminfo, |
const Vector< String > & | columns, | ||
const String & | keepType = String() |
||
) | [static] |
Remove the columns from the dminfo record and return a vector with the names of the columns actually removed.
The columns having a data manager matching keepType
are not removed. Matching means that the beginning of the data manager name have to match, so "Tiled" matches all tiled storagemanagers.
static void casa::DataManInfo::removeHypercolumns | ( | TableDesc & | tabDesc | ) | [static] |
Remove hypercolumn definitions from the table description.
static void casa::DataManInfo::setTiledStMan | ( | Record & | dminfo, |
const Vector< String > & | columns, | ||
const String & | dmType, | ||
const String & | dmName, | ||
const IPosition & | defaultTileShape | ||
) | [static] |
Set the data managers of the given column(s) to the given tiled storage manager (normally TiledShapeStMan or TiledColumnStMan).
The columns are combined in a single storage manager, so the function has to be called multiple times if, say, one per column is needed. The columns already having a tiled storage manager are not changed.