emlabcpp
modern opinionated embedded C++ library
|
#include "../bounded.h"
#include "./error.h"
#include <bit>
#include <bitset>
#include <cstring>
#include <type_traits>
#include <variant>
Go to the source code of this file.
Classes | |
struct | emlabcpp::protocol::conversion_result |
struct | emlabcpp::protocol::endianess_wrapper< Endianess, D > |
Follows a set of special data types used for definition of protocol. More... | |
struct | emlabcpp::protocol::group< Ds > |
Serializes values from definitions Ds to std::variant. More... | |
struct | emlabcpp::protocol::tag_group< Ds > |
struct | emlabcpp::protocol::sized_buffer< CounterDef, D > |
Creates a segment starting with counter defined by CounterDef, this counter limits how many bytes are passed to deserialization process, bytes after the limit ale not considered by this segment. More... | |
struct | emlabcpp::protocol::value_offset< D, Offset > |
The value defined by D present in the message is offseted by Offset . More... | |
struct | emlabcpp::protocol::converter_def_type_base |
More complex constructs have custom mechanics that internally produces def_type alias used by the library to serialize/deserialize it. More... | |
Namespaces | |
emlabcpp | |
MIT License. | |
emlabcpp::protocol | |
MIT License. | |
Variables | |
template<typename T > | |
concept | emlabcpp::protocol::base_type = std::is_floating_point_v< T > || std::is_integral_v< T > || std::is_enum_v< T > |
Concept that matches types considered base - serialized directly by using byte shifting. More... | |
struct emlabcpp::protocol::group |
struct emlabcpp::protocol::tag_group |
struct emlabcpp::protocol::sized_buffer |
Creates a segment starting with counter defined by CounterDef, this counter limits how many bytes are passed to deserialization process, bytes after the limit ale not considered by this segment.
Class Members | ||
---|---|---|
typedef CounterDef | counter_type | |
typedef D | def_type |