/* * InputDriver.hpp * * Created on: May 31, 2018 * Author: Andreas Schneider, Johannes Wendel, Jonas Zeunert, Rafael Vinci, Dr. Franca Rupprecht */ #ifndef SRC_INPUT_INPUTDRIVER_H_ #define SRC_INPUT_INPUTDRIVER_H_ #include "utilities/config.h" #include "IInputDriver.h" #include "IDetector.h" namespace Input { class InputDriver : public IInputDriver { public: InputDriver(std::shared_ptr event_notifier, std::unique_ptr detector, std::map> events); virtual void register_event_handler(IEventHandler* handler) override; virtual void unregister_event_handler(IEventHandler* handler) override; virtual std::shared_ptr get_event(std::string name); private: std::shared_ptr event_notifier; std::unique_ptr detector; std::map> events; }; } #endif /* SRC_INPUT_INPUTDRIVER_H_ */