37    static const bool Value = 
false;
 
   40template <std::
intmax_t TNum, std::
intmax_t TDen>
 
   41struct IsRatio<
std::ratio<TNum, TDen> >
 
   43    static const bool Value = 
true;
 
   47constexpr bool isRatio()
 
   49    return IsRatio<T>::Value;
 
   52template<
typename T, T TVal>
 
   53struct DefaultNumValueInitialiser
 
   55    template <
typename TField>
 
   56    void operator()(TField&& field)
 
   58        using FieldType = 
typename std::decay<TField>::type;
 
   59        using ValueType = 
typename FieldType::ValueType;
 
   60        field.value() = 
static_cast<ValueType
>(TVal);
 
   64template<std::
intmax_t TMinValue, std::
intmax_t TMaxValue>
 
   65struct NumValueRangeValidator
 
   68        TMinValue <= TMaxValue,
 
   69        "Min value must be not greater than Max value");
 
   71    template <
typename TField>
 
   72    constexpr bool operator()(
const TField& field)
 const 
   76                (std::numeric_limits<
decltype(MinValue)>::min() < MinValue)
 
   84                (MaxValue < std::numeric_limits<
decltype(MaxValue)>::max())
 
   90        return aboveMin(field.value(), MinTag()) && belowMax(field.value(), MaxTag());
 
   94    struct ReturnTrueTag {};
 
   97    template <
typename TValue>
 
   98    static constexpr bool aboveMin(
const TValue& value, CompareTag)
 
  100        using ValueType = 
typename std::decay<
decltype(value)>::type;
 
  101        return (
static_cast<ValueType
>(MinValue) <= 
static_cast<ValueType
>(value));
 
  104    template <
typename TValue>
 
  105    static constexpr bool aboveMin(
const TValue&, ReturnTrueTag)
 
  110    template <
typename TValue>
 
  111    static constexpr bool belowMax(
const TValue& value, CompareTag)
 
  113        using ValueType = 
typename std::decay<
decltype(value)>::type;
 
  114        return (value <= 
static_cast<ValueType
>(MaxValue));
 
  117    template <
typename TValue>
 
  118    static constexpr bool belowMax(
const TValue&, ReturnTrueTag)
 
  124    static const auto MinValue = TMinValue;
 
  125    static const auto MaxValue = TMaxValue;
 
  128template<std::u
intmax_t TMask, std::u
intmax_t TValue>
 
  129struct BitmaskReservedBitsValidator
 
  131    template <
typename TField>
 
  132    constexpr bool operator()(TField&& field)
 const 
  134        using FieldType = 
typename std::decay<TField>::type;
 
  135        using ValueType = 
typename FieldType::ValueType;
 
  137        return (field.value() & 
static_cast<ValueType
>(TMask)) == 
static_cast<ValueType
>(TValue);
 
  141template <comms::field::OptionalMode TVal>
 
  142struct DefaultOptModeInitialiser
 
  144    template <
typename TField>
 
  145    void operator()(TField& field)
 const 
  151template<std::
size_t TIdx>
 
  152struct DefaultVariantIndexInitialiser
 
  154    template <
typename TField>
 
  155    void operator()(TField& field)
 
  157        field.template initField<TIdx>();
 
  170template <
typename TEndian>
 
  192template <std::
intmax_t TId>
 
  201template <
typename TMsg>
 
  206template <
typename TField>
 
  217template <
typename TFields>
 
  225template <std::
size_t TIdx>
 
  233template <
typename TFields>
 
  237template <
typename... TFields>
 
  279template<std::
size_t TLen, 
bool TSignExtend = true>
 
  309template<std::
size_t TLen, 
bool TSignExtend = true>
 
  335template<std::
size_t TMin, std::
size_t TMax>
 
  338    static_assert(TMin <= TMax, 
"TMin must not be greater that TMax.");
 
 
  377template<std::
intmax_t TOffset>
 
  408template <std::
intmax_t TNum, std::
intmax_t TDenom>
 
  411    static_assert(TNum != 0, 
"Wrong scaling ratio");
 
  412    static_assert(TDenom != 0, 
"Wrong scaling ratio");
 
 
  437template <
typename TField>
 
  464template <
typename TField, comms::ErrorStatus TReadErrorStatus = comms::ErrorStatus::Inval
idMsgData>
 
  474template <
typename TField, comms::ErrorStatus TReadErrorStatus = comms::ErrorStatus::Inval
idMsgData>
 
  486template <
typename TField, comms::ErrorStatus TReadErrorStatus = comms::ErrorStatus::Inval
idMsgData>
 
  506template <
typename TField>
 
  530template <
typename TField>
 
  578template <std::
size_t TSize>
 
  673template <comms::ErrorStatus TStatus = comms::ErrorStatus::Inval
idMsgData>
 
  691template <
typename TType, 
typename TRatio>
 
  694    static_assert(details::isRatio<TRatio>(),
 
  695        "TRatio parameter must be a variant of std::ratio");
 
  697    static_assert(TRatio::num != 0, 
"Wrong ratio value");
 
  698    static_assert(TRatio::den != 0, 
"Wrong ratio value");
 
 
  919template<std::
intmax_t TVal>
 
  922        details::DefaultNumValueInitialiser<std::intmax_t, TVal>
 
  933template<std::u
intmax_t TVal>
 
  936        details::DefaultNumValueInitialiser<std::uintmax_t, TVal>
 
  954template<std::
intmax_t TMinValue, std::
intmax_t TMaxValue>
 
  957    static_assert(TMinValue <= TMaxValue, 
"Invalid range");
 
 
  968template<std::
intmax_t TMinValue, std::
intmax_t TMaxValue>
 
  977template<std::
intmax_t TValue>
 
  983template<std::
intmax_t TValue>
 
  999template<std::u
intmax_t TMinValue, std::u
intmax_t TMaxValue>
 
 1002    static_assert(TMinValue <= TMaxValue, 
"Invalid range");
 
 
 1010template<std::u
intmax_t TMinValue, std::u
intmax_t TMaxValue>
 
 1019template<std::u
intmax_t TValue>
 
 1025template<std::u
intmax_t TValue>
 
 1039template<std::u
intmax_t TMask, std::u
intmax_t TValue = 0U>
 
 1048template<comms::field::OptionalMode TVal>
 
 1075template <std::
size_t TIdx>
 
 1169template <
typename T>
 
 1172    static_assert(std::is_integral<T>::value, 
"Only unsigned integral types are supported for versions");
 
 1173    static_assert(std::is_unsigned<T>::value, 
"Only unsigned integral types are supported for versions");
 
 
 1187template <std::u
intmax_t TFrom, std::u
intmax_t TUntil>
 
 1190    static_assert(TFrom <= TUntil, 
"Invalid version parameters");
 
 
 1198template <std::u
intmax_t TVer>
 
 1206template <std::u
intmax_t TVer>
 
 1221template <
typename T>
 
 1227template <std::
size_t TIdx>
 
 1252template <
bool TVersionDependent>
 
 1261template <std::
intmax_t TOffset>
 
 1276template <
typename TIter>
 
 1282template <
typename TIter>
 
 1308template <
typename T>
 
 1350template <
typename TGenericMessage>
 
 1366template <std::
size_t TSize>
 
 1383template <
typename TType>
 
 1424template <
typename T>
 
 1442template <
typename TFactory>
 
 1450template <
template<
typename, 
typename, 
typename...> 
class TFactory>
 
 1459template <
typename TEndian>
 
 1472template <
typename T>
 
 1477template <std::
intmax_t TId>
 
 1486template <
typename TMsg>
 
 1491template <
typename TMsg>
 
 1496template <
typename TFields>
 
 1501template <std::
size_t TIdx>
 
 1506template <
typename TFields>
 
 1523template<std::
size_t TLen, 
bool TSignExtend = true>
 
 1528template<std::
size_t TLen, 
bool TSignExtend = true>
 
 1533template<std::
size_t TMin, std::
size_t TMax>
 
 1538template<std::
intmax_t TOffset>
 
 1543template <std::
intmax_t TNum, std::
intmax_t TDenom>
 
 1548template <
typename TField>
 
 1553template <
typename TField, comms::ErrorStatus TReadErrorStatus = comms::ErrorStatus::Inval
idMsgData>
 
 1559template <
typename TField, comms::ErrorStatus TReadErrorStatus = comms::ErrorStatus::Inval
idMsgData>
 
 1565template <
typename TField, comms::ErrorStatus TReadErrorStatus = comms::ErrorStatus::Inval
idMsgData>
 
 1571template <
typename TField>
 
 1576template <
typename TField>
 
 1593template <std::
size_t TSize>
 
 1598template <
typename T>
 
 1603template <comms::ErrorStatus TStatus = comms::ErrorStatus::Inval
idMsgData>
 
 1612template <
typename TType, 
typename TRatio>
 
 1785template<std::
intmax_t TVal>
 
 1790template<std::u
intmax_t TVal>
 
 1795template<std::
intmax_t TMinValue, std::
intmax_t TMaxValue>
 
 1804template<std::
intmax_t TMinValue, std::
intmax_t TMaxValue>
 
 1809template<std::
intmax_t TValue>
 
 1814template<std::
intmax_t TValue>
 
 1819template<std::u
intmax_t TMinValue, std::u
intmax_t TMaxValue>
 
 1825template<std::u
intmax_t TMinValue, std::u
intmax_t TMaxValue>
 
 1831template<std::u
intmax_t TValue>
 
 1837template<std::u
intmax_t TValue>
 
 1843template<std::u
intmax_t TMask, std::u
intmax_t TValue = 0U>
 
 1848template<comms::field::OptionalMode TVal>
 
 1869template <std::
size_t TIdx>
 
 1916template <
typename T>
 
 1925template <std::u
intmax_t TFrom, std::u
intmax_t TUntil>
 
 1930template <std::u
intmax_t TVer>
 
 1935template <std::u
intmax_t TVer>
 
 1948template <
typename T>
 
 1953template <std::
size_t TIdx>
 
 1964template <
typename TIter>
 
 1969template <
typename TIter>
 
 1994template <
typename T>
 
 2027template <
typename TGenericMessage>
 
 2032template <std::
size_t TSize>
 
 2037template <
typename TType>
 
 2054template <
typename T>
 
This file contain definition of error statuses used by comms module.
 
Contains definition of the mode used for comms::field::Optional fields.
 
ForceDispatch< comms::traits::dispatch::LinearSwitch > ForceDispatchLinearSwitch
Force generation of linear switch statmenets for dispatch logic of message object and/or message obje...
Definition options.h:1437
 
ForceDispatch< comms::traits::dispatch::StaticBinSearch > ForceDispatchStaticBinSearch
Force generation of static binary search dispatch logic for message object and/or message object type...
Definition options.h:1433
 
ForceDispatch< comms::traits::dispatch::Polymorphic > ForceDispatchPolymorphic
Force generation of v-tables and polymorphic dispatch logic for message object and/or message object ...
Definition options.h:1429
 
Units< comms::traits::units::Speed, comms::traits::units::KilometersPerSecondRatio > UnitsKilometersPerSecond
Alias option, specifying field value units are "kilometers per second".
Definition options.h:799
 
std::tuple< ValidBigUnsignedNumValueRange< TMinValue, TMaxValue >, ValidRangesClear > ValidBigUnsignedNumValueRangeOverride
Similar to ValidBigUnsignedNumValueRange, but overrides (nullifies) all previously set valid values r...
Definition options.h:1015
 
Units< comms::traits::units::Distance, comms::traits::units::MicrometersRatio > UnitsMicrometers
Alias option, specifying field value units are "micrometers".
Definition options.h:749
 
Units< comms::traits::units::Time, comms::traits::units::HoursRatio > UnitsHours
Alias option, specifying field value units are "hours".
Definition options.h:729
 
Units< comms::traits::units::Frequency, comms::traits::units::MegaHzRatio > UnitsMegahertz
Alias option, specifying field value units are "megahertz".
Definition options.h:819
 
Units< comms::traits::units::Time, comms::traits::units::MinutesRatio > UnitsMinutes
Alias option, specifying field value units are "minutes".
Definition options.h:724
 
Units< comms::traits::units::Speed, comms::traits::units::KilometersPerHourRatio > UnitsKilometersPerHour
Alias option, specifying field value units are "kilometers per hour".
Definition options.h:804
 
Units< comms::traits::units::Current, comms::traits::units::NanoampsRatio > UnitsNanoamps
Alias option, specifying field value units are "nanoamps".
Definition options.h:839
 
Units< comms::traits::units::Time, comms::traits::units::WeeksRatio > UnitsWeeks
Alias option, specifying field value units are "weeks".
Definition options.h:739
 
Units< comms::traits::units::Memory, comms::traits::units::TerabytesRatio > UnitsTerabytes
Alias option, specifying field value units are "terabytes".
Definition options.h:909
 
Units< comms::traits::units::Memory, comms::traits::units::BytesRatio > UnitsBytes
Alias option, specifying field value units are "bytes".
Definition options.h:889
 
Units< comms::traits::units::Frequency, comms::traits::units::GigaHzRatio > UnitsGigahertz
Alias option, specifying field value units are "gigahertz".
Definition options.h:824
 
Units< comms::traits::units::Distance, comms::traits::units::MillimetersRatio > UnitsMillimeters
Alias option, specifying field value units are "millimeters".
Definition options.h:754
 
Units< comms::traits::units::Time, comms::traits::units::MillisecondsRatio > UnitsMilliseconds
Alias option, specifying field value units are "milliseconds".
Definition options.h:714
 
Units< comms::traits::units::Speed, comms::traits::units::MillimetersPerSecondRatio > UnitsMillimetersPerSecond
Alias option, specifying field value units are "millimeters per second".
Definition options.h:784
 
Units< comms::traits::units::Time, comms::traits::units::DaysRatio > UnitsDays
Alias option, specifying field value units are "days".
Definition options.h:734
 
Units< comms::traits::units::Distance, comms::traits::units::KilometersRatio > UnitsKilometers
Alias option, specifying field value units are "kilometers".
Definition options.h:769
 
std::tuple< ValidNumValueRange< TMinValue, TMaxValue >, ValidRangesClear > ValidNumValueRangeOverride
Similar to ValidNumValueRange, but overrides (nullifies) all previously set valid values ranges.
Definition options.h:973
 
ExistsByDefault OptionalExistsByDefault
Alias to DefaultOptionalMode<comms::field::OptinalMode::Exists>
Definition options.h:1069
 
Units< comms::traits::units::Speed, comms::traits::units::MicrometersPerSecondRatio > UnitsMicrometersPerSecond
Alias option, specifying field value units are "micrometers per second".
Definition options.h:779
 
Units< comms::traits::units::Speed, comms::traits::units::CentimetersPerSecondRatio > UnitsCentimetersPerSecond
Alias option, specifying field value units are "centimeters per second".
Definition options.h:789
 
Units< comms::traits::units::Voltage, comms::traits::units::NanovoltsRatio > UnitsNanovolts
Alias option, specifying field value units are "nanovolts".
Definition options.h:864
 
Units< comms::traits::units::Voltage, comms::traits::units::KilovoltsRatio > UnitsKilovolts
Alias option, specifying field value units are "kilovolts".
Definition options.h:884
 
Units< comms::traits::units::Angle, comms::traits::units::DegreesRatio > UnitsDegrees
Alias option, specifying field value units are "degrees".
Definition options.h:829
 
Endian< comms::traits::endian::Big > BigEndian
Alias option to Endian specifying Big endian.
Definition options.h:177
 
Units< comms::traits::units::Frequency, comms::traits::units::KiloHzRatio > UnitsKilohertz
Alias option, specifying field value units are "kilohertz".
Definition options.h:814
 
Units< comms::traits::units::Distance, comms::traits::units::NanometersRatio > UnitsNanometers
Alias option, specifying field value units are "nanometers".
Definition options.h:744
 
Units< comms::traits::units::Speed, comms::traits::units::NanometersPerSecondRatio > UnitsNanometersPerSecond
Alias option, specifying field value units are "nanometers per second".
Definition options.h:774
 
DefaultOptionalMode< comms::field::OptionalMode::Missing > MissingByDefault
Alias to DefaultOptionalMode.
Definition options.h:1056
 
ValidNumValueRangeOverride< TValue, TValue > ValidNumValueOverride
Alias to ValidNumValueRangeOverride.
Definition options.h:984
 
Units< comms::traits::units::Voltage, comms::traits::units::VoltsRatio > UnitsVolts
Alias option, specifying field value units are "volts".
Definition options.h:879
 
HasCustomRefresh HasDoRefresh
Option that notifies comms::MessageBase about existence of custom refresh functionality in derived cl...
Definition options.h:1160
 
Units< comms::traits::units::Current, comms::traits::units::AmpsRatio > UnitsAmps
Alias option, specifying field value units are "amps".
Definition options.h:854
 
Units< comms::traits::units::Angle, comms::traits::units::RadiansRatio > UnitsRadians
Alias option, specifying field value units are "radians".
Definition options.h:834
 
Units< comms::traits::units::Frequency, comms::traits::units::HzRatio > UnitsHertz
Alias option, specifying field value units are "hertz".
Definition options.h:809
 
Units< comms::traits::units::Voltage, comms::traits::units::MillivoltsRatio > UnitsMillivolts
Alias option, specifying field value units are "millivolts".
Definition options.h:874
 
EmptySerialization EmptySerialisation
Same as EmptySerialization.
Definition options.h:1097
 
Units< comms::traits::units::Current, comms::traits::units::MicroampsRatio > UnitsMicroamps
Alias option, specifying field value units are "microamps".
Definition options.h:844
 
MissingByDefault OptionalMissingByDefault
Alias to DefaultOptionalMode<comms::field::OptinalMode::Missing>
Definition options.h:1066
 
Units< comms::traits::units::Distance, comms::traits::units::MetersRatio > UnitsMeters
Alias option, specifying field value units are "meters".
Definition options.h:764
 
Units< comms::traits::units::Memory, comms::traits::units::KilobytesRatio > UnitsKilobytes
Alias option, specifying field value units are "kilobytes".
Definition options.h:894
 
Units< comms::traits::units::Current, comms::traits::units::KiloampsRatio > UnitsKiloamps
Alias option, specifying field value units are "kiloamps".
Definition options.h:859
 
Units< comms::traits::units::Voltage, comms::traits::units::MicrovoltsRatio > UnitsMicrovolts
Alias option, specifying field value units are "microvolts".
Definition options.h:869
 
Units< comms::traits::units::Memory, comms::traits::units::MegabytesRatio > UnitsMegabytes
Alias option, specifying field value units are "megabytes".
Definition options.h:899
 
Units< comms::traits::units::Time, comms::traits::units::MicrosecondsRatio > UnitsMicroseconds
Alias option, specifying field value units are "microseconds".
Definition options.h:709
 
Units< comms::traits::units::Time, comms::traits::units::NanosecondsRatio > UnitsNanoseconds
Alias option, specifying field value units are "nanoseconds".
Definition options.h:704
 
Units< comms::traits::units::Distance, comms::traits::units::CentimetersRatio > UnitsCentimeters
Alias option, specifying field value units are "centimeters".
Definition options.h:759
 
DefaultOptionalMode< comms::field::OptionalMode::Exists > ExistsByDefault
Alias to DefaultOptionalMode.
Definition options.h:1063
 
Units< comms::traits::units::Current, comms::traits::units::MilliampsRatio > UnitsMilliamps
Alias option, specifying field value units are "milliamps".
Definition options.h:849
 
ValidBigUnsignedNumValueRangeOverride< TValue, TValue > ValidBigUnsignedNumValueOverride
Alias to ValidBigUnsignedNumValueRangeOverride.
Definition options.h:1026
 
Units< comms::traits::units::Speed, comms::traits::units::MetersPerSecondRatio > UnitsMetersPerSecond
Alias option, specifying field value units are "meters per second".
Definition options.h:794
 
FieldsImpl< std::tuple<> > ZeroFieldsImpl
Alias to FieldsImpl<std::tuple<> >
Definition options.h:245
 
Endian< comms::traits::endian::Little > LittleEndian
Alias option to Endian specifying Little endian.
Definition options.h:181
 
Units< comms::traits::units::Time, comms::traits::units::SecondsRatio > UnitsSeconds
Alias option, specifying field value units are "seconds".
Definition options.h:719
 
Units< comms::traits::units::Memory, comms::traits::units::GigabytesRatio > UnitsGigabytes
Alias option, specifying field value units are "gigabytes".
Definition options.h:904
 
comms::option::def::ValidNumValueOverride< TValue > ValidNumValueOverride
Same as comms::option::def::ValidNumValueOverride.
Definition options.h:1815
 
comms::option::def::ValidBigUnsignedNumValueOverride< TValue > ValidBigUnsignedNumValueOverride
Same as comms::option::def::ValidBigUnsignedNumValueOverride.
Definition options.h:1839
 
comms::option::def::ValidBigUnsignedNumValueRangeOverride< TMinValue, TMaxValue > ValidBigUnsignedNumValueRangeOverride
Same as comms::option::def::ValidBigUnsignedNumValueRangeOverride.
Definition options.h:1827
 
comms::option::def::FieldType< TMsg > FieldType
Same as comms::option::def::FieldType.
Definition options.h:1492
 
comms::option::def::ValidNumValueRangeOverride< TMinValue, TMaxValue > ValidNumValueRangeOverride
Same as comms::option::def::ValidNumValueRangeOverride.
Definition options.h:1805
 
Main namespace for all classes / functions of COMMS library.
 
Set custom storage type for fields like comms::field::String or comms::field::ArrayList.
Definition options.h:1384
 
No-op option, doesn't have any effect.
Definition options.h:1271
 
Option that forces usage of embedded uninitialised data area instead of dynamic memory allocation.
Definition options.h:1367
 
Force a particular way to dispatch message object and/or type.
Definition options.h:1425
 
Option used to specify type of the message handler.
Definition options.h:1309
 
Option used to add getId() function into Message interface.
Definition options.h:1287
 
Option that forces "in place" allocation with placement "new" for initialisation, instead of usage of...
Definition options.h:1344
 
Option used to add length() function into Message interface.
Definition options.h:1295
 
Force usage of the provide message factory.
Definition options.h:1451
 
Force usage of the provide message factory.
Definition options.h:1443
 
Option used to add name() function into Message interface.
Definition options.h:1303
 
Option used to inhibit default implementation of dispatchImpl() in comms::MessageBase.
Definition options.h:1314
 
Option that inhibits implementation of comms::MessageBase::lengthImpl() regardless of other availabil...
Definition options.h:1334
 
Option that inhibits implementation of comms::MessageBase::readImpl() regardless of other availabilit...
Definition options.h:1319
 
Option that inhibits implementation of comms::MessageBase::refreshImpl() regardless of other availabi...
Definition options.h:1339
 
Option that inhibits implementation of comms::MessageBase::validImpl() regardless of other availabili...
Definition options.h:1329
 
Force the destructor of comms::Message class to be non-virtual, even if there are other virtual funct...
Definition options.h:1398
 
Option that inhibits implementation of comms::MessageBase::writeImpl() regardless of other availabili...
Definition options.h:1324
 
Use "view" on original raw data instead of copying it.
Definition options.h:1420
 
Option used to specify type of iterator used for reading.
Definition options.h:1277
 
Option used to add refresh() function into Message interface.
Definition options.h:1299
 
Option that forces usage of fixed size storage for sequences with fixed size.
Definition options.h:1393
 
Option used to allow comms::GenericMessage generation inside comms::MsgFactory and/or comms::frame::M...
Definition options.h:1351
 
Option used to add valid() function into Message interface.
Definition options.h:1291
 
Option used to specify type of iterator used for writing.
Definition options.h:1283
 
Option that notifies comms::MessageBase about existence of access to fields.
Definition options.h:257
 
Option used to specify that serialization length can be contolled by available data length.
Definition options.h:347
 
Force comms::frame::ChecksumLayer and comms::frame::ChecksumPrefixLayer, to verify checksum prior to ...
Definition options.h:1082
 
Option that specifies custom validation class.
Definition options.h:662
 
Option that specifies default initialisation class.
Definition options.h:616
 
Option used to specify display offset for the comms::field::IntValue field.
Definition options.h:1262
 
Force field not to be serialized during read/write operations.
Definition options.h:1092
 
Options to specify endian.
Definition options.h:172
 
Mark an comms::field::Optional field as existing between specified versions.
Definition options.h:1189
 
Option to specify real extending class.
Definition options.h:1222
 
Option that forces field's read operation to fail if invalid value is received.
Definition options.h:674
 
Option used to specify actual type of the field.
Definition options.h:207
 
Option used to specify fields of the message and force implementation of default read,...
Definition options.h:234
 
Option used to specify number of bits that is used for field serialisation when a field is a member o...
Definition options.h:310
 
Option used to specify number of bytes that is used for field serialisation.
Definition options.h:280
 
Remove an ability to update field's value by the client code.
Definition options.h:1256
 
Disallow usage of FrameLayerForceReadUntilDataSplit option in earlier (outer wrapping) layers.
Definition options.h:1130
 
Option to force comms::frame::FrameLayerBase class to split read operation "until" and "from" data (p...
Definition options.h:1105
 
Option to forcefully disable passing the FrameLayerForceReadUntilDataSplit option to the layer defini...
Definition options.h:1117
 
Mark field class to have custom implementation of read functionality.
Definition options.h:1139
 
Mark message / field class to have custom implementation of refresh functionality.
Definition options.h:1144
 
Mark message / field class to have custom implementation of version update functionality.
Definition options.h:1179
 
Mark field class to have custom implementation of read functionality.
Definition options.h:1149
 
Option that notifies comms::MessageBase about existence of doGetId() member function in derived class...
Definition options.h:250
 
Mark message class as providing its name information.
Definition options.h:1153
 
Mark complex fields like comms::field::Bundle or comms::field::Variant that their members are or are ...
Definition options.h:1253
 
Option that forces field's read operation to ignore read data if invalid value is received.
Definition options.h:683
 
Make the field's contents to be invalid by default.
Definition options.h:1211
 
Mark an comms::field::Optional field as missing if its contents are invalid (member field has invalid...
Definition options.h:1238
 
Mark an comms::field::Optional field as missing if its read operation fails.
Definition options.h:1233
 
Option used to specify type of the ID.
Definition options.h:187
 
Option used to specify actual type of the message.
Definition options.h:202
 
Option used to specify that message doesn't have valid ID.
Definition options.h:197
 
Option to specify numeric value serialisation offset.
Definition options.h:378
 
Option for comms::frame::TransportValueLayer to mark that the handled field is a "pseudo" one,...
Definition options.h:1164
 
Option to specify index of member field containing remaining length in bytes.
Definition options.h:1228
 
Option to specify scaling ratio.
Definition options.h:410
 
Option that forces first element only of comms::field::ArrayList to be prefixed with its serialisatio...
Definition options.h:487
 
Option to enable external forcing of the collection element serialisation length.
Definition options.h:570
 
Option that forces every element of comms::field::ArrayList to be prefixed with its serialisation len...
Definition options.h:475
 
Option used to define exact number of elements in the collection field.
Definition options.h:579
 
Option to enable external forcing of the collection's serialisation length duting "read" operation.
Definition options.h:558
 
Option that modifies the default behaviour of collection fields to prepend the serialised data with n...
Definition options.h:465
 
Option that modifies the default behaviour of collection fields to prepend the serialised data with n...
Definition options.h:438
 
Option to enable external forcing of the collection's elements count.
Definition options.h:544
 
Option that forces termination of the sequence when predefined value is encountered.
Definition options.h:507
 
Option that forces collection fields to append provides suffix every time it is serialised.
Definition options.h:531
 
Option used to specify numeric ID of the message.
Definition options.h:193
 
Options to specify units of the field.
Definition options.h:693
 
Provide range of valid unsigned numeric values.
Definition options.h:1001
 
Provide range of valid numeric values.
Definition options.h:956
 
Clear accumulated ranges of valid values.
Definition options.h:961
 
Option used to specify that field may have variable serialisation length.
Definition options.h:337
 
Avoid invocation of built-in reset() member function on destruction of the comms::field::Variant fiel...
Definition options.h:1244
 
Add storage of version information inside private data members.
Definition options.h:1216
 
Provide type to be used for versioning.
Definition options.h:1171
 
Replacement to std::conditional.
Definition type_traits.h:29
 
This file contains all the classes necessary to properly define message traits.
 
Replacement to some types from standard type_traits.