casa  $Rev:20696$
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Private Member Functions | Private Attributes
GBTMSTypeFiller Class Reference

Used to fill the GBT_type table (e.g. GBT_HOLOGRAPHY or GBT_DCR) More...

#include <GBTMSTypeFiller.h>

List of all members.

Public Member Functions

 GBTMSTypeFiller (const String &tableName)
 open an already existing table - type is extracted from the tableName using everything after the last "_".
 GBTMSTypeFiller (Table &attachTable, const String &type)
 create a new, empty table attached to the given table using the indicate type.
 ~GBTMSTypeFiller ()
void fill (const Record &other)
 fill this record to this table.
uInt nrow ()
 how many rows in this table
const Stringtype ()
 what is the type of this GBT_type table
Int typeId ()
 what is the most recent typeId filled
void flush ()
 flush this table

Private Member Functions

void updateTableRow ()
void updateIndex (const RecordDesc &other)
void updateIndex (const Vector< String > &colnames)
void checkRecord (Record &other)
 this checks the record and adds columns as required
 GBTMSTypeFiller ()
 Undefined and unavailable.
 GBTMSTypeFiller (const GBTMSTypeFiller &other)
GBTMSTypeFilleroperator= (const GBTMSTypeFiller &other)

Private Attributes

Table * tab_p
TableRow * tabRow_p
ColumnsIndex * index_p
Int typeId_p
String type_p

Detailed Description

Used to fill the GBT_type table (e.g. GBT_HOLOGRAPHY or GBT_DCR)

Intended use:

Internal

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

The PROCESSOR

Synopsis

Example

Motivation

The GBT backend FITS files have keywords which are unhandled by the regular filling process. These are backend specific keywords which tend to be constant or re-used with time. These values are placed in a subtable name GBT_type where type is the type of backend such as HOLOGRAPHY, DCR, SPECTRALPROCESSOR or ACS. These are indexed directly from the PROCESSOR subtable of MS where TYPE_ID is the row into this table.

To Do

Definition at line 86 of file GBTMSTypeFiller.h.


Constructor & Destructor Documentation

GBTMSTypeFiller::GBTMSTypeFiller ( const String tableName)

open an already existing table - type is extracted from the tableName using everything after the last "_".

GBTMSTypeFiller::GBTMSTypeFiller ( Table &  attachTable,
const String type 
)

create a new, empty table attached to the given table using the indicate type.

Undefined and unavailable.

GBTMSTypeFiller::GBTMSTypeFiller ( const GBTMSTypeFiller other) [private]

Member Function Documentation

void GBTMSTypeFiller::checkRecord ( Record &  other) [private]

this checks the record and adds columns as required

void GBTMSTypeFiller::fill ( const Record &  other)

fill this record to this table.

Each field in the record maps to a column in the the table. There must be no subrecords. The types of the fields must match that in the existing table. Fields not already in the table will result in new columns for that table. If there are only scalar columns, then new rows will only be added if this row does not already exist in the table. If there are any non-scalar columns, a new row is always added.

void GBTMSTypeFiller::flush ( ) [inline]

flush this table

Definition at line 119 of file GBTMSTypeFiller.h.

References tab_p.

uInt GBTMSTypeFiller::nrow ( ) [inline]

how many rows in this table

Definition at line 110 of file GBTMSTypeFiller.h.

References tab_p.

GBTMSTypeFiller& GBTMSTypeFiller::operator= ( const GBTMSTypeFiller other) [private]
const String& GBTMSTypeFiller::type ( ) [inline]

what is the type of this GBT_type table

Definition at line 113 of file GBTMSTypeFiller.h.

References type_p.

Int GBTMSTypeFiller::typeId ( ) [inline]

what is the most recent typeId filled

Definition at line 116 of file GBTMSTypeFiller.h.

References typeId_p.

void GBTMSTypeFiller::updateIndex ( const RecordDesc &  other) [private]
void GBTMSTypeFiller::updateIndex ( const Vector< String > &  colnames) [private]
void GBTMSTypeFiller::updateTableRow ( ) [private]

Member Data Documentation

ColumnsIndex* GBTMSTypeFiller::index_p [private]

Definition at line 124 of file GBTMSTypeFiller.h.

Table* GBTMSTypeFiller::tab_p [private]

Definition at line 121 of file GBTMSTypeFiller.h.

Referenced by flush(), and nrow().

TableRow* GBTMSTypeFiller::tabRow_p [private]

Definition at line 122 of file GBTMSTypeFiller.h.

Definition at line 127 of file GBTMSTypeFiller.h.

Referenced by type().

Definition at line 125 of file GBTMSTypeFiller.h.

Referenced by typeId().


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