MSWeatherColumns.h

Classes

ROMSWeatherColumns -- A class to provide easy read-only access to MSWeather columns (full description)
MSWeatherColumns -- A class to provide easy read-write access to MSWeather columns (full description)

class ROMSWeatherColumns

Interface

Public Members
ROMSWeatherColumns(const MSWeather& msWeather)
~ROMSWeatherColumns()
Bool isNull() const
const ROScalarColumn<Int>& antennaId() const
const ROScalarColumn<Double>& interval() const
const ROScalarQuantColumn<Double>& intervalQuant() const
const ROScalarColumn<Double>& time() const
const ROScalarQuantColumn<Double>& timeQuant() const
const ROScalarMeasColumn<MEpoch>& timeMeas() const
const ROScalarColumn<Float>& dewPoint() const
const ROScalarQuantColumn<Float>& dewPointQuant() const
const ROScalarColumn<Bool>& dewPointFlag() const
const ROScalarColumn<Float>& H2O() const
const ROScalarColumn<Bool>& H2OFlag() const
const ROScalarQuantColumn<Float>& H2OQuant() const
const ROScalarColumn<Float>& ionosElectron() const
const ROScalarQuantColumn<Float>& ionosElectronQuant() const
const ROScalarColumn<Bool>& ionosElectronFlag() const
const ROScalarColumn<Float>& pressure() const
const ROScalarQuantColumn<Float>& pressureQuant() const
const ROScalarColumn<Bool>& pressureFlag() const
const ROScalarColumn<Float>& relHumidity() const
const ROScalarColumn<Bool>& relHumidityFlag() const
const ROScalarColumn<Float>& temperature() const
const ROScalarQuantColumn<Float>& temperatureQuant() const
const ROScalarColumn<Bool>& temperatureFlag() const
const ROScalarColumn<Float>& windDirection() const
const ROScalarQuantColumn<Float>& windDirectionQuant() const
const ROScalarColumn<Bool>& windDirectionFlag() const
const ROScalarColumn<Float>& windSpeed() const
const ROScalarQuantColumn<Float>& windSpeedQuant() const
const ROScalarColumn<Bool>& windSpeedFlag() const
uInt nrow() const
Protected Members
ROMSWeatherColumns()
void attach(const MSWeather& msWeather)
Private Members
ROMSWeatherColumns(const ROMSWeatherColumns&)
ROMSWeatherColumns& operator=(const ROMSWeatherColumns&)
void attachOptionalCols(const MSWeather& msWeather)

Description

Review Status

Reviewed By:
Bob Garwood
Date Reviewed:
1997/02/01

Prerequisite

Etymology

ROMSWeatherColumns stands for Read-Only MeasurementSet Weather Table columns.

Synopsis

This class provides read-only access to the columns in the MSWeather Table. It does the declaration of all the Scalar and ArrayColumns with the correct types, so the application programmer doesn't have to worry about getting those right. There is an access function for every predefined column. Access to non-predefined columns will still have to be done with explicit declarations. See ROMSColumns for an example.

Motivation

See MSColumns for the motivation.

Member Description

ROMSWeatherColumns(const MSWeather& msWeather)

Create a columns object that accesses the data in the specified Table

~ROMSWeatherColumns()

The destructor does nothing special

Bool isNull() const

Is this object defined? (MSWeather table is optional)

const ROScalarColumn<Int>& antennaId() const
const ROScalarColumn<Double>& interval() const
const ROScalarQuantColumn<Double>& intervalQuant() const
const ROScalarColumn<Double>& time() const
const ROScalarQuantColumn<Double>& timeQuant() const
const ROScalarMeasColumn<MEpoch>& timeMeas() const

Access to columns

const ROScalarColumn<Float>& dewPoint() const
const ROScalarQuantColumn<Float>& dewPointQuant() const
const ROScalarColumn<Bool>& dewPointFlag() const
const ROScalarColumn<Float>& H2O() const
const ROScalarColumn<Bool>& H2OFlag() const
const ROScalarQuantColumn<Float>& H2OQuant() const
const ROScalarColumn<Float>& ionosElectron() const
const ROScalarQuantColumn<Float>& ionosElectronQuant() const
const ROScalarColumn<Bool>& ionosElectronFlag() const
const ROScalarColumn<Float>& pressure() const
const ROScalarQuantColumn<Float>& pressureQuant() const
const ROScalarColumn<Bool>& pressureFlag() const
const ROScalarColumn<Float>& relHumidity() const
const ROScalarColumn<Bool>& relHumidityFlag() const
const ROScalarColumn<Float>& temperature() const
const ROScalarQuantColumn<Float>& temperatureQuant() const
const ROScalarColumn<Bool>& temperatureFlag() const
const ROScalarColumn<Float>& windDirection() const
const ROScalarQuantColumn<Float>& windDirectionQuant() const
const ROScalarColumn<Bool>& windDirectionFlag() const
const ROScalarColumn<Float>& windSpeed() const
const ROScalarQuantColumn<Float>& windSpeedQuant() const
const ROScalarColumn<Bool>& windSpeedFlag() const

Access to optional columns

uInt nrow() const

Convenience function that returns the number of rows in any of the columns. Returns zero if the object is null.

ROMSWeatherColumns()

void attach(const MSWeather& msWeather)

ROMSWeatherColumns(const ROMSWeatherColumns&)

ROMSWeatherColumns& operator=(const ROMSWeatherColumns&)

void attachOptionalCols(const MSWeather& msWeather)


class MSWeatherColumns: public ROMSWeatherColumns

Interface

Public Members
MSWeatherColumns(MSWeather& msWeather)
~MSWeatherColumns()
ScalarColumn<Int>& antennaId()
ScalarColumn<Double>& interval()
ScalarQuantColumn<Double>& intervalQuant()
ScalarColumn<Double>& time()
ScalarQuantColumn<Double>& timeQuant()
ScalarMeasColumn<MEpoch>& timeMeas()
ScalarColumn<Float>& dewPoint()
ScalarQuantColumn<Float>& dewPointQuant()
ScalarColumn<Bool>& dewPointFlag()
ScalarColumn<Float>& H2O()
ScalarQuantColumn<Float>& H2OQuant()
ScalarColumn<Bool>& H2OFlag()
ScalarColumn<Float>& ionosElectron()
ScalarQuantColumn<Float>& ionosElectronQuant()
ScalarColumn<Bool>& ionosElectronFlag()
ScalarColumn<Float>& pressure()
ScalarQuantColumn<Float>& pressureQuant()
ScalarColumn<Bool>& pressureFlag()
ScalarColumn<Float>& relHumidity()
ScalarColumn<Bool>& relHumidityFlag()
ScalarColumn<Float>& temperature()
ScalarQuantColumn<Float>& temperatureQuant()
ScalarColumn<Bool>& temperatureFlag()
ScalarColumn<Float>& windDirection()
ScalarQuantColumn<Float>& windDirectionQuant()
ScalarColumn<Bool>& windDirectionFlag()
ScalarColumn<Float>& windSpeed()
ScalarQuantColumn<Float>& windSpeedQuant()
ScalarColumn<Bool>& windSpeedFlag()
const ROScalarColumn<Int>& antennaId() const
const ROScalarColumn<Double>& interval() const
const ROScalarQuantColumn<Double>& intervalQuant() const
const ROScalarColumn<Double>& time() const
const ROScalarQuantColumn<Double>& timeQuant() const
const ROScalarMeasColumn<MEpoch>& timeMeas() const
const ROScalarColumn<Float>& dewPoint() const
const ROScalarQuantColumn<Float>& dewPointQuant() const
const ROScalarColumn<Bool>& dewPointFlag() const
const ROScalarColumn<Float>& H2O() const
const ROScalarColumn<Bool>& H2OFlag() const
const ROScalarQuantColumn<Float>& H2OQuant() const
const ROScalarColumn<Float>& ionosElectron() const
const ROScalarQuantColumn<Float>& ionosElectronQuant() const
const ROScalarColumn<Bool>& ionosElectronFlag() const
const ROScalarColumn<Float>& pressure() const
const ROScalarQuantColumn<Float>& pressureQuant() const
const ROScalarColumn<Bool>& pressureFlag() const
const ROScalarColumn<Float>& relHumidity() const
const ROScalarColumn<Bool>& relHumidityFlag() const
const ROScalarColumn<Float>& temperature() const
const ROScalarQuantColumn<Float>& temperatureQuant() const
const ROScalarColumn<Bool>& temperatureFlag() const
const ROScalarColumn<Float>& windDirection() const
const ROScalarQuantColumn<Float>& windDirectionQuant() const
const ROScalarColumn<Bool>& windDirectionFlag() const
const ROScalarColumn<Float>& windSpeed() const
const ROScalarQuantColumn<Float>& windSpeedQuant() const
const ROScalarColumn<Bool>& windSpeedFlag() const
void setEpochRef(MEpoch::Types ref, Bool tableMustBeEmpty=True)
Protected Members
MSWeatherColumns()
void attach(MSWeather& msWeather)
Private Members
MSWeatherColumns(const MSWeatherColumns&)
MSWeatherColumns& operator=(const MSWeatherColumns&)
void attachOptionalCols(MSWeather& msWeather)

Description

Review Status

Reviewed By:
Bob Garwood
Date Reviewed:
1997/02/01

Prerequisite

Etymology

MSWeatherColumns stands for MeasurementSet Weather Table columns.

Synopsis

This class provides access to the columns in the MSWeather Table, it does the declaration of all the Scalar and ArrayColumns with the correct types, so the application programmer doesn't have to worry about getting those right. There is an access function for every predefined column. Access to non-predefined columns will still have to be done with explicit declarations. See MSColumns for an example.

Motivation

See MSColumns for the motivation.

Member Description

MSWeatherColumns(MSWeather& msWeather)

Create a columns object that accesses the data in the specified Table

~MSWeatherColumns()

The destructor does nothing special

ScalarColumn<Int>& antennaId()
ScalarColumn<Double>& interval()
ScalarQuantColumn<Double>& intervalQuant()
ScalarColumn<Double>& time()
ScalarQuantColumn<Double>& timeQuant()
ScalarMeasColumn<MEpoch>& timeMeas()

Read-write access to required columns

ScalarColumn<Float>& dewPoint()
ScalarQuantColumn<Float>& dewPointQuant()
ScalarColumn<Bool>& dewPointFlag()
ScalarColumn<Float>& H2O()
ScalarQuantColumn<Float>& H2OQuant()
ScalarColumn<Bool>& H2OFlag()
ScalarColumn<Float>& ionosElectron()
ScalarQuantColumn<Float>& ionosElectronQuant()
ScalarColumn<Bool>& ionosElectronFlag()
ScalarColumn<Float>& pressure()
ScalarQuantColumn<Float>& pressureQuant()
ScalarColumn<Bool>& pressureFlag()
ScalarColumn<Float>& relHumidity()
ScalarColumn<Bool>& relHumidityFlag()
ScalarColumn<Float>& temperature()
ScalarQuantColumn<Float>& temperatureQuant()
ScalarColumn<Bool>& temperatureFlag()
ScalarColumn<Float>& windDirection()
ScalarQuantColumn<Float>& windDirectionQuant()
ScalarColumn<Bool>& windDirectionFlag()
ScalarColumn<Float>& windSpeed()
ScalarQuantColumn<Float>& windSpeedQuant()
ScalarColumn<Bool>& windSpeedFlag()

Read-write access to optional columns

const ROScalarColumn<Int>& antennaId() const
const ROScalarColumn<Double>& interval() const
const ROScalarQuantColumn<Double>& intervalQuant() const
const ROScalarColumn<Double>& time() const
const ROScalarQuantColumn<Double>& timeQuant() const
const ROScalarMeasColumn<MEpoch>& timeMeas() const

Read-only access to required columns

const ROScalarColumn<Float>& dewPoint() const
const ROScalarQuantColumn<Float>& dewPointQuant() const
const ROScalarColumn<Bool>& dewPointFlag() const
const ROScalarColumn<Float>& H2O() const
const ROScalarColumn<Bool>& H2OFlag() const
const ROScalarQuantColumn<Float>& H2OQuant() const
const ROScalarColumn<Float>& ionosElectron() const
const ROScalarQuantColumn<Float>& ionosElectronQuant() const
const ROScalarColumn<Bool>& ionosElectronFlag() const
const ROScalarColumn<Float>& pressure() const
const ROScalarQuantColumn<Float>& pressureQuant() const
const ROScalarColumn<Bool>& pressureFlag() const
const ROScalarColumn<Float>& relHumidity() const
const ROScalarColumn<Bool>& relHumidityFlag() const
const ROScalarColumn<Float>& temperature() const
const ROScalarQuantColumn<Float>& temperatureQuant() const
const ROScalarColumn<Bool>& temperatureFlag() const
const ROScalarColumn<Float>& windDirection() const
const ROScalarQuantColumn<Float>& windDirectionQuant() const
const ROScalarColumn<Bool>& windDirectionFlag() const
const ROScalarColumn<Float>& windSpeed() const
const ROScalarQuantColumn<Float>& windSpeedQuant() const
const ROScalarColumn<Bool>& windSpeedFlag() const

Read-only access to optional columns

void setEpochRef(MEpoch::Types ref, Bool tableMustBeEmpty=True)

set the epoch type for the TIME column.

Tip In principle this function can only be used if the table is empty, otherwise already written values may thereafter have an incorrect reference, offset, or unit. However, it is possible that part of the table gets written before these values are known. In that case the reference, offset, or units can be set by using a False tableMustBeEmpty argument.

MSWeatherColumns()

void attach(MSWeather& msWeather)

MSWeatherColumns(const MSWeatherColumns&)

MSWeatherColumns& operator=(const MSWeatherColumns&)

void attachOptionalCols(MSWeather& msWeather)