▼Ncomms | Main namespace for all classes / functions of COMMS library |
▼Nfield | Namespace that contains definitions of all message fields |
CArrayList | Field that represents a sequential collection of fields |
CBitfield | Bitfield field |
CBitmaskValue | Bitmask value field |
CBundle | Bundles multiple fields into a single field |
CEnumValue | Enumerator value field |
CFloatValue | Field that represent floating point value |
CIntValue | Field that represent integral value |
COptional | Adaptor class to any other field, that makes the field optional |
CString | Field that represents a string |
CVariant | Defines a "variant" field, that can contain any of the provided ones |
▼Noption | Namespace that contains all the options used to define protocol as well as customize application specific configuration |
►Napp | Namespace that contains all the options used for application specific customization |
CCustomStorageType | Set custom storage type for fields like comms::field::String or comms::field::ArrayList |
CEmptyOption | No-op option, doesn't have any effect |
CFixedSizeStorage | Option that forces usage of embedded uninitialised data area instead of dynamic memory allocation |
CForceDispatch | Force a particular way to dispatch message object and/or type |
CHandler | Option used to specify type of the message handler |
CIdInfoInterface | Option used to add getId() function into Message interface |
CInPlaceAllocation | Option that forces "in place" allocation with placement "new" for initialisation, instead of usage of dynamic memory allocation |
CLengthInfoInterface | Option used to add length() function into Message interface |
CMsgFactory | Force usage of the provide message factory |
CMsgFactoryTempl | Force usage of the provide message factory |
CNameInterface | Option used to add name() function into Message interface |
CNoDispatchImpl | Option used to inhibit default implementation of dispatchImpl() in comms::MessageBase |
CNoLengthImpl | Option that inhibits implementation of comms::MessageBase::lengthImpl() regardless of other availability conditions |
CNoReadImpl | Option that inhibits implementation of comms::MessageBase::readImpl() regardless of other availability conditions |
CNoRefreshImpl | Option that inhibits implementation of comms::MessageBase::refreshImpl() regardless of other availability conditions |
CNoValidImpl | Option that inhibits implementation of comms::MessageBase::validImpl() regardless of other availability conditions |
CNoVirtualDestructor | Force the destructor of comms::Message class to be non-virtual, even if there are other virtual functions defined |
CNoWriteImpl | Option that inhibits implementation of comms::MessageBase::writeImpl() regardless of other availability conditions |
COrigDataView | Use "view" on original raw data instead of copying it |
CReadIterator | Option used to specify type of iterator used for reading |
CRefreshInterface | Option used to add refresh() function into Message interface |
CSequenceFixedSizeUseFixedSizeStorage | Option that forces usage of fixed size storage for sequences with fixed size |
CSupportGenericMessage | Option used to allow comms::GenericMessage generation inside comms::MsgFactory and/or comms::protocol::MsgIdLayer classes |
CValidCheckInterface | Option used to add valid() function into Message interface |
CWriteIterator | Option used to specify type of iterator used for writing |
►Ndef | Namespace that contains all the options used to define protocol |
CAssumeFieldsExistence | Option that notifies comms::MessageBase about existence of access to fields |
CAvailableLengthLimit | Option used to specify that serialization length can be contolled by available data length |
CChecksumLayerVerifyBeforeRead | Force comms::protocol::ChecksumLayer and comms::protocol::ChecksumPrefixLayer, to verify checksum prior to forwarding read to the wrapped layer(s) |
CContentsValidator | Option that specifies custom validation class |
CDefaultValueInitialiser | Option that specifies default initialisation class |
CDisplayOffset | Option used to specify display offset for the comms::field::IntValue field |
CEmptySerialization | Force field not to be serialized during read/write operations |
CEndian | Options to specify endian |
CExistsBetweenVersions | Mark an comms::field::Optional field as existing between specified versions |
CExtendingClass | Option to specify real extending class |
CExtraTransportFields | Option used to specify some extra fields from transport framing |
CFailOnInvalid | Option that forces field's read operation to fail if invalid value is received |
CFieldsImpl | Option used to specify fields of the message and force implementation of default read, write, validity check, and length retrieval information of the message |
CFieldType | Option used to specify actual type of the field |
CFixedBitLength | Option used to specify number of bits that is used for field serialisation when a field is a member of comms::field::Bitfield |
CFixedLength | Option used to specify number of bytes that is used for field serialisation |
CFixedValue | Remove an ability to update field's value by the client code |
CHasCustomRead | Mark field class to have custom implementation of read functionality |
CHasCustomRefresh | Mark message / field class to have custom implementation of refresh functionality |
CHasCustomVersionUpdate | Mark message / field class to have custom implementation of version update functionality |
CHasCustomWrite | Mark field class to have custom implementation of read functionality |
CHasDoGetId | Option that notifies comms::MessageBase about existence of doGetId() member function in derived class |
CHasName | Mark message class as providing its name information |
CHasVersionDependentMembers | Mark complex fields like comms::field::Bundle or comms::field::Variant that their members are or are not version dependent |
CIgnoreInvalid | Option that forces field's read operation to ignore read data if invalid value is received |
CInvalidByDefault | Make the field's contents to be invalid by default |
CMissingOnInvalid | Mark an comms::field::Optional field as missing if its contents are invalid (member field has invalid value) |
CMissingOnReadFail | Mark an comms::field::Optional field as missing if its read operation fails |
CMsgIdType | Option used to specify type of the ID |
CMsgType | Option used to specify actual type of the message |
CNoIdImpl | Option used to specify that message doesn't have valid ID |
CNumValueSerOffset | Option to specify numeric value serialisation offset |
CProtocolLayerDisallowReadUntilDataSplit | Disallow usage of ProtocolLayerForceReadUntilDataSplit option in earlier (outer wrapping) layers |
CProtocolLayerForceReadUntilDataSplit | Option to force comms::protocol::ProtocolLayerBase class to split read operation "until" and "from" data (payload) layer |
CProtocolLayerSuppressReadUntilDataSplitForcing | Option to forcefully disable passing the ProtocolLayerForceReadUntilDataSplit option to the layer definition |
CPseudoValue | Option for comms::protocol::TransportValueLayer to mark that the handled field is a "pseudo" one, i.e. is not serialised |
CRemLengthMemberField | Option to specify index of member field containing remaining length in bytes |
CScalingRatio | Option to specify scaling ratio |
CSequenceElemFixedSerLengthFieldPrefix | Option that forces first element only of comms::field::ArrayList to be prefixed with its serialisation length |
CSequenceElemLengthForcingEnabled | Option to enable external forcing of the collection element serialisation length |
CSequenceElemSerLengthFieldPrefix | Option that forces every element of comms::field::ArrayList to be prefixed with its serialisation length |
CSequenceFixedSize | Option used to define exact number of elements in the collection field |
CSequenceLengthForcingEnabled | Option to enable external forcing of the collection's serialisation length duting "read" operation |
CSequenceSerLengthFieldPrefix | Option that modifies the default behaviour of collection fields to prepend the serialised data with number of bytes information |
CSequenceSizeFieldPrefix | Option that modifies the default behaviour of collection fields to prepend the serialised data with number of elements information |
CSequenceSizeForcingEnabled | Option to enable external forcing of the collection's elements count |
CSequenceTerminationFieldSuffix | Option that forces termination of the sequence when predefined value is encountered |
CSequenceTrailingFieldSuffix | Option that forces collection fields to append provides suffix every time it is serialised |
CStaticNumIdImpl | Option used to specify numeric ID of the message |
CUnits | Options to specify units of the field |
CValidBigUnsignedNumValueRange | Provide range of valid unsigned numeric values |
CValidNumValueRange | Provide range of valid numeric values |
CValidRangesClear | Clear accumulated ranges of valid values |
CVariantHasCustomResetOnDestruct | Avoid invocation of built-in reset() member function on destruction of the comms::field::Variant field |
CVarLength | Option used to specify that field may have variable serialisation length |
CVersionInExtraTransportFields | Option used to specify index of the version field inside extra transport fields tuple provided with comms::option::def::ExtraTransportFields option |
CVersionStorage | Add storage of version information inside private data members |
CVersionType | Provide type to be used for versioning |
▼Nprotocol | Namespace that contains definition of layers that can be used to wrap message data with transport data |
►Nchecksum | Namespace that contains definition of checksum calculator classes which can be used with comms::protocol::ChecksumLayer transport layer class |
CBasicSum | Summary of all bytes checksum calculator |
CBasicXor | Exclusive OR (XOR) of all bytes checksum calculator |
CCrc | Calculate CRC values of all the bytes in the sequence |
CChecksumLayer | Protocol 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 |
CChecksumPrefixLayer | Protocol 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 |
CMsgDataLayer | Message data layer |
CMsgIdLayer | Protocol layer that uses uses message ID field as a prefix to all the subsequent data written by other (next) layers |
CMsgSizeLayer | Protocol layer that uses size field as a prefix to all the subsequent data written by other (next) layers |
CProtocolLayerBase | Base class for all the middle (non MsgDataLayer) protocol transport layers |
CSyncPrefixLayer | Protocol layer that uses "sync" field as a prefix to all the subsequent data written by other (next) layers |
CTransportValueLayer | Protocol layer that reads a value from transport wrapping and reassigns it to appropriate "extra transport" data member of the created message object |
▼Ntraits | Namespace for various traits tag classes |
►Ndispatch | Namespace for various traits tag classes used in dispatch operations |
CLinearSwitch | Tag class used to indicate linear switch dispatch |
CPolymorphic | Tag class used to indicate polymorphic dispatch |
CStaticBinSearch | Tag class used to indicate static binary search dispatch |
Nendian | Namespace for traits tag classes used to specify serialisation endian |
►Nunits | Namespace for various traits tag classes used in units conversion operations |
CAngle | Tag class used to indicate angle value |
CCurrent | Tag class used to indicate electrical current value |
CDistance | Tag class used to indicate distance value |
CFrequency | Tag class used to indicate frequency value |
CMemory | Tag class used to indicate memory size value |
CSpeed | Tag class used to indicate speed value |
CTime | Tag class used to indicate time value |
CVoltage | Tag class used to indicate electrical voltage value |
Nunits | Namespace containing units conversion operations |
▼Nutil | Namespace for various utility classes and/or functions used by COMMS library |
►Nalloc | Namespace for various allocation classes |
CDynMemory | Dynamic memory allocator |
CDynMemoryNoVirtualDestructor | Dynamic memory allocator for message types without virtual destructor |
CInPlacePool | In-place object pool allocator |
CInPlaceSingle | In-place single object allocator |
CInPlaceSingleNoVirtualDestructor | In-place single object allocator for message objects without virtual destructor |
Ndetect | Namespace for various compile-time detection operations of whether a type has certain member types and/or member functions |
►Ntraits | Namespace for various utilities related trait classes |
►Nendian | Namespace for utilities related endian definition trait classes |
CBig | Empty class used in traits to indicate Big Endian |
CLittle | Empty class used in traits to indicate Little Endian |
CArrayView | Describes an object that can refer to a constant contiguous sequence of other objects |
CConditional | Replacement to std::conditional |
CIsInTuple | Check whether TType type is included in the tuple TTuple |
CIsTuple | Check whether provided type is a variant of std::tuple |
CScopeGuard | Implements Scope Guard Idiom |
CStaticString | Replacement to std::string when no dynamic memory allocation is allowed |
CStaticVector | Replacement to std::vector when no dynamic memory allocation is allowed |
CStringView | Describes an object that can refer to a constant contiguous sequence of char-like objects with the first element of the sequence at position zero |
CTupleAsAlignedUnion | Calculated "aligned union" storage type for all the types in provided tuple |
CTupleCat | Provides the type of std::tuple_cat operation |
CAssert | Base class for any custom assertion behaviour |
CEmptyHandler | Empty message handler, does nothing |
CEnableAssert | Enable new assertion behaviour |
CField | Base class to all the field classes |
CGenericHandler | Generic common message handler |
CGenericMessage | Generic Message |
CMessage | Main interface class for all the messages |
CMessageBase | Base class for all the custom protocol messages |
CMsgDispatcher | An auxiliary class to force a particular way of dispatching message to its handler |
CMsgFactory | Message factory class |
Nstd | STL namespace |