#pragma once /** * \file PacketHandler.h * \brief File containing the td::protocol::PacketHandler class */ #include #include namespace td { namespace protocol { #define DeclarePacket(PacketName, ...) \ virtual void Visit(const packets::PacketName&); \ virtual void HandlePacket(const packets::PacketName&) {} /** * \class PacketHandler * \brief Class used to handle packets */ class PacketHandler : public PacketVisitor { public: PacketHandler() {} ~PacketHandler() {} DeclareAllPacket() }; #undef DeclarePacket } // namespace protocol } // namespace td