did code convention police stuff
This commit is contained in:
1
FlippR-Driver/.gitignore
vendored
1
FlippR-Driver/.gitignore
vendored
@@ -12,3 +12,4 @@ Makefile
|
|||||||
.project
|
.project
|
||||||
.cproject
|
.cproject
|
||||||
.idea
|
.idea
|
||||||
|
nbproject*
|
||||||
|
|||||||
@@ -5,6 +5,11 @@
|
|||||||
#include "PrintHandler.h"
|
#include "PrintHandler.h"
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|
||||||
|
PrintHandler::PrintHandler(std::shared_ptr<Input::IInputDriver> driver) :
|
||||||
|
EventHandler(driver)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
void PrintHandler::handle(FlippR_Driver::Input::Event &event)
|
void PrintHandler::handle(FlippR_Driver::Input::Event &event)
|
||||||
{
|
{
|
||||||
std::cout << "Event " << event.name << " (" << event.address << ") occured!";
|
std::cout << "Event " << event.name << " (" << event.address << ") occured!";
|
||||||
|
|||||||
@@ -10,7 +10,9 @@
|
|||||||
class PrintHandler : public IEventHandler
|
class PrintHandler : public IEventHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual void handle(FlippR_Driver::Input::Event& event);
|
PrintHandler(std::shared_ptr<Input::IInputDriver> driver);
|
||||||
|
|
||||||
|
virtual void handle(FlippR_Driver::Input::Event& event) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -47,9 +47,9 @@ int main (int argc, char *argv[])
|
|||||||
|
|
||||||
std::shared_ptr<Input::IInputDriver> driver = FlippR_Driver::get_InputDriver(input_config, matrix_config);
|
std::shared_ptr<Input::IInputDriver> driver = FlippR_Driver::get_InputDriver(input_config, matrix_config);
|
||||||
|
|
||||||
PrintHandler* print_handler = new PrintHandler();
|
PrintHandler* print_handler = new PrintHandler(driver);
|
||||||
|
|
||||||
driver->register_event_handler(print_handler);
|
// driver->register_event_handler(print_handler); //registriert sich eigentlich von selbst!
|
||||||
|
|
||||||
while(1);
|
while(1);
|
||||||
|
|
||||||
|
|||||||
@@ -10,36 +10,39 @@
|
|||||||
|
|
||||||
#include <input/ErrorEvent.hpp>
|
#include <input/ErrorEvent.hpp>
|
||||||
|
|
||||||
namespace FlippR_Driver {
|
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)),
|
detector(std::move(detector)),
|
||||||
events(events) {
|
events(events) {
|
||||||
CLOG(INFO, INPUT_LOGGER) << "Created InputDriver";
|
CLOG(INFO, INPUT_LOGGER) << "Created InputDriver";
|
||||||
}
|
|
||||||
|
void InputDriver::register_event_handler(IEventHandler *handler)
|
||||||
|
{
|
||||||
|
this->event_notifier->register_event_handler(handler);
|
||||||
|
}
|
||||||
|
|
||||||
void InputDriver::register_event_handler(IEventHandler *handler) {
|
void InputDriver::unregister_event_handler(IEventHandler *handler)
|
||||||
this->event_notifier->register_event_handler(handler);
|
{
|
||||||
}
|
this->event_notifier->unregister_event_handler(handler);
|
||||||
|
|
||||||
void InputDriver::unregister_event_handler(IEventHandler *handler) {
|
std::shared_ptr<Event> InputDriver::get_event(std::string name)
|
||||||
this->event_notifier->unregister_event_handler(handler);
|
{
|
||||||
}
|
|
||||||
|
|
||||||
std::shared_ptr<Event> InputDriver::get_event(std::string name) {
|
|
||||||
std::shared_ptr<Event> event(new ErrorEvent());
|
std::shared_ptr<Event> event(new ErrorEvent());
|
||||||
try {
|
try
|
||||||
|
{
|
||||||
event = this->events.at(name);
|
event = this->events.at(name);
|
||||||
}
|
}
|
||||||
catch (std::out_of_range &e) {
|
catch (std::out_of_range &e) {
|
||||||
CLOG_N_TIMES(1, WARNING, OUTPUT_LOGGER) << "Did not found event " << name << " please check config file!";
|
CLOG_N_TIMES(1, WARNING, OUTPUT_LOGGER) << "Did not found event " << name << " please check config file!";
|
||||||
}
|
|
||||||
|
|
||||||
return event;
|
return event;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,10 +20,12 @@ using namespace nlohmann;
|
|||||||
|
|
||||||
namespace FlippR_Driver
|
namespace FlippR_Driver
|
||||||
{
|
{
|
||||||
namespace Input {
|
namespace Input
|
||||||
|
{
|
||||||
|
|
||||||
std::shared_ptr<IInputDriver>
|
std::shared_ptr<IInputDriver>
|
||||||
InputDriverFactory::get_InputDriver(std::istream &input_config_stream, std::istream &matrix_config_stream) {
|
InputDriverFactory::get_InputDriver(std::istream &input_config_stream, std::istream &matrix_config_stream)
|
||||||
|
{
|
||||||
LoggerFactory::CreateInputLogger();
|
LoggerFactory::CreateInputLogger();
|
||||||
|
|
||||||
IBlockingQueue<Event> *event_queue = new BlockingQueue<Event>;
|
IBlockingQueue<Event> *event_queue = new BlockingQueue<Event>;
|
||||||
@@ -46,11 +48,14 @@ namespace Input {
|
|||||||
|
|
||||||
void
|
void
|
||||||
InputDriverFactory::create_input_events(json matrix_config, std::map<char, std::shared_ptr<Event>>& address_event_map,
|
InputDriverFactory::create_input_events(json matrix_config, std::map<char, std::shared_ptr<Event>>& address_event_map,
|
||||||
std::map<std::string, std::shared_ptr<Event>>& name_event_map) {
|
std::map<std::string, std::shared_ptr<Event>>& name_event_map)
|
||||||
|
{
|
||||||
auto& event_array = matrix_config.at("input_matrix");
|
auto& event_array = matrix_config.at("input_matrix");
|
||||||
for (auto &json_event : event_array) {
|
for (auto &json_event : event_array)
|
||||||
|
{
|
||||||
|
|
||||||
try {
|
try
|
||||||
|
{
|
||||||
std::string name = json_event.at("name");
|
std::string name = json_event.at("name");
|
||||||
char address = json_event.at("address").get<json::number_integer_t>();
|
char address = json_event.at("address").get<json::number_integer_t>();
|
||||||
int priority = json_event.at("priority").get<json::number_integer_t>();
|
int priority = json_event.at("priority").get<json::number_integer_t>();
|
||||||
|
|||||||
Reference in New Issue
Block a user