Files
flippr-code/FlippR-Driver/networking/input/InputSocketHandler.h

43 lines
903 B
C++

/*
* SocketConnection.h
*
* Created on: Jun 13, 2018
* Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert
*/
#ifndef FLIPPR_CODE_INPUTSOCKETCONNECTION_H
#define FLIPPR_CODE_INPUTSOCKETCONNECTION_H
#include <Poco/Net/TCPServerConnection.h>
#include "input/InputDriver.h"
#include "input/EventHandler.h"
#include "input/Event.h"
#include "utility/IBlockingQueue.h"
namespace flippR_driver
{
namespace networking
{
namespace input
{
class InputSocketHandler : public Poco::Net::TCPServerConnection, flippR_driver::input::EventHandler
{
public:
InputSocketHandler(Poco::Net::StreamSocket streamSocket, std::shared_ptr<flippR_driver::input::InputDriver> input_driver);
void run() override;
void handle(flippR_driver::input::Event &event) override;
private:
utility::IBlockingQueue<flippR_driver::input::Event>* queue;
};
}
}
}
#endif //FLIPPR_CODE_INPUTSOCKETCONNECTION_H