casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Static Public Member Functions
casa::DataManInfo Class Reference

Class with static functions to manipulate a datamanager record. More...

#include <DataManInfo.h>

List of all members.

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< StringremoveDminfoColumns (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.

Detailed Description

Class with static functions to manipulate a datamanager record.

Intended use:

Public interface

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25
Test programs:
tTableCopy

Prerequisite

Synopsis

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.


Member Function Documentation

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.


The documentation for this class was generated from the following file: