??
This commit is contained in:
@@ -5,7 +5,7 @@
|
|||||||
#include "PrintHandler.h"
|
#include "PrintHandler.h"
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
PrintHandler::PrintHandler(std::shared_ptr<Input::IInputDriver> driver) :
|
PrintHandler::PrintHandler(std::shared_ptr<FlippR_Driver::Input::IInputDriver> driver) :
|
||||||
EventHandler(driver)
|
EventHandler(driver)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|||||||
@@ -5,12 +5,13 @@
|
|||||||
#ifndef FLIPPR_DRIVER_PRINTHANDLER_H
|
#ifndef FLIPPR_DRIVER_PRINTHANDLER_H
|
||||||
#define FLIPPR_DRIVER_PRINTHANDLER_H
|
#define FLIPPR_DRIVER_PRINTHANDLER_H
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
#include "IEventHandler.h"
|
#include "IEventHandler.h"
|
||||||
|
|
||||||
class PrintHandler : public IEventHandler
|
class PrintHandler : public IEventHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
PrintHandler(std::shared_ptr<Input::IInputDriver> driver);
|
PrintHandler(std::shared_ptr<FlippR_Driver::Input::IInputDriver> driver);
|
||||||
|
|
||||||
virtual void handle(FlippR_Driver::Input::Event& event) override;
|
virtual void handle(FlippR_Driver::Input::Event& event) override;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -15,34 +15,38 @@ namespace FlippR_Driver
|
|||||||
namespace Input
|
namespace Input
|
||||||
{
|
{
|
||||||
|
|
||||||
InputDriver::InputDriver(std::shared_ptr<IEventNotifier> event_notifier, std::unique_ptr<IDetector> detector,
|
InputDriver::InputDriver(std::shared_ptr<IEventNotifier> event_notifier, std::unique_ptr<IDetector> detector,
|
||||||
std::map<std::string, std::shared_ptr<Event>> events) :
|
std::map<std::string, std::shared_ptr<Event>> events) :
|
||||||
event_notifier(event_notifier),
|
event_notifier(event_notifier), detector(std::move(detector)), events(events)
|
||||||
detector(std::move(detector)),
|
{
|
||||||
events(events) {
|
CLOG(INFO, INPUT_LOGGER) << "Created InputDriver";
|
||||||
CLOG(INFO, INPUT_LOGGER) << "Created InputDriver";
|
}
|
||||||
|
|
||||||
void InputDriver::register_event_handler(IEventHandler *handler)
|
void InputDriver::register_event_handler(IEventHandler *handler)
|
||||||
{
|
{
|
||||||
this->event_notifier->register_event_handler(handler);
|
this->event_notifier->register_event_handler(handler);
|
||||||
}
|
}
|
||||||
|
|
||||||
void InputDriver::unregister_event_handler(IEventHandler *handler)
|
void InputDriver::unregister_event_handler(IEventHandler *handler)
|
||||||
{
|
{
|
||||||
this->event_notifier->unregister_event_handler(handler);
|
this->event_notifier->unregister_event_handler(handler);
|
||||||
|
}
|
||||||
|
|
||||||
std::shared_ptr<Event> InputDriver::get_event(std::string name)
|
std::shared_ptr<Event> InputDriver::get_event(std::string name)
|
||||||
|
{
|
||||||
|
std::shared_ptr<Event> event(new ErrorEvent());
|
||||||
|
try
|
||||||
{
|
{
|
||||||
std::shared_ptr<Event> event(new ErrorEvent());
|
event = this->events.at(name);
|
||||||
try
|
}
|
||||||
{
|
catch(std::out_of_range &e)
|
||||||
event = this->events.at(name);
|
{
|
||||||
}
|
CLOG_N_TIMES(1, WARNING, OUTPUT_LOGGER) << "Did not found event " << name << " please check config file!";
|
||||||
catch (std::out_of_range &e) {
|
|
||||||
CLOG_N_TIMES(1, WARNING, OUTPUT_LOGGER) << "Did not found event " << name << " please check config file!";
|
|
||||||
|
|
||||||
return event;
|
return event;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user