GeoTessCPP: geotess::ProfileEmpty Class Reference

GeoTessCPP 2.0.0 Software to facilitate storage and retrieval of 3D information about the Earth.

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Friends Macros
Public Member Functions | Static Public Member Functions
geotess::ProfileEmpty Class Reference

`#include <ProfileEmpty.h>`

Inheritance diagram for geotess::ProfileEmpty:

List of all members.

## Public Member Functions
| ProfileEmpty (float radBot, float radTop)
| ProfileEmpty (IFStreamBinary &ifs)
| ProfileEmpty (IFStreamAscii &ifs)
| ProfileEmpty (float radii[], int &rIndex)
virtual | ~ProfileEmpty ()
virtual int | class_size () const
virtual const ProfileType & | getType () const
virtual bool | operator== (const Profile &p) const
virtual double | getValue (const InterpolatorType &rInterpType, int attributeIndex, double radius, bool allowRadiusOutOfRange) const
virtual double | getValue (int attributeIndex, int nodeIndex) const
virtual bool | isNaN (int nodeIndex, int attributeIndex)
virtual double | getValueTop (int attributeIndex) const
virtual double | getValueBottom (int attributeIndex) const
virtual float | getRadius (int i) const
virtual Data ** | getData ()
virtual Data * | getData (int i)
virtual const Data & | getData (int i) const
virtual void | setData (const vector< Data * > &inData)
virtual void | setRadii (const vector< float > &newRadii)
virtual void | setData (int index, Data *inData)
virtual float | getRadiusTop () const
virtual const Data & | getDataTop () const
virtual Data * | getDataTop ()
virtual float | getRadiusBottom () const
virtual const Data & | getDataBottom () const
virtual Data * | getDataBottom ()
virtual int | getNRadii () const
virtual int | getNData () const
virtual float * | getRadii ()
virtual void | write (IFStreamBinary &ofs)
virtual void | write (IFStreamAscii &ofs)
virtual int | findClosestRadiusIndex (double radius) const
virtual void | setPointIndex (int nodeIndex, int pointIndex)
virtual void | resetPointIndices ()
virtual int | getPointIndex (int nodeIndex) const
virtual void | getWeights (map< int, double > &weights, double dkm, double radius, double hcoefficient) const
virtual void | getCoefficients (map< int, double > &coefficients, double radius, double horizontalCoefficient) const
virtual void | setInterpolationCoefficients (const InterpolatorType &interpType, vector< int > &nodeIndexes, vector< double > &coefficients, double &radius, bool &allowOutOfRange)
virtual Profile * | copy ()
Public Member Functions inherited from geotess::Profile
double | getValue (const vector< int > &nodeIds, const vector< double > &coefficients, int attributeIndex) const
double | getThickness ()
int | getRadiusIndex (double radius) const
virtual int | getRadiusIndex (double radius, int jlo) const
virtual double | getInterpolationCoefficient (int i, double radius, bool allowOutOfRange) const

## Static Public Member Functions
static string | class_name ()
Static Public Member Functions inherited from geotess::Profile
static Profile * | newProfile (const vector< float > &radii, vector< Data * > &data)
static Profile * | newProfile (const vector< float > &radii, vector< vector< double > > &data)
static Profile * | newProfile (const vector< float > &radii, vector< vector< float > > &data)
static Profile * | newProfile (const vector< float > &radii, vector< vector< LONG_INT > > &data)
static Profile * | newProfile (const vector< float > &radii, vector< vector< int > > &data)
static Profile * | newProfile (const vector< float > &radii, vector< vector< short > > &data)
static Profile * | newProfile (const vector< float > &radii, vector< vector< byte > > &data)
static Profile * | newProfile (float *radii, const int &nRadii, Data **data, const int &nData)
static Profile * | newProfile (float *radii, const int &nRadii, double **values, const int &nNodes, const int &nAttributes)
static Profile * | newProfile (float *radii, const int &nRadii, float **values, const int &nNodes, const int &nAttributes)
static Profile * | newProfile (float *radii, const int &nRadii, LONG_INT **values, const int &nNodes, const int &nAttributes)
static Profile * | newProfile (float *radii, const int &nRadii, int **values, const int &nNodes, const int &nAttributes)
static Profile * | newProfile (float *radii, const int &nRadii, short **values, const int &nNodes, const int &nAttributes)
static Profile * | newProfile (float *radii, const int &nRadii, byte **values, const int &nNodes, const int &nAttributes)
static int | class_count ()

## Detailed Description

A Profile object that defines two radii, one at the bottom and other at the top of the associated layer, and no Data. Profiles of this type should never be connected together by the connectivity of a tessellation.

## Constructor & Destructor Documentation

geotess::ProfileEmpty::ProfileEmpty | ( | float | radBot,
|  | float | radTop
| ) |  |
| inline

Default constructor.

geotess::ProfileEmpty::ProfileEmpty | ( | IFStreamBinary & | ifs | ) |
| inline

Standard constructor. Reads radii from the provided input file stream.

geotess::ProfileEmpty::ProfileEmpty | ( | IFStreamAscii & | ifs | ) |
| inline

Standard constructor. Reads radii from the provided input file stream.

geotess::ProfileEmpty::ProfileEmpty | ( | float | radii[],
|  | int & | rIndex
| ) |  |
| inline

Standard constructor creates references into the supplied array of radii.

virtual geotess::ProfileEmpty::~ProfileEmpty | ( |  | ) |
| inlinevirtual

Default destructor.

## Member Function Documentation

static string geotess::ProfileEmpty::class_name | ( |  | ) |
| inlinestatic

Returns the class name.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::class_size | ( |  | ) | const
| inlinevirtual

Returns the class size.

Reimplemented from geotess::Profile.

virtual Profile* geotess::ProfileEmpty::copy | ( |  | ) |
| inlinevirtual

Returns a deep copy of this profile.

virtual int geotess::ProfileEmpty::findClosestRadiusIndex | ( | double | radius | ) | const
| inlinevirtual

Find the index of the node in this Profile that has radius closest to the supplied radius.

Parameters:

  radius | in km

Returns:
  The index of the node in this Profile that has radius closest to the supplied radius.

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::getCoefficients | ( | map< int, double > & | coefficients,
|  | double | radius,
|  | double | horizontalCoefficient
| ) |  | const
| inlinevirtual

virtual Data** geotess::ProfileEmpty::getData | ( |  | ) |
| virtual

Retrieve a reference to all of the Data obects associated with this Profile.

Reimplemented from geotess::Profile.

virtual Data* geotess::ProfileEmpty::getData | ( | int | i | ) |
| virtual

Retrieve a reference the i'th Data object

Reimplemented from geotess::Profile.

virtual const Data& geotess::ProfileEmpty::getData | ( | int | i | ) | const
| virtual

Retrieve a reference the i'th Data object

Reimplemented from geotess::Profile.

virtual const Data& geotess::ProfileEmpty::getDataBottom | ( |  | ) | const
| virtual

Get the Data object at the bottom of the profile.

Reimplemented from geotess::Profile.

virtual Data* geotess::ProfileEmpty::getDataBottom | ( |  | ) |
| inlinevirtual

Get the Data object at the bottom of the profile.

Reimplemented from geotess::Profile.

virtual const Data& geotess::ProfileEmpty::getDataTop | ( |  | ) | const
| virtual

Get the Data object at the top of the profile.

Reimplemented from geotess::Profile.

virtual Data* geotess::ProfileEmpty::getDataTop | ( |  | ) |
| inlinevirtual

Get the Data object at the top of the profile.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::getNData | ( |  | ) | const
| inlinevirtual

Get the number of Data objects that comprise this profile.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::getNRadii | ( |  | ) | const
| inlinevirtual

Get the number of radii that comprise this profile.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::getPointIndex | ( | int | nodeIndex | ) | const
| inlinevirtual

Get the pointIndex that corresponds to the supplied nodeIndex.

There is a node index for each Data object in a profile and they are indexed from 0 to the number of Data objects managed by a Profile. There is a pointIndex for every Data object in the entire model, indexed from 0 to the number of Data objects in the model.

Reimplemented from geotess::Profile.

virtual float* geotess::ProfileEmpty::getRadii | ( |  | ) |
| inlinevirtual

Retrieve a deeep copy of the radii values in km.

Reimplemented from geotess::Profile.

virtual float geotess::ProfileEmpty::getRadius | ( | int | i | ) | const
| inlinevirtual

Get the i'th radius value in this profile in km. Radii are in order of increasing radius.

Reimplemented from geotess::Profile.

virtual float geotess::ProfileEmpty::getRadiusBottom | ( |  | ) | const
| inlinevirtual

Get the radius at the bottom of the profile, in km.

Reimplemented from geotess::Profile.

virtual float geotess::ProfileEmpty::getRadiusTop | ( |  | ) | const
| inlinevirtual

Get the radius at the top of the profile, in km.

Reimplemented from geotess::Profile.

virtual const ProfileType& geotess::ProfileEmpty::getType | ( |  | ) | const
| inlinevirtual

Returns ProfileType (EMPTY).

Returns:
  ProfileType (EMPTY).

Reimplemented from geotess::Profile.

virtual double geotess::ProfileEmpty::getValue | ( | const InterpolatorType & | rInterpType,
|  | int | attributeIndex,
|  | double | radius,
|  | bool | allowRadiusOutOfRange
| ) |  | const
| virtual

Retrieve the value of the specified attribute interpolated at the specified radius. Unsuppported for ProfileEmpty.

Reimplemented from geotess::Profile.

virtual double geotess::ProfileEmpty::getValue | ( | int | attributeIndex,
|  | int | nodeIndex
| ) |  | const
| inlinevirtual

Retrieve the value of the specified attribute interpolated from this profile at the specified radius index

Parameters:

  attributeIndex |
  nodeIndex |

Returns:
  double

Reimplemented from geotess::Profile.

virtual double geotess::ProfileEmpty::getValueBottom | ( | int | attributeIndex | ) | const
| inlinevirtual

Retrieve the value of the specified attribute at the bottom of the layer.

Parameters:

  attributeIndex |

Returns:
  double

Reimplemented from geotess::Profile.

virtual double geotess::ProfileEmpty::getValueTop | ( | int | attributeIndex | ) | const
| inlinevirtual

Retrieve the value of the specified attribute at the top of the layer.

Parameters:

  attributeIndex |

Returns:
  double

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::getWeights | ( | map< int, double > & | weights,
|  | double | dkm,
|  | double | radius,
|  | double | hcoefficient
| ) |  | const
| inlinevirtual

Add dkm * hcoefficient to the weight of this point index into the input map. This works for Profile types Constant, Thin and Surface since they only have a single node in the profile. It does not work for ProfileNPoint and ProfileEmpty so they override this method.

virtual bool geotess::ProfileEmpty::isNaN | ( | int | nodeIndex,
|  | int | attributeIndex
| ) |  |
| inlinevirtual

Return true if the specified Data value is NaN. For doubles and floats, this means not NaN. For bytes, shorts, ints and longs, always returns false since there is no value that is NaN.

Parameters:

  nodeIndex |
  attributeIndex |

Returns:
  true if the specified Data value is NaN.

Reimplemented from geotess::Profile.

virtual bool geotess::ProfileEmpty::operator== | ( | const Profile & | p | ) | const
| inlinevirtual

Return true if the input Profile object (p) equals this Profile object.

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::resetPointIndices | ( |  | ) |
| inlinevirtual

Reset all the pointIndex values to -1.

There is a node index for each Data object in a profile and they are indexed from 0 to the number of Data objects managed by a Profile. There is a pointIndex for every Data object in the entire model, indexed from 0 to the number of Data objects in the model.

virtual void geotess::ProfileEmpty::setData | ( | const vector< Data * > & | inData | ) |
| inlinevirtual

Resets the data object to the new input data

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::setData | ( | int | index,
|  | Data * | inData
| ) |  |
| inlinevirtual

Resets the data object at index to the new input data.

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::setInterpolationCoefficients | ( | const InterpolatorType & | interpType,
|  | vector< int > & | nodeIndexes,
|  | vector< double > & | coefficients,
|  | double & | radius,
|  | bool & | allowOutOfRange
| ) |  |
| inlinevirtual

virtual void geotess::ProfileEmpty::setPointIndex | ( | int | nodeIndex,
|  | int | pointIndex
| ) |  |
| inlinevirtual

Set the pointIndex that corresponds to the supplied nodeIndex.

There is a node index for each Data object in a profile and they are indexed from 0 to the number of Data objects managed by a Profile. There is a pointIndex for every Data object in the entire model, indexed from 0 to the number of Data objects in the model.

virtual void geotess::ProfileEmpty::setRadii | ( | const vector< float > & | newRadii | ) |
| inlinevirtual

Replace the radii currently associated with this Profile with new values.

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::write | ( | IFStreamBinary & | ofs | ) |
| inlinevirtual

Write the radii and data values to binary file.

virtual void geotess::ProfileEmpty::write | ( | IFStreamAscii & | ofs | ) |
| inlinevirtual

Write the radii and data values to binary file.

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

- include/ProfileEmpty.h