/* * InputDriver.hpp * * Created on: May 31, 2018 * Author: Johannes Wendel, Jonas Zeunert */ #ifndef INPUT_IMPL_INPUTDRIVER_H_ #define INPUT_IMPL_INPUTDRIVER_H_ #include "input/InputDriver.h" #include #include "input/EventNotifier.h" #include "input/Detector.h" namespace flippR_driver { namespace input { namespace detail { class InputDriver : public input::InputDriver { public: InputDriver(std::shared_ptr event_notifier, std::unique_ptr detector, std::map> events); void register_event_handler(std::shared_ptr handler) override; void unregister_event_handler(std::shared_ptr handler) override; boost::optional> get_event(std::string name) override; private: const std::shared_ptr event_notifier; const std::unique_ptr detector; const std::map> events; }; } } } #endif