Orxonox: src/util/Convert.h File Reference

# Convert.h File Reference

Definition and Implementation of the Convert class. More...

`#include "UtilPrereqs.h"`
`#include <string>`
`#include <sstream>`
`#include <typeinfo>`
`#include "Debug.h"`
`#include "StringUtils.h"`
`#include "TemplateUtils.h"`

## Namespaces

namespace | fallbackTemplates
namespace | orxonox
namespace | orxonox::detail

## Classes

struct | orxonox::ConverterExplicit< FromType, ToType >
struct | orxonox::ConverterExplicit< bool, std::string >
struct | orxonox::ConverterExplicit< char, std::string >
struct | orxonox::ConverterExplicit< const char *, ToType >
struct | orxonox::ConverterExplicit< std::string, bool >
struct | orxonox::ConverterExplicit< std::string, char >
struct | orxonox::ConverterExplicit< std::string, unsigned char >
struct | orxonox::ConverterExplicit< unsigned char, std::string >
struct | orxonox::ConverterFallback< FromType, ToType >
struct | orxonox::ConverterFallback< FromType *, ToType * >
struct | ConverterStringStream< FromType, ToType >
struct | ConverterStringStream< FromType, std::string >
struct | ConverterStringStream< std::string, ToType >
struct | orxonox::detail::Int2Type< I >
| Little template that maps integers to entire types (Alexandrescu 2001). More...

## Functions

template<class FromType, class ToType>
FORCEINLINE bool | orxonox::convertImplicitely (ToType *output, const FromType &input, detail::Int2Type< true >)
template<class FromType, class ToType>
FORCEINLINE bool | orxonox::convertImplicitely (ToType *output, const FromType &input, detail::Int2Type< false >)
template<class FromType, class ToType>
FORCEINLINE bool | orxonox::convertValue (ToType *output, const FromType &input, const ToType &fallback)

Converts any value to any other as long as there exists a conversion. Otherwise, the conversion will generate a runtime warning and return false. For information about the different conversion methods (user defined too), see the section 'Actual conversion sequence' in this file above. If the conversion doesn't succeed, 'fallback' is written to '*output'.

template<class FromType, class ToType>
FORCEINLINE bool | orxonox::convertValue (ToType *output, const FromType &input)

Converts any value to any other as long as there exists a conversion. Otherwise, the conversion will generate a runtime warning and return false. For information about the different conversion methods (user defined too), see the section 'Actual conversion sequence' in this file above.

template<class FromType, class ToType>
FORCEINLINE ToType | orxonox::getConvertedValue (const FromType &input, const ToType &fallback)
template<class FromType, class ToType>
FORCEINLINE ToType | orxonox::getConvertedValue (const FromType &input)
template<class ToType, class FromType>
FORCEINLINE ToType | orxonox::multi_cast (const FromType &input)
template<class FromType>
FORCEINLINE bool | fallbackTemplates::operator<< (std::ostream &outstream, const FromType &input)
template<class ToType>
FORCEINLINE bool | fallbackTemplates::operator>> (std::istream &instream, ToType &output)

## Detailed Description

Definition and Implementation of the Convert class.