COMMS
Template library intended to help with implementation of communication protocols.
Loading...
Searching...
No Matches
Namespace List
Here is a list of all documented namespaces with brief descriptions:
[detail level 12345]
 NcommsMain namespace for all classes / functions of COMMS library
 NfieldNamespace that contains definitions of all message fields
 CArrayListField that represents a sequential collection of fields
 CBitfieldBitfield field
 CBitmaskValueBitmask value field
 CBundleBundles multiple fields into a single field
 CEnumValueEnumerator value field
 CFloatValueField that represent floating point value
 CIntValueField that represent integral value
 COptionalAdaptor class to any other field, that makes the field optional
 CStringField that represents a string
 CVariantDefines a "variant" field, that can contain any of the provided ones
 NoptionNamespace that contains all the options used to define protocol as well as customize application specific configuration
 NappNamespace that contains all the options used for application specific customization
 NdefNamespace that contains all the options used to define protocol
 NprotocolNamespace that contains definition of layers that can be used to wrap message data with transport data
 NchecksumNamespace that contains definition of checksum calculator classes which can be used with comms::protocol::ChecksumLayer transport layer class
 CChecksumLayerProtocol layer that is responsible to calculate checksum on the data written by all the wrapped internal layers and append it to the end of the written data. When reading, this layer is responsible to verify the checksum reported at the end of the read data
 CChecksumPrefixLayerProtocol layer that is responsible to calculate checksum on the data written by all the wrapped internal layers and prepend it before the written data. When reading, this layer is responsible to verify the checksum reported at the beginning of the read data
 CMsgDataLayerMessage data layer
 CMsgIdLayerProtocol layer that uses uses message ID field as a prefix to all the subsequent data written by other (next) layers
 CMsgSizeLayerProtocol layer that uses size field as a prefix to all the subsequent data written by other (next) layers
 CProtocolLayerBaseBase class for all the middle (non MsgDataLayer) protocol transport layers
 CSyncPrefixLayerProtocol layer that uses "sync" field as a prefix to all the subsequent data written by other (next) layers
 CTransportValueLayerProtocol layer that reads a value from transport wrapping and reassigns it to appropriate "extra transport" data member of the created message object
 NtraitsNamespace for various traits tag classes
 NdispatchNamespace for various traits tag classes used in dispatch operations
 NendianNamespace for traits tag classes used to specify serialisation endian
 NunitsNamespace for various traits tag classes used in units conversion operations
 NunitsNamespace containing units conversion operations
 NutilNamespace for various utility classes and/or functions used by COMMS library
 NallocNamespace for various allocation classes
 NdetectNamespace for various compile-time detection operations of whether a type has certain member types and/or member functions
 NtraitsNamespace for various utilities related trait classes
 CArrayViewDescribes an object that can refer to a constant contiguous sequence of other objects
 CConditionalReplacement to std::conditional
 CIsInTupleCheck whether TType type is included in the tuple TTuple
 CIsTupleCheck whether provided type is a variant of std::tuple
 CScopeGuardImplements Scope Guard Idiom
 CStaticStringReplacement to std::string when no dynamic memory allocation is allowed
 CStaticVectorReplacement to std::vector when no dynamic memory allocation is allowed
 CStringViewDescribes an object that can refer to a constant contiguous sequence of char-like objects with the first element of the sequence at position zero
 CTupleAsAlignedUnionCalculated "aligned union" storage type for all the types in provided tuple
 CTupleCatProvides the type of std::tuple_cat operation
 CAssertBase class for any custom assertion behaviour
 CEmptyHandlerEmpty message handler, does nothing
 CEnableAssertEnable new assertion behaviour
 CFieldBase class to all the field classes
 CGenericHandlerGeneric common message handler
 CGenericMessageGeneric Message
 CMessageMain interface class for all the messages
 CMessageBaseBase class for all the custom protocol messages
 CMsgDispatcherAn auxiliary class to force a particular way of dispatching message to its handler
 CMsgFactoryMessage factory class
 NstdSTL namespace