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

SDDIndexRep is the individual index field in an SDDIndex. More...

#include <SDDIndex.h>

List of all members.

Public Member Functions

 SDDIndexRep ()
 construct an empty index entry
 SDDIndexRep (const SDDIndexRep &other)
 construct one from another
 ~SDDIndexRep ()
SDDIndexRepoperator= (const SDDIndexRep &other)
 assinment operator, true copy
Bool operator== (const SDDIndexRep &other) const
 operator== returns True if EVERY value of this is the same as other
Bool operator!= (const SDDIndexRep &other) const
 operator!= returns False if ANY value of this is not the same as other
Bool hasChanged () const
 returns True if this IndexRep has changed remains True until a clearChangeFlag has been called
void clearChangeFlag ()
uInt firstRecord () const
 these function return the values stored in this index entry The starting record for this scan - 0 relative
void setFirstRecord (uInt recnum)
uInt nRecords () const
 The total number of records used for this scan.
void setnRecords (uInt nrecs)
Float hCoord () const
 the Coordinates of this scan in the indicated coordinate system Units are radians.
void sethCoord (Float hpos)
Float vCoord () const
void setvCoord (Float vpos)
String coordSys () const
uShort coordCode () const
void setcoordSys (const String &new_coordSys)
 If there are not exactly 8 chars in the new coordSys or the coordSys string is unrecognized, it is set to the null string.
void setcoordSys (uShort new_coordCode)
String source () const
 The source name, must be less than 16 characters.
void setsource (const String &new_source)
 If there are more than 16 characters, they are not used.
uInt scan () const
 The scan number, must be less than 100000.
void setscan (uInt newScan)
 If it is out of range, it gets set to zero (unused)
uInt subScan () const
 The subscan number, must be between 1 and 99.
void setsubScan (uInt newSubScan)
 If it is out of range, it and scan are set to zero (unused)
Float freqResolution () const
 For LINE scans (isLine() is True) freqResolution and restFrequency are available.
void setfreqResolution (Float new_freqRes)
Float slewRate () const
void setslewRate (Float new_slewRate)
Double restFrequency () const
void setrestFrequency (Double new_restFreq)
Double intTimePerPoint () const
void setintTimePerPoint (Double new_intTime)
Float lst () const
 LST in hours.
void setlst (float new_lst)
Time utDate () const
 UT data as a Time object.
void setutDate (const Time &new_utDate)
String mode () const
 The 4 character observing mode.
uShort modeCode () const
void setmode (const String &new_mode)
 If the mode is not recognized it is set to the null string.
void setmode (uShort new_modeCode)
Int record () const
 For RECORDS data (currently only available for GB data) this returns the record number for the indexed data.
void setrecord (Int new_record)
Int intPhase () const
 Also for RECORDS data, this returns the integration phase number for the indexed data.
void setintPhase (Int new_intPhase)
Bool isLine () const
 Returns TRUE if this indexes spectral line data otherwise False.
void setLine ()
 change this entry to be a spectral line entry This looses any current value of slewRate or intTimePerPoint
void setCont ()
 change this entry to be a continuum entry This looses any current value of freqResolution or restFrequency

Private Member Functions

void init_maps ()

Private Attributes

Bool isLine_p
Bool hasChanged_p
uShort coordSys_p
uShort mode_p
uInt firstRecord_p
uInt nRecords_p
uInt scan_p
uInt subScan_p
Int record_p
Int intPhase_p
Float hCoord_p
Float vCoord_p
Float freqRes_p
Float slewRate_p
Float lst_p
Double restFreq_p
Double intTime_p
String source_p
Time utDate_p

Static Private Attributes

static Block< StringposCodeMap_p
static Block< StringobsModeMap_p

Detailed Description

SDDIndexRep is the individual index field in an SDDIndex.

Intended use:

Public interface

Review Status

Date Reviewed:
yyyy/mm/dd

Prerequisite

Etymology

Synopsis

Example

Motivation

Definition at line 69 of file SDDIndex.h.


Constructor & Destructor Documentation

construct an empty index entry

construct one from another

Definition at line 77 of file SDDIndex.h.


Member Function Documentation

void SDDIndexRep::clearChangeFlag ( ) [inline]

Definition at line 90 of file SDDIndex.h.

References casa::False, and hasChanged_p.

uShort SDDIndexRep::coordCode ( ) const [inline]

Definition at line 110 of file SDDIndex.h.

References coordSys_p.

String SDDIndexRep::coordSys ( ) const [inline]

Definition at line 109 of file SDDIndex.h.

References coordSys_p, and posCodeMap_p.

uInt SDDIndexRep::firstRecord ( ) const [inline]

these function return the values stored in this index entry The starting record for this scan - 0 relative

Definition at line 94 of file SDDIndex.h.

References firstRecord_p.

Float SDDIndexRep::freqResolution ( ) const [inline]

For LINE scans (isLine() is True) freqResolution and restFrequency are available.

For CONT scans (isLine() is False), slewRate and intTimePerPoint are available. If a value is not-available - an IEEE NaN is returned. If an attempt is made to set something that isn't otherwise available, that will switch the type (i.e. setting slewRate while isLine() is True changes isLine() to False). Any values currently stored in the now unavailable locations are lost (i.e. if slewRate is set, any value in freqResolution and restFrequency is permanently lost).

Definition at line 140 of file SDDIndex.h.

References freqRes_p.

Bool SDDIndexRep::hasChanged ( ) const [inline]

returns True if this IndexRep has changed remains True until a clearChangeFlag has been called

Definition at line 89 of file SDDIndex.h.

References hasChanged_p.

Float SDDIndexRep::hCoord ( ) const [inline]

the Coordinates of this scan in the indicated coordinate system Units are radians.

The coordinate system is the 8 character unipops coordinate string.

Definition at line 105 of file SDDIndex.h.

References hCoord_p.

void SDDIndexRep::init_maps ( ) [private]
Int SDDIndexRep::intPhase ( ) const [inline]

Also for RECORDS data, this returns the integration phase number for the indexed data.

It must be less than 64. A negative number implies that this is not records data and also turns off record (loosing any current value) Attempting to set this to an invalid number (>=64) is equivalent to setting it to a negative number.

Definition at line 177 of file SDDIndex.h.

References intPhase_p.

Double SDDIndexRep::intTimePerPoint ( ) const [inline]

Definition at line 146 of file SDDIndex.h.

References intTime_p.

Bool SDDIndexRep::isLine ( ) const [inline]

Returns TRUE if this indexes spectral line data otherwise False.

Definition at line 182 of file SDDIndex.h.

References isLine_p.

Float SDDIndexRep::lst ( ) const [inline]

LST in hours.

Definition at line 150 of file SDDIndex.h.

References lst_p.

String SDDIndexRep::mode ( ) const [inline]

The 4 character observing mode.

Definition at line 159 of file SDDIndex.h.

References mode_p, and obsModeMap_p.

uShort SDDIndexRep::modeCode ( ) const [inline]

Definition at line 160 of file SDDIndex.h.

References mode_p.

uInt SDDIndexRep::nRecords ( ) const [inline]

The total number of records used for this scan.

Definition at line 98 of file SDDIndex.h.

References nRecords_p.

Bool SDDIndexRep::operator!= ( const SDDIndexRep other) const

operator!= returns False if ANY value of this is not the same as other

SDDIndexRep& SDDIndexRep::operator= ( const SDDIndexRep other)

assinment operator, true copy

Bool SDDIndexRep::operator== ( const SDDIndexRep other) const

operator== returns True if EVERY value of this is the same as other

Int SDDIndexRep::record ( ) const [inline]

For RECORDS data (currently only available for GB data) this returns the record number for the indexed data.

A negative number implies that this is not records data and also turns off intPhase (loosing any current value)

Definition at line 169 of file SDDIndex.h.

References record_p.

Double SDDIndexRep::restFrequency ( ) const [inline]

Definition at line 144 of file SDDIndex.h.

References restFreq_p.

uInt SDDIndexRep::scan ( ) const [inline]

The scan number, must be less than 100000.

Definition at line 122 of file SDDIndex.h.

References scan_p.

change this entry to be a continuum entry This looses any current value of freqResolution or restFrequency

void SDDIndexRep::setcoordSys ( const String new_coordSys)

If there are not exactly 8 chars in the new coordSys or the coordSys string is unrecognized, it is set to the null string.

void SDDIndexRep::setcoordSys ( uShort  new_coordCode)
void SDDIndexRep::setFirstRecord ( uInt  recnum) [inline]

Definition at line 95 of file SDDIndex.h.

References firstRecord_p, hasChanged_p, and casa::True.

void SDDIndexRep::setfreqResolution ( Float  new_freqRes)
void SDDIndexRep::sethCoord ( Float  hpos) [inline]

Definition at line 106 of file SDDIndex.h.

References hasChanged_p, hCoord_p, and casa::True.

void SDDIndexRep::setintPhase ( Int  new_intPhase)
void SDDIndexRep::setintTimePerPoint ( Double  new_intTime)

change this entry to be a spectral line entry This looses any current value of slewRate or intTimePerPoint

void SDDIndexRep::setlst ( float  new_lst) [inline]

Definition at line 151 of file SDDIndex.h.

References hasChanged_p, lst_p, and casa::True.

void SDDIndexRep::setmode ( const String new_mode)

If the mode is not recognized it is set to the null string.

void SDDIndexRep::setmode ( uShort  new_modeCode)
void SDDIndexRep::setnRecords ( uInt  nrecs) [inline]

Definition at line 99 of file SDDIndex.h.

References hasChanged_p, nRecords_p, and casa::True.

void SDDIndexRep::setrecord ( Int  new_record)
void SDDIndexRep::setrestFrequency ( Double  new_restFreq)
void SDDIndexRep::setscan ( uInt  newScan)

If it is out of range, it gets set to zero (unused)

void SDDIndexRep::setslewRate ( Float  new_slewRate)
void SDDIndexRep::setsource ( const String new_source)

If there are more than 16 characters, they are not used.

void SDDIndexRep::setsubScan ( uInt  newSubScan)

If it is out of range, it and scan are set to zero (unused)

void SDDIndexRep::setutDate ( const Time new_utDate) [inline]

Definition at line 155 of file SDDIndex.h.

References hasChanged_p, casa::True, and utDate_p.

void SDDIndexRep::setvCoord ( Float  vpos) [inline]

Definition at line 108 of file SDDIndex.h.

References hasChanged_p, casa::True, and vCoord_p.

Float SDDIndexRep::slewRate ( ) const [inline]

Definition at line 142 of file SDDIndex.h.

References slewRate_p.

String SDDIndexRep::source ( ) const [inline]

The source name, must be less than 16 characters.

Definition at line 117 of file SDDIndex.h.

References source_p.

uInt SDDIndexRep::subScan ( ) const [inline]

The subscan number, must be between 1 and 99.

Definition at line 127 of file SDDIndex.h.

References subScan_p.

Time SDDIndexRep::utDate ( ) const [inline]

UT data as a Time object.

Definition at line 154 of file SDDIndex.h.

References utDate_p.

Float SDDIndexRep::vCoord ( ) const [inline]

Definition at line 107 of file SDDIndex.h.

References vCoord_p.


Member Data Documentation

uShort SDDIndexRep::coordSys_p [private]

Definition at line 193 of file SDDIndex.h.

Referenced by coordCode(), and coordSys().

Definition at line 194 of file SDDIndex.h.

Referenced by firstRecord(), and setFirstRecord().

Float SDDIndexRep::freqRes_p [private]

Definition at line 196 of file SDDIndex.h.

Referenced by freqResolution().

Bool SDDIndexRep::hasChanged_p [private]
Float SDDIndexRep::hCoord_p [private]

Definition at line 196 of file SDDIndex.h.

Referenced by hCoord(), and sethCoord().

Int SDDIndexRep::intPhase_p [private]

Definition at line 195 of file SDDIndex.h.

Referenced by intPhase().

Double SDDIndexRep::intTime_p [private]

Definition at line 197 of file SDDIndex.h.

Referenced by intTimePerPoint().

Bool SDDIndexRep::isLine_p [private]

Definition at line 192 of file SDDIndex.h.

Referenced by isLine().

Float SDDIndexRep::lst_p [private]

Definition at line 196 of file SDDIndex.h.

Referenced by lst(), and setlst().

uShort SDDIndexRep::mode_p [private]

Definition at line 193 of file SDDIndex.h.

Referenced by mode(), and modeCode().

uInt SDDIndexRep::nRecords_p [private]

Definition at line 194 of file SDDIndex.h.

Referenced by nRecords(), and setnRecords().

Block<String> SDDIndexRep::obsModeMap_p [static, private]

Definition at line 204 of file SDDIndex.h.

Referenced by mode().

Block<String> SDDIndexRep::posCodeMap_p [static, private]

Definition at line 203 of file SDDIndex.h.

Referenced by coordSys().

Int SDDIndexRep::record_p [private]

Definition at line 195 of file SDDIndex.h.

Referenced by record().

Double SDDIndexRep::restFreq_p [private]

Definition at line 197 of file SDDIndex.h.

Referenced by restFrequency().

uInt SDDIndexRep::scan_p [private]

Definition at line 194 of file SDDIndex.h.

Referenced by scan().

Float SDDIndexRep::slewRate_p [private]

Definition at line 196 of file SDDIndex.h.

Referenced by slewRate().

Definition at line 198 of file SDDIndex.h.

Referenced by source().

uInt SDDIndexRep::subScan_p [private]

Definition at line 194 of file SDDIndex.h.

Referenced by subScan().

Definition at line 199 of file SDDIndex.h.

Referenced by setutDate(), and utDate().

Float SDDIndexRep::vCoord_p [private]

Definition at line 196 of file SDDIndex.h.

Referenced by setvCoord(), and vCoord().


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