From 80d80835a02885074cf5934c90f0d89d1625c91f Mon Sep 17 00:00:00 2001 From: Alessandro Simovic <alessandro@yuneecresearch.com> Date: Tue, 20 Mar 2018 11:03:31 +0100 Subject: [PATCH] libtunes: fixed some type conversions and other minor changes --- src/lib/tunes/tunes.cpp | 3 +-- src/lib/tunes/tunes.h | 6 +++--- src/systemcmds/tune_control/tune_control.cpp | 11 ++++++----- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/lib/tunes/tunes.cpp b/src/lib/tunes/tunes.cpp index 8fafc16cd5..a82d51e95c 100644 --- a/src/lib/tunes/tunes.cpp +++ b/src/lib/tunes/tunes.cpp @@ -115,7 +115,6 @@ int Tunes::set_control(const tune_control_s &tune_control) // Special treatment for custom tunes if (tune_control.tune_id == static_cast<int>(TuneID::CUSTOM)) { _using_custom_msg = true; - _tune = nullptr; // remove tune in case of override _frequency = (unsigned)tune_control.frequency; _duration = (unsigned)tune_control.duration; _silence = (unsigned)tune_control.silence; @@ -144,7 +143,7 @@ void Tunes::set_string(const char *const string, uint8_t strength) } int Tunes::get_next_tune(unsigned &frequency, unsigned &duration, - unsigned &silence, unsigned &strength) + unsigned &silence, uint8_t &strength) { int ret = get_next_tune(frequency, duration, silence); diff --git a/src/lib/tunes/tunes.h b/src/lib/tunes/tunes.h index 160a6f6fa1..360d6abe43 100644 --- a/src/lib/tunes/tunes.h +++ b/src/lib/tunes/tunes.h @@ -93,7 +93,7 @@ public: * * @param string tune input string */ - void set_string(const char *const string); + void set_string(const char *const string, uint8_t strength); /** * Get next note in the current tune, which has been provided by either @@ -115,7 +115,7 @@ public: * @return -1 for error, 0 for play one tone and 1 for continue a sequence */ int get_next_tune(unsigned &frequency, unsigned &duration, unsigned &silence, - unsigned &strength); + uint8_t &strength); /** * Get the number of default tunes. This is useful for when a tune is @@ -148,7 +148,7 @@ private: unsigned _frequency; unsigned _duration; unsigned _silence; - unsigned _strength; + uint8_t _strength; bool _using_custom_msg = false; /** diff --git a/src/systemcmds/tune_control/tune_control.cpp b/src/systemcmds/tune_control/tune_control.cpp index d5f35fa3b4..f3d9a42255 100644 --- a/src/systemcmds/tune_control/tune_control.cpp +++ b/src/systemcmds/tune_control/tune_control.cpp @@ -72,7 +72,7 @@ usage() "\t-s <strength>\t\tStrength of the tone between 0-100\n" "\t-m <melody>\t\tMelody in a string form ex: \"MFT200e8a8a\"\n" "\n" - "tune_control stop \t\t Stops playback, useful for repeated tunes\n" + "tune_control stop \t\tStops playback, useful for repeated tunes\n" ); } @@ -147,7 +147,7 @@ tune_control_main(int argc, char *argv[]) break; case 's': - value = (uint16_t)(strtol(myoptarg, nullptr, 0)); + value = (uint8_t)(strtol(myoptarg, nullptr, 0)); if (value > 0 && value < 100) { tune_control.strength = value; @@ -170,20 +170,21 @@ tune_control_main(int argc, char *argv[]) return 1; } - unsigned frequency, duration, silence, strength; + unsigned frequency, duration, silence; + uint8_t strength; int exit_counter = 0; if (!strcmp(argv[myoptind], "play")) { if (string_input) { PX4_INFO("Start playback..."); - tunes.set_string(tune_string); + tunes.set_string(tune_string, tune_control.strength); while (tunes.get_next_tune(frequency, duration, silence, strength) > 0) { tune_control.tune_id = 0; tune_control.frequency = (uint16_t)frequency; tune_control.duration = (uint32_t)duration; tune_control.silence = (uint32_t)silence; - tune_control.strength = (uint32_t)strength; + tune_control.strength = (uint8_t)strength; publish_tune_control(tune_control); usleep(duration + silence); exit_counter++; -- GitLab