21#include "cc_tools_qt/ToolsMessageBase.h"
22#include "cc_tools_qt/ToolsProtMsgInterface.h"
24#include "comms/Field.h"
25#include "comms/field/ArrayList.h"
27#include <QtCore/QString>
39template <
typename TFieldBase>
40class ToolsRawDataMessageField :
public
41 comms::field::ArrayList<
44 comms::option::def::HasName>
47 static const char* name()
53template <
typename TMsgBase,
typename...>
54class ToolsRawDataMessageImpl :
public
57 comms::option::NoIdImpl,
58 comms::option::FieldsImpl<std::tuple<ToolsRawDataMessageField<typename TMsgBase::Field>>>,
59 comms::option::MsgType<ToolsRawDataMessageImpl<TMsgBase>>
67template<
typename TBase>
71 details::ToolsRawDataMessageImpl,
72 ToolsRawDataMessage<TBase>
78 details::ToolsRawDataMessageImpl,
82 using FieldsList =
typename Base::FieldsList;
88 nameImpl()
const override
90 static const char* Str =
"Generic Raw Data Message";
94 virtual void resetImpl()
override
96 [[maybe_unused]]
static constexpr bool Must_not_be_called =
false;
97 assert(Must_not_be_called);
102 [[maybe_unused]]
static constexpr bool Must_not_be_called =
false;
103 assert(Must_not_be_called);
107 virtual FieldsList transportFieldsImpl()
override