Files
Simple-Protocol-Lib/include/sp/default/DefaultPacket.h
2025-02-06 18:01:27 +01:00

23 lines
696 B
C++

#pragma once
#include <sp/protocol/Message.h>
#include <sp/protocol/GenericHandler.h>
namespace sp {
class PacketHandler;
using PacketMessage = Message<
option::MsgIdType<std::uint8_t>, // add id() operation
option::ReadOperations, // add read() operation
option::WriteOperations, // add write() operation
option::Handler<PacketHandler> // add dispatch() operation
>;
#define DeclarePacket(packetName) class packetName##Packet : public sp::MessageBase<sp::PacketMessage,\
sp::option::StaticNumIdImpl<packetName>, \
sp::option::DispatchImpl<packetName##Packet>, \
sp::option::FieldsImpl<packetName##Fields> \
> {}
} // namespace sp