code::ElevationVolume Class Reference

Inheritance diagram for code::ElevationVolume:

code::Data1D< T4, X > code::Volume code::DataType List of all members.

Detailed Description

A Data1D of RadialSets.

The independent variable in the Data1D is the elevation angle. An elevation volume inherits from Data1D for its internal structure, and from a Volume for generic access

The ElevationVolume is created from a set of RadialSet objects, sorted by elevation angle

See also:
Volume

RadialSet

Author:
Lakshman (original)
Author
lakshman
Date
2009/06/02 20:17:37


Public Types

typedef size_t Coord
 A coordinate for Data1D, always size_t.
typedef T4 DimType
 A Dimension type for Data1D, e.g.
typedef std::map< std::string,
SmartPtr< DataColumn > > 
AttrMap
 key-value pairs that describe the data.
 RadialSet
 LatLonGrid
 LatLonHeightGrid
 CartesianGrid2D
 Grid2D
 DataTable
 WindField
 WindFieldLLGVolume
 ElevationVolume
 ContourData
 Other
enum  Type {
  RadialSet, LatLonGrid, LatLonHeightGrid, CartesianGrid2D,
  Grid2D, DataTable, WindField, WindFieldLLGVolume,
  ElevationVolume, ContourData, Other
}

Public Member Functions

 ElevationVolume ()
 Default constructor.
virtual code::DataTypeDataType ()
 Access datatype for this volume.
virtual double getMaxVolumeKMHeight ()
 Containing height of the volume in lat/lon/height space.
virtual void invoke (Algorithm &alg)
 Use this to invoke any algorithm.
virtual SpaceTimeRef reference (size_t i) const
 Obtain the reference of the ith elevation scan.
virtual Angle coord_value (size_t i) const
 Relative angular displacement between the ith scan and the first.
virtual short getType () const
 Get enum type of this class.
virtual SpaceTimeRef getSpaceTimeRef () const
 Return SpaceTimeRef of first element.
const code::LocationgetRadarLocation () const
virtual double getRawValue (const code::Location &loc, bool=false) const
 Get closest raw value for readout.
virtual bool constructVolume (std::vector< code::SmartPtr< code::DataType > > &dataslices)
 Construct volume object from a datatype set.
virtual ~ElevationVolume ()
 Make delete call descendant's destructor.
void createLookups ()
 Create the optimized lookups for interpolatedValue calls.
virtual double rawFunction (const code::Location &loc) const
 Get closest raw value this given location.
virtual double rawFunction (const code::LocationCPoint &loc) const
 Get closest raw value this given location.
virtual double interpolatedValue (const code::Location &loc) const
 Return the value corresponding to a linearly weighted average of the six grid points nearest in az-range-el space.
virtual double interpolatedValue (const code::LocationCPoint &loc) const
 Get interpolated value for given location.
virtual double testValue (const code::Location &loc) const
 Get volume test value for given location.
virtual double testValue (const code::LocationCPoint &loc) const
 Get volume test value for given location.
Data1D clone () const
 Make a completely separate copy of the data.
const X & operator[] (size_t i) const
 Return the ith member of the array.
X & operator[] (size_t i)
 Return the ith member of the array.
void set_1d (const X *begin, const X *end)
 Initialize a row of elements.
void set_1d (const std::vector< X > &v)
 Initialize a row of elements.
void replace_1d (const X *first, const X *last)
 Overwrite a 'row' of elements.
void replace_1d (const std::vector< X > &v)
 Overwrite a 'row' of elements.
const std::vector< X > & data () const
 Return the internal vector<X>.
std::vector< X > & data ()
 Return the internal vector<X>.
Coord size () const
 Return the size of this object.
void replace (const X &old_value, const X &new_value)
 Replace any instance of old_value with new_value.
std::string getTypeClassName () const
 returns a string such as RadialSet, LatLonGrid, etc.
void copyDataType (const DataType &dt)
 A convenience function provided for subclasses that implement clone() -- will copy into this data type all the attributes in the type dt.
const std::string & getTypeName () const
 Return the TypeName of this DataType.
void setTypeName (const std::string &)
 Set the TypeName of this DataType.
SmartPtr< DataCellgetAttributeValue (const std::string &key) const
 Return a single value associated with an attribute key corresponding to the function's argument.
bool getAttributeValue (const std::string &key, std::string &setme) const
 Assign `setme' with the attribute corresponding to `key'.
bool getAttributeValue (const std::string &key, double &setme) const
 Assign `setme' with the attribute corresponding to `key'.
void setAttributeValue (const std::string &key, const std::string &value, const std::string &unit="dimensionless")
 Set a single-valued attribute that describes this DataType.
void setAttributeValue (const std::string &key, double value, const std::string &unit="dimensionless", const std::string &format="%g")
 Set a single-valued attribute that describes this DataType.
void setAttribute (const std::string &key, SmartPtr< DataColumn > value)
 Set a multiple-valued attribute that describes this DataType.
SmartPtr< DataColumngetAttribute (const std::string &key) const
 Get the attribute value for a particular key.
const AttrMapgetAttributes () const
 Get the entire map of attributes available for this data type.
virtual TimeInterval getExpiryInterval () const
 Return 15 minutes as the length of time for which this DataType is valid.
bool hasQuality () const
const DataTypegetQuality () const
void setQuality (SmartPtr< DataType > dt)
void clearAttributes ()

Static Public Attributes

static const std::string IsTableData
static const std::string Unit
static const std::string ColorMap
static const std::string ExpiryInterval

Protected Member Functions

bool locationInfo (const LocationCPoint &loc, double &aboveValue, double &belowValue, bool &inAboveBeamWidth, bool &inBelowBeamWidth, int &elevAngle, int &aboveAngle, int &belowAngle) const
 Gather all info about a given location.
virtual void deep_copy (const DataType &source)

Classes

struct  ElevationLookup


Member Typedef Documentation

typedef std::map< std::string, SmartPtr<DataColumn> > code::DataType::AttrMap [inherited]

key-value pairs that describe the data.

template<class T4, class X>
typedef size_t code::Data1D< T4, X >::Coord [inherited]

A coordinate for Data1D, always size_t.

template<class T4, class X>
typedef T4 code::Data1D< T4, X >::DimType [inherited]

A Dimension type for Data1D, e.g.

Time for trends.


Member Enumeration Documentation

enum code::DataType::Type [inherited]

Enumerator:
RadialSet 
LatLonGrid 
LatLonHeightGrid 
CartesianGrid2D 
Grid2D 
DataTable 
WindField 
WindFieldLLGVolume 
ElevationVolume 
ContourData 
Other 


Constructor & Destructor Documentation

code::ElevationVolume::ElevationVolume (  ) 

Default constructor.

virtual code::ElevationVolume::~ElevationVolume (  )  [virtual]

Make delete call descendant's destructor.


Member Function Documentation

void code::DataType::clearAttributes (  )  [inline, inherited]

template<class T4, class X>
Data1D code::Data1D< T4, X >::clone (  )  const [inline, inherited]

Make a completely separate copy of the data.

Reimplemented in code::Radial.

virtual bool code::ElevationVolume::constructVolume ( std::vector< code::SmartPtr< code::DataType > > &  dataslices  )  [virtual]

Construct volume object from a datatype set.

A volume is a a group of data type

Reimplemented from code::Volume.

virtual Angle code::ElevationVolume::coord_value ( size_t  i  )  const [virtual]

Relative angular displacement between the ith scan and the first.

Implementation of virtual function in Data1D.

void code::DataType::copyDataType ( const DataType dt  )  [inherited]

A convenience function provided for subclasses that implement clone() -- will copy into this data type all the attributes in the type dt.

Attributes with the same name will be over-written, other attributes will remain unchanged.

void code::ElevationVolume::createLookups (  ) 

Create the optimized lookups for interpolatedValue calls.

template<class T4, class X>
std::vector<X>& code::Data1D< T4, X >::data (  )  [inline, inherited]

Return the internal vector<X>.

template<class T4, class X>
const std::vector<X>& code::Data1D< T4, X >::data (  )  const [inline, inherited]

Return the internal vector<X>.

virtual code::DataType* code::ElevationVolume::DataType (  )  [virtual]

Access datatype for this volume.

Convenient since subclasses of this will also inherit from DataType

Reimplemented from code::Volume.

virtual void code::DataType::deep_copy ( const DataType source  )  [inline, protected, virtual, inherited]

SmartPtr< DataColumn > code::DataType::getAttribute ( const std::string &  key  )  const [inherited]

Get the attribute value for a particular key.

Parameters:
key attribute key
Returns:
value attribute value in unit-safe manner, or an invalid SmartPtr on error.
See also:
getAttributeValue()

getAttributes() if you don't know the attribute key.

const AttrMap& code::DataType::getAttributes (  )  const [inline, inherited]

Get the entire map of attributes available for this data type.

See also:
getAttribute for a more selective get.

getAttributeValue for a convenient get.

bool code::DataType::getAttributeValue ( const std::string &  key,
double &  setme 
) const [inherited]

Assign `setme' with the attribute corresponding to `key'.

Returns:
true on success; false if no such attribute exists

bool code::DataType::getAttributeValue ( const std::string &  key,
std::string &  setme 
) const [inherited]

Assign `setme' with the attribute corresponding to `key'.

Returns:
true on success; false if no such attribute exists

SmartPtr< DataCell > code::DataType::getAttributeValue ( const std::string &  key  )  const [inherited]

Return a single value associated with an attribute key corresponding to the function's argument.

If no such attribute key exists, then return the NULL SmartPtr. In case multiple values are associated with the key, only the first item is returned.

See also:
getAttribute() to get all values.

virtual TimeInterval code::DataType::getExpiryInterval (  )  const [virtual, inherited]

Return 15 minutes as the length of time for which this DataType is valid.

Override this function in the descendant of DataType as appropriate.

Reimplemented in code::DEM.

virtual double code::ElevationVolume::getMaxVolumeKMHeight (  )  [virtual]

Containing height of the volume in lat/lon/height space.

Reimplemented from code::Volume.

const DataType& code::DataType::getQuality (  )  const [inline, inherited]

const code::Location& code::ElevationVolume::getRadarLocation (  )  const

virtual double code::ElevationVolume::getRawValue ( const code::Location loc,
bool  = false 
) const [virtual]

Get closest raw value for readout.

Overridden from Volume

See also:
Volume

Reimplemented from code::Volume.

virtual SpaceTimeRef code::ElevationVolume::getSpaceTimeRef (  )  const [virtual]

Return SpaceTimeRef of first element.

If the first element doesn't exist, then return the default SpaceTimeRef.

Implementation of virtual function in DataType.

Reimplemented from code::Data1D< T4, X >.

virtual short code::ElevationVolume::getType (  )  const [inline, virtual]

Get enum type of this class.

Reimplemented from code::DataType.

std::string code::DataType::getTypeClassName (  )  const [inherited]

returns a string such as RadialSet, LatLonGrid, etc.

See the enum Type for all the possible options. Subclasses need only to over-ride getType()

const std::string& code::DataType::getTypeName (  )  const [inherited]

Return the TypeName of this DataType.

bool code::DataType::hasQuality (  )  const [inline, inherited]

virtual double code::ElevationVolume::interpolatedValue ( const code::LocationCPoint loc  )  const [virtual]

Get interpolated value for given location.

Reimplemented from code::Volume.

virtual double code::ElevationVolume::interpolatedValue ( const code::Location loc  )  const [inline, virtual]

Return the value corresponding to a linearly weighted average of the six grid points nearest in az-range-el space.

NOTE: interpolatedValue will createLookups if necessary, but if you add elevation scans between calls to interpolatedValue it might be necessary for you to call createLookups yourself Overridden from Volume

See also:
Volume

Reimplemented from code::Volume.

virtual void code::ElevationVolume::invoke ( Algorithm alg  )  [virtual]

Use this to invoke any algorithm.

Reimplemented from code::DataType.

bool code::ElevationVolume::locationInfo ( const LocationCPoint loc,
double &  aboveValue,
double &  belowValue,
bool &  inAboveBeamWidth,
bool &  inBelowBeamWidth,
int &  elevAngle,
int &  aboveAngle,
int &  belowAngle 
) const [protected]

Gather all info about a given location.

This can then be used to generate final 'shown' value

template<class T4, class X>
X& code::Data1D< T4, X >::operator[] ( size_t  i  )  [inline, inherited]

Return the ith member of the array.

No bounds check is done.

template<class T4, class X>
const X& code::Data1D< T4, X >::operator[] ( size_t  i  )  const [inline, inherited]

Return the ith member of the array.

No bounds check is done.

virtual double code::ElevationVolume::rawFunction ( const code::LocationCPoint loc  )  const [virtual]

Get closest raw value this given location.

Reimplemented from code::Volume.

virtual double code::ElevationVolume::rawFunction ( const code::Location loc  )  const [inline, virtual]

Get closest raw value this given location.

Reimplemented from code::Volume.

virtual SpaceTimeRef code::ElevationVolume::reference ( size_t  i  )  const [virtual]

Obtain the reference of the ith elevation scan.

Implementation of virtual function in Data1D.

Reimplemented from code::Data1D< T4, X >.

template<class T4, class X>
void code::Data1D< T4, X >::replace ( const X &  old_value,
const X &  new_value 
) [inline, inherited]

Replace any instance of old_value with new_value.

template<class T4, class X>
void code::Data1D< T4, X >::replace_1d ( const std::vector< X > &  v  )  [inline, inherited]

Overwrite a 'row' of elements.

The number of new and old elements must match.

template<class T4, class X>
void code::Data1D< T4, X >::replace_1d ( const X *  first,
const X *  last 
) [inline, inherited]

Overwrite a 'row' of elements.

The number of new and old elements must match.

template<class T4, class X>
void code::Data1D< T4, X >::set_1d ( const std::vector< X > &  v  )  [inline, inherited]

Initialize a row of elements.

Elements already in this row will be erased.

template<class T4, class X>
void code::Data1D< T4, X >::set_1d ( const X *  begin,
const X *  end 
) [inline, inherited]

Initialize a row of elements.

Elements already in this row will be erased.

void code::DataType::setAttribute ( const std::string &  key,
SmartPtr< DataColumn value 
) [inherited]

Set a multiple-valued attribute that describes this DataType.

If value is 0 (i.e. invalid), this attribute will be removed from the map.

void code::DataType::setAttributeValue ( const std::string &  key,
double  value,
const std::string &  unit = "dimensionless",
const std::string &  format = "%g" 
) [inherited]

Set a single-valued attribute that describes this DataType.

This is a convenience function that allows you to set a dimensionless number as the value of an attribute.

If the attribute key does not already exist, then it will be constructed.

See also:
setAttribute() to set multiple values for an attribute.

void code::DataType::setAttributeValue ( const std::string &  key,
const std::string &  value,
const std::string &  unit = "dimensionless" 
) [inherited]

Set a single-valued attribute that describes this DataType.

This is a convenience function that allows you to set a text string as the value of an attribute.

If the attribute key does not already exist, then it will be constructed. The empty string may NOT be used as a value for the attribute; this function will return immediately if the value is the empty string.

See also:
setAttribute() to set multiple values for an attribute.

void code::DataType::setQuality ( SmartPtr< DataType dt  )  [inline, inherited]

void code::DataType::setTypeName ( const std::string &   )  [inherited]

Set the TypeName of this DataType.

template<class T4, class X>
Coord code::Data1D< T4, X >::size (  )  const [inline, inherited]

Return the size of this object.

virtual double code::ElevationVolume::testValue ( const code::LocationCPoint loc  )  const [virtual]

Get volume test value for given location.

Reimplemented from code::Volume.

virtual double code::ElevationVolume::testValue ( const code::Location loc  )  const [inline, virtual]

Get volume test value for given location.

Reimplemented from code::Volume.


Member Data Documentation

const std::string code::DataType::ColorMap [static, inherited]

const std::string code::DataType::ExpiryInterval [static, inherited]

const std::string code::DataType::IsTableData [static, inherited]

const std::string code::DataType::Unit [static, inherited]


Generated on Fri May 4 13:40:11 2012 for WDSS-IIw2 by  doxygen 1.4.7