COMMS
Template library intended to help with implementation of communication protocols.
|
Contains definition of comms::protocol::ProtocolLayerBase. More...
#include <tuple>
#include <utility>
#include <algorithm>
#include <iterator>
#include "comms/CompileControl.h"
#include "comms/ErrorStatus.h"
#include "comms/util/Tuple.h"
#include "comms/util/type_traits.h"
#include "comms/Assert.h"
#include "comms/options.h"
#include "comms/protocol/details/ProtocolLayerBaseOptionsParser.h"
#include "comms/protocol/details/ProtocolLayerDetails.h"
#include "comms/details/protocol_layers_access.h"
#include "comms/details/detect.h"
#include "comms/details/tag.h"
Go to the source code of this file.
Classes | |
class | comms::protocol::ProtocolLayerBase< TField, TNextLayer, TDerived, TOptions > |
Base class for all the middle (non MsgDataLayer) protocol transport layers. More... | |
Namespaces | |
namespace | comms |
Main namespace for all classes / functions of COMMS library. | |
namespace | comms::protocol |
Namespace that contains definition of layers that can be used to wrap message data with transport data. | |
Functions | |
details::MissingSizeRetriever | comms::protocol::missingSize (std::size_t &val) |
Add "missing size" output parameter to protocol stack's (frame's) "read" operation. | |
template<typename TId > | |
details::MsgIdRetriever< TId > | comms::protocol::msgId (TId &val) |
Add "message ID" output parameter to protocol stack's (frame's) "read" operation. | |
details::MsgIndexRetriever | comms::protocol::msgIndex (std::size_t &val) |
Add "message index" output parameter to protocol stack's (frame's) "read" operation. | |
template<typename TIter > | |
details::MsgPayloadRetriever< TIter > | comms::protocol::msgPayload (TIter &iter, std::size_t &len) |
Add "payload start" and "payload size" output parameters to protocol stack's (frame's) "read" operation. | |
template<typename TField , typename TNextLayer , typename TDerived , typename... TOptions> | |
constexpr const ProtocolLayerBase< TField, TNextLayer, TDerived, TOptions... > & | comms::protocol::toProtocolLayerBase (const ProtocolLayerBase< TField, TNextLayer, TDerived, TOptions... > &layer) |
Upcast protocol layer in order to have access to its internal types. | |
template<typename TField , typename TNextLayer , typename TDerived , typename... TOptions> | |
ProtocolLayerBase< TField, TNextLayer, TDerived, TOptions... > & | comms::protocol::toProtocolLayerBase (ProtocolLayerBase< TField, TNextLayer, TDerived, TOptions... > &layer) |
Upcast protocol layer in order to have access to its internal types. | |
Contains definition of comms::protocol::ProtocolLayerBase.