Public Member Functions | Private Attributes | List of all members
Parameter::Parameter Class Referenceabstract

The Parameter::Parameter class is the abstract base class of all Classes containing dynamically typed attributes. More...

#include <parameter.h>

Inheritance diagram for Parameter::Parameter:
Inheritance graph
[legend]

Public Member Functions

const std::string & getName () const
 Get the name of this parameter. More...
 
const std::string & getType () const
 Get the type of this parameter. More...
 
virtual const int getTypeByteSize () const =0
 Get the byte size of this parameter. More...
 
virtual const bool isTypeArithmetic () const =0
 Is this parameter an arithmetic type? More...
 
virtual const bool isTypeSigned () const =0
 Get the sign of this parameter. More...
 
const bool isValid () const
 Is this parameters value NaN/invalid? More...
 
 Parameter (const std::string &name, const std::string &type)
 Parameter::Parameter constructor. More...
 
void setValid (const bool isParamValid)
 Defines whether this paramters value is NaN/invalid or not. More...
 
virtual ~Parameter ()
 Parameter::Parameter destructor. More...
 

Private Attributes

bool isParamValid
 
std::string name
 
std::string type
 

Detailed Description

The Parameter::Parameter class is the abstract base class of all Classes containing dynamically typed attributes.

This class is a workaround allowing c++ Lists/Arrays/etc. to contain multiple dynamic types.

Definition at line 35 of file parameter.h.

Constructor & Destructor Documentation

Parameter::Parameter::Parameter ( const std::string &  name,
const std::string &  type 
)
inline

Parameter::Parameter constructor.

Name must be unique within a ParameterMap object. Allowed parameter types: 'uint8_t', 'int8_t', 'uint16_t', 'int16_t', 'uint32_t', 'int32_t', 'uint64_t', 'int64_t', 'float32_t', 'float64_t', 'string_t', 'string_t[]'

Parameters
[in]nameunique identifier of the parameter
[in]typetype of the parameter

Definition at line 48 of file parameter.h.

virtual Parameter::Parameter::~Parameter ( )
inlinevirtual

Parameter::Parameter destructor.

Definition at line 56 of file parameter.h.

Member Function Documentation

const std::string& Parameter::Parameter::getName ( ) const
inline

Get the name of this parameter.

Returns
name of this parameter

Definition at line 61 of file parameter.h.

const std::string& Parameter::Parameter::getType ( ) const
inline

Get the type of this parameter.

Returns
type of this parameter

Definition at line 66 of file parameter.h.

virtual const int Parameter::Parameter::getTypeByteSize ( ) const
pure virtual

Get the byte size of this parameter.

Returns
byte size of this parameter

Implemented in Parameter::GenericParameter< T >.

virtual const bool Parameter::Parameter::isTypeArithmetic ( ) const
pure virtual

Is this parameter an arithmetic type?

Returns
true if type equals signed/unsigned char/short/int/long etc. or float/double

Implemented in Parameter::GenericParameter< T >.

virtual const bool Parameter::Parameter::isTypeSigned ( ) const
pure virtual

Get the sign of this parameter.

Returns
sign of this parameter, If (sign(parameter)== +) -> 1, Else -1.

Implemented in Parameter::GenericParameter< T >.

const bool Parameter::Parameter::isValid ( ) const
inline

Is this parameters value NaN/invalid?

Returns
true if parameter value is not NaN/invalid, else false.

Definition at line 92 of file parameter.h.

void Parameter::Parameter::setValid ( const bool  isParamValid)
inline

Defines whether this paramters value is NaN/invalid or not.

Parameters
[in]isParamValidsets this parameter value to valid/invalid

Definition at line 87 of file parameter.h.

Member Data Documentation

bool Parameter::Parameter::isParamValid
private

Is this parameters value NaN/invalid?

Definition at line 97 of file parameter.h.

std::string Parameter::Parameter::name
private

Unique identifier a parameter.

Definition at line 95 of file parameter.h.

std::string Parameter::Parameter::type
private

Type of a parameter.

Definition at line 96 of file parameter.h.


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


pses_ucbridge
Author(s): Sebastian Ehmes
autogenerated on Sat Oct 28 2017 19:16:13