MIP_SDK
v3.0.0-187-g93c7302
MicroStrain Communications Library for embedded systems
|
Go to the documentation of this file.
27 template<
class T>
struct ParamType<T, typename std::enable_if<std::is_enum<T>::value, T>::type> {
static constexpr
inline auto value =
Type::ENUM; };
29 template<
class T>
struct ParamType<T, typename std::enable_if<std::is_union<T>::value, T>::type> {
static constexpr
inline auto value =
Type::UNION; };
69 template<
class Field,
class T, auto Ptr>
73 #ifdef MICROSTRAIN_HAS_OPTIONAL
89 default:
return std::nullopt;
92 #endif // MICROSTRAIN_HAS_OPTIONAL
175 default:
return nullptr;
209 return sizeof(uint8_t);
213 return sizeof(int8_t);
217 return sizeof(uint16_t);
221 return sizeof(int16_t);
225 return sizeof(uint32_t);
229 return sizeof(int32_t);
233 return sizeof(uint64_t);
237 return sizeof(int64_t);
241 return sizeof(float);
245 return sizeof(double);
283 return alignof(char);
287 return alignof(bool);
291 return alignof(uint8_t);
295 return alignof(int8_t);
299 return alignof(uint16_t);
303 return alignof(int16_t);
307 return alignof(uint32_t);
311 return alignof(int32_t);
315 return alignof(uint64_t);
319 return alignof(int64_t);
323 return alignof(float);
327 return alignof(double);
372 size_t check_offset = 0;
380 const size_t align_offset = check_offset % align;
382 if (align_offset != 0)
384 check_offset += align - align_offset;
388 if (offset == check_offset)
413 #define GET_MIP_METADATA_PARAM_INFO(MipType, MemberField) \
414 mip::metadata::utils::getParameterInfoFromStructMemberOffset(offsetof(MipType, MemberField), mip::metadata::MetadataFor<MipType>().value)
constexpr pointer data() const noexcept
Definition: span.hpp:64
std::enable_if< isField< T >::value, T > EnableForFieldTypes
Definition: mip_descriptors.hpp:56
constexpr size_t size() const noexcept
Definition: span.hpp:66
Implementation of std::span from C++20.
Definition: span.hpp:41
A dummy struct which is used to mark bitfield objects.
Definition: mip_descriptors.hpp:61