diff --git a/FlippR-Driver/contrib/json_example/output/Sound_Config.json b/FlippR-Driver/contrib/json_example/output/Sound_Config.json index 9be1d56..249c9da 100644 --- a/FlippR-Driver/contrib/json_example/output/Sound_Config.json +++ b/FlippR-Driver/contrib/json_example/output/Sound_Config.json @@ -1,5 +1,4 @@ { - "deactivation_time_milliseconds" : 10, "port_extenders" : [ { @@ -53,11 +52,15 @@ ], "sounds" : [ + { + "id" : 255, + "address" : 0, + "name" : "Deactivation Sound" + } { "id" : 0, "address" : 22, "name" : "Sound 1", - "deactivation_time_milliseconds" : 10 }, { "id" : 1, @@ -148,7 +151,7 @@ "id" : 18, "address" : 40, "name" : "Sound 19" - }, + },84.4932% { "id" : 19, "address" : 41, diff --git a/FlippR-Driver/src/output/detail/SoundBoardPinController.cpp b/FlippR-Driver/src/output/detail/SoundBoardPinController.cpp index 90995e4..f036345 100644 --- a/FlippR-Driver/src/output/detail/SoundBoardPinController.cpp +++ b/FlippR-Driver/src/output/detail/SoundBoardPinController.cpp @@ -63,15 +63,12 @@ void SoundBoardPinController::write_sound_address(const uint8_t &address) const void SoundBoardPinController::fire_sound() const { PinController::write_pin(this->fire_address, true); - PinController::write_pin(this->fire_address, false); } void SoundBoardPinController::write_pin(const uint8_t &pin, const bool &value) const { PinController::write_pin(pin, value); - PinController::write_pin(this->fire_address, true); - PinController::write_pin(this->fire_address, false); } void SoundBoardPinController::set_address_pins(std::vector address_pins) diff --git a/FlippR-Driver/src/output/items/detail/Sound.cpp b/FlippR-Driver/src/output/items/detail/Sound.cpp index cd01926..d7d50ac 100644 --- a/FlippR-Driver/src/output/items/detail/Sound.cpp +++ b/FlippR-Driver/src/output/items/detail/Sound.cpp @@ -20,10 +20,10 @@ namespace items namespace detail { -Sound::Sound(std::shared_ptr pin_controller, const uint8_t & address, const std::string & name, const std::chrono::milliseconds & deactivation_time, const u_int id) -: detail::Item(std::move(name)), DriverBoardItem(pin_controller, address), pin_controller(std::move(pin_controller)), deactivation_time(deactivation_time), id(id) +Sound::Sound(std::shared_ptr pin_controller, const uint8_t & address, const std::string & name, const u_int id) +: detail::Item(std::move(name)), DriverBoardItem(pin_controller, address), pin_controller(std::move(pin_controller)), id(id) { - CLOG(DEBUG, OUTPUT_LOGGER) << "Created sound " << id << " \"" << name << "\" with address " << int(address) << ". Deactivation time is: " << deactivation_time.count(); + CLOG(DEBUG, OUTPUT_LOGGER) << "Created sound " << id << " \"" << name << "\" with address " << int(address); } void Sound::play() @@ -35,10 +35,6 @@ void Sound::play() void Sound::playTask() { pin_controller->activate(*this); - - std::this_thread::sleep_for(deactivation_time); - - pin_controller->deactivate(*this); } } diff --git a/FlippR-Driver/src/output/items/detail/Sound.h b/FlippR-Driver/src/output/items/detail/Sound.h index 9d4c52b..a98c3d2 100644 --- a/FlippR-Driver/src/output/items/detail/Sound.h +++ b/FlippR-Driver/src/output/items/detail/Sound.h @@ -35,14 +35,12 @@ public: u_int id; public: - Sound(std::shared_ptr pin_controller, const uint8_t & address, const std::string & name, const std::chrono::milliseconds & deactivation_time, const u_int id); + Sound(std::shared_ptr pin_controller, const uint8_t & address, const std::string & name, const u_int id); ~Sound() override = default; void play() override; private: - const std::chrono::milliseconds deactivation_time; - const std::shared_ptr pin_controller; std::future play_task;