diff --git a/FlippR-Driver/include/output/OutputDriver.h b/FlippR-Driver/include/output/OutputDriver.h index 0e4ccff..3a76137 100644 --- a/FlippR-Driver/include/output/OutputDriver.h +++ b/FlippR-Driver/include/output/OutputDriver.h @@ -61,7 +61,7 @@ public: boost::optional> get_solenoid(const std::string &name) const; boost::optional> get_sound(const std::string &name) const; boost::optional> get_flipper(const std::string &name) const; - boost::optional> get_display(uint8_t number) const; + boost::optional> get_display(const std::string &name) const; private: std::shared_ptr display_controller; diff --git a/FlippR-Driver/networking/output/OutputRequestHandler.cpp b/FlippR-Driver/networking/output/OutputRequestHandler.cpp index 92c0ff8..759b2a9 100644 --- a/FlippR-Driver/networking/output/OutputRequestHandler.cpp +++ b/FlippR-Driver/networking/output/OutputRequestHandler.cpp @@ -221,21 +221,20 @@ boost::optional OutputRequestHandler::parseSound(const std:: return response; } -boost::optional OutputRequestHandler::parseDisplay(const std::string& item_name, const std::string& action, const std::string& score) +boost::optional OutputRequestHandler::parseDisplay(const std::string& display_name, const std::string& action, const std::string& score) { Poco::JSON::Object response; - if(item_name == "") + if(display_name == "") { response.set("displays", this->output_driver->get_displays()); return response; } - uint8_t display_number = std::stoi(item_name); - auto opt_display = this->output_driver->get_display(display_number); + auto opt_display = this->output_driver->get_display(display_name); if(!opt_display) { - throw new Poco::NotFoundException("No display with number \"" + item_name + "\"!"); + throw new Poco::NotFoundException("No display with name \"" + display_name + "\"!"); } auto display = opt_display->get(); diff --git a/FlippR-Driver/networking/output/OutputRequestHandler.h b/FlippR-Driver/networking/output/OutputRequestHandler.h index 5b0661a..e413d0a 100644 --- a/FlippR-Driver/networking/output/OutputRequestHandler.h +++ b/FlippR-Driver/networking/output/OutputRequestHandler.h @@ -33,7 +33,7 @@ private: boost::optional parseSolenoid(const std::string& item_name, const std::string& action); boost::optional parseLamp(const std::string& item_name, const std::string& action); boost::optional parseSound(const std::string& item_name, const std::string& action); - boost::optional parseDisplay(const std::string& item_name, const std::string& action, const std::string& score); + boost::optional parseDisplay(const std::string& display_name, const std::string& action, const std::string& score); boost::optional parseFlipper(const std::string& item_name, const std::string& action); std::vector getPathSegments(Poco::URI uri); diff --git a/FlippR-Driver/src/output/detail/OutputDriver.cpp b/FlippR-Driver/src/output/detail/OutputDriver.cpp index 8027b2e..37444fc 100644 --- a/FlippR-Driver/src/output/detail/OutputDriver.cpp +++ b/FlippR-Driver/src/output/detail/OutputDriver.cpp @@ -147,10 +147,9 @@ boost::optional> OutputDriver::get_flipper(const return this->flippers.find(name)->second; } -boost::optional> OutputDriver::get_display(uint8_t number) const +boost::optional> OutputDriver::get_display(const std::string &name) const { - std::string num{static_cast(number)}; - return this->displays.find(num)->second; + return this->displays.find(name)->second; } void OutputDriver::shut_down_driver() const