You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openmw-tes3coop/components/openmw-mp/Controllers/PlayerPacketController.hpp

28 lines
715 B
C++

#ifndef OPENMW_PLAYERPACKETCONTROLLER_HPP
#define OPENMW_PLAYERPACKETCONTROLLER_HPP
#include <RakPeerInterface.h>
#include "../Packets/Player/PlayerPacket.hpp"
#include <unordered_map>
#include <memory>
namespace mwmp
{
class PlayerPacketController
{
public:
PlayerPacketController(RakNet::RakPeerInterface *peer);
PlayerPacket *GetPacket(RakNet::MessageID id);
void SetStream(RakNet::BitStream *inStream, RakNet::BitStream *outStream);
bool ContainsPacket(RakNet::MessageID id);
typedef std::unordered_map<unsigned char, std::unique_ptr<PlayerPacket> > packets_t;
private:
packets_t packets;
};
}
#endif //OPENMW_PLAYERPACKETCONTROLLER_HPP