redundant template parameter
All checks were successful
Linux arm64 / Build (push) Successful in 1m3s

This commit is contained in:
2025-07-18 16:19:12 +02:00
parent 4c5c859221
commit 2149172b41
3 changed files with 8 additions and 5 deletions

View File

@@ -4,6 +4,7 @@
#include <sp/io/IoInterface.h> #include <sp/io/IoInterface.h>
#include <sp/io/MessageEncapsulator.h> #include <sp/io/MessageEncapsulator.h>
#include <vector> #include <vector>
#include <memory>
namespace sp { namespace sp {

View File

@@ -5,21 +5,23 @@
namespace sp { namespace sp {
template <typename TData, typename TMessageID, TMessageID ID, typename THandler> template <typename TData, typename MessageBase, typename MessageBase::MessageIdType ID>
class ConcreteMessage : public MessageBase<TMessageID, THandler> { class ConcreteMessage : public MessageBase {
public: public:
using DataType = TData; using DataType = TData;
using MessageIdType = typename MessageBase::MessageIdType;
using HandlerType = typename MessageBase::HandlerType;
template <typename... T> template <typename... T>
ConcreteMessage(const T&... args) : m_Data{args...} {} ConcreteMessage(const T&... args) : m_Data{args...} {}
virtual ~ConcreteMessage() {} virtual ~ConcreteMessage() {}
virtual TMessageID GetId() const override { virtual MessageIdType GetId() const override {
return ID; return ID;
} }
virtual void Dispatch(THandler& handler) const override { virtual void Dispatch(HandlerType& handler) const override {
handler.Handle(static_cast<const DataType&>(m_Data)); handler.Handle(static_cast<const DataType&>(m_Data));
} }

View File

@@ -19,7 +19,7 @@ class PacketHandler;
using PacketBase = sp::MessageBase<PacketID, PacketHandler>; using PacketBase = sp::MessageBase<PacketID, PacketHandler>;
template <typename TData, PacketID ID> template <typename TData, PacketID ID>
using Message = sp::ConcreteMessage<TData, PacketID, ID, PacketHandler>; using Message = sp::ConcreteMessage<TData, PacketBase, ID>;
struct KeepAlivePacket { struct KeepAlivePacket {
sp::BitField<std::uint16_t, 12> one; sp::BitField<std::uint16_t, 12> one;