From 67853cf5e63cd843f38125c196b9fbd5c09f41e6 Mon Sep 17 00:00:00 2001 From: hgfell683 <107510770+hgfell683@users.noreply.github.com> Date: Thu, 17 Jul 2025 12:26:34 -0400 Subject: [PATCH 1/2] RDKEMW-5632 - Missing function --- HdmiCecSink/HdmiCecSinkImplementation.cpp | 49 +++++++++++++---------- HdmiCecSink/HdmiCecSinkImplementation.h | 2 +- 2 files changed, 28 insertions(+), 23 deletions(-) diff --git a/HdmiCecSink/HdmiCecSinkImplementation.cpp b/HdmiCecSink/HdmiCecSinkImplementation.cpp index 7363bb76..205e6a19 100644 --- a/HdmiCecSink/HdmiCecSinkImplementation.cpp +++ b/HdmiCecSink/HdmiCecSinkImplementation.cpp @@ -2205,31 +2205,36 @@ namespace WPEFramework } - void HdmiCecSinkImplementation::requestAudioDevicePowerStatus() - { - if ( cecEnableStatus != true ) - { - LOGWARN("cec is disabled-> EnableCEC first"); - return; - } - - if(!HdmiCecSinkImplementation::_instance) - return; - - if(!(_instance->smConnection)) + Core::hresult HdmiCecSinkImplementation::RequestAudioDevicePowerStatus(HdmiCecSinkSuccess &success) + { + if ( cecEnableStatus != true ) { - return; + LOGWARN("[%s]cec is disabled-> EnableCEC first", __FUNCTION__); + return Core::ERROR_GENERAL; } - if ( _instance->m_logicalAddressAllocated == LogicalAddress::UNREGISTERED ){ - LOGERR("Logical Address NOT Allocated"); - return; - } - - LOGINFO(" Send GiveDevicePowerStatus Message to Audio system in the network \n"); - _instance->smConnection->sendTo(LogicalAddress::AUDIO_SYSTEM, MessageEncoder().encode(GiveDevicePowerStatus()), 500); - + if(!HdmiCecSinkImplementation::_instance) + { + LOGWARN("[%s]HdmiCecSinkImplementation instance is NULL", __FUNCTION__); + success.success = false; + return Core::ERROR_GENERAL; + } + if(!(_instance->smConnection)) + { + LOGWARN("[%s]smConnection is NULL", __FUNCTION__); + success.success = false; + return Core::ERROR_GENERAL; + } + if ( _instance->m_logicalAddressAllocated == LogicalAddress::UNREGISTERED ){ + LOGWARN("[%s]Logical Address NOT Allocated", __FUNCTION__); + success.success = false; + return Core::ERROR_GENERAL; + } + LOGINFO(" Send GiveDevicePowerStatus Message to Audio system in the network \n"); + _instance->smConnection->sendTo(LogicalAddress::AUDIO_SYSTEM, MessageEncoder().encode(GiveDevicePowerStatus()), 500); m_audioDevicePowerStatusRequested = true; - } + success.success = true; + return Core::ERROR_NONE; + } void HdmiCecSinkImplementation::sendFeatureAbort(const LogicalAddress logicalAddress, const OpCode feature, const AbortReason reason) { diff --git a/HdmiCecSink/HdmiCecSinkImplementation.h b/HdmiCecSink/HdmiCecSinkImplementation.h index c9d91c11..9fb7cfe9 100644 --- a/HdmiCecSink/HdmiCecSinkImplementation.h +++ b/HdmiCecSink/HdmiCecSinkImplementation.h @@ -562,7 +562,6 @@ namespace WPEFramework { void reportFeatureAbortEvent(const LogicalAddress logicalAddress, const OpCode feature, const AbortReason reason); void systemAudioModeRequest(); void SendStandbyMsgEvent(const int logicalAddress); - void requestAudioDevicePowerStatus(); void reportAudioDevicePowerStatusInfo(const int logicalAddress, const int powerStatus); void updateCurrentLatency(int videoLatency, bool lowLatencyMode, int audioOutputCompensated, int audioOutputDelay); void setLatencyInfo(); @@ -742,6 +741,7 @@ namespace WPEFramework { Core::hresult Register(Exchange::IHdmiCecSink::INotification *notification) override; Core::hresult Unregister(Exchange::IHdmiCecSink::INotification *notification) override; Core::hresult SetMenuLanguage(const string &language, HdmiCecSinkSuccess &success) override; + Core::hresult requestAudioDevicePowerStatus(HdmiCecSinkSuccess &success) override; private: std::list _hdmiCecSinkNotifications; From 386e605d3d8cb75074c8558644ca0917cd392d6c Mon Sep 17 00:00:00 2001 From: hgfell683 <107510770+hgfell683@users.noreply.github.com> Date: Thu, 17 Jul 2025 12:59:42 -0400 Subject: [PATCH 2/2] RDKEMW-5632 - Missing function --- HdmiCecSink/HdmiCecSinkImplementation.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/HdmiCecSink/HdmiCecSinkImplementation.h b/HdmiCecSink/HdmiCecSinkImplementation.h index 9fb7cfe9..410942b8 100644 --- a/HdmiCecSink/HdmiCecSinkImplementation.h +++ b/HdmiCecSink/HdmiCecSinkImplementation.h @@ -741,7 +741,7 @@ namespace WPEFramework { Core::hresult Register(Exchange::IHdmiCecSink::INotification *notification) override; Core::hresult Unregister(Exchange::IHdmiCecSink::INotification *notification) override; Core::hresult SetMenuLanguage(const string &language, HdmiCecSinkSuccess &success) override; - Core::hresult requestAudioDevicePowerStatus(HdmiCecSinkSuccess &success) override; + Core::hresult RequestAudioDevicePowerStatus(HdmiCecSinkSuccess &success) override; private: std::list _hdmiCecSinkNotifications;