20#include "cc_tools_qt/ToolsMessageBase.h"
21#include "cc_tools_qt/ToolsProtMsgInterface.h"
23#include "comms/Field.h"
24#include "comms/field/ArrayList.h"
26#include <QtCore/QString>
37template <
typename TFieldBase>
38class ToolsRawDataMessageField :
public
39 comms::field::ArrayList<
42 comms::option::def::HasName>
45 static const char* name()
51template <
typename TMsgBase,
typename...>
52class ToolsRawDataMessageImpl :
public
55 comms::option::NoIdImpl,
56 comms::option::FieldsImpl<std::tuple<ToolsRawDataMessageField<typename TMsgBase::Field>>>,
57 comms::option::MsgType<ToolsRawDataMessageImpl<TMsgBase>>
65template<
typename TBase>
69 details::ToolsRawDataMessageImpl,
70 ToolsRawDataMessage<TBase>
76 details::ToolsRawDataMessageImpl,
80 using FieldsList =
typename Base::FieldsList;
86 nameImpl()
const override
88 static const char* Str =
"Generic Raw Data Message";
92 virtual void resetImpl()
override
94 [[maybe_unused]]
static constexpr bool Must_not_be_called =
false;
95 assert(Must_not_be_called);
100 [[maybe_unused]]
static constexpr bool Must_not_be_called =
false;
101 assert(Must_not_be_called);
105 virtual FieldsList transportFieldsImpl()
override