From 9f4bbd6eacd9297b90a0de528584aa6bd18d0b9b Mon Sep 17 00:00:00 2001 From: Jonas Zeunert Date: Thu, 2 Jul 2020 22:39:24 +0200 Subject: [PATCH] work with parameter --- FlippR-Driver/src/output/OutputDriverFactory.cpp | 4 ++-- .../src/output/detail/DisplayBoardPinController.cpp | 8 ++++---- .../src/output/detail/DisplayBoardPinController.h | 5 +++-- FlippR-Driver/src/output/detail/DisplayController.cpp | 4 ++-- FlippR-Driver/src/output/detail/DisplayController.h | 3 +-- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/FlippR-Driver/src/output/OutputDriverFactory.cpp b/FlippR-Driver/src/output/OutputDriverFactory.cpp index 6c41129..f557c5b 100644 --- a/FlippR-Driver/src/output/OutputDriverFactory.cpp +++ b/FlippR-Driver/src/output/OutputDriverFactory.cpp @@ -46,10 +46,10 @@ std::shared_ptr get_OutputDriver(const std::string & solenoid_conf auto sound_board_pin_controller = std::make_shared(output_pin_mutex); auto sounds = get_items(sound_config_path, sound_board_pin_controller); - auto display_board_pin_controller = std::make_shared(); + auto display_board_pin_controller = std::make_shared(get_update_frequency(display_config_path)); auto displays = get_items(display_config_path, display_board_pin_controller); - auto display_controller = std::make_unique(displays, display_board_pin_controller, get_update_frequency(display_config_path)); + auto display_controller = std::make_unique(displays, display_board_pin_controller); return std::make_shared(std::move(display_controller), solenoids, lamps, sounds, flippers, displays); } diff --git a/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp b/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp index 8b84f1d..834ccf3 100644 --- a/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp +++ b/FlippR-Driver/src/output/detail/DisplayBoardPinController.cpp @@ -18,16 +18,16 @@ namespace output namespace detail { -DisplayBoardPinController::DisplayBoardPinController(std::map & pins_display) : - pins_display_board{} +DisplayBoardPinController::DisplayBoardPinController(std::map & pins_display, std::chrono::microseconds update_time) : + pins_display_board{}, update_time{update_time} { this->set_pin_map(pins_display); initialize_pins_output(); CLOG(DEBUG, OUTPUT_LOGGER) << "Created DisplayBoardPinController"; } -DisplayBoardPinController::DisplayBoardPinController() : - pins_display_board{} +DisplayBoardPinController::DisplayBoardPinController(std::chrono::microseconds update_time) : + pins_display_board{}, update_time{update_time} { CLOG(DEBUG, OUTPUT_LOGGER) << "Created DisplayBoardPinController without pin map"; } diff --git a/FlippR-Driver/src/output/detail/DisplayBoardPinController.h b/FlippR-Driver/src/output/detail/DisplayBoardPinController.h index 9fe3bc0..6fdd185 100644 --- a/FlippR-Driver/src/output/detail/DisplayBoardPinController.h +++ b/FlippR-Driver/src/output/detail/DisplayBoardPinController.h @@ -20,8 +20,8 @@ namespace detail class DisplayBoardPinController : public output::DisplayBoardPinController { public: - explicit DisplayBoardPinController(std::map & pins_display); - explicit DisplayBoardPinController(); + DisplayBoardPinController(std::map & pins_display, std::chrono::microseconds update_time); + DisplayBoardPinController(std::chrono::microseconds update_time); ~DisplayBoardPinController() override = default; void initDisplay(const items::OutputDisplay &display) const; @@ -42,6 +42,7 @@ private: private: std::map pins_display_board; + std::chrono::microseconds update_time; }; } diff --git a/FlippR-Driver/src/output/detail/DisplayController.cpp b/FlippR-Driver/src/output/detail/DisplayController.cpp index 7fff216..c137891 100644 --- a/FlippR-Driver/src/output/detail/DisplayController.cpp +++ b/FlippR-Driver/src/output/detail/DisplayController.cpp @@ -19,9 +19,9 @@ namespace detail { DisplayController::DisplayController(std::map> & displays, - std::shared_ptr pin_controller, std::chrono::microseconds update_frequency + std::shared_ptr pin_controller ) - : pin_controller{pin_controller}, update_frequency(update_frequency), is_running(true) + : pin_controller{pin_controller}, is_running(true) { for (auto display : displays) { diff --git a/FlippR-Driver/src/output/detail/DisplayController.h b/FlippR-Driver/src/output/detail/DisplayController.h index 877f396..4879e61 100644 --- a/FlippR-Driver/src/output/detail/DisplayController.h +++ b/FlippR-Driver/src/output/detail/DisplayController.h @@ -25,7 +25,7 @@ namespace detail class DisplayController : public output::DisplayController { public: - DisplayController(std::map> &displays, std::shared_ptr pin_controller, std::chrono::microseconds update_frequency); + DisplayController(std::map> &displays, std::shared_ptr pin_controller); ~DisplayController() override; void activate_displays() const override; @@ -40,7 +40,6 @@ private: const std::shared_ptr pin_controller; std::thread display_cycle_thread; - std::chrono::microseconds update_frequency; bool is_running; };