25#ifndef PDCOM5_DETAILS_H
26#define PDCOM5_DETAILS_H
30#include "SizeTypeInfo.h"
31#include "pdcom5_export.h"
43namespace PdCom {
namespace details {
51 static constexpr TypeInfo type_info = {
52 TypeInfo::boolean_T,
"bool",
sizeof(bool)};
57 static constexpr TypeInfo type_info = {
58 TypeInfo::char_T,
"char",
sizeof(char)};
63 static constexpr TypeInfo type_info = {
64 TypeInfo::uint8_T,
"uint8_t",
sizeof(uint8_t)};
69 static constexpr TypeInfo type_info = {
70 TypeInfo::int8_T,
"int8_t",
sizeof(int8_t)};
75 static constexpr TypeInfo type_info = {
76 TypeInfo::uint16_T,
"uint16_t",
sizeof(uint16_t)};
81 static constexpr TypeInfo type_info = {
82 TypeInfo::int16_T,
"int16_t",
sizeof(int16_t)};
87 static constexpr TypeInfo type_info = {
88 TypeInfo::uint32_T,
"uint32_t",
sizeof(uint32_t)};
93 static constexpr TypeInfo type_info = {
94 TypeInfo::int32_T,
"int32_t",
sizeof(int32_t)};
99 static constexpr TypeInfo type_info = {
100 TypeInfo::uint64_T,
"uint64_t",
sizeof(uint64_t)};
105 static constexpr TypeInfo type_info = {
106 TypeInfo::int64_T,
"int64_t",
sizeof(int64_t)};
111 static constexpr TypeInfo type_info = {
112 TypeInfo::double_T,
"double",
sizeof(double)};
117 static constexpr TypeInfo type_info = {
118 TypeInfo::single_T,
"float",
sizeof(float)};
121template <TypeInfo::DataType dtype>
127 using value_type = bool;
132 using value_type = char;
137 using value_type = uint8_t;
142 using value_type = int8_t;
147 using value_type = uint16_t;
152 using value_type = int16_t;
157 using value_type = uint32_t;
162 using value_type = int32_t;
167 using value_type = uint64_t;
172 using value_type = int64_t;
177 using value_type = double;
182 using value_type = float;
185template <
class T,
class =
void>
197template <
class T,
size_t N>
205template <
class Char,
class Alloc,
class Traits>
206struct is_contiguous<std::basic_string<Char, Traits, Alloc>> : std::true_type
229 TypeInfo::DataType dst_type,
231 TypeInfo::DataType src_type,
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.
library version string as "major.minor.patch"
Definition: ClientStatistics.h:31
Type of a Variable.
Definition: SizeTypeInfo.h:34
Definition: details.h:123
Definition: details.h:187