summaryrefslogtreecommitdiff
path: root/src/components/application_manager/src/hmi_state.cc
diff options
context:
space:
mode:
authorElvis Kuliiev <ekuliiev@luxoft.com>2018-05-25 14:03:29 +0300
committerElvis Kuliiev <ekuliiev@luxoft.com>2018-05-25 19:15:52 +0300
commit6e9ce7fedfd363a51fa3ac7fb31ccdf00defd201 (patch)
tree62e23030b5fb5bff76af52b51147a69e1cfc18a7 /src/components/application_manager/src/hmi_state.cc
parente76fd11ca12f6d36f408977ab3c506ba9568a7a8 (diff)
downloadsdl_core-6e9ce7fedfd363a51fa3ac7fb31ccdf00defd201.tar.gz
Provide specific behavior for navigation streaming HMI state
Diffstat (limited to 'src/components/application_manager/src/hmi_state.cc')
-rw-r--r--src/components/application_manager/src/hmi_state.cc36
1 files changed, 21 insertions, 15 deletions
diff --git a/src/components/application_manager/src/hmi_state.cc b/src/components/application_manager/src/hmi_state.cc
index ebc5a67143..73d4b80a55 100644
--- a/src/components/application_manager/src/hmi_state.cc
+++ b/src/components/application_manager/src/hmi_state.cc
@@ -155,17 +155,31 @@ VideoStreamingHmiState::VideoStreamingHmiState(
utils::SharedPtr<Application> app, const ApplicationManager& app_mngr)
: HmiState(app, app_mngr, STATE_ID_VIDEO_STREAMING) {}
+mobile_apis::VideoStreamingState::eType
+VideoStreamingHmiState::video_streaming_state() const {
+ if (app_->IsVideoApplication()) {
+ return parent()->video_streaming_state();
+ }
+
+ return mobile_apis::VideoStreamingState::NOT_STREAMABLE;
+}
+
+NaviStreamingHmiState::NaviStreamingHmiState(utils::SharedPtr<Application> app,
+ const ApplicationManager& app_mngr)
+ : VideoStreamingHmiState(app, app_mngr) {
+ set_state_id(STATE_ID_NAVI_STREAMING);
+}
+
mobile_apis::AudioStreamingState::eType
-VideoStreamingHmiState::audio_streaming_state() const {
+NaviStreamingHmiState::audio_streaming_state() const {
using namespace helpers;
using namespace mobile_apis;
AudioStreamingState::eType expected_state = parent()->audio_streaming_state();
- if (!app_->IsVideoApplication() &&
- Compare<AudioStreamingState::eType, EQ, ONE>(
- expected_state,
- AudioStreamingState::AUDIBLE,
- AudioStreamingState::ATTENUATED)) {
+ if (!is_navi_app() && Compare<AudioStreamingState::eType, EQ, ONE>(
+ expected_state,
+ AudioStreamingState::AUDIBLE,
+ AudioStreamingState::ATTENUATED)) {
if (app_mngr_.is_attenuated_supported()) {
expected_state = AudioStreamingState::ATTENUATED;
} else {
@@ -176,15 +190,6 @@ VideoStreamingHmiState::audio_streaming_state() const {
return expected_state;
}
-mobile_apis::VideoStreamingState::eType
-VideoStreamingHmiState::video_streaming_state() const {
- if (app_->IsVideoApplication()) {
- return parent()->video_streaming_state();
- }
-
- return mobile_apis::VideoStreamingState::NOT_STREAMABLE;
-}
-
PhoneCallHmiState::PhoneCallHmiState(utils::SharedPtr<Application> app,
const ApplicationManager& app_mngr)
: HmiState(app, app_mngr, STATE_ID_PHONE_CALL) {}
@@ -287,6 +292,7 @@ const StateID2StrMap kStateID2StrMap =
HmiState::StateID::STATE_ID_VR_SESSION, "VR_SESSION")(
HmiState::StateID::STATE_ID_TTS_SESSION, "TTS_SESSION")(
HmiState::StateID::STATE_ID_VIDEO_STREAMING, "VIDEO_STREAMING")(
+ HmiState::StateID::STATE_ID_NAVI_STREAMING, "NAVI_STREAMING")(
HmiState::StateID::STATE_ID_DEACTIVATE_HMI, "DEACTIVATE_HMI")(
HmiState::StateID::STATE_ID_AUDIO_SOURCE, "AUDIO_SOURCE")(
HmiState::StateID::STATE_ID_EMBEDDED_NAVI, "EMBEDDED_NAVI");