Orxonox  0.0.5 Codename: Arcturus
Public Member Functions | Public Attributes | List of all members
orxonox::MultiType::MT_ValueBase Class Referenceabstract

MT_ValueBase is an almost pure virtual baseclass of MT_Value<T>, which holds the value of the MultiType. More...

#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/libraries/util/MultiType.h>

Inheritance diagram for orxonox::MultiType::MT_ValueBase:
orxonox::MT_Value< T >

Public Member Functions

 MT_ValueBase (void *data, Type type)
 
virtual ~MT_ValueBase ()
 
virtual MT_ValueBaseclone () const =0
 
virtual void exportData (uint8_t *&mem) const =0
 
template<typename T >
get () const
 
virtual uint8_t getSize () const =0
 
const TypegetType () const
 Returns the type of the current value. More...
 
virtual bool getValue (char *value) const =0
 
virtual bool getValue (unsigned char *value) const =0
 
virtual bool getValue (short *value) const =0
 
virtual bool getValue (unsigned short *value) const =0
 
virtual bool getValue (int *value) const =0
 
virtual bool getValue (unsigned int *value) const =0
 
virtual bool getValue (long *value) const =0
 
virtual bool getValue (unsigned long *value) const =0
 
virtual bool getValue (long long *value) const =0
 
virtual bool getValue (unsigned long long *value) const =0
 
virtual bool getValue (float *value) const =0
 
virtual bool getValue (double *value) const =0
 
virtual bool getValue (long double *value) const =0
 
virtual bool getValue (bool *value) const =0
 
virtual bool getValue (void **value) const =0
 
virtual bool getValue (std::string *value) const =0
 
virtual bool getValue (orxonox::Vector2 *value) const =0
 
virtual bool getValue (orxonox::Vector3 *value) const =0
 
virtual bool getValue (orxonox::Vector4 *value) const =0
 
virtual bool getValue (orxonox::ColourValue *value) const =0
 
virtual bool getValue (orxonox::Quaternion *value) const =0
 
virtual bool getValue (orxonox::Radian *value) const =0
 
virtual bool getValue (orxonox::Degree *value) const =0
 
template<typename T >
std::enable_if<!std::is_enum< T >::value, bool >::type getValue (T *value) const
 
template<typename T >
std::enable_if< std::is_enum< T >::value, bool >::type getValue (T *value) const
 
virtual void importData (uint8_t *&mem)=0
 
template<typename T >
std::enable_if<!std::is_enum< T >::value, bool >::type isType () const
 Returns true if the type of the stored value is T. Note: the actual implementations for all supported types are defined outside of the class. More...
 
template<typename T >
std::enable_if< std::is_enum< T >::value, bool >::type isType () const
 Implementation for enum classes: Returns true if the type of the stored value is the underlying type of T. More...
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
template<>
bool isType () const
 
bool lastConversionSuccessful () const
 Checks whether the value is a default one. More...
 
virtual void reset ()=0
 
virtual bool setValue (const char &value)=0
 
virtual bool setValue (const unsigned char &value)=0
 
virtual bool setValue (const short &value)=0
 
virtual bool setValue (const unsigned short &value)=0
 
virtual bool setValue (const int &value)=0
 
virtual bool setValue (const unsigned int &value)=0
 
virtual bool setValue (const long &value)=0
 
virtual bool setValue (const unsigned long &value)=0
 
virtual bool setValue (const long long &value)=0
 
virtual bool setValue (const unsigned long long &value)=0
 
virtual bool setValue (const float &value)=0
 
virtual bool setValue (const double &value)=0
 
virtual bool setValue (const long double &value)=0
 
virtual bool setValue (const bool &value)=0
 
virtual bool setValue (void *const &value)=0
 
virtual bool setValue (const std::string &value)=0
 
virtual bool setValue (const orxonox::Vector2 &value)=0
 
virtual bool setValue (const orxonox::Vector3 &value)=0
 
virtual bool setValue (const orxonox::Vector4 &value)=0
 
virtual bool setValue (const orxonox::ColourValue &value)=0
 
virtual bool setValue (const orxonox::Quaternion &value)=0
 
virtual bool setValue (const orxonox::Radian &value)=0
 
virtual bool setValue (const orxonox::Degree &value)=0
 
virtual bool setValue (const MultiType &other)=0
 
template<typename T >
std::enable_if<!std::is_enum< T >::value, bool >::type setValue (const T &value)
 
template<typename T >
std::enable_if< std::is_enum< T >::value, bool >::type setValue (const T &value)
 
virtual void toString (std::ostream &outstream) const =0
 

Public Attributes

bool bLastConversionSuccessful
 True if the last conversion was successful. More...
 
voiddata_
 For direct access to the value if the type is known. More...
 
Type type_
 The type of the current value. More...
 

Detailed Description

MT_ValueBase is an almost pure virtual baseclass of MT_Value<T>, which holds the value of the MultiType.

This class is only used within the MultiType.

Constructor & Destructor Documentation

orxonox::MultiType::MT_ValueBase::MT_ValueBase ( void data,
Type  type 
)
inline
virtual orxonox::MultiType::MT_ValueBase::~MT_ValueBase ( )
inlinevirtual

Member Function Documentation

virtual MT_ValueBase* orxonox::MultiType::MT_ValueBase::clone ( ) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual void orxonox::MultiType::MT_ValueBase::exportData ( uint8_t *&  mem) const
pure virtual
template<typename T >
T orxonox::MultiType::MT_ValueBase::get ( ) const
inline
virtual uint8_t orxonox::MultiType::MT_ValueBase::getSize ( ) const
pure virtual
const Type& orxonox::MultiType::MT_ValueBase::getType ( ) const
inline

Returns the type of the current value.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( char *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( unsigned char *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( short *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( unsigned short *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( int *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( unsigned int *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( long *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( unsigned long *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( long long *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( unsigned long long *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( float *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( double *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( long double *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( bool *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( void **  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( std::string *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::Vector2 *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::Vector3 *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::Vector4 *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::ColourValue *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::Quaternion *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::Radian *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::getValue ( orxonox::Degree *  value) const
pure virtual

Implemented in orxonox::MT_Value< T >.

template<typename T >
std::enable_if<!std::is_enum<T>::value, bool>::type orxonox::MultiType::MT_ValueBase::getValue ( T *  value) const
inline
template<typename T >
std::enable_if<std::is_enum<T>::value, bool>::type orxonox::MultiType::MT_ValueBase::getValue ( T *  value) const
inline
virtual void orxonox::MultiType::MT_ValueBase::importData ( uint8_t *&  mem)
pure virtual
template<typename T >
std::enable_if<!std::is_enum<T>::value, bool>::type orxonox::MultiType::MT_ValueBase::isType ( ) const
inline

Returns true if the type of the stored value is T. Note: the actual implementations for all supported types are defined outside of the class.

template<typename T >
std::enable_if<std::is_enum<T>::value, bool>::type orxonox::MultiType::MT_ValueBase::isType ( ) const
inline

Implementation for enum classes: Returns true if the type of the stored value is the underlying type of T.

template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
template<>
bool orxonox::MultiType::MT_ValueBase::isType ( ) const
inline
bool orxonox::MultiType::MT_ValueBase::lastConversionSuccessful ( ) const
inline

Checks whether the value is a default one.

virtual void orxonox::MultiType::MT_ValueBase::reset ( )
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const char &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const unsigned char &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const short &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const unsigned short &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const int &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const unsigned int &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const long &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const unsigned long &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const long long &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const unsigned long long &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const float &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const double &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const long double &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const bool &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( void *const &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const std::string &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::Vector2 &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::Vector3 &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::Vector4 &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::ColourValue &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::Quaternion &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::Radian &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const orxonox::Degree &  value)
pure virtual

Implemented in orxonox::MT_Value< T >.

virtual bool orxonox::MultiType::MT_ValueBase::setValue ( const MultiType other)
pure virtual

Implemented in orxonox::MT_Value< T >.

template<typename T >
std::enable_if<!std::is_enum<T>::value, bool>::type orxonox::MultiType::MT_ValueBase::setValue ( const T &  value)
inline
template<typename T >
std::enable_if<std::is_enum<T>::value, bool>::type orxonox::MultiType::MT_ValueBase::setValue ( const T &  value)
inline
virtual void orxonox::MultiType::MT_ValueBase::toString ( std::ostream &  outstream) const
pure virtual

Implemented in orxonox::MT_Value< T >.

Member Data Documentation

bool orxonox::MultiType::MT_ValueBase::bLastConversionSuccessful

True if the last conversion was successful.

void* orxonox::MultiType::MT_ValueBase::data_

For direct access to the value if the type is known.

Type orxonox::MultiType::MT_ValueBase::type_

The type of the current value.


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