27 #include "../common/Translator.h"
34 #include <boost/lexical_cast.hpp>
39 return new Char(boost::lexical_cast<char>(static_cast<const Boolean*>(d)->getValue()));
45 return new UChar(boost::lexical_cast<unsigned char>(static_cast<const Boolean*>(d)->getValue()));
51 return new Int16(static_cast<int16_t>(static_cast<const Boolean*>(d)->getValue()));
57 return new UInt16(boost::lexical_cast<uint16_t>(static_cast<const Boolean*>(d)->getValue()));
63 return new Int32(static_cast<int32_t>(static_cast<const Boolean*>(d)->getValue()));
69 return new UInt32(boost::lexical_cast<uint32_t>(static_cast<const Boolean*>(d)->getValue()));
75 return new Int64(static_cast<int64_t>(static_cast<const Boolean*>(d)->getValue()));
81 return new UInt64(boost::lexical_cast<uint64_t>(static_cast<const Boolean*>(d)->getValue()));
87 return new Float(boost::lexical_cast<float>(static_cast<const Boolean*>(d)->getValue()));
93 return new Double(boost::lexical_cast<double>(static_cast<const Boolean*>(d)->getValue()));
99 return new Numeric(boost::lexical_cast<std::string>(static_cast<const Boolean*>(d)->getValue()));
105 return new String(boost::lexical_cast<std::string>(static_cast<const Boolean*>(d)->getValue()));
111 throw Exception(
TE_TR(
"The input data type is not a boolean!"));
AbstractData * BooleanToStringConverter(AbstractData *d)
It converts an Boolean data value to a string data value.
SimpleData< std::string, STRING_TYPE > String
SimpleData< unsigned char, UCHAR_TYPE > UChar
AbstractData * BooleanToInt64Converter(AbstractData *d)
It converts an Boolean data value to a Int64 data value.
An exception class for the DataType module.
AbstractData * BooleanToInt16Converter(AbstractData *d)
It converts an Boolean data value to a Int16 data value.
SimpleData< boost::int64_t, INT64_TYPE > Int64
SimpleData< boost::int32_t, INT32_TYPE > Int32
SimpleData< float, FLOAT_TYPE > Float
void AssertBoolean(AbstractData *d)
Auxiliary method that asserts that the given data is an Boolean type.
#define TE_TR(message)
It marks a string in order to get translated.
AbstractData * BooleanToDoubleConverter(AbstractData *d)
It converts an Boolean data value to a double data value.
AbstractData * BooleanToUInt16Converter(AbstractData *d)
It converts an Boolean data value to an unsigned Int16 data value.
AbstractData * BooleanToFloatConverter(AbstractData *d)
It converts an Boolean data value to a float data value.
AbstractData * BooleanToUInt32Converter(AbstractData *d)
It converts an Boolean data value to an unsigned Int32 data value.
SimpleData< std::string, NUMERIC_TYPE > Numeric
AbstractData * BooleanToUInt64Converter(AbstractData *d)
It converts an Boolean data value to an unsigned Int64 data value.
AbstractData * BooleanToNumericConverter(AbstractData *d)
It converts an Boolean data value to a Numeric data value.
AbstractData * BooleanToCharConverter(AbstractData *d)
It converts an Boolean data value to a char data value.
SimpleData< boost::uint64_t, UINT64_TYPE > UInt64
A base class for values that can be retrieved from the data access module.
AbstractData * BooleanToInt32Converter(AbstractData *d)
It converts an Boolean data value to a Int32 data value.
A set of function that convert an Boolean type to other types.
SimpleData< double, DOUBLE_TYPE > Double
SimpleData< char, CHAR_TYPE > Char
SimpleData< boost::uint16_t, UINT16_TYPE > UInt16
General enumerations for the data type module.
AbstractData * BooleanToUCharConverter(AbstractData *d)
It converts an Boolean data value to an unsigned char data value.
This file contains several implementations for atomic data types (integers, floats, strings and others).
SimpleData< boost::int16_t, INT16_TYPE > Int16
SimpleData< boost::uint32_t, UINT32_TYPE > UInt32