optional dispatch definition

This commit is contained in:
2025-07-29 09:27:19 +02:00
parent 45a3c427fb
commit 366a40afee

View File

@@ -5,7 +5,7 @@
namespace sp { namespace sp {
template <typename TData, typename MessageBase, typename MessageBase::MessageIdType ID> template <typename TData, typename MessageBase, typename MessageBase::MessageIdType ID, bool DefineDispatch = true>
class ConcreteMessage : public MessageBase { class ConcreteMessage : public MessageBase {
public: public:
using DataType = TData; using DataType = TData;
@@ -22,7 +22,8 @@ class ConcreteMessage : public MessageBase {
} }
virtual void Dispatch(HandlerType& handler) const override { virtual void Dispatch(HandlerType& handler) const override {
handler.Handle(*this); if constexpr (DefineDispatch)
handler.Handle(*this);
} }
virtual void Read(DataBuffer& a_Buffer) override { virtual void Read(DataBuffer& a_Buffer) override {