GeoTessCPP  2.6.1
Software to facilitate storage and retrieval of 3D information about the Earth.
All Classes Namespaces Files Functions Variables Typedefs Friends Macros
geotess::GeoTessData Class Reference

Abstract base class that manages the data values attached to a single grid point. More...

#include <GeoTessData.h>

Inheritance diagram for geotess::GeoTessData:
geotess::GeoTessDataArray< T > geotess::GeoTessDataValue< T >

Public Member Functions

virtual int class_size () const
 
virtual LONG_INT getMemory ()
 
virtual bool operator== (const GeoTessData &d) const
 
virtual const GeoTessDataTypegetDataType () const
 
virtual int size () const
 
virtual double getDouble (int attributeIndex) const
 
virtual float getFloat (int attributeIndex) const
 
virtual LONG_INT getLong (int attributeIndex) const
 
virtual int getInt (int attributeIndex) const
 
virtual short getShort (int attributeIndex) const
 
virtual byte getByte (int attributeIndex) const
 
virtual void getValue (int attributeIndex, double &val) const
 
virtual void getValue (int attributeIndex, float &val) const
 
virtual void getValue (int attributeIndex, LONG_INT &val) const
 
virtual void getValue (int attributeIndex, int &val) const
 
virtual void getValue (int attributeIndex, short &val) const
 
virtual void getValue (int attributeIndex, byte &val) const
 
virtual void getValues (double values[], const int &n)
 
virtual void getValues (float values[], const int &n)
 
virtual void getValues (LONG_INT values[], const int &n)
 
virtual void getValues (int values[], const int &n)
 
virtual void getValues (short values[], const int &n)
 
virtual void getValues (byte values[], const int &n)
 
virtual GeoTessDatasetValue (int attributeIndex, double v)
 
virtual GeoTessDatasetValue (int attributeIndex, float v)
 
virtual GeoTessDatasetValue (int attributeIndex, LONG_INT v)
 
virtual GeoTessDatasetValue (int attributeIndex, int v)
 
virtual GeoTessDatasetValue (int attributeIndex, short v)
 
virtual GeoTessDatasetValue (int attributeIndex, byte v)
 
template<typename T >
void fill (T fillValue)
 
virtual bool isNaN (int attributeIndex) const
 

Static Public Member Functions

static string class_name ()
 
static int class_count ()
 
static GeoTessDatagetData (const GeoTessDataType &dataType, int nAttributes)
 
static GeoTessDatagetData (double values[], const int &size)
 
static GeoTessDatagetData (const vector< double > &values)
 
static GeoTessDatagetData (float values[], const int &size)
 
static GeoTessDatagetData (const vector< float > &values)
 
static GeoTessDatagetData (LONG_INT values[], const int &size)
 
static GeoTessDatagetData (const vector< LONG_INT > &values)
 
static GeoTessDatagetData (int values[], const int &size)
 
static GeoTessDatagetData (const vector< int > &values)
 
static GeoTessDatagetData (short values[], const int &size)
 
static GeoTessDatagetData (const vector< short > &values)
 
static GeoTessDatagetData (byte values[], const int &size)
 
static GeoTessDatagetData (const vector< byte > &values)
 

Detailed Description

Abstract base class that manages the data values attached to a single grid point.

Abstract class that manages the data values attached to single grid point in the model. Data objects have no information about the position in the model where the data is located.

Definition at line 75 of file GeoTessData.h.

Member Function Documentation

◆ class_count()

static int geotess::GeoTessData::class_count ( )
inlinestatic

Returns the class instance count.

Definition at line 99 of file GeoTessData.h.

◆ class_name()

static string geotess::GeoTessData::class_name ( )
inlinestatic

Returns the class name.

Definition at line 89 of file GeoTessData.h.

◆ class_size()

virtual int geotess::GeoTessData::class_size ( ) const
inlinevirtual

Returns the class size.

Definition at line 94 of file GeoTessData.h.

◆ fill()

template<typename T >
void geotess::GeoTessData::fill ( fillValue)
inline

Fill the Data object values with the input fillValue, casting the input value to the intrinsic type of this Data object if necessary.

Parameters
fillValuethe value that is to replace all existing Data values.

Definition at line 382 of file GeoTessData.h.

◆ getByte()

virtual byte geotess::GeoTessData::getByte ( int  attributeIndex) const
virtual

Retrieve the value of the attribute at the specified attribute index as a bute value.

Returns
the value of the attribute at the specified attribute index

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getData() [1/13]

static GeoTessData* geotess::GeoTessData::getData ( byte  values[],
const int &  size 
)
static

Factory method that will return a pointer to a Data object of the correct derived type (DataValue if size==1 or DataValue if size > 1). The data values are copied from the supplied array of values into new Data structures.

Caller assumes ownership of the returned Data object.

Parameters
valuesan array of data values
sizethe number of data values in the array
Returns
either a DataArray or DataValue object of the correct intrinsic type.

◆ getData() [2/13]

static GeoTessData* geotess::GeoTessData::getData ( const GeoTessDataType dataType,
int  nAttributes 
)
static

Factory method that will return a GeoTessData of the specified GeoTessDataType with all values initialized to 0.

Parameters
dataTypethe type of the requested GeoTessData object.
nAttributes
Returns
a GeoTessData object of the correct derived type

◆ getData() [3/13]

static GeoTessData* geotess::GeoTessData::getData ( const vector< byte > &  values)
static

◆ getData() [4/13]

static GeoTessData* geotess::GeoTessData::getData ( const vector< double > &  values)
static

◆ getData() [5/13]

static GeoTessData* geotess::GeoTessData::getData ( const vector< float > &  values)
static

◆ getData() [6/13]

static GeoTessData* geotess::GeoTessData::getData ( const vector< int > &  values)
static

◆ getData() [7/13]

static GeoTessData* geotess::GeoTessData::getData ( const vector< LONG_INT > &  values)
static

◆ getData() [8/13]

static GeoTessData* geotess::GeoTessData::getData ( const vector< short > &  values)
static

◆ getData() [9/13]

static GeoTessData* geotess::GeoTessData::getData ( double  values[],
const int &  size 
)
static

Factory method that will return a pointer to a Data object of the correct derived type (DataValue if size==1 or DataValue if size > 1). The data values are copied from the supplied array of values into new Data structures.

Caller assumes ownership of the returned Data object.

Parameters
valuesan array of data values
sizethe number of data values in the array
Returns
either a DataArray or DataValue object of the correct intrinsic type.

◆ getData() [10/13]

static GeoTessData* geotess::GeoTessData::getData ( float  values[],
const int &  size 
)
static

Factory method that will return a pointer to a Data object of the correct derived type (DataValue if size==1 or DataValue if size > 1). The data values are copied from the supplied array of values into new Data structures.

Caller assumes ownership of the returned Data object.

Parameters
valuesan array of data values
sizethe number of data values in the array
Returns
a pointer to either a DataArray or DataValue object of the correct intrinsic type.

◆ getData() [11/13]

static GeoTessData* geotess::GeoTessData::getData ( int  values[],
const int &  size 
)
static

Factory method that will return a pointer to a Data object of the correct derived type (DataValue if size==1 or DataValue if size > 1). The data values are copied from the supplied array of values into new Data structures.

Caller assumes ownership of the returned Data object.

Parameters
valuesan array of data values
sizethe number of data values in the array
Returns
either a DataArray or DataValue object of the correct intrinsic type.

◆ getData() [12/13]

static GeoTessData* geotess::GeoTessData::getData ( LONG_INT  values[],
const int &  size 
)
static

Factory method that will return a pointer to a Data object of the correct derived type (DataValue if size==1 or DataValue if size > 1). The data values are copied from the supplied array of values into new Data structures.

Caller assumes ownership of the returned Data object.

Parameters
valuesan array of data values
sizethe number of data values in the array
Returns
either a DataArray or DataValue object of the correct intrinsic type.

◆ getData() [13/13]

static GeoTessData* geotess::GeoTessData::getData ( short  values[],
const int &  size 
)
static

Factory method that will return a pointer to a Data object of the correct derived type (DataValue if size==1 or DataValue if size > 1). The data values are copied from the supplied array of values into new Data structures.

Caller assumes ownership of the returned Data object.

Parameters
valuesan array of data values
sizethe number of data values in the array
Returns
either a DataArray or DataValue object of the correct intrinsic type.

◆ getDataType()

virtual const GeoTessDataType& geotess::GeoTessData::getDataType ( ) const
virtual

Retrieve the DataType of this Data object. One of DOUBLE, FLOAT, LONG, INT SHORT, BYTE

Returns
the DataType of this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getDouble()

virtual double geotess::GeoTessData::getDouble ( int  attributeIndex) const
virtual

Retrieve the value of the attribute at the specified attribute index as a double value.

Returns
the value of the attribute at the specified attribute index

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getFloat()

virtual float geotess::GeoTessData::getFloat ( int  attributeIndex) const
virtual

Retrieve the value of the attribute at the specified attribute index as a float value.

Returns
the value of the attribute at the specified attribute index

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getInt()

virtual int geotess::GeoTessData::getInt ( int  attributeIndex) const
virtual

Retrieve the value of the attribute at the specified attribute index as a int value.

Returns
the value of the attribute at the specified attribute index

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getLong()

virtual LONG_INT geotess::GeoTessData::getLong ( int  attributeIndex) const
virtual

Retrieve the value of the attribute at the specified attribute index as a LONG_INT value.

Returns
the value of the attribute at the specified attribute index

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getMemory()

virtual LONG_INT geotess::GeoTessData::getMemory ( )
virtual

Reimplemented in geotess::GeoTessDataArray< T >.

◆ getShort()

virtual short geotess::GeoTessData::getShort ( int  attributeIndex) const
virtual

Retrieve the value of the attribute at the specified attribute index as a short value.

Returns
the value of the attribute at the specified attribute index

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValue() [1/6]

virtual void geotess::GeoTessData::getValue ( int  attributeIndex,
byte val 
) const
virtual

Retrieve the attribute at the input attribute index as a byte value.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValue() [2/6]

virtual void geotess::GeoTessData::getValue ( int  attributeIndex,
double &  val 
) const
virtual

Retrieve the attribute at the input attribute index as a double value.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValue() [3/6]

virtual void geotess::GeoTessData::getValue ( int  attributeIndex,
float &  val 
) const
virtual

Retrieve the attribute at the input attribute index as a float value.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValue() [4/6]

virtual void geotess::GeoTessData::getValue ( int  attributeIndex,
int &  val 
) const
virtual

Retrieve the attribute at the input attribute index as a int value.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValue() [5/6]

virtual void geotess::GeoTessData::getValue ( int  attributeIndex,
LONG_INT val 
) const
virtual

Retrieve the attribute at the input attribute index as a LONG_INT value.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValue() [6/6]

virtual void geotess::GeoTessData::getValue ( int  attributeIndex,
short &  val 
) const
virtual

Retrieve the attribute at the input attribute index as a short value.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValues() [1/6]

virtual void geotess::GeoTessData::getValues ( byte  values[],
const int &  n 
)
virtual

Copy the first n data values into the supplied array.

Parameters
valuesthe array into which data values will be copied.
nthe number of values to copy.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValues() [2/6]

virtual void geotess::GeoTessData::getValues ( double  values[],
const int &  n 
)
virtual

Copy the first n data values into the supplied array.

Parameters
valuesthe array into which data values will be copied.
nthe number of values to copy.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValues() [3/6]

virtual void geotess::GeoTessData::getValues ( float  values[],
const int &  n 
)
virtual

Copy the first n data values into the supplied array.

Parameters
valuesthe array into which data values will be copied.
nthe number of values to copy.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValues() [4/6]

virtual void geotess::GeoTessData::getValues ( int  values[],
const int &  n 
)
virtual

Copy the first n data values into the supplied array.

Parameters
valuesthe array into which data values will be copied.
nthe number of values to copy.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValues() [5/6]

virtual void geotess::GeoTessData::getValues ( LONG_INT  values[],
const int &  n 
)
virtual

Copy the first n data values into the supplied array.

Parameters
valuesthe array into which data values will be copied.
nthe number of values to copy.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ getValues() [6/6]

virtual void geotess::GeoTessData::getValues ( short  values[],
const int &  n 
)
virtual

Copy the first n data values into the supplied array.

Parameters
valuesthe array into which data values will be copied.
nthe number of values to copy.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ isNaN()

virtual bool geotess::GeoTessData::isNaN ( int  attributeIndex) const
virtual

Returns true if the specified attribute is NaN. when Data values are of type Byte, Short, Int and Long, this method always returns false since those types do not support NaN. float and double types are overridden and returns true if value isNaN and false otherwise.

Parameters
attributeIndexThe attribute value to be tested.
Returns
true if the value of the specified attribute is NaN.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ operator==()

virtual bool geotess::GeoTessData::operator== ( const GeoTessData d) const
inlinevirtual

Return true if the input Data object data type is the same as this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

Definition at line 107 of file GeoTessData.h.

◆ setValue() [1/6]

virtual GeoTessData& geotess::GeoTessData::setValue ( int  attributeIndex,
byte  v 
)
virtual

Set the value of the specified attributeIndex and return a reference to this Data object.

Parameters
attributeIndexthe index of the attribute that is to be modified.
vthe new value that is to replace the old value.
Returns
a reference to this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ setValue() [2/6]

virtual GeoTessData& geotess::GeoTessData::setValue ( int  attributeIndex,
double  v 
)
virtual

Set the value of the specified attributeIndex and return a reference to this Data object.

Parameters
attributeIndexthe index of the attribute that is to be modified.
vthe new value that is to replace the old value.
Returns
a reference to this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ setValue() [3/6]

virtual GeoTessData& geotess::GeoTessData::setValue ( int  attributeIndex,
float  v 
)
virtual

Set the value of the specified attributeIndex and return a reference to this Data object.

Parameters
attributeIndexthe index of the attribute that is to be modified.
vthe new value that is to replace the old value.
Returns
a reference to this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ setValue() [4/6]

virtual GeoTessData& geotess::GeoTessData::setValue ( int  attributeIndex,
int  v 
)
virtual

Set the value of the specified attributeIndex and return a reference to this Data object.

Parameters
attributeIndexthe index of the attribute that is to be modified.
vthe new value that is to replace the old value.
Returns
a reference to this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ setValue() [5/6]

virtual GeoTessData& geotess::GeoTessData::setValue ( int  attributeIndex,
LONG_INT  v 
)
virtual

Set the value of the specified attributeIndex and return a reference to this Data object.

Parameters
attributeIndexthe index of the attribute that is to be modified.
vthe new value that is to replace the old value.
Returns
a reference to this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ setValue() [6/6]

virtual GeoTessData& geotess::GeoTessData::setValue ( int  attributeIndex,
short  v 
)
virtual

Set the value of the specified attributeIndex and return a reference to this Data object.

Parameters
attributeIndexthe index of the attribute that is to be modified.
vthe new value that is to replace the old value.
Returns
a reference to this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.

◆ size()

virtual int geotess::GeoTessData::size ( ) const
virtual

Retrieve the number of attributes stored in this Data object.

Returns
the number of attributes stored in this Data object.

Reimplemented in geotess::GeoTessDataValue< T >, and geotess::GeoTessDataArray< T >.


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