diff --git a/FlippR-Driver/cli/CMakeLists.txt b/FlippR-Driver/cli/CMakeLists.txt index 0611739..e8fa52e 100644 --- a/FlippR-Driver/cli/CMakeLists.txt +++ b/FlippR-Driver/cli/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.6.2) -project(FlippR_Driver_CLI) +project(flippR_driver_CLI) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/${OUTPUT_PATH}/cli) add_executable(${PROJECT_NAME} main.cpp PrintHandler.cpp) diff --git a/FlippR-Driver/cli/PrintHandler.cpp b/FlippR-Driver/cli/PrintHandler.cpp index 247947b..bb7dabf 100644 --- a/FlippR-Driver/cli/PrintHandler.cpp +++ b/FlippR-Driver/cli/PrintHandler.cpp @@ -5,14 +5,14 @@ #include "PrintHandler.h" #include -PrintHandler::PrintHandler(std::shared_ptr driver) : -FlippR_Driver::Input::EventHandler(driver) +PrintHandler::PrintHandler(std::shared_ptr driver) : +flippR_driver::input::EventHandler(driver) { } -void PrintHandler::handle(FlippR_Driver::Input::Event &event) +void PrintHandler::handle(flippR_driver::input::Event &event) { std::cout << "Event " << event.name << " (" << std::to_string(event.address) << ") occured!\n"; } \ No newline at end of file diff --git a/FlippR-Driver/cli/PrintHandler.h b/FlippR-Driver/cli/PrintHandler.h index c193bb0..d591eae 100644 --- a/FlippR-Driver/cli/PrintHandler.h +++ b/FlippR-Driver/cli/PrintHandler.h @@ -2,20 +2,20 @@ // Created by rhetenor on 13.09.18. // -#ifndef FLIPPR_DRIVER_PRINTHANDLER_H -#define FLIPPR_DRIVER_PRINTHANDLER_H +#ifndef flippR_driver_PRINTHANDLER_H +#define flippR_driver_PRINTHANDLER_H #include #include "EventHandler.h" #include "IInputDriver.h" -class PrintHandler : public FlippR_Driver::Input::EventHandler +class PrintHandler : public flippR_driver::input::EventHandler { public: - PrintHandler(std::shared_ptr driver); + PrintHandler(std::shared_ptr driver); - virtual void handle(FlippR_Driver::Input::Event& event) override; + virtual void handle(flippR_driver::input::Event& event) override; }; -#endif //FLIPPR_DRIVER_PRINTHANDLER_H +#endif //flippR_driver_PRINTHANDLER_H diff --git a/FlippR-Driver/cli/main.cpp b/FlippR-Driver/cli/main.cpp index a7674c4..90522e2 100644 --- a/FlippR-Driver/cli/main.cpp +++ b/FlippR-Driver/cli/main.cpp @@ -11,7 +11,7 @@ #include "PrintHandler.h" -using namespace FlippR_Driver; +using namespace flippR_driver; void siginthandler(int param) { @@ -45,7 +45,7 @@ int main (int argc, char *argv[]) exit(2); } - std::shared_ptr driver = FlippR_Driver::get_InputDriver(input_config, matrix_config); + std::shared_ptr driver = flippR_driver::get_InputDriver(input_config, matrix_config); PrintHandler* print_handler = new PrintHandler(driver); diff --git a/FlippR-Driver/include/DriverFactory.h b/FlippR-Driver/include/DriverFactory.h index cbe4340..e16b122 100644 --- a/FlippR-Driver/include/DriverFactory.h +++ b/FlippR-Driver/include/DriverFactory.h @@ -2,17 +2,17 @@ // Created by rhetenor on 13.09.18. // -#ifndef FLIPPR_DRIVER_DRIVERFACTORY_H -#define FLIPPR_DRIVER_DRIVERFACTORY_H +#ifndef flippR_driver_DRIVERFACTORY_H +#define flippR_driver_DRIVERFACTORY_H #include #include #include "IInputDriver.h" -namespace FlippR_Driver +namespace flippR_driver { - std::shared_ptr get_InputDriver(std::istream& input_config_stream, std::istream& matrix_config_stream); + std::shared_ptr get_InputDriver(std::istream& input_config_stream, std::istream& matrix_config_stream); } -#endif //FLIPPR_DRIVER_DRIVERFACTORY_H +#endif //flippR_driver_DRIVERFACTORY_H diff --git a/FlippR-Driver/include/Event.h b/FlippR-Driver/include/Event.h index 081f2e0..f14e58f 100644 --- a/FlippR-Driver/include/Event.h +++ b/FlippR-Driver/include/Event.h @@ -12,8 +12,8 @@ #include #include -namespace FlippR_Driver { - namespace Input { +namespace flippR_driver { + namespace input { class Event { public: diff --git a/FlippR-Driver/include/EventHandler.h b/FlippR-Driver/include/EventHandler.h index 3711653..5bda799 100644 --- a/FlippR-Driver/include/EventHandler.h +++ b/FlippR-Driver/include/EventHandler.h @@ -17,9 +17,9 @@ #include "IEventHandler.h" #include "Event.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class EventHandler; diff --git a/FlippR-Driver/include/IEventHandler.h b/FlippR-Driver/include/IEventHandler.h index 18b9041..5c52985 100644 --- a/FlippR-Driver/include/IEventHandler.h +++ b/FlippR-Driver/include/IEventHandler.h @@ -15,7 +15,7 @@ class IEventHandler public: virtual ~IEventHandler(){}; - virtual void handle(FlippR_Driver::Input::Event& event) = 0; + virtual void handle(flippR_driver::input::Event& event) = 0; }; #endif /* SRC_IEVENTHANDLER_H_ */ diff --git a/FlippR-Driver/include/IInputDriver.h b/FlippR-Driver/include/IInputDriver.h index 3ed4562..d3f1726 100644 --- a/FlippR-Driver/include/IInputDriver.h +++ b/FlippR-Driver/include/IInputDriver.h @@ -11,9 +11,9 @@ #include "IEventHandler.h" #include -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class IInputDriver { public: diff --git a/FlippR-Driver/src/DriverFactory.cpp b/FlippR-Driver/src/DriverFactory.cpp index 702db9d..05bfc89 100644 --- a/FlippR-Driver/src/DriverFactory.cpp +++ b/FlippR-Driver/src/DriverFactory.cpp @@ -5,10 +5,10 @@ #include "DriverFactory.h" #include "input/InputDriverFactory.h" -namespace FlippR_Driver +namespace flippR_driver { - std::shared_ptr get_InputDriver(std::istream& input_config_stream, std::istream& matrix_config_stream) + std::shared_ptr get_InputDriver(std::istream& input_config_stream, std::istream& matrix_config_stream) { - return FlippR_Driver::Input::InputDriverFactory::get_InputDriver(input_config_stream, matrix_config_stream); + return flippR_driver::input::InputDriverFactory::get_InputDriver(input_config_stream, matrix_config_stream); } -} \ No newline at end of file +} diff --git a/FlippR-Driver/src/input/Detector.cpp b/FlippR-Driver/src/input/Detector.cpp index f365026..ffe4274 100644 --- a/FlippR-Driver/src/input/Detector.cpp +++ b/FlippR-Driver/src/input/Detector.cpp @@ -12,9 +12,9 @@ #include "utility/config.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { Detector::Detector(std::unique_ptr input_gpio_interface, std::vector> events) : diff --git a/FlippR-Driver/src/input/Detector.h b/FlippR-Driver/src/input/Detector.h index 7913d5c..1b7f6fa 100644 --- a/FlippR-Driver/src/input/Detector.h +++ b/FlippR-Driver/src/input/Detector.h @@ -25,9 +25,9 @@ #include "DistributingEvent.h" #include "IEventNotifier.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class Detector : public IDetector diff --git a/FlippR-Driver/src/input/DistributingEvent.cpp b/FlippR-Driver/src/input/DistributingEvent.cpp index dbbe61c..25603de 100644 --- a/FlippR-Driver/src/input/DistributingEvent.cpp +++ b/FlippR-Driver/src/input/DistributingEvent.cpp @@ -4,7 +4,7 @@ #include "DistributingEvent.h" -FlippR_Driver::Input::DistributingEvent::DistributingEvent(char address, int priority, std::string name, +flippR_driver::input::DistributingEvent::DistributingEvent(char address, int priority, std::string name, std::chrono::milliseconds bounce_time, std::shared_ptr event_notifier): Event(address, priority, name), bounce_time(bounce_time), @@ -12,12 +12,12 @@ FlippR_Driver::Input::DistributingEvent::DistributingEvent(char address, int pri activation_state(NOT_ACTIVATED) {} -void FlippR_Driver::Input::DistributingEvent::distribute() +void flippR_driver::input::DistributingEvent::distribute() { event_notifier->distribute_event(*this); } -void FlippR_Driver::Input::DistributingEvent::active() +void flippR_driver::input::DistributingEvent::active() { if(!is_bouncing()) { @@ -35,7 +35,7 @@ void FlippR_Driver::Input::DistributingEvent::active() } } -bool FlippR_Driver::Input::DistributingEvent::is_bouncing() +bool flippR_driver::input::DistributingEvent::is_bouncing() { std::chrono::time_point now = std::chrono::high_resolution_clock::now(); std::chrono::milliseconds elapsed_time = std::chrono::duration_cast(now - last_activation); @@ -43,7 +43,7 @@ bool FlippR_Driver::Input::DistributingEvent::is_bouncing() return elapsed_time < bounce_time; } -void FlippR_Driver::Input::DistributingEvent::inactive() +void flippR_driver::input::DistributingEvent::inactive() { if(activation_state == ACTIVATED) { diff --git a/FlippR-Driver/src/input/DistributingEvent.h b/FlippR-Driver/src/input/DistributingEvent.h index 9ed30ca..3cec71a 100644 --- a/FlippR-Driver/src/input/DistributingEvent.h +++ b/FlippR-Driver/src/input/DistributingEvent.h @@ -2,15 +2,15 @@ // Created by rhetenor on 21.09.18. // -#ifndef FLIPPR_DRIVER_DISTRIBUTINGEVENT_H -#define FLIPPR_DRIVER_DISTRIBUTINGEVENT_H +#ifndef flippR_driver_DISTRIBUTINGEVENT_H +#define flippR_driver_DISTRIBUTINGEVENT_H #include "Event.h" #include "IEventNotifier.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class DistributingEvent : public Event { @@ -45,4 +45,4 @@ private: } } -#endif //FLIPPR_DRIVER_DISTRIBUTINGEVENT_H +#endif //flippR_driver_DISTRIBUTINGEVENT_H diff --git a/FlippR-Driver/src/input/ErrorEvent.hpp b/FlippR-Driver/src/input/ErrorEvent.hpp index 266ee70..12f286d 100644 --- a/FlippR-Driver/src/input/ErrorEvent.hpp +++ b/FlippR-Driver/src/input/ErrorEvent.hpp @@ -10,8 +10,8 @@ #include "Event.h" -namespace FlippR_Driver { -namespace Input { +namespace flippR_driver { +namespace input { class ErrorEvent : public Event { diff --git a/FlippR-Driver/src/input/Event.cpp b/FlippR-Driver/src/input/Event.cpp index 686e6eb..49b09f2 100644 --- a/FlippR-Driver/src/input/Event.cpp +++ b/FlippR-Driver/src/input/Event.cpp @@ -8,16 +8,16 @@ #include "utility/config.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { // todo unsigned char address Event::Event(char address, int priority, std::string name) : address(address), priority(priority), name(name) { - CLOG_IF(VLOG_IS_ON(HIGHEST_LOG_VERBOSITY), INFO, INPUT_LOGGER) << "Created event: " << name << ", address: " << address; + CLOG_IF(VLOG_IS_ON(0), INFO, INPUT_LOGGER) << "Created event: " << name << ", address: " << address; } bool operator==(const Event& left, const Event& right) diff --git a/FlippR-Driver/src/input/EventHandler.cpp b/FlippR-Driver/src/input/EventHandler.cpp index 927cfe7..6f16bc3 100644 --- a/FlippR-Driver/src/input/EventHandler.cpp +++ b/FlippR-Driver/src/input/EventHandler.cpp @@ -7,9 +7,9 @@ #include "EventHandler.h" #include "utility/config.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { EventHandler::EventHandler(std::shared_ptr input_driver) : diff --git a/FlippR-Driver/src/input/EventNotifier.cpp b/FlippR-Driver/src/input/EventNotifier.cpp index c1ec5d3..0e2025f 100644 --- a/FlippR-Driver/src/input/EventNotifier.cpp +++ b/FlippR-Driver/src/input/EventNotifier.cpp @@ -11,9 +11,9 @@ #include "EventNotifier.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { EventNotifier::EventNotifier(utility::IBlockingQueue* queue) : diff --git a/FlippR-Driver/src/input/EventNotifier.h b/FlippR-Driver/src/input/EventNotifier.h index b39cbbc..45d51d3 100644 --- a/FlippR-Driver/src/input/EventNotifier.h +++ b/FlippR-Driver/src/input/EventNotifier.h @@ -21,9 +21,9 @@ #define HANDLER_TIMEOUT 2000 -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class EventNotifier : public IEventNotifier diff --git a/FlippR-Driver/src/input/IDetector.h b/FlippR-Driver/src/input/IDetector.h index 65966ac..5500d33 100644 --- a/FlippR-Driver/src/input/IDetector.h +++ b/FlippR-Driver/src/input/IDetector.h @@ -9,9 +9,9 @@ #define SRC_INPUT_IDETECTOR_H_ -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class IDetector diff --git a/FlippR-Driver/src/input/IEventNotifier.h b/FlippR-Driver/src/input/IEventNotifier.h index 4353275..425fabf 100644 --- a/FlippR-Driver/src/input/IEventNotifier.h +++ b/FlippR-Driver/src/input/IEventNotifier.h @@ -12,9 +12,9 @@ #include "IEventHandler.h" #include -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class IEventNotifier diff --git a/FlippR-Driver/src/input/InputDriver.cpp b/FlippR-Driver/src/input/InputDriver.cpp index 1e534ba..04f8a35 100644 --- a/FlippR-Driver/src/input/InputDriver.cpp +++ b/FlippR-Driver/src/input/InputDriver.cpp @@ -10,9 +10,9 @@ #include -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { InputDriver::InputDriver(std::shared_ptr event_notifier, std::unique_ptr detector, diff --git a/FlippR-Driver/src/input/InputDriver.h b/FlippR-Driver/src/input/InputDriver.h index 02e27de..07781fd 100644 --- a/FlippR-Driver/src/input/InputDriver.h +++ b/FlippR-Driver/src/input/InputDriver.h @@ -13,9 +13,9 @@ #include "IInputDriver.h" #include "IDetector.h" -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { class InputDriver : public IInputDriver diff --git a/FlippR-Driver/src/input/InputDriverFactory.cpp b/FlippR-Driver/src/input/InputDriverFactory.cpp index ae60b91..a2dc396 100644 --- a/FlippR-Driver/src/input/InputDriverFactory.cpp +++ b/FlippR-Driver/src/input/InputDriverFactory.cpp @@ -16,13 +16,13 @@ #include "EventNotifier.h" using namespace nlohmann; -using namespace FlippR_Driver::utility; +using namespace flippR_driver::utility; -namespace FlippR_Driver +namespace flippR_driver { -namespace Input +namespace input { -std::shared_ptr InputDriverFactory::get_InputDriver(std::istream &input_config_stream, std::istream &matrix_config_stream) +std::shared_ptr InputDriverFactory::get_InputDriver(std::istream &input_config_stream, std::istream &matrix_config_stream) { LoggerFactory::CreateInputLogger(); @@ -52,9 +52,9 @@ void InputDriverFactory::create_input_events(json matrix_config, std::vector(); 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"); char address = json_event.at("address").get(); @@ -73,7 +73,7 @@ void InputDriverFactory::create_input_events(json matrix_config, std::vector -namespace FlippR_Driver +namespace flippR_driver { namespace output { template -class Display : public IDisplay +class Display : public IDisplay { public: Display(int address, int id); @@ -38,7 +38,13 @@ private: std::string fit_string(std::string& score_string); }; +using SevenDigitDisplay = Display<7>; +using EightDigitDisply = Display<8>; + } /* namespace output */ } +#include "Display.hpp" + + #endif diff --git a/FlippR-Driver/src/output/Display.cpp b/FlippR-Driver/src/output/Display.hpp similarity index 80% rename from FlippR-Driver/src/output/Display.cpp rename to FlippR-Driver/src/output/Display.hpp index deb0484..8845a06 100644 --- a/FlippR-Driver/src/output/Display.cpp +++ b/FlippR-Driver/src/output/Display.hpp @@ -2,14 +2,13 @@ // Created by rhetenor on 10.10.18. // -#include "Display.h" #include "utility/config.h" #include #include -namespace FlippR_Driver +namespace flippR_driver { namespace output { @@ -45,10 +44,12 @@ std::string Display::fit_string(std::string& score_string) if (score_length > DigitCount) { CLOG(DEBUG, OUTPUT_LOGGER) << "Score too long for display"; - return score_string.substr(score_length-DigitCount, score_length); + std::string full_display; + // TODO mach mal schöner hier wird 9999 angezeigt wenn die zahl zu groß is + return full_display.insert(0, DigitCount, '9'); } - score_string.insert(0, DigitCount-score_length, ' '); + score_string.insert(0, DigitCount-score_length, '\0'); return score_string; } diff --git a/FlippR-Driver/src/output/DisplayController.cpp b/FlippR-Driver/src/output/DisplayController.cpp index 3aeb223..7d72418 100644 --- a/FlippR-Driver/src/output/DisplayController.cpp +++ b/FlippR-Driver/src/output/DisplayController.cpp @@ -10,7 +10,7 @@ #include "utility/config.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/DisplayController.h b/FlippR-Driver/src/output/DisplayController.h index c4fdd9a..97c8069 100644 --- a/FlippR-Driver/src/output/DisplayController.h +++ b/FlippR-Driver/src/output/DisplayController.h @@ -16,7 +16,7 @@ #include "IDisplay.h" #include "utility/IOutputGPIOInterface.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/ICabinetItem.h b/FlippR-Driver/src/output/ICabinetItem.h index 2b78b24..fb82016 100644 --- a/FlippR-Driver/src/output/ICabinetItem.h +++ b/FlippR-Driver/src/output/ICabinetItem.h @@ -9,7 +9,7 @@ #define _SRC_OUTPUT_ICABINETITEM_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/IDisplay.h b/FlippR-Driver/src/output/IDisplay.h index b8bfe1b..1da90d7 100644 --- a/FlippR-Driver/src/output/IDisplay.h +++ b/FlippR-Driver/src/output/IDisplay.h @@ -8,18 +8,26 @@ #ifndef _SRC_OUTPUT_IDISPLAY_H_ #define _SRC_OUTPUT_IDISPLAY_H_ -namespace FlippR_Driver +#include + +namespace flippR_driver { namespace output { - class IDisplay { + public: IDisplay(); virtual ~IDisplay(); + virtual void write_score(int score) = 0; + virtual void write_content(std::array content) = 0; + virtual int getID() = 0; + +private: + std::string fit_string(std::string& score_string); }; } /* namespace output */ diff --git a/FlippR-Driver/src/output/IDisplayController.h b/FlippR-Driver/src/output/IDisplayController.h index 1fade72..ce55cdf 100644 --- a/FlippR-Driver/src/output/IDisplayController.h +++ b/FlippR-Driver/src/output/IDisplayController.h @@ -7,18 +7,19 @@ #ifndef _SRC_OUTPUT_IDISPLAYCONTROLLER_H_ #define _SRC_OUTPUT_IDISPLAYCONTROLLER_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace output { class IDisplayController { + public: - IDisplayController(); - virtual ~IDisplayController(); + IDisplayController (); + virtual ~IDisplayController (); }; } /* namespace output */ } -#endif \ No newline at end of file +#endif diff --git a/FlippR-Driver/src/output/ILamp.h b/FlippR-Driver/src/output/ILamp.h index 08b8ec3..0484183 100644 --- a/FlippR-Driver/src/output/ILamp.h +++ b/FlippR-Driver/src/output/ILamp.h @@ -8,7 +8,7 @@ #ifndef _SRC_OUTPUT_ILAMP_H_ #define _SRC_OUTPUT_ILAMP_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/IOutputDriver.h b/FlippR-Driver/src/output/IOutputDriver.h index 81a3e9a..2cd3801 100644 --- a/FlippR-Driver/src/output/IOutputDriver.h +++ b/FlippR-Driver/src/output/IOutputDriver.h @@ -8,7 +8,7 @@ #ifndef _SRC_OUTPUT_IOUTPUTDRIVER_H_ #define _SRC_OUTPUT_IOUTPUTDRIVER_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/ISolenoid.h b/FlippR-Driver/src/output/ISolenoid.h index cd3621e..8c69c48 100644 --- a/FlippR-Driver/src/output/ISolenoid.h +++ b/FlippR-Driver/src/output/ISolenoid.h @@ -8,7 +8,7 @@ #ifndef _SRC_OUTPUT_ISOLENOID_H_ #define _SRC_OUTPUT_ISOLENOID_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/ISound.h b/FlippR-Driver/src/output/ISound.h index 2c63f65..8c0676a 100644 --- a/FlippR-Driver/src/output/ISound.h +++ b/FlippR-Driver/src/output/ISound.h @@ -8,7 +8,7 @@ #ifndef _SRC_OUTPUT_ISOUND_H_ #define _SRC_OUTPUT_ISOUND_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/Lamp.cpp b/FlippR-Driver/src/output/Lamp.cpp index 82e5b8d..48685d9 100644 --- a/FlippR-Driver/src/output/Lamp.cpp +++ b/FlippR-Driver/src/output/Lamp.cpp @@ -7,13 +7,13 @@ #include "Lamp.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { Lamp::Lamp(std::shared_ptr output_gpio_interface, int address, std::string name) : - CabinetItem(output_gpio_interface, address, name) + OutputItem(output_gpio_interface, address, name) { // TODO Auto-generated constructor stub diff --git a/FlippR-Driver/src/output/Lamp.h b/FlippR-Driver/src/output/Lamp.h index 7af5267..57e1b7a 100644 --- a/FlippR-Driver/src/output/Lamp.h +++ b/FlippR-Driver/src/output/Lamp.h @@ -8,14 +8,14 @@ #ifndef _SRC_OUTPUT_LAMP_H_ #define _SRC_OUTPUT_LAMP_H_ -#include "CabinetItem.h" +#include "OutputItem.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { -class Lamp : public CabinetItem +class Lamp : public OutputItem { public: Lamp(std::shared_ptr output_gpio_interface, int address, std::string name); diff --git a/FlippR-Driver/src/output/OutputDriver.cpp b/FlippR-Driver/src/output/OutputDriver.cpp index d3adb83..e9e3958 100644 --- a/FlippR-Driver/src/output/OutputDriver.cpp +++ b/FlippR-Driver/src/output/OutputDriver.cpp @@ -10,7 +10,7 @@ #include #include -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/OutputDriver.h b/FlippR-Driver/src/output/OutputDriver.h index 9b281a3..39372b7 100644 --- a/FlippR-Driver/src/output/OutputDriver.h +++ b/FlippR-Driver/src/output/OutputDriver.h @@ -17,7 +17,7 @@ #include "IDisplay.h" #include "ISound.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { @@ -25,24 +25,24 @@ namespace output class OutputDriver : public IOutputDriver { public: - OutputDriver(std::map> cabinet_items, std::map> displays, std::map> sounds); + OutputDriver(std::map> cabinet_items, std::map> displays, std::map> sounds); - virtual ~OutputDriver() = default; + virtual ~OutputDriver() = default; - std::vector> get_cabinet_items(); - std::vector> get_sounds(); - std::vector> get_displays(); + std::vector> get_cabinet_items(); + std::vector> get_sounds(); + std::vector> get_displays(); - std::shared_ptr get_cabinet_item(std::string name); - std::shared_ptr get_sound(std::string name); - std::shared_ptr get_display(char number); + std::shared_ptr get_cabinet_item(std::string name); + std::shared_ptr get_sound(std::string name); + std::shared_ptr get_display(char number); private: - std::map> cabinet_items; - std::map> displays; - std::map> sounds; + std::map> cabinet_items; + std::map> displays; + std::map> sounds; }; } /* namespace output */ } -#endif \ No newline at end of file +#endif diff --git a/FlippR-Driver/src/output/OutputDriverFactory.cpp b/FlippR-Driver/src/output/OutputDriverFactory.cpp index 5fc8d1d..b6441e6 100644 --- a/FlippR-Driver/src/output/OutputDriverFactory.cpp +++ b/FlippR-Driver/src/output/OutputDriverFactory.cpp @@ -4,7 +4,7 @@ #include "OutputDriverFactory.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/OutputDriverFactory.h b/FlippR-Driver/src/output/OutputDriverFactory.h index 91ebf02..640627d 100644 --- a/FlippR-Driver/src/output/OutputDriverFactory.h +++ b/FlippR-Driver/src/output/OutputDriverFactory.h @@ -2,14 +2,14 @@ // Created by rhetenor on 04.10.18. // -#ifndef FLIPPR_DRIVER_OUTPUTDRIVERFACTORY_H -#define FLIPPR_DRIVER_OUTPUTDRIVERFACTORY_H +#ifndef flippR_driver_OUTPUTDRIVERFACTORY_H +#define flippR_driver_OUTPUTDRIVERFACTORY_H #include #include "OutputDriver.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { @@ -21,4 +21,4 @@ public: } } -#endif //FLIPPR_DRIVER_OUTPUTDRIVERFACTORY_H +#endif //flippR_driver_OUTPUTDRIVERFACTORY_H diff --git a/FlippR-Driver/src/output/CabinetItem.h b/FlippR-Driver/src/output/OutputItem.h similarity index 57% rename from FlippR-Driver/src/output/CabinetItem.h rename to FlippR-Driver/src/output/OutputItem.h index 604a77d..76b4b08 100644 --- a/FlippR-Driver/src/output/CabinetItem.h +++ b/FlippR-Driver/src/output/OutputItem.h @@ -10,21 +10,22 @@ #include "ICabinetItem.h" +#include "ActivationStrategy.h" #include "utility/IOutputGPIOInterface.h" #include #include -namespace FlippR_Driver +namespace flippR_driver { namespace output { -class CabinetItem : public ICabinetItem +class OutputItem : public ICabinetItem { public: - CabinetItem(std::shared_ptr output_gpio_interface, int address, std::string name); - virtual ~CabinetItem(); + OutputItem(std::shared_ptr output_gpio_interface, int address, std::string name); + virtual ~OutputItem(); virtual bool isActivated(); virtual bool activate(); @@ -35,6 +36,10 @@ protected: std::string name; bool activated; + + strategy::ActivationStrategy* strategy; + + std::shared_ptr output_gpio_interface; }; } /* namespace output */ diff --git a/FlippR-Driver/src/output/Solenoid.cpp b/FlippR-Driver/src/output/Solenoid.cpp index 8d2f5c9..2192bcc 100644 --- a/FlippR-Driver/src/output/Solenoid.cpp +++ b/FlippR-Driver/src/output/Solenoid.cpp @@ -7,12 +7,12 @@ #include "Solenoid.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { Solenoid::Solenoid(std::shared_ptr output_gpio_interface, int address, std::string name) : - CabinetItem(output_gpio_interface, address, name) + OutputItem(output_gpio_interface, address, name) { // TODO Auto-generated constructor stub diff --git a/FlippR-Driver/src/output/Solenoid.h b/FlippR-Driver/src/output/Solenoid.h index 10d9495..01c8fd9 100644 --- a/FlippR-Driver/src/output/Solenoid.h +++ b/FlippR-Driver/src/output/Solenoid.h @@ -8,14 +8,14 @@ #ifndef _SRC_OUTPUT_SOLENOID_H_ #define _SRC_OUTPUT_SOLENOID_H_ -#include "CabinetItem.h" +#include "OutputItem.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { -class Solenoid : public CabinetItem +class Solenoid : public OutputItem { public: Solenoid(std::shared_ptr output_gpio_interface, int address, std::string name); diff --git a/FlippR-Driver/src/output/Sound.cpp b/FlippR-Driver/src/output/Sound.cpp index e49d9f2..d34ffe5 100644 --- a/FlippR-Driver/src/output/Sound.cpp +++ b/FlippR-Driver/src/output/Sound.cpp @@ -7,7 +7,7 @@ #include "Sound.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/output/Sound.h b/FlippR-Driver/src/output/Sound.h index e7530ad..2d4b35d 100644 --- a/FlippR-Driver/src/output/Sound.h +++ b/FlippR-Driver/src/output/Sound.h @@ -15,7 +15,7 @@ #include "utility/IOutputGPIOInterface.h" -namespace FlippR_Driver +namespace flippR_driver { namespace output { diff --git a/FlippR-Driver/src/utility/BlockingQueue.hpp b/FlippR-Driver/src/utility/BlockingQueue.hpp index 84e1fb4..ec955fd 100644 --- a/FlippR-Driver/src/utility/BlockingQueue.hpp +++ b/FlippR-Driver/src/utility/BlockingQueue.hpp @@ -16,7 +16,7 @@ using namespace boost; -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/GPIOInterface.cpp b/FlippR-Driver/src/utility/GPIOInterface.cpp index a14eb2a..6e87a5e 100644 --- a/FlippR-Driver/src/utility/GPIOInterface.cpp +++ b/FlippR-Driver/src/utility/GPIOInterface.cpp @@ -12,7 +12,7 @@ #include "wiringPi/wiringPi.h" #include "json/json.hpp" -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/GPIOInterface.h b/FlippR-Driver/src/utility/GPIOInterface.h index 4cc409f..3822fdd 100644 --- a/FlippR-Driver/src/utility/GPIOInterface.h +++ b/FlippR-Driver/src/utility/GPIOInterface.h @@ -15,7 +15,7 @@ #include #include -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/IBlockingQueue.h b/FlippR-Driver/src/utility/IBlockingQueue.h index f4eebec..1db1f67 100644 --- a/FlippR-Driver/src/utility/IBlockingQueue.h +++ b/FlippR-Driver/src/utility/IBlockingQueue.h @@ -8,7 +8,7 @@ #ifndef SRC_UTILITIES_IBLOCKINGQUEUE_H_ #define SRC_UTILITIES_IBLOCKINGQUEUE_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/IInputGPIOInterface.h b/FlippR-Driver/src/utility/IInputGPIOInterface.h index 02c7ce2..b1ddf9a 100644 --- a/FlippR-Driver/src/utility/IInputGPIOInterface.h +++ b/FlippR-Driver/src/utility/IInputGPIOInterface.h @@ -8,7 +8,7 @@ #ifndef SRC_UTILITIES_IINPUTGPIOINTERFACE_H_ #define SRC_UTILITIES_IINPUTGPIOINTERFACE_H_ -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/IOutputGPIOInterface.h b/FlippR-Driver/src/utility/IOutputGPIOInterface.h index c30bef9..449efd8 100644 --- a/FlippR-Driver/src/utility/IOutputGPIOInterface.h +++ b/FlippR-Driver/src/utility/IOutputGPIOInterface.h @@ -2,18 +2,26 @@ // Created by rhetenor on 10.10.18. // -#ifndef FLIPPR_DRIVER_IOUTPUTGPIOINTERFACE_H -#define FLIPPR_DRIVER_IOUTPUTGPIOINTERFACE_H +#ifndef flippR_driver_IOUTPUTGPIOINTERFACE_H +#define flippR_driver_IOUTPUTGPIOINTERFACE_H -namespace FlippR_Driver +#include "OutputItem.h" +#include "IOutputGPIOInterface.h" + +#include + +namespace flippR_driver { namespace utility { class IOutputGPIOInterface { +public: + void activate(int address, std::shared_ptr output_gpio_interface); + void deactivate(int address,std::shared_ptr output_gpio_interface); }; } } -#endif //FLIPPR_DRIVER_IOUTPUTGPIOINTERFACE_H +#endif //flippR_driver_IOUTPUTGPIOINTERFACE_H diff --git a/FlippR-Driver/src/utility/InputGPIOInterface.cpp b/FlippR-Driver/src/utility/InputGPIOInterface.cpp index 91d50e7..0f97507 100644 --- a/FlippR-Driver/src/utility/InputGPIOInterface.cpp +++ b/FlippR-Driver/src/utility/InputGPIOInterface.cpp @@ -13,7 +13,7 @@ #include "easylogging/easylogging++.h" #include "config.h" #include -namespace FlippR_Driver +namespace flippR_driver { namespace utility { @@ -46,7 +46,7 @@ void InputGPIOInterface::write_col(char data) write_pin(this->col_address_C, data & 0b100); } -InputGPIOInterface::InputGPIOInterface(std::istream &input_config_stream) +InputGPIOInterface::inputGPIOInterface(std::istream &input_config_stream) { init_members(input_config_stream); diff --git a/FlippR-Driver/src/utility/InputGPIOInterface.h b/FlippR-Driver/src/utility/InputGPIOInterface.h index 289b5db..2e0cc3b 100644 --- a/FlippR-Driver/src/utility/InputGPIOInterface.h +++ b/FlippR-Driver/src/utility/InputGPIOInterface.h @@ -12,7 +12,7 @@ #include "IInputGPIOInterface.h" #include "GPIOInterface.h" -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/LoggerFactory.cpp b/FlippR-Driver/src/utility/LoggerFactory.cpp index d294cec..f5d4cca 100644 --- a/FlippR-Driver/src/utility/LoggerFactory.cpp +++ b/FlippR-Driver/src/utility/LoggerFactory.cpp @@ -11,7 +11,7 @@ INITIALIZE_EASYLOGGINGPP #endif -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/LoggerFactory.h b/FlippR-Driver/src/utility/LoggerFactory.h index 4b3a026..d76ca76 100644 --- a/FlippR-Driver/src/utility/LoggerFactory.h +++ b/FlippR-Driver/src/utility/LoggerFactory.h @@ -10,7 +10,7 @@ #include "config.h" -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/OutputGPIOInterface.h b/FlippR-Driver/src/utility/OutputGPIOInterface.h index 0c5e86e..267a589 100644 --- a/FlippR-Driver/src/utility/OutputGPIOInterface.h +++ b/FlippR-Driver/src/utility/OutputGPIOInterface.h @@ -11,7 +11,7 @@ #include "GPIOInterface.h" #include -namespace FlippR_Driver +namespace flippR_driver { namespace utility { diff --git a/FlippR-Driver/src/utility/config.h b/FlippR-Driver/src/utility/config.h index 9815755..26295d9 100644 --- a/FlippR-Driver/src/utility/config.h +++ b/FlippR-Driver/src/utility/config.h @@ -12,15 +12,9 @@ #define LOGGER_FILE "driver.log" - - -#define DRIVER_CONF_FILE "/var/log/flippr_driver.conf" - -#define HIGHEST_LOG_VERBOSITY 10 - #define INPUT_MATRIX_SIZE 8 #define INPUT_SLEEP_DURATION_NANO 800 #define PULLDOWN false -#define HIGHEST_INPUT_EVENT_PRIORITY 0 +#define VALID_DISPLAY_CHARACTERS [1,2,3,4,5,6,7,8,9,0,\0] diff --git a/FlippR-Driver/tests/input/TestDetector.cpp b/FlippR-Driver/tests/input/TestDetector.cpp index cf5dd5c..e27c802 100644 --- a/FlippR-Driver/tests/input/TestDetector.cpp +++ b/FlippR-Driver/tests/input/TestDetector.cpp @@ -23,8 +23,8 @@ using namespace fakeit; -using namespace FlippR_Driver; -using namespace Input; +using namespace flippR_driver; +using namespace input; using namespace utility; diff --git a/FlippR-Driver/tests/input/TestEventHandler.cpp b/FlippR-Driver/tests/input/TestEventHandler.cpp index ce19838..8ab26d9 100644 --- a/FlippR-Driver/tests/input/TestEventHandler.cpp +++ b/FlippR-Driver/tests/input/TestEventHandler.cpp @@ -18,7 +18,7 @@ using namespace fakeit; -using namespace FlippR_Driver::utility; +using namespace flippR_driver::utility; SCENARIO("An EventHandler gets created", "[construction}") { @@ -26,15 +26,15 @@ SCENARIO("An EventHandler gets created", "[construction}") { LoggerFactory::CreateInputTestLogger(); - Mock input_driver_mock; + Mock input_driver_mock; Fake(Dtor(input_driver_mock)); When(Method(input_driver_mock, register_event_handler)).AlwaysReturn(); When(Method(input_driver_mock, unregister_event_handler)).AlwaysReturn(); WHEN("the event handler gets created") { - std::shared_ptr driver_ptr(&input_driver_mock.get()); - FlippR_Driver::Input::EventHandler handler(driver_ptr); + std::shared_ptr driver_ptr(&input_driver_mock.get()); + flippR_driver::input::EventHandler handler(driver_ptr); THEN("It should register itself at the input_driver") { diff --git a/FlippR-Driver/tests/input/TestEventNotifier.cpp b/FlippR-Driver/tests/input/TestEventNotifier.cpp index 049155d..709d398 100644 --- a/FlippR-Driver/tests/input/TestEventNotifier.cpp +++ b/FlippR-Driver/tests/input/TestEventNotifier.cpp @@ -20,8 +20,8 @@ #include "input/EventNotifier.h" -using namespace FlippR_Driver; -using namespace Input; +using namespace flippR_driver; +using namespace input; using namespace fakeit; using namespace utility; diff --git a/FlippR-Driver/tests/input/TestInputDriver.cpp b/FlippR-Driver/tests/input/TestInputDriver.cpp index 89b6f71..0aebf36 100644 --- a/FlippR-Driver/tests/input/TestInputDriver.cpp +++ b/FlippR-Driver/tests/input/TestInputDriver.cpp @@ -19,8 +19,8 @@ using namespace fakeit; -using namespace FlippR_Driver; -using namespace Input; +using namespace flippR_driver; +using namespace input; using namespace utility; SCENARIO("An InputDriver gets created", "[construction}") @@ -58,14 +58,14 @@ SCENARIO("An EventHandler [un]registers at the driver", "[un-register]") { LoggerFactory::CreateInputTestLogger(); - Mock detector_mock; + Mock detector_mock; Fake(Dtor(detector_mock)); Mock event_handler_mock; Fake(Method(event_handler_mock, handle)); Fake(Dtor(event_handler_mock)); - Mock event_notifier_mock; + Mock event_notifier_mock; Fake(Method(event_notifier_mock, register_event_handler)); Fake(Method(event_notifier_mock, unregister_event_handler)); Fake(Dtor(event_notifier_mock)); @@ -105,13 +105,13 @@ SCENARIO("An Input Driver is created normally", "") { LoggerFactory::CreateInputTestLogger(); - Mock detector_mock; + Mock detector_mock; Fake(Dtor(detector_mock)); Mock event_handler_mock; Fake(Dtor(event_handler_mock)); - Mock event_notifier_mock; + Mock event_notifier_mock; Fake(Dtor(event_notifier_mock)); std::shared_ptr event_notifier_ptr(&event_notifier_mock.get()); diff --git a/FlippR-Driver/tests/output/TestDisplay.cpp b/FlippR-Driver/tests/output/TestDisplay.cpp index 83b20a3..bdda1e4 100644 --- a/FlippR-Driver/tests/output/TestDisplay.cpp +++ b/FlippR-Driver/tests/output/TestDisplay.cpp @@ -17,16 +17,16 @@ // testing purposes #define private public -#include "output/Display.h" +#include "Display.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("Creating a Display object", "") { GIVEN("Just a Display with 7 digits") { - Display<7> display(5,5); + SevenDigitDisplay display(5,5); WHEN("A content is set for the display") { std::string content_string = "1234567"; @@ -43,7 +43,7 @@ SCENARIO("Creating a Display object", "") display.write_score(12345); THEN("The content should look like: \" 12345\" ") { - std::string content_string = " 12345"; + std::string content_string = "\0\012345"; std::array content; std::copy(content_string.begin(), content_string.end(), content.data()); @@ -51,14 +51,16 @@ SCENARIO("Creating a Display object", "") } } WHEN("A score (12345678), which is longer than the digit is written") - display.write_score(12345678); - THEN("The content should look like: \"2345678\" ") { - std::string content_string = "2345678"; - std::array content; - std::copy(content_string.begin(), content_string.end(), content.data()); + display.write_score(12345678); + THEN("The content should look like: \"9999999\"-> highest number ") + { + std::string content_string = "9999999"; + std::array content; + std::copy(content_string.begin(), content_string.end(), content.data()); - REQUIRE(display.content == content); + REQUIRE(display.content == content); + } } } } diff --git a/FlippR-Driver/tests/output/TestDisplayController.cpp b/FlippR-Driver/tests/output/TestDisplayController.cpp index db90a96..ab4e4ca 100644 --- a/FlippR-Driver/tests/output/TestDisplayController.cpp +++ b/FlippR-Driver/tests/output/TestDisplayController.cpp @@ -16,7 +16,7 @@ #include "output/DisplayController.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("") diff --git a/FlippR-Driver/tests/output/TestLamp.cpp b/FlippR-Driver/tests/output/TestLamp.cpp index fb2d454..08070d5 100644 --- a/FlippR-Driver/tests/output/TestLamp.cpp +++ b/FlippR-Driver/tests/output/TestLamp.cpp @@ -16,7 +16,7 @@ #include "output/Lamp.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("") diff --git a/FlippR-Driver/tests/output/TestOutputDriver.cpp b/FlippR-Driver/tests/output/TestOutputDriver.cpp index f1e77d3..04ef307 100644 --- a/FlippR-Driver/tests/output/TestOutputDriver.cpp +++ b/FlippR-Driver/tests/output/TestOutputDriver.cpp @@ -16,7 +16,7 @@ #include "output/OutputDriver.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("") diff --git a/FlippR-Driver/tests/output/TestCabinetItem.cpp b/FlippR-Driver/tests/output/TestOutputItem.cpp similarity index 76% rename from FlippR-Driver/tests/output/TestCabinetItem.cpp rename to FlippR-Driver/tests/output/TestOutputItem.cpp index 7e9bc6a..c84f75b 100644 --- a/FlippR-Driver/tests/output/TestCabinetItem.cpp +++ b/FlippR-Driver/tests/output/TestOutputItem.cpp @@ -17,9 +17,9 @@ // testing purposes #define private public -#include "output/CabinetItem.h" +#include "../../src/output/OutputItem.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("") diff --git a/FlippR-Driver/tests/output/TestSolenoid.cpp b/FlippR-Driver/tests/output/TestSolenoid.cpp index a3e2bc7..b420d9a 100644 --- a/FlippR-Driver/tests/output/TestSolenoid.cpp +++ b/FlippR-Driver/tests/output/TestSolenoid.cpp @@ -18,7 +18,7 @@ #include "output/Solenoid.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("") diff --git a/FlippR-Driver/tests/output/TestSound.cpp b/FlippR-Driver/tests/output/TestSound.cpp index fd43629..8442d48 100644 --- a/FlippR-Driver/tests/output/TestSound.cpp +++ b/FlippR-Driver/tests/output/TestSound.cpp @@ -16,7 +16,7 @@ #include "output/Sound.h" -using namespace FlippR_Driver::output; +using namespace flippR_driver::output; using namespace fakeit; SCENARIO("")