optional dispatch definition
This commit is contained in:
@@ -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,6 +22,7 @@ class ConcreteMessage : public MessageBase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
virtual void Dispatch(HandlerType& handler) const override {
|
virtual void Dispatch(HandlerType& handler) const override {
|
||||||
|
if constexpr (DefineDispatch)
|
||||||
handler.Handle(*this);
|
handler.Handle(*this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user