rotor_light
real-time C++ actor micro-framework for embedded systems, supervisable
rotor_light::traits::MessageStorage< Ts > Struct Template Reference

properly allocated & sized space for any user-defined message type More...

#include <message.hpp>

Public Types

using Item = std::aligned_storage_t< item_size, item_alignment >
 

Static Public Attributes

static constexpr size_t item_size = max<sizeof(Ts)...>()
 
static constexpr size_t item_alignment = max<alignof(Ts)...>()
 

Detailed Description

template<typename... Ts>
struct rotor_light::traits::MessageStorage< Ts >

properly allocated & sized space for any user-defined message type

Member Typedef Documentation

◆ Item

template<typename... Ts>
using rotor_light::traits::MessageStorage< Ts >::Item = std::aligned_storage_t<item_size, item_alignment>

aliases aligned_storage to store max size and max alignment

Member Data Documentation

◆ item_alignment

template<typename... Ts>
constexpr size_t rotor_light::traits::MessageStorage< Ts >::item_alignment = max<alignof(Ts)...>()
staticconstexpr

calculates maximum alignment of all messages

◆ item_size

template<typename... Ts>
constexpr size_t rotor_light::traits::MessageStorage< Ts >::item_size = max<sizeof(Ts)...>()
staticconstexpr

calculates maximum size of all messages


The documentation for this struct was generated from the following file: