Impelements and integrates DisplayFactory. Further does some refactoring
This commit is contained in:
@@ -18,13 +18,18 @@ namespace output
|
||||
namespace detail
|
||||
{
|
||||
|
||||
DisplayController::DisplayController(std::vector<std::shared_ptr<items::OutputDisplay>> displays,
|
||||
std::unique_ptr<DisplayBoardPinController> pin_controller
|
||||
DisplayController::DisplayController(std::map<std::string, std::shared_ptr<items::Item>> & displays,
|
||||
std::shared_ptr<DisplayBoardPinController> pin_controller
|
||||
)
|
||||
: displays(std::move(displays)), pin_controller(std::move(pin_controller)), is_running(true)
|
||||
: pin_controller{pin_controller}, is_running(true)
|
||||
{
|
||||
this->display_cycle_thread = std::thread(&DisplayController::cycle_displays, this);
|
||||
|
||||
for (auto display : displays)
|
||||
{
|
||||
this->displays.push_back(std::dynamic_pointer_cast<items::OutputDisplay>(display.second));
|
||||
}
|
||||
|
||||
CLOG(INFO, OUTPUT_LOGGER) << "Created DisplayController and started cycling them.";
|
||||
|
||||
activate_displays();
|
||||
|
||||
Reference in New Issue
Block a user