25 #ifndef PDCOM5_DETAILS_H 26 #define PDCOM5_DETAILS_H 30 #include "SizeTypeInfo.h" 35 #include <pdcom5_export.h> 37 #include <type_traits> 40 namespace PdCom {
namespace details {
48 static constexpr
TypeInfo type_info = {
49 TypeInfo::boolean_T,
"bool",
sizeof(bool)};
54 static constexpr
TypeInfo type_info = {
55 TypeInfo::char_T,
"char",
sizeof(char)};
60 static constexpr
TypeInfo type_info = {
61 TypeInfo::uint8_T,
"uint8_t",
sizeof(uint8_t)};
66 static constexpr
TypeInfo type_info = {
67 TypeInfo::int8_T,
"int8_t",
sizeof(int8_t)};
72 static constexpr
TypeInfo type_info = {
73 TypeInfo::uint16_T,
"uint16_t",
sizeof(uint16_t)};
78 static constexpr
TypeInfo type_info = {
79 TypeInfo::int16_T,
"int16_t",
sizeof(int16_t)};
84 static constexpr
TypeInfo type_info = {
85 TypeInfo::uint32_T,
"uint32_t",
sizeof(uint32_t)};
90 static constexpr
TypeInfo type_info = {
91 TypeInfo::int32_T,
"int32_t",
sizeof(int32_t)};
96 static constexpr
TypeInfo type_info = {
97 TypeInfo::uint64_T,
"uint64_t",
sizeof(uint64_t)};
102 static constexpr
TypeInfo type_info = {
103 TypeInfo::int64_T,
"int64_t",
sizeof(int64_t)};
108 static constexpr
TypeInfo type_info = {
109 TypeInfo::double_T,
"double",
sizeof(double)};
114 static constexpr
TypeInfo type_info = {
115 TypeInfo::single_T,
"float",
sizeof(float)};
118 template <TypeInfo::DataType dtype>
124 using value_type = bool;
129 using value_type = char;
134 using value_type = uint8_t;
139 using value_type = int8_t;
144 using value_type = uint16_t;
149 using value_type = int16_t;
154 using value_type = uint32_t;
159 using value_type = int32_t;
164 using value_type = uint64_t;
169 using value_type = int64_t;
174 using value_type = double;
179 using value_type = float;
182 template <
class T,
class =
void>
194 template <
class T,
size_t N>
198 template <
class Char,
class Alloc,
class Traits>
222 TypeInfo::DataType dst_type,
224 TypeInfo::DataType src_type,
230 #endif // PDCOM5_DETAILS_H Type of a Variable.
Definition: SizeTypeInfo.h:33
Definition: details.h:183
void PDCOM5_PUBLIC copyData(void *dst, TypeInfo::DataType dst_type, const void *src, TypeInfo::DataType src_type, size_t nelem, size_t offset=0)
Data Conversion Matrix.
Definition: ClientStatistics.h:31
Definition: details.h:119