GeoTessCPP  2.0.0
Software to facilitate storage and retrieval of 3D information about the Earth.
 All Classes Namespaces Files Functions Variables Typedefs Friends Defines
Public Member Functions | Static Public Member Functions
geotess::ProfileEmpty Class Reference

#include <ProfileEmpty.h>

Inheritance diagram for geotess::ProfileEmpty:
geotess::Profile

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 Profilecopy ()
virtual int findClosestRadiusIndex (double radius) const
virtual void getCoefficients (map< int, double > &coefficients, double radius, double horizontalCoefficient) const
virtual Data ** getData ()
virtual DatagetData (int i)
virtual const DatagetData (int i) const
virtual const DatagetDataBottom () const
virtual DatagetDataBottom ()
virtual const DatagetDataTop () const
virtual DatagetDataTop ()
virtual int getNData () const
virtual int getNRadii () const
virtual int getPointIndex (int nodeIndex) const
virtual float * getRadii ()
virtual float getRadius (int i) const
virtual float getRadiusBottom () const
virtual float getRadiusTop () const
virtual const ProfileTypegetType () const
virtual double getValue (const InterpolatorType &rInterpType, int attributeIndex, double radius, bool allowRadiusOutOfRange) const
virtual double getValue (int attributeIndex, int nodeIndex) const
virtual double getValueBottom (int attributeIndex) const
virtual double getValueTop (int attributeIndex) const
virtual void getWeights (map< int, double > &weights, double dkm, double radius, double hcoefficient) const
virtual bool isNaN (int nodeIndex, int attributeIndex)
virtual bool operator== (const Profile &p) const
virtual void resetPointIndices ()
virtual void setData (const vector< Data * > &inData)
virtual void setData (int index, Data *inData)
virtual void setInterpolationCoefficients (const InterpolatorType &interpType, vector< int > &nodeIndexes, vector< double > &coefficients, double &radius, bool &allowOutOfRange)
virtual void setPointIndex (int nodeIndex, int pointIndex)
virtual void setRadii (const vector< float > &newRadii)
virtual void write (IFStreamBinary &ofs)
virtual void write (IFStreamAscii &ofs)

Static Public Member Functions

static string class_name ()

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 ( ) [inline, virtual]

Default destructor.


Member Function Documentation

static string geotess::ProfileEmpty::class_name ( ) [inline, static]

Returns the class name.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::class_size ( ) const [inline, virtual]

Returns the class size.

Reimplemented from geotess::Profile.

virtual Profile* geotess::ProfileEmpty::copy ( ) [inline, virtual]

Returns a deep copy of this profile.

virtual int geotess::ProfileEmpty::findClosestRadiusIndex ( double  radius) const [inline, virtual]

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

Parameters:
radiusin 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 [inline, virtual]
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 ( ) [inline, virtual]

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 ( ) [inline, virtual]

Get the Data object at the top of the profile.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::getNData ( ) const [inline, virtual]

Get the number of Data objects that comprise this profile.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::getNRadii ( ) const [inline, virtual]

Get the number of radii that comprise this profile.

Reimplemented from geotess::Profile.

virtual int geotess::ProfileEmpty::getPointIndex ( int  nodeIndex) const [inline, virtual]

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 ( ) [inline, virtual]

Retrieve a deeep copy of the radii values in km.

Reimplemented from geotess::Profile.

virtual float geotess::ProfileEmpty::getRadius ( int  i) const [inline, virtual]

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 [inline, virtual]

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

Reimplemented from geotess::Profile.

virtual float geotess::ProfileEmpty::getRadiusTop ( ) const [inline, virtual]

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

Reimplemented from geotess::Profile.

virtual const ProfileType& geotess::ProfileEmpty::getType ( ) const [inline, virtual]

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 [inline, virtual]

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 [inline, virtual]

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 [inline, virtual]

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 [inline, virtual]

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 
) [inline, virtual]

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 [inline, virtual]

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

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::resetPointIndices ( ) [inline, virtual]

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) [inline, virtual]

Resets the data object to the new input data

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::setData ( int  index,
Data inData 
) [inline, virtual]

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 
) [inline, virtual]
virtual void geotess::ProfileEmpty::setPointIndex ( int  nodeIndex,
int  pointIndex 
) [inline, virtual]

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) [inline, virtual]

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

Reimplemented from geotess::Profile.

virtual void geotess::ProfileEmpty::write ( IFStreamBinary ofs) [inline, virtual]

Write the radii and data values to binary file.

virtual void geotess::ProfileEmpty::write ( IFStreamAscii ofs) [inline, virtual]

Write the radii and data values to binary file.


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