From 08ac5437a3f06f5c4a01a82eaa4a8bc3e806c721 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Thu, 24 Jul 2025 17:03:02 +0530 Subject: [PATCH 01/36] RDKEMW-6078: Adding Interface for the DS Settings Manager. Reason for change: Adding Interface for the DS Settings Manager. Test Procedure: no Risks: NO Priority: P1 --- .../IDeviceSettingsManager.h | 534 ++++++++++++++++++ 1 file changed, 534 insertions(+) create mode 100755 apis/DeviceSettingsManager/IDeviceSettingsManager.h diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h new file mode 100755 index 00000000..f4012e01 --- /dev/null +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -0,0 +1,534 @@ +/* + * If not stated otherwise in this file or this component's LICENSE file the + * following copyright and licenses apply: + * + * Copyright 2024 RDK Management + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#pragma once + +#include +#include + +#include "Module.h" + +namespace WPEFramework { + namespace Exchange { + struct EXTERNAL IDeviceSettingsManager : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY }; + + enum DisplayEvent { + DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event + DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event + DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event + DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event + DS_DISPLAY_HDCPPROTOCOL_CHANGE = 4, ///< HDCP Protocol Version Change event + DS_DISPLAY_EVENT_MAX = 5 ///< MAX + }; + + struct ResolutionChange { + uint32_t width; + uint32_t height; + }; + + enum HDRStandard : uint16_t { + DS_HDRSTANDARD_NONE = 0x0, + DS_HDRSTANDARD_HDR10 = 0x01, + DS_HDRSTANDARD_HLG = 0x02, + DS_HDRSTANDARD_DOLBYVISION = 0x04, + DS_HDRSTANDARD_TECHNICOLORPRIME = 0x08, + DS_HDRSTANDARD_HDR10PLUS = 0x10, + DS_HDRSTANDARD_SDR = 0x20, + DS_HDRSTANDARD_INVALID = 0x80 + }; + + enum HDCPStatus : uint8_t { + DS_HDCP_STATUS_UNPOWERED = 0, + DS_HDCP_STATUS_UNAUTHENTICATED = 1, + DS_HDCP_STATUS_AUTHENTICATED = 2, + DS_HDCP_STATUS_AUTHENTICATIONFAILURE = 3, + DS_HDCP_STATUS_INPROGRESS = 4, + DS_HDCP_STATUS_PORTDISABLED = 5, + DS_HDCP_STATUS_MAX = 6 + }; + + enum HDCPProtocolVersion : uint8_t { + DS_HDCP_VERSION_1X = 0, + DS_HDCP_VERSION_2X = 1, + DS_HDCP_VERSION_MAX = 2 + }; + + enum VideoZoom : int8_t { + DS_VIDEO_DEVICE_ZOOM_UNKNOWN = -1, + DS_VIDEO_DEVICE_ZOOM_NONE = 0, + DS_VIDEO_DEVICE_ZOOM_FULL = 1, + DS_VIDEO_DEVICE_ZOOM_LB_16_9 = 2, + DS_VIDEO_DEVICE_ZOOM_LB_14_9 = 3, + DS_VIDEO_DEVICE_ZOOM_CCO = 4, + DS_VIDEO_DEVICE_ZOOM_PAN_SCAN = 5, + DS_VIDEO_DEVICE_ZOOM_LB_2_21_1_ON_4_3 = 6, + DS_VIDEO_DEVICE_ZOOM_LB_2_21_1_ON_16_9 = 7, + DS_VIDEO_DEVICE_ZOOM_PLATFORM = 8, + DS_VIDEO_DEVICE_ZOOM_16_9_ZOOM = 9, + DS_VIDEO_DEVICE_ZOOM_PILLARBOX_4_3 = 10, + DS_VIDEO_DEVICE_ZOOM_WIDE_4_3 = 11, + DS_VIDEO_DEVICE_ZOOM_MAX = 12 + }; + + enum FPDTimeFormat : uint8_t { + DS_FPD_TIMEFORMAT_UNKNOWN = 0, + DS_FPD_TIMEFORMAT_12_HOUR = 1, + DS_FPD_TIMEFORMAT_24_HOUR = 2 + // TODO: not available in rdk-halif-device_settings + }; + + enum SleepMode : uint8_t { + DS_HOST_SLEEPMODE_UNKNOWN = 0, + DS_HOST_SLEEPMODE_LIGHT = 1, + DS_HOST_SLEEPMODE_DEEP = 2, + // TODO: not available in rdk-halif-device_settings + }; + + enum HDMIInPort : int8_t { + DS_HDMI_IN_PORT_NONE = -1, + DS_HDMI_IN_PORT_0 = 0, + DS_HDMI_IN_PORT_1 = 1, + DS_HDMI_IN_PORT_2 = 2, + DS_HDMI_IN_PORT_3 = 3, + DS_HDMI_IN_PORT_4 = 4 + }; + + enum HDMIInSignalStatus : int8_t { + DS_HDMI_IN_SIGNAL_STATUS_NONE = -1, + DS_HDMI_IN_SIGNAL_STATUS_NOSIGNAL = 0, + DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, + DS_HDMI_IN_SIGNAL_STATUS_NOTSUPPORTED = 2, + DS_HDMI_IN_SIGNAL_STATUS_STABLE = 3, + DS_HDMI_IN_SIGNAL_STATUS_MAX = 4 + }; + + enum HDMIInTVResolution : uint32_t { + DS_HDMIIN_RESOLUTION_480I = 0x000001, + DS_HDMIIN_RESOLUTION_480P = 0x000002, + DS_HDMIIN_RESOLUTION_576I = 0x000004, + DS_HDMIIN_RESOLUTION_576P = 0x000008, + DS_HDMIIN_RESOLUTION_576P50 = 0x000010, + DS_HDMIIN_RESOLUTION_720P = 0x000020, + DS_HDMIIN_RESOLUTION_720P50 = 0x000040, + DS_HDMIIN_RESOLUTION_1080I = 0x000080, + DS_HDMIIN_RESOLUTION_1080P = 0x000100, + DS_HDMIIN_RESOLUTION_1080P24 = 0x000200, + DS_HDMIIN_RESOLUTION_1080I25 = 0x000400, + DS_HDMIIN_RESOLUTION_1080P25 = 0x000800, + DS_HDMIIN_RESOLUTION_1080P30 = 0x001000, + DS_HDMIIN_RESOLUTION_1080I50 = 0x002000, + DS_HDMIIN_RESOLUTION_1080P50 = 0x004000, + DS_HDMIIN_RESOLUTION_1080P60 = 0x008000, + DS_HDMIIN_RESOLUTION_2160P24 = 0x010000, + DS_HDMIIN_RESOLUTION_2160P25 = 0x020000, + DS_HDMIIN_RESOLUTION_2160P30 = 0x040000, + DS_HDMIIN_RESOLUTION_2160P50 = 0x080000, + DS_HDMIIN_RESOLUTION_2160P60 = 0x100000 + }; + + enum HDMIVideoAspectRatio : uint8_t { + DS_HDMIIN_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, + DS_HDMIIN_ASPECT_RATIO_16x9 = 1 /* @text Video Aspect Ratio 16x9 */, + DS_HDMIIN_ASPECT_RATIO_MAX = 2 + }; + + enum HDMIInVideoStereoScopicMode : uint8_t { + DS_HDMIIN_SSMODE_UNKNOWN = 0, + DS_HDMIIN_SSMODE_2D = 1, + DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3, + DS_HDMIIN_SSMODE_MAX = 4 + }; + + enum HDMIInVideoFrameRate : uint8_t { + DS_HDMIIN_FRAMERATE_UNKNOWN = 0, + DS_HDMIIN_FRAMERATE_24 = 1, + DS_HDMIIN_FRAMERATE_25 = 2, + DS_HDMIIN_FRAMERATE_30 = 3, + DS_HDMIIN_FRAMERATE_60 = 4, + DS_HDMIIN_FRAMERATE_23_98 = 5, + DS_HDMIIN_FRAMERATE_29_97 = 6, + DS_HDMIIN_FRAMERATE_50 = 7, + DS_HDMIIN_FRAMERATE_59_94 = 8, + DS_HDMIIN_FRAMERATE_100 = 9, + DS_HDMIIN_FRAMERATE_119_88 = 10, + DS_HDMIIN_FRAMERATE_120 = 11, + DS_HDMIIN_FRAMERATE_200 = 12, + DS_HDMIIN_FRAMERATE_239_76 = 13, + DS_HDMIIN_FRAMERATE_240 = 14, + DS_HDMIIN_FRAMERATE_MAX = 15 + }; + + // AiW + enum HDMIInAviContentType : uint8_t { + DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS = 0, + DS_HDMIIN_AVICONTENT_TYPE_PHOTO = 1, + DS_HDMIIN_AVICONTENT_TYPE_CINEMA = 2, + DS_HDMIIN_AVICONTENT_TYPE_GAME = 3, + DS_HDMIIN_AVICONTENT_TYPE_NOT_SIGNALLED = 4, + DS_HDMIIN_AVICONTENT_TYPE_MAX = 5 + }; + + struct HDMIVideoPortResolution { + std::string name; + HDMIInTVResolution pixelResolution; + HDMIVideoAspectRatio aspectRatio; + HDMIInVideoStereoScopicMode stereoScopicMode; + HDMIInVideoFrameRate frameRate; + bool interlaced; + }; + + enum AudioPortType : uint8_t { + + AUDIO_PORT_TYPE_LR = 0, + AUDIO_PORT_TYPE_HDMI = 1, + AUDIO_PORT_TYPE_SPDIF = 2, + AUDIO_PORT_TYPE_SPEAKER = 3, + AUDIO_PORT_TYPE_HDMIARC = 4, + AUDIO_PORT_TYPE_HEADPHONE = 5, + AUDIO_PORT_TYPE_MAX = 6 + }; + + enum AudioFormat : uint8_t { + AUDIO_FORMAT_NONE = 0, + AUDIO_FORMAT_PCM = 1, + AUDIO_FORMAT_DOLBY_AC3 = 2, + AUDIO_FORMAT_DOLBY_EAC3 = 3, + AUDIO_FORMAT_DOLBY_AC4 = 4, + AUDIO_FORMAT_DOLBY_MAT = 5, + AUDIO_FORMAT_DOLBY_TRUEHD = 6, + AUDIO_FORMAT_DOLBY_EAC3_ATMOS = 7, + AUDIO_FORMAT_DOLBY_TRUEHD_ATMOS = 8, + AUDIO_FORMAT_DOLBY_MAT_ATMOS = 0, + AUDIO_FORMAT_DOLBY_AC4_ATMOS = 10, + AUDIO_FORMAT_AAC = 11, + AUDIO_FORMAT_VORBIS = 12, + AUDIO_FORMAT_WMA = 13, + AUDIO_FORMAT_UNKNOWN = 14, + AUDIO_FORMAT_MAX = 15 + }; + + enum AudioPortState : uint8_t { + AUDIO_PORT_STATE_UNKNOWN = 0, + AUDIO_PORT_STATE_UNINITIALIZED = 1, + AUDIO_PORT_STATE_INITIALIZED = 2 + }; + + enum DolbyAtmosCapability : uint8_t { + AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, + AUDIO_DOLBYATMOS_DDPLUS_STREAM = 1, + AUDIO_DOLBYATMOS_ATMOS_METADATA = 2, + AUDIO_DOLBYATMOS_MAX = 3 + }; + + enum StereoMode : uint8_t { + AUDIO_STEREO_UNKNOWN = 0, + AUDIO_STEREO_MONO = 1, + AUDIO_STEREO_STEREO = 2, + AUDIO_STEREO_SURROUND = 3, + AUDIO_STEREO_PASSTHROUGH = 4, + AUDIO_STEREO_DD = 5, + AUDIO_STEREO_DDPLUS = 6, + AUDIO_STEREO_MAX = 7 + }; + + enum CompositeInPort : uint8_t { + DS_COMPOSITE_IN_NONE = 0 /* @text NONE */, + DS_COMPOSITE_IN_PORT_0 = 1 /* @text CompositeIn Port 0 */, + DS_COMPOSITE_IN_PORT_1 = 2 /* @text CompositeIn Port 1 */, + DS_COMPOSITE_IN_PORT_MAX = 3 /* @text CompositeIn Port Max*/ + }; + + // AiW + enum CompositeInSignalStatus : uint8_t { + DS_COMPOSITE_IN_SIGNAL_STATUS_UNKNOWN = 0 /* @text UNKNOWN */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = 1 /* @text Signal Status None */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 2 /* @text Signal Status No Signal */, + DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 3 /* @text Signal Status Unstable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 4 /* @text Signal Status Not supported */, + DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 5 /* @text Signal Status Stable */ + }; + + struct CompositeInStatus { + bool isPresented; + CompositeInPort activePort; + + // TODO: this is a single enum in rdk-halif-device_settings - https://github.com/rdkcentral/rdk-halif-device_settings/blob/16515f3b8fdbc683164dd58e50a0f7d6ff995d1f/include/dsCompositeInTypes.h#L120C5-L120C24 + bool isPort0Connected; + bool isPort1Connected; /* Can't have array in structures..so separating the booleans */ + }; + + // @event + struct EXTERNAL IHDMIHotPlugNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_HDMIHOTPLUG_NOTIFICATION }; + // @brief HDMI Hotplug event + // @text OnHDMIHotPlug + // @param displayEvent: CONNECTED or DISCONNECTED + virtual void OnHDMIHotPlug(DisplayEvent displayEvent) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IHDMIHotPlugNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IHDMIHotPlugNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IRxSenseNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_RXSENSE_NOTIFICATION }; + // @brief RX Sense event + // @text OnRxSense + // @param displayEvent: RX Sense On or Off + virtual void OnRxSense(DisplayEvent displayEvent) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IRxSenseNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IRxSenseNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IHDCPStatusNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_HDCP_STATUS_NOTIFICATION }; + // @brief HDCP Protocol version change + // @text OnHDCPProtocolChangeStatus + virtual void OnHDCPProtocolChangeStatus() { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IHDCPStatusNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IHDCPStatusNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IDSAudioNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_AUDIO_NOTIFICATION }; + + // @brief Associated Audio mixing changed + // @text onAssociatedAudioMixingChanged + // @param mixing: true or false + virtual void OnAssociatedAudioMixingChanged(bool mixing) { }; + + // @brief Audio Fader balance changed + // @text onAudioFaderControlChanged + // @param mixerBalance: applied mixer balance value + virtual void OnAudioFaderControlChanged(int mixerBalance) { }; + + // @brief Primary language for Audio changed + // @text onAudioPrimaryLanguageChanged + // @param primaryLanguage: current primary language for audio + virtual void OnAudioPrimaryLanguageChanged(const string& primaryLanguage) { }; + + // @brief Secondary language for Audio changed + // @text onAudioSecondaryLanguageChanged + // @param secondaryLanguage: current secondary language for audio + virtual void OnAudioSecondaryLanguageChanged(const string& secondaryLanguage) { }; + + // @brief Audio output hot plug event + // @text onAudioOutHotPlug + // @param portType: Type of audio port see AudioPortType + // @param uiPortNumber: The port number assigned by UI + // @param isPortConnected: true (connected) or false (not connected) + virtual void OnAudioOutHotPlug(AudioPortType portType, int uiPortNumber, bool isPortConnected) { }; + + // @brief Audio Output format changed + // @text onAudioFormatUpdate + // @param audioFormat: Type of audio format see AudioFormat + virtual void OnAudioFormatUpdate(AudioFormat audioFormat) { }; + + // @brief Dolby Atmos capabilities changed + // @text onDolbyAtmosCapabilitiesChanged + // @param atmosCapability: the dolby atmos capability + // @param status: true (available) or false (not available) + virtual void OnDolbyAtmosCapabilitiesChanged(DolbyAtmosCapability atmosCapability, bool status) { }; + + // @brief Audio port state changed + // @text onAudioPortStateChanged + // @param audioPortState: audio port state + virtual void OnAudioPortStateChanged(AudioPortState audioPortState) { }; + + // @brief Audio mode for the respective audio port - raised for every type of port + // @text onAudioModeEvent + // @param audioPortType: audio port type see AudioPortType + // @param audioMode: audio mode - see StereoMode + virtual void OnAudioModeEvent(AudioPortType audioPortType, StereoMode audioMode) { }; + + // @brief Audio mode for the respective audio port - raised for every type of port + // @text onAudioModeEvent + // @param audioPortType: audio port type see AudioPortType + // @param audioMode: audio mode - see StereoMode + virtual void OnAudioLevelChangedEvent(int audioLevel) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSAudioNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSAudioNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IHDMIInNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_HDMIIN_NOTIFICATION }; + // @brief HDMI Event Hot Plug + // @text onHDMIInEventHotPlug + // @param port: port 0 or 1 et al + // @param isConnected: is it connected (true) or not (false) + virtual void OnHDMIInEventHotPlug(HDMIInPort port, bool isConnected) { }; + + // @brief HDMI Event Signal status + // @text OnHDMIInEventSignalStatus + // @param port: port 0 or 1 et al + // @param signalStatus: Signal Status + virtual void OnHDMIInEventSignalStatus(HDMIInPort port, HDMIInSignalStatus signalStatus) { }; + + // @brief HDMI Event Signal status + // @text onHDMIInEventStatus + // @param activePort: port 0 or 1 et al + // @param isPresented: is it presented or not + virtual void OnHDMIInEventStatus(HDMIInPort activePort, bool isPresented) { }; + + // @brief HDMI Video Mode update + // @text onHDMInVideoModeUpdate + // @param port: port 0 or 1 et al + // @param videoPortResolution: Video port resolution + virtual void OnHDMInVideoModeUpdate(HDMIInPort port, const HDMIVideoPortResolution& videoPortResolution) { }; + + // @brief HDMI ALLM (Auto Low Latency Mode) status + // @text onHDMInAllmStatus + // @param port: port 0 or 1 et al + // @param allmStatus: allm status + virtual void OnHDMInAllmStatus(HDMIInPort port, bool allmStatus) { }; + + // @brief HDMI Event AVI content type + // @text OnHDMInAVIContentType + // @param port: port 0 or 1 et al + // @param aviContentType: AVI content type + virtual void OnHDMInAVIContentType(HDMIInPort port, HDMIInAviContentType aviContentType) { }; + + // @brief HDMI Event AV Latency + // @text OnHDMInAVLatency + // @param audioDelay: audio delay (in millisecs) + // @param videoDelay: video delay (in millisecs) + virtual void OnHDMInAVLatency(int audioDelay, int videoDelay) { }; + }; + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IHDMIInNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IHDMIInNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IDSVideoPortStatusNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_VIDEOPORT_NOTIFICATION }; + // @brief On Resolution Pre changed + // @text OnResolutionPreChange + // @param resolution: resolution + virtual void OnResolutionPreChange(const ResolutionChange& resolution) { }; + + // @brief On Resolution Post change + // @text onResolutionPostChange + // @param resolution: resolution + virtual void OnResolutionPostChange(const ResolutionChange& resolution) { }; + + // @brief On HDCP Status change + // @text OnHDCPStatusChange + // @param hdcpStatus: HDCP Status + virtual void OnHDCPStatusChange(HDCPStatus hdcpStatus) { }; + + // @brief On Video Format update + // @text OnVideoFormatUpdate + // @param videoFormatHDR: Video format HDR standard + virtual void OnVideoFormatUpdate(HDRStandard videoFormatHDR) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSVideoPortStatusNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSVideoPortStatusNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IDSVideoDeviceNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_VIDEODEVICE_NOTIFICATION }; + + // @brief Zoom settings changed + // @text OnZoomSettingsChanged + // @param zoomSetting: Currently applied zoom setting + virtual void OnZoomSettingsChanged(VideoZoom zoomSetting) { }; + + // @brief Display Framerate Pre-change + // @text OnDisplayFrameratePreChange + // @param frameRate: PreChange framerate + virtual void OnDisplayFrameratePreChange(const string& frameRate) { }; + + // @brief Display Framerate Post-change + // @text OnDisplayFrameratePostChange + // @param frameRate: framerate post change + virtual void OnDisplayFrameratePostChange(const string& frameRate) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSVideoDeviceNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSVideoDeviceNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IDSHostNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_HOST_NOTIFICATION }; + + // @brief Sleep mode changed + // @text onSleepModeChanged + // @param sleepMode: see SleepMode + virtual void OnSleepModeChanged(SleepMode sleepMode) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSHostNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSHostNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IDSCompositeInNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_COMPOSITEIN_NOTIFICATION }; + + // @brief Composite In Hotplug event + // @text onCompositeInHotPlug + // @param port: Port of the hotplug + // @param isConnected: Is it connected (true) or not(false) + virtual void OnCompositeInHotPlug(CompositeInPort port, bool isConnected) { }; + + // @brief Composite In Signal status + // @text onCompositeInSignalStatus + // @param port: Port of the hotplug + // @param signalStatus: Signal status + virtual void OnCompositeInSignalStatus(CompositeInPort port, CompositeInSignalStatus signalStatus) { }; + + // @brief Composite In status + // @text onCompositeInStatus + // @param activePort: Active port + // @param isPresented: is it presented to user + virtual void OnCompositeInStatus(CompositeInPort activePort, bool isPresented) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSCompositeInNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSCompositeInNotification* notification /* @in */) = 0; + + // @event + struct EXTERNAL IDSFPDNotification : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_PROXY_FPD_NOTIFICATION }; + + // @brief On Front Panel display time format changed + // @text OnFPDTimeFormatChanged + // @param timeFormat: current time format 12 or 24 hour + virtual void OnFPDTimeFormatChanged(FPDTimeFormat timeFormat) { }; + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSFPDNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSFPDNotification* notification /* @in */) = 0; + + /** Execute API. */ + // @text Execute API + // @brief Execute API. + // @param reqBuf: request string (contains serialized parameters) + // @param respBuf: response string (contains serialized parameters) + virtual Core::hresult Execute(const string& reqBuf /* @in */, string& respBuf /* @out*/) = 0; + }; + } // namespace Exchange + } // namespace WPEFramework From 9a9290c7ef36de21d6caa42f9b4d5df14e762a93 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Thu, 24 Jul 2025 17:21:28 +0530 Subject: [PATCH 02/36] updated Ids.h file with IDeviceSettingsManager Macros --- .../IDeviceSettingsManager.h | 24 +++++++++---------- apis/Ids.h | 15 +++++++++++- 2 files changed, 26 insertions(+), 13 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index f4012e01..6c37311b 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -27,7 +27,7 @@ namespace WPEFramework { namespace Exchange { struct EXTERNAL IDeviceSettingsManager : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY }; + enum { ID = ID_DEVICESETTINGS_MANAGER }; enum DisplayEvent { DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event @@ -145,7 +145,7 @@ namespace WPEFramework { enum HDMIVideoAspectRatio : uint8_t { DS_HDMIIN_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, - DS_HDMIIN_ASPECT_RATIO_16x9 = 1 /* @text Video Aspect Ratio 16x9 */, + DS_HDMIIN_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, DS_HDMIIN_ASPECT_RATIO_MAX = 2 }; @@ -277,7 +277,7 @@ namespace WPEFramework { // @event struct EXTERNAL IHDMIHotPlugNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_HDMIHOTPLUG_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIHOTPLUG_NOTIFICATION }; // @brief HDMI Hotplug event // @text OnHDMIHotPlug // @param displayEvent: CONNECTED or DISCONNECTED @@ -289,7 +289,7 @@ namespace WPEFramework { // @event struct EXTERNAL IRxSenseNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_RXSENSE_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_RXSENSE_NOTIFICATION }; // @brief RX Sense event // @text OnRxSense // @param displayEvent: RX Sense On or Off @@ -301,7 +301,7 @@ namespace WPEFramework { // @event struct EXTERNAL IHDCPStatusNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_HDCP_STATUS_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_HDCP_STATUS_NOTIFICATION }; // @brief HDCP Protocol version change // @text OnHDCPProtocolChangeStatus virtual void OnHDCPProtocolChangeStatus() { }; @@ -312,7 +312,7 @@ namespace WPEFramework { // @event struct EXTERNAL IDSAudioNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_AUDIO_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION }; // @brief Associated Audio mixing changed // @text onAssociatedAudioMixingChanged @@ -375,7 +375,7 @@ namespace WPEFramework { // @event struct EXTERNAL IHDMIInNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_HDMIIN_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION }; // @brief HDMI Event Hot Plug // @text onHDMIInEventHotPlug // @param port: port 0 or 1 et al @@ -423,7 +423,7 @@ namespace WPEFramework { // @event struct EXTERNAL IDSVideoPortStatusNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_VIDEOPORT_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION }; // @brief On Resolution Pre changed // @text OnResolutionPreChange // @param resolution: resolution @@ -450,7 +450,7 @@ namespace WPEFramework { // @event struct EXTERNAL IDSVideoDeviceNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_VIDEODEVICE_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION }; // @brief Zoom settings changed // @text OnZoomSettingsChanged @@ -473,7 +473,7 @@ namespace WPEFramework { // @event struct EXTERNAL IDSHostNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_HOST_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION }; // @brief Sleep mode changed // @text onSleepModeChanged @@ -486,7 +486,7 @@ namespace WPEFramework { // @event struct EXTERNAL IDSCompositeInNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_COMPOSITEIN_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION }; // @brief Composite In Hotplug event // @text onCompositeInHotPlug @@ -512,7 +512,7 @@ namespace WPEFramework { // @event struct EXTERNAL IDSFPDNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_PROXY_FPD_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION }; // @brief On Front Panel display time format changed // @text OnFPDTimeFormatChanged diff --git a/apis/Ids.h b/apis/Ids.h index c92692da..1a6160b6 100644 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -296,7 +296,20 @@ namespace Exchange { ID_MIRACAST_SERVICE_NOTIFICATION = ID_MIRACAST_SERVICE + 1, ID_MIRACAST_PLAYER = ID_MIRACAST_SERVICE + 2, ID_MIRACAST_PLAYER_NOTIFICATION = ID_MIRACAST_SERVICE + 3, - ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4 + ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, + + ID_DEVICESETTINGS_MANAGER = ID_ENTOS_OFFSET + 0x3E0, + ID_DEVICESETTINGS_MANAGER_HDMIHOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 1, + ID_DEVICESETTINGS_MANAGER_RXSENSE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 2, + ID_DEVICESETTINGS_MANAGER_HDCP_STATUS_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 3, + ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 4, + ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 5, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 6, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 7, + ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 8, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 9, + ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 10 + }; } } From 8bd694f597b24d1d998512de3df5146911447d4e Mon Sep 17 00:00:00 2001 From: Dosakaya <110212899+Dosakaya@users.noreply.github.com> Date: Thu, 24 Jul 2025 17:24:52 +0530 Subject: [PATCH 03/36] Update IDeviceSettingsManager.h --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 6c37311b..b3a5cf56 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -2,7 +2,7 @@ * If not stated otherwise in this file or this component's LICENSE file the * following copyright and licenses apply: * - * Copyright 2024 RDK Management + * Copyright 2025 RDK Management * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. From 7bf8064c36686bd23157a4c9005b618e66c6b31c Mon Sep 17 00:00:00 2001 From: Dosakaya <110212899+Dosakaya@users.noreply.github.com> Date: Fri, 25 Jul 2025 08:40:36 +0530 Subject: [PATCH 04/36] Update IDeviceSettingsManager.h --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index b3a5cf56..d20b8d06 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -187,7 +187,7 @@ namespace WPEFramework { }; struct HDMIVideoPortResolution { - std::string name; + string name; HDMIInTVResolution pixelResolution; HDMIVideoAspectRatio aspectRatio; HDMIInVideoStereoScopicMode stereoScopicMode; From 1f7ae133efa325c3128361584177e4fe42e76140 Mon Sep 17 00:00:00 2001 From: Dosakaya <110212899+Dosakaya@users.noreply.github.com> Date: Wed, 30 Jul 2025 10:37:34 +0530 Subject: [PATCH 05/36] Update IDeviceSettingsManager.h --- .../IDeviceSettingsManager.h | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index d20b8d06..c886cfcd 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -88,17 +88,15 @@ namespace WPEFramework { }; enum FPDTimeFormat : uint8_t { - DS_FPD_TIMEFORMAT_UNKNOWN = 0, - DS_FPD_TIMEFORMAT_12_HOUR = 1, - DS_FPD_TIMEFORMAT_24_HOUR = 2 - // TODO: not available in rdk-halif-device_settings + DS_FPD_TIMEFORMAT_12_HOUR = 0, + DS_FPD_TIMEFORMAT_24_HOUR, + DS_FPD_TIMEFORMAT_MAX }; enum SleepMode : uint8_t { - DS_HOST_SLEEPMODE_UNKNOWN = 0, - DS_HOST_SLEEPMODE_LIGHT = 1, - DS_HOST_SLEEPMODE_DEEP = 2, - // TODO: not available in rdk-halif-device_settings + DS_HOST_SLEEPMODE_LIGHT = 0, + DS_HOST_SLEEPMODE_DEEP, + DS_HOST_SLEEPMODE_MAX }; enum HDMIInPort : int8_t { @@ -269,10 +267,10 @@ namespace WPEFramework { struct CompositeInStatus { bool isPresented; CompositeInPort activePort; - - // TODO: this is a single enum in rdk-halif-device_settings - https://github.com/rdkcentral/rdk-halif-device_settings/blob/16515f3b8fdbc683164dd58e50a0f7d6ff995d1f/include/dsCompositeInTypes.h#L120C5-L120C24 + /* Structure can not have array in this interface file. So separated the booleans. + https://github.com/rdkcentral/rdk-halif-device_settings/blob/16515f3b8fdbc683164dd58e50a0f7d6ff995d1f/include/dsCompositeInTypes.h#L120 */ bool isPort0Connected; - bool isPort1Connected; /* Can't have array in structures..so separating the booleans */ + bool isPort1Connected; }; // @event From 55c24997a415bf73ccea052edee2e2bf5117bf73 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 08:31:22 +0530 Subject: [PATCH 06/36] IDeviceSettingsManager.h updated as per new requirement --- .../IDeviceSettingsManager.h | 2343 ++++++++++++++--- apis/Ids.h | 10 - 2 files changed, 2026 insertions(+), 327 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index c886cfcd..73cc94b7 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -2,7 +2,7 @@ * If not stated otherwise in this file or this component's LICENSE file the * following copyright and licenses apply: * - * Copyright 2025 RDK Management + * Copyright 2024 RDK Management - vdixit - Change to 2025 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,176 +25,11 @@ #include "Module.h" namespace WPEFramework { - namespace Exchange { - struct EXTERNAL IDeviceSettingsManager : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER }; - - enum DisplayEvent { - DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event - DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event - DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event - DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event - DS_DISPLAY_HDCPPROTOCOL_CHANGE = 4, ///< HDCP Protocol Version Change event - DS_DISPLAY_EVENT_MAX = 5 ///< MAX - }; - - struct ResolutionChange { - uint32_t width; - uint32_t height; - }; - - enum HDRStandard : uint16_t { - DS_HDRSTANDARD_NONE = 0x0, - DS_HDRSTANDARD_HDR10 = 0x01, - DS_HDRSTANDARD_HLG = 0x02, - DS_HDRSTANDARD_DOLBYVISION = 0x04, - DS_HDRSTANDARD_TECHNICOLORPRIME = 0x08, - DS_HDRSTANDARD_HDR10PLUS = 0x10, - DS_HDRSTANDARD_SDR = 0x20, - DS_HDRSTANDARD_INVALID = 0x80 - }; - - enum HDCPStatus : uint8_t { - DS_HDCP_STATUS_UNPOWERED = 0, - DS_HDCP_STATUS_UNAUTHENTICATED = 1, - DS_HDCP_STATUS_AUTHENTICATED = 2, - DS_HDCP_STATUS_AUTHENTICATIONFAILURE = 3, - DS_HDCP_STATUS_INPROGRESS = 4, - DS_HDCP_STATUS_PORTDISABLED = 5, - DS_HDCP_STATUS_MAX = 6 - }; - - enum HDCPProtocolVersion : uint8_t { - DS_HDCP_VERSION_1X = 0, - DS_HDCP_VERSION_2X = 1, - DS_HDCP_VERSION_MAX = 2 - }; - - enum VideoZoom : int8_t { - DS_VIDEO_DEVICE_ZOOM_UNKNOWN = -1, - DS_VIDEO_DEVICE_ZOOM_NONE = 0, - DS_VIDEO_DEVICE_ZOOM_FULL = 1, - DS_VIDEO_DEVICE_ZOOM_LB_16_9 = 2, - DS_VIDEO_DEVICE_ZOOM_LB_14_9 = 3, - DS_VIDEO_DEVICE_ZOOM_CCO = 4, - DS_VIDEO_DEVICE_ZOOM_PAN_SCAN = 5, - DS_VIDEO_DEVICE_ZOOM_LB_2_21_1_ON_4_3 = 6, - DS_VIDEO_DEVICE_ZOOM_LB_2_21_1_ON_16_9 = 7, - DS_VIDEO_DEVICE_ZOOM_PLATFORM = 8, - DS_VIDEO_DEVICE_ZOOM_16_9_ZOOM = 9, - DS_VIDEO_DEVICE_ZOOM_PILLARBOX_4_3 = 10, - DS_VIDEO_DEVICE_ZOOM_WIDE_4_3 = 11, - DS_VIDEO_DEVICE_ZOOM_MAX = 12 - }; - - enum FPDTimeFormat : uint8_t { - DS_FPD_TIMEFORMAT_12_HOUR = 0, - DS_FPD_TIMEFORMAT_24_HOUR, - DS_FPD_TIMEFORMAT_MAX - }; - - enum SleepMode : uint8_t { - DS_HOST_SLEEPMODE_LIGHT = 0, - DS_HOST_SLEEPMODE_DEEP, - DS_HOST_SLEEPMODE_MAX - }; - - enum HDMIInPort : int8_t { - DS_HDMI_IN_PORT_NONE = -1, - DS_HDMI_IN_PORT_0 = 0, - DS_HDMI_IN_PORT_1 = 1, - DS_HDMI_IN_PORT_2 = 2, - DS_HDMI_IN_PORT_3 = 3, - DS_HDMI_IN_PORT_4 = 4 - }; - - enum HDMIInSignalStatus : int8_t { - DS_HDMI_IN_SIGNAL_STATUS_NONE = -1, - DS_HDMI_IN_SIGNAL_STATUS_NOSIGNAL = 0, - DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, - DS_HDMI_IN_SIGNAL_STATUS_NOTSUPPORTED = 2, - DS_HDMI_IN_SIGNAL_STATUS_STABLE = 3, - DS_HDMI_IN_SIGNAL_STATUS_MAX = 4 - }; - - enum HDMIInTVResolution : uint32_t { - DS_HDMIIN_RESOLUTION_480I = 0x000001, - DS_HDMIIN_RESOLUTION_480P = 0x000002, - DS_HDMIIN_RESOLUTION_576I = 0x000004, - DS_HDMIIN_RESOLUTION_576P = 0x000008, - DS_HDMIIN_RESOLUTION_576P50 = 0x000010, - DS_HDMIIN_RESOLUTION_720P = 0x000020, - DS_HDMIIN_RESOLUTION_720P50 = 0x000040, - DS_HDMIIN_RESOLUTION_1080I = 0x000080, - DS_HDMIIN_RESOLUTION_1080P = 0x000100, - DS_HDMIIN_RESOLUTION_1080P24 = 0x000200, - DS_HDMIIN_RESOLUTION_1080I25 = 0x000400, - DS_HDMIIN_RESOLUTION_1080P25 = 0x000800, - DS_HDMIIN_RESOLUTION_1080P30 = 0x001000, - DS_HDMIIN_RESOLUTION_1080I50 = 0x002000, - DS_HDMIIN_RESOLUTION_1080P50 = 0x004000, - DS_HDMIIN_RESOLUTION_1080P60 = 0x008000, - DS_HDMIIN_RESOLUTION_2160P24 = 0x010000, - DS_HDMIIN_RESOLUTION_2160P25 = 0x020000, - DS_HDMIIN_RESOLUTION_2160P30 = 0x040000, - DS_HDMIIN_RESOLUTION_2160P50 = 0x080000, - DS_HDMIIN_RESOLUTION_2160P60 = 0x100000 - }; - - enum HDMIVideoAspectRatio : uint8_t { - DS_HDMIIN_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, - DS_HDMIIN_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, - DS_HDMIIN_ASPECT_RATIO_MAX = 2 - }; - - enum HDMIInVideoStereoScopicMode : uint8_t { - DS_HDMIIN_SSMODE_UNKNOWN = 0, - DS_HDMIIN_SSMODE_2D = 1, - DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3, - DS_HDMIIN_SSMODE_MAX = 4 - }; - - enum HDMIInVideoFrameRate : uint8_t { - DS_HDMIIN_FRAMERATE_UNKNOWN = 0, - DS_HDMIIN_FRAMERATE_24 = 1, - DS_HDMIIN_FRAMERATE_25 = 2, - DS_HDMIIN_FRAMERATE_30 = 3, - DS_HDMIIN_FRAMERATE_60 = 4, - DS_HDMIIN_FRAMERATE_23_98 = 5, - DS_HDMIIN_FRAMERATE_29_97 = 6, - DS_HDMIIN_FRAMERATE_50 = 7, - DS_HDMIIN_FRAMERATE_59_94 = 8, - DS_HDMIIN_FRAMERATE_100 = 9, - DS_HDMIIN_FRAMERATE_119_88 = 10, - DS_HDMIIN_FRAMERATE_120 = 11, - DS_HDMIIN_FRAMERATE_200 = 12, - DS_HDMIIN_FRAMERATE_239_76 = 13, - DS_HDMIIN_FRAMERATE_240 = 14, - DS_HDMIIN_FRAMERATE_MAX = 15 - }; - - // AiW - enum HDMIInAviContentType : uint8_t { - DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS = 0, - DS_HDMIIN_AVICONTENT_TYPE_PHOTO = 1, - DS_HDMIIN_AVICONTENT_TYPE_CINEMA = 2, - DS_HDMIIN_AVICONTENT_TYPE_GAME = 3, - DS_HDMIIN_AVICONTENT_TYPE_NOT_SIGNALLED = 4, - DS_HDMIIN_AVICONTENT_TYPE_MAX = 5 - }; - - struct HDMIVideoPortResolution { - string name; - HDMIInTVResolution pixelResolution; - HDMIVideoAspectRatio aspectRatio; - HDMIInVideoStereoScopicMode stereoScopicMode; - HDMIInVideoFrameRate frameRate; - bool interlaced; - }; +namespace Exchange { + struct EXTERNAL IDeviceSettingsManagerAudio : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_AUDIO }; enum AudioPortType : uint8_t { - AUDIO_PORT_TYPE_LR = 0, AUDIO_PORT_TYPE_HDMI = 1, AUDIO_PORT_TYPE_SPDIF = 2, @@ -204,6 +39,28 @@ namespace WPEFramework { AUDIO_PORT_TYPE_MAX = 6 }; + enum AudioPortState : uint8_t { + AUDIO_PORT_STATE_UNKNOWN = 0, + AUDIO_PORT_STATE_UNINITIALIZED = 1, + AUDIO_PORT_STATE_INITIALIZED = 2 + }; + + enum AudioEncoding : uint8_t { + AUDIO_ENCODING_NONE = 0, + AUDIO_ENCODING_DISPLAY = 1, + AUDIO_ENCODING_PCM = 2, + AUDIO_ENCODING_AC3 = 3, + AUDIO_ENCODING_EAC3 = 4 + }; + + enum AudioCompression : uint8_t { + AUDIO_COMPRESSION_NONE = 0, + AUDIO_COMPRESSION_LIGHT = 1, + AUDIO_COMPRESSION_MEDIUM = 2, + AUDIO_COMPRESSION_HEAVY = 3, + AUDIO_COMPRESSION_MAX = 4, + }; + enum AudioFormat : uint8_t { AUDIO_FORMAT_NONE = 0, AUDIO_FORMAT_PCM = 1, @@ -223,17 +80,82 @@ namespace WPEFramework { AUDIO_FORMAT_MAX = 15 }; - enum AudioPortState : uint8_t { - AUDIO_PORT_STATE_UNKNOWN = 0, - AUDIO_PORT_STATE_UNINITIALIZED = 1, - AUDIO_PORT_STATE_INITIALIZED = 2 + enum AudioDuckingAction : uint8_t { + AUDIO_DUCKINGACTION_START = 0, + AUDIO_DUCKINGACTION_STOP = 1, + AUDIO_DUCKINGACTION_MAX = 2, + }; + + enum AudioDuckingType : uint8_t { + AUDIO_DUCKINGTYPE_ABSOLUTE = 0, + AUDIO_DUCKINGTYPE_RELATIVE = 1, + AUDIO_DUCKINGTYPE_MAX = 2 }; - enum DolbyAtmosCapability : uint8_t { - AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, - AUDIO_DOLBYATMOS_DDPLUS_STREAM = 1, - AUDIO_DOLBYATMOS_ATMOS_METADATA = 2, - AUDIO_DOLBYATMOS_MAX = 3 + enum AudioCapabilities : uint32_t { + AUDIO_CAPS_NONE = 0, + AUDIO_CAPS_ATMOS = 1, + AUDIO_CAPS_DOLBY_DIGITAL = 2, + AUDIO_CAPS_DOLBY_DIGITAL_PLUS = 4, + AUDIO_CAPS_DIGITAL_AUDIO_DELIVERY = 8, + AUDIO_CAPS_DIGITAL_AUDIO_PROCESS_V2 = 16, + AUDIO_CAPS_MS12 = 32, + AUDIO_CAPS_MS12_V2 = 64, + AUDIO_CAPS_INVALID = 128, + + }; + + enum AudioARCType : uint8_t { + AUDIO_ARCTYPE_NONE = 0, + AUDIO_ARCTYPE_ARC = 1, + AUDIO_ARCTYPE_EARC = 2 + }; + + enum AudioInput : uint8_t { + AUDIO_INPUT_PRIMARY = 0, + AUDIO_INPUT_SYSTEM = 1, + AUDIO_INPUT_MAX = 2 + }; + + struct AudioARCStatus { + AudioARCType type; + bool status; + }; + + enum MS12Capabilities : uint8_t { + AUDIO_MS12_CAPABILITIES_NONE = 0, + AUDIO_MS12_CAPABILITIES_DOLBYVOLUME = 1, + AUDIO_MS12_CAPABILITIES_INTELLIGENT_EQUALIZER = 2, + AUDIO_MS12_CAPABILITIES_DIALOG_ENHANCER = 4, + AUDIO_MS12_CAPABILITIES_VOLUME_LEVELLER = 8, + AUDIO_MS12_CAPABILITIES_BASE_ENHANCER = 16, + AUDIO_MS12_CAPABILITIES_SURROUND_DECODER = 32, + AUDIO_MS12_CAPABILITIES_DRC_MODE = 64, + AUDIO_MS12_CAPABILITIES_SURROUND_VIRTUALIZER = 128, + AUDIO_MS12_CAPABILITIES_MI_STEERING = 256, + AUDIO_MS12_CAPABILITIES_GRAPHIC_EQUALIZER = 512, + AUDIO_MS12_CAPABILITIES_LE_CONFIG = 1024, + AUDIO_MS12_CAPABILITIES_INVALID = (1 << 31) + }; + + // TODO AudioSADList + + // TODO MS12 Audio Profile list + + struct MS12AudioProfile { + string audioProfile; + }; + + using IDeviceSettingsAudioMS12AudioProfileIterator = RPC::IIteratorType; + + struct VolumeLeveller { + uint8_t mode; /* @text 0 = off, 1 = on, 2 = auto */ + uint8_t level; /* @text Value of volume leveller. 0 -10 */ + }; + + struct SurroundVirtualizer { + uint8_t mode; /* @text 0 = off, 1 = on, 2 = auto */ + uint8_t boost; /* @text Value of boost level. 0 -96 */ }; enum StereoMode : uint8_t { @@ -247,69 +169,40 @@ namespace WPEFramework { AUDIO_STEREO_MAX = 7 }; - enum CompositeInPort : uint8_t { - DS_COMPOSITE_IN_NONE = 0 /* @text NONE */, - DS_COMPOSITE_IN_PORT_0 = 1 /* @text CompositeIn Port 0 */, - DS_COMPOSITE_IN_PORT_1 = 2 /* @text CompositeIn Port 1 */, - DS_COMPOSITE_IN_PORT_MAX = 3 /* @text CompositeIn Port Max*/ - }; - - // AiW - enum CompositeInSignalStatus : uint8_t { - DS_COMPOSITE_IN_SIGNAL_STATUS_UNKNOWN = 0 /* @text UNKNOWN */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = 1 /* @text Signal Status None */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 2 /* @text Signal Status No Signal */, - DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 3 /* @text Signal Status Unstable */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 4 /* @text Signal Status Not supported */, - DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 5 /* @text Signal Status Stable */ + enum DolbyAtmosCapability: uint8_t { + AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, + AUDIO_DOLBYATMOS_DDPLUS_STREAM = 1, + AUDIO_DOLBYATMOS_ATMOS_METADATA = 2, + AUDIO_DOLBYATMOS_MAX = 3 }; - struct CompositeInStatus { - bool isPresented; - CompositeInPort activePort; - /* Structure can not have array in this interface file. So separated the booleans. - https://github.com/rdkcentral/rdk-halif-device_settings/blob/16515f3b8fdbc683164dd58e50a0f7d6ff995d1f/include/dsCompositeInTypes.h#L120 */ - bool isPort0Connected; - bool isPort1Connected; + enum SurroundMode: uint8_t { + AUDIO_SURROUND_MODE_NONE = 0, + AUDIO_SURROUND_MODE_DD = 1, + AUDIO_SURROUND_MODE_DDPLUS = 2, + AUDIO_SURROUND_MODE_MAX = 4 }; - // @event - struct EXTERNAL IHDMIHotPlugNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIHOTPLUG_NOTIFICATION }; - // @brief HDMI Hotplug event - // @text OnHDMIHotPlug - // @param displayEvent: CONNECTED or DISCONNECTED - virtual void OnHDMIHotPlug(DisplayEvent displayEvent) { }; + enum MS12Feature: uint8_t { + AUDIO_MS12_FEATURE_DAPV2 = 0, + AUDIO_MS12_FEATURE_DE = 1, + AUDIO_MS12_FEATURE_MAX = 2 }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IHDMIHotPlugNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IHDMIHotPlugNotification* notification /* @in */) = 0; + // TODO AudioConfig type from dsAVDTypes.h - vdixit - // @event - struct EXTERNAL IRxSenseNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_RXSENSE_NOTIFICATION }; - // @brief RX Sense event - // @text OnRxSense - // @param displayEvent: RX Sense On or Off - virtual void OnRxSense(DisplayEvent displayEvent) { }; + struct AudioSADItem { + int sad /* @brief SAD value */ ; }; + using IDSAudioSADIterator = RPC::IIteratorType; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IRxSenseNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IRxSenseNotification* notification /* @in */) = 0; - - // @event - struct EXTERNAL IHDCPStatusNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HDCP_STATUS_NOTIFICATION }; - // @brief HDCP Protocol version change - // @text OnHDCPProtocolChangeStatus - virtual void OnHDCPProtocolChangeStatus() { }; + struct AudioARCStatus { + AudioARCType arcType /* @brief ARC Type */ ; + bool status /* @brief ARC status */; }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IHDCPStatusNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IHDCPStatusNotification* notification /* @in */) = 0; - // @event - struct EXTERNAL IDSAudioNotification : virtual public Core::IUnknown { + struct EXTERNAL INotification : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION }; // @brief Associated Audio mixing changed @@ -368,165 +261,1981 @@ namespace WPEFramework { virtual void OnAudioLevelChangedEvent(int audioLevel) { }; }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSAudioNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSAudioNotification* notification /* @in */) = 0; + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerAudio::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerAudio::INotification* notification /* @in */) = 0; + + /** Get Audio Port . */ + // @text getAudioPort + // @brief Get Audio Port handle for the port type and index + // @param type: Type of Audio port - see AudioPortType + // @param index: index of the audio port within the list of audio port types + // @param handle: handle to the port + virtual Core::hresult GetAudioPort(const AudioPortType type /* @in */, const int index /* @in */,int &handle /* @out */) = 0; + + /** Terminate Audio Port . */ + // @text audioPortTerm + // @brief Terminate the Audio Port for the port type and index + // @param type: Type of Audio port - see AudioPortType + // @param index: index of the audio port within the list of audio port types + // @param handle: handle to the port + virtual Core::hresult AudioPortTerm(const AudioPortType type /* @in */, const int index /* @in */,int handle /* @in */) = 0; + + /** Audio Port status. */ + // @text isAudioPortEnabled + // @brief Audio port status + // @param type: Type of Audio port - see AudioPortType + // @param index: index of the audio port within the list of audio port types + // @param handle: handle to the port + virtual Core::hresult IsAudioPortEnabled(const AudioPortType type /* @in */, const int index /* @in */,int &handle /* @out */) = 0; + + /** Enable Audio Port. */ + // @text enableAudioPort + // @brief Audio port status + // @param type: Type of Audio port - see AudioPortType + // @param index: index of the audio port within the list of audio port types + // @param handle: handle to the port + virtual Core::hresult EnableAudioPort(const AudioPortType type /* @in */, const int index /* @in */,int &handle /* @out */) = 0; + + /** Get Supported ARC types . */ + // @text getSupportedARCTypes + // @brief Get Supported ARC types + // @param handle: handle returned in GetAudioPort() + // @param types: Supported types + virtual Core::hresult GetSupportedARCTypes(const int handle /* @in */, int &types /* @out */) = 0; + + /** Set SAD */ + // @text setSAD + // @brief Get Supported ARC types + // @param handle: handle returned in GetAudioPort() + // @param count: number of items in sadList (max 15) + // @param sadList: SAD array + virtual Core::hresult SetSAD(const int handle /* @in */, int count /* @in */, int sadList[] /* @in */) = 0; + + /** Enable ARC */ + // @text enableARC + // @brief Get Supported ARC types + // @param handle: handle returned in GetAudioPort() + // @param arcStatus: ARC param + virtual Core::hresult EnableARC(const int handle /* @in */, AudioARCStatus arcStatus /* @in */) = 0; + + /** Get Stereo Mode . */ + // @text getStereoMode + // @brief Get Stereo Mode + // @param handle: handle returned in GetAudioPort() + // @param mode: mode + virtual Core::hresult GetStereoMode(const int handle /* @in */, StereoMode &mode /* @out */) = 0; + + /** Set Stereo Mode . */ + // @text setStereoMode + // @brief Set Stereo Mode + // @param handle: handle returned in GetAudioPort() + // @param mode: mode + // @param persist: persist the mode + virtual Core::hresult SetStereoMode(const int handle /* @in */, StereoMode mode /* @in */ ,bool persist /* @in */) = 0; + + /** Get Stereo Auto . */ + // @text getStereoAuto + // @brief Get Stereo Auto + // @param handle: handle returned in GetAudioPort() + // @param mode: auto mode + virtual Core::hresult GetStereoAuto(const int handle /* @in */, int &mode /* @out */) = 0; + + /** Set Stereo Auto . */ + // @text setStereoAuto + // @brief Set Stereo Auto + // @param handle: handle returned in GetAudioPort() + // @param mode: auto mode + // @param persist: persist the setting + virtual Core::hresult SetStereoAuto(const int handle /* @in */, int mode /* @in */, bool persist /* @in */) = 0; + + /** Set Audio Mute . */ + // @text setAudioMute + // @brief Set Audio mute + // @param handle: handle returned in GetAudioPort() + // @param mute: Mute (true) or Unmute (false) + virtual Core::hresult SetAudioMute(const int handle /* @in */, bool mute /* @in */) = 0; + + /** Audio Mute Status. */ + // @text isAudioMuted + // @brief Audio mute status + // @param handle: handle returned in GetAudioPort() + // @param muted: Muted (true) or not (false) + virtual Core::hresult IsAudioMuted(const int handle /* @in */, bool &muted /* @out */) = 0; + + /** Set Audio ducking */ + // @text setAudioDucking + // @brief Set Audio ducking + // @param handle: handle returned in GetAudioPort() + // @param duckingType: Audio ducking type + // @param duckingAction: Audio ducking action + // @param level : Volume level when audio is ducked. + virtual Core::hresult SetAudioDucking(const int handle /* @in */, AudioDuckingType duckingType /* @in */, AudioDuckingAction duckingAction /* @in */, uint8_t level /* @in */) = 0; + + /** Set Audio Level */ + // @text setAudioLevel + // @brief Set Audio Level + // @param handle: handle returned in GetAudioPort() + // @param audioLevel: Audio level + virtual Core::hresult SetAudioLevel(const int handle /* @in */, float audioLevel /* @in */) = 0; + + /** Get Audio Level */ + // @text GetAudioDucking + // @brief Get Audio Level + // @param handle: handle returned in GetAudioPort() + // @param audioLevel: Audio level + virtual Core::hresult GetAudioLevel(const int handle /* @in */, float &audioLevel /* @out */) = 0; + + /** Set Audio Gain */ + // @text setAudioGain + // @brief Set Audio Gain + // @param handle: handle returned in GetAudioPort() + // @param gainLevel: Gain level + virtual Core::hresult SetAudioGain(const int handle /* @in */, float gainLevel /* @in */) = 0; + + /** Get Audio Gain */ + // @text setAudioGain + // @brief Get Audio Gain + // @param handle: handle returned in GetAudioPort() + // @param gainLevel: Gain level + virtual Core::hresult GetAudioGain(const int handle /* @in */, float &gainLevel /* @out */) = 0; + + /** Get Audio Format */ + // @text getAudioFormat + // @brief Get Audio Format + // @param handle: handle returned in GetAudioPort() + // @param audioFormat: Audio format + virtual Core::hresult GetAudioFormat(const int handle /* @in */, AudioFormat &audioFormat /* @out */) = 0; + + /** Get Audio encoding */ + // @text getAudioEncoding + // @brief Get Audio encoding + // @param handle: handle returned in GetAudioPort() + // @param encoding: Audio encoding + virtual Core::hresult GetAudioEncoding(const int handle /* @in */, AudioEncoding &encoding /* @out */) = 0; + + /** Get Audio Persistence status . */ + // @text getAudioEnablePersist + // @brief Get Persistence status + // @param handle: handle returned in GetAudioPort() + // @param enabled: Is persistence enabled or not + // @param portName: portName for which persistence is enabled + virtual Core::hresult GetAudioEnablePersist(const int handle /* @in */, bool &enabled /* @out */, string &portName /* @out */) = 0; + + /** Set Audio Persistence status . */ + // @text SetAudioEnablePersist + // @brief Set Persistence status + // @param handle: handle returned in GetAudioPort() + // @param enable : persistence enable (true) or disable (false) + // @param portName: portName for which persistence is enabled + virtual Core::hresult SetAudioEnablePersist(const int handle /* @in */, bool enable /* @in */, string &portName /* @in */) = 0; + + /** Audio MS decode Status. */ + // @text isAudioMSDecoded + // @brief Audio MS decode status + // @param handle: handle returned in GetAudioPort() + // @param hasms11Decode: true or false + virtual Core::hresult IsAudioMSDecoded(const int handle /* @in */, bool &hasms11Decode /* @out */) = 0; + + /** Audio MS12 decode Status. */ + // @text isAudioMS12Decoded + // @brief Audio MS12 decode status + // @param handle: handle returned in GetAudioPort() + // @param hasms12Decode: true or false + virtual Core::hresult IsAudioMS12Decoded(const int handle /* @in */, int &hasms12Decode /* @out */) = 0; + + /** Get Audio LE config */ + // @text getAudioLEConfig + // @brief Get Audio LE config + // @param handle: handle returned in GetAudioPort() + // @param enabled: true (enabled) or false (disabled) + virtual Core::hresult GetAudioLEConfig(const int handle /* @in */, bool &enabled /* @out */) = 0; + + /** Enable Audio LE config */ + // @text enableAudioLEConfig + // @brief Audio LE config Enable + // @param handle: handle returned in GetAudioPort() + // @param enabled: true (enabled) or false (disabled) + virtual Core::hresult EnableAudioLEConfig(const int handle /* @in */, bool enable /* @in */) = 0; + + /** Set Audio Delay */ + // @text setAudioDelay + // @brief Set Audio Delay + // @param handle: handle returned in GetAudioPort() + // @param audioDelay: Audio delay in millisecs + virtual Core::hresult SetAudioDelay(const int handle /* @in */, uint32_t audioDelay /* @in */) = 0; + + /** Get Audio Delay */ + // @text getAudioDelay + // @brief Get Audio Delay + // @param handle: handle returned in GetAudioPort() + // @param audioDelay: Audio delay in millisecs + virtual Core::hresult GetAudioDelay(const int handle /* @in */, uint32_t &audioDelay /* @out */) = 0; + + /** Set Audio Delay Offset */ + // @text setAudioDelayOffset + // @brief Set Audio Delay offset + // @param handle: handle returned in GetAudioPort() + // @param delayOffset: delay offset in millisecs + virtual Core::hresult SetAudioDelayOffset(const int handle /* @in */, int delayOffset /* @in */) = 0; + + /** Get Audio Delay Offset */ + // @text getAudioDelayOffset + // @brief Get Audio Delay offset + // @param handle: handle returned in GetAudioPort() + // @param delayOffset: delay offset in millisecs + virtual Core::hresult GetAudioDelayOffset(const int handle /* @in */, uint32_t &delayOffset /* @out */) = 0; + + /** Get Audio Sink device Atmos capability */ + // @text getAudioSinkDeviceAtmosCapability + // @brief Get Audio Sink device Atmos capability + // @param handle: handle returned in GetAudioPort() + // @param atmosCapability: Atmos capability + virtual Core::hresult GetAudioSinkDeviceAtmosCapability(const int handle /* @in */, DolbyAtmosCapability &atmosCapability /* @out */) = 0; + + /** Set Audio Atmos output mode */ + // @text setAudioAtmosOutputMode + // @brief Set Audio Atmos output mode + // @param handle: handle returned in GetAudioPort() + // @param enable: Enable audio atmos output mode + virtual Core::hresult SetAudioAtmosOutputMode(const int handle /* @in */, bool enable /* @in */) = 0; + + /** Set Audio Compression */ + // @text setAudioCompression + // @brief Set Audio Compression + // @param handle: handle returned in GetAudioPort() + // @param compressionLevel: compression level + virtual Core::hresult SetAudioCompression(const int handle /* @in */, int compressionLevel /* @in */) = 0; + + /** Get Audio Compression */ + // @text getAudioCompression + // @brief Get Audio Compression + // @param handle: handle returned in GetAudioPort() + // @param compressionLevel: compression level + virtual Core::hresult GetAudioCompression(const int handle /* @in */, int &compressionLevel /* @out */) = 0; + + /** Set Audio Dialog Enhancement */ + // @text setAudioDialogEnhancement + // @brief Set Audio Dialog Enhancement + // @param handle: handle returned in GetAudioPort() + // @param level: Enhancement level + virtual Core::hresult SetAudioDialogEnhancement(const int handle /* @in */, int level /* @in */) = 0; + + /** Get Audio Dialog Enhancement */ + // @text getAudioDialogEnhancement + // @brief Get Audio Dialog Enhancement + // @param handle: handle returned in GetAudioPort() + // @param level: Enhancement level + virtual Core::hresult GetAudioDialogEnhancement(const int handle /* @in */, int &level /* @out */) = 0; + + /** Set Audio Dolby Volume mode */ + // @text setAudioDolbyVolumeMode + // @brief Set Audio Dolby volume mode + // @param handle: handle returned in GetAudioPort() + // @param enable: true (enable dolby volume mode) or false (disable dolby volume mode) + virtual Core::hresult SetAudioDolbyVolumeMode(const int handle /* @in */, bool enable /* @in */) = 0; + + /** Get Audio Dolby Volume mode */ + // @text getAudioDolbyVolumeMode + // @brief Get Audio Dolby volume mode + // @param handle: handle returned in GetAudioPort() + // @param enabled: true (enabled dolby volume mode) or false (disabled dolby volume mode) + virtual Core::hresult GetAudioDolbyVolumeMode(const int handle /* @in */, bool &enabled /* @out */) = 0; + + /** Set Audio Intelligent equalizer mode */ + // @text setAudioIntelligentEqualizerMode + // @brief Set Audio Intelligent equalizer mode + // @param handle: handle returned in GetAudioPort() + // @param mode: mode + virtual Core::hresult SetAudioIntelligentEqualizerMode(const int handle /* @in */, int mode /* @in */) = 0; + + /** Get Audio Intelligent equalizer mode */ + // @text getAudioIntelligentEqualizerMode + // @brief Get Audio Intelligent equalizer mode + // @param handle: handle returned in GetAudioPort() + // @param mode: mode + virtual Core::hresult GetAudioIntelligentEqualizerMode(const int handle /* @in */, int &mode /* @out */) = 0; + + /** Set Audio Volume leveller */ + // @text setAudioVolumeLeveller + // @brief Set Audio Volume leveller + // @param handle: handle returned in GetAudioPort() + // @param volumeLeveller: volume leveller (mode and a level) + virtual Core::hresult SetAudioVolumeLeveller(const int handle /* @in */, VolumeLeveller volumeLeveller /* @in */) = 0; + + /** Get Audio Volume leveller */ + // @text getAudioVolumeLeveller + // @brief Get Audio Volume leveller + // @param handle: handle returned in GetAudioPort() + // @param volumeLeveller: volume leveller (mode and a level) + virtual Core::hresult GetAudioVolumeLeveller(const int handle /* @in */, VolumeLeveller &volumeLeveller /* @out */) = 0; + + /** Set Audio Bass Enhancer */ + // @text setAudioBassEnhancer + // @brief Set Audio Bass Enhancer + // @param handle: handle returned in GetAudioPort() + // @param boost: boost for bass + virtual Core::hresult SetAudioBassEnhancer(const int handle /* @in */, int boost /* @in */) = 0; + + /** Get Audio Bass Enhancer */ + // @text getAudioBassEnhancer + // @brief Get Audio Bass Enhancer + // @param handle: handle returned in GetAudioPort() + // @param boost: boost for bass + virtual Core::hresult GetAudioBassEnhancer(const int handle /* @in */, int &boost /* @out */) = 0; + + /** Enable Audio Surroud Decoder */ + // @text enableAudioSurroudDecoder + // @brief Enable Audio Surroud Decoder + // @param handle: handle returned in GetAudioPort() + // @param enable: true (surround decoder enabled) or false (surround decoder disabled) + virtual Core::hresult EnableAudioSurroudDecoder(const int handle /* @in */, bool enable /* @in */) = 0; + + /** Is Audio Surroud Decoder enabled? */ + // @text isAudioSurroudDecoderEnabled + // @brief Audio Surroud Decoder enabled or not + // @param handle: handle returned in GetAudioPort() + // @param enabled: true (surround decoder enabled) or false (surround decoder disabled) + virtual Core::hresult IsAudioSurroudDecoderEnabled(const int handle /* @in */, bool &enabled /* @out */) = 0; + + /** Set Audio DRC mode */ + // @text setAudioDRCMode + // @brief Set Audio Bass Enhancer + // @param handle: handle returned in GetAudioPort() + // @param drcMode: mode + virtual Core::hresult SetAudioDRCMode(const int handle /* @in */, int drcMode /* @in */) = 0; + + /** Get Audio DRC mode */ + // @text getAudioDRCMode + // @brief Get Audio Bass Enhancer + // @param handle: handle returned in GetAudioPort() + // @param drcMode: mode + virtual Core::hresult GetAudioDRCMode(const int handle /* @in */, int &drcMode /* @out */) = 0; + + /** Set Audio Surroud Virtualizer */ + // @text setAudioSurroudVirtualizer + // @brief Set Audio Surroud Virtualizer + // @param handle: handle returned in GetAudioPort() + // @param surroundVirtualizer: virtualizer + virtual Core::hresult SetAudioSurroudVirtualizer(const int handle /* @in */, SurroundVirtualizer surroundVirtualizer /* @in */) = 0; + + /** Get Audio Surroud Virtualizer */ + // @text getAudioSurroudVirtualizer + // @brief Get Audio Surroud Virtualizer + // @param handle: handle returned in GetAudioPort() + // @param surroundVirtualizer: virtualizer + virtual Core::hresult GetAudioSurroudVirtualizer(const int handle /* @in */, SurroundVirtualizer &surroundVirtualizer /* @out */) = 0; + + /** Set Audio MI Steering */ + // @text setAudioMISteering + // @brief Set Audio MI Steering + // @param handle: handle returned in GetAudioPort() + // @param enable: true (enable steering) or false (disable steering) + virtual Core::hresult SetAudioMISteering(const int handle /* @in */, bool enable /* @out */) = 0; + + /** Get Audio MI Steering */ + // @text getAudioMISteering + // @brief Get Audio MI Steering + // @param handle: handle returned in GetAudioPort() + // @param enable: true (enable steering) or false (disable steering) + virtual Core::hresult GetAudioMISteering(const int handle /* @in */, bool &enable /* @out */) = 0; + + /** Set Audio Graphic Equalizer Mode */ + // @text setAudioGraphicEqualizerMode + // @brief Set Audio Graphic Equalizer Mode + // @param handle: handle returned in GetAudioPort() + // @param mode: Equalizer mode + virtual Core::hresult SetAudioGraphicEqualizerMode(const int handle /* @in */, int mode /* @in */) = 0; + + /** Get Audio Graphic Equalizer Mode */ + // @text getAudioGraphicEqualizerMode + // @brief Get Audio Graphic Equalizer Mode + // @param handle: handle returned in GetAudioPort() + // @param mode: Equalizer mode + virtual Core::hresult GetAudioGraphicEqualizerMode(const int handle /* @in */, int &mode /* @out */) = 0; + + /** Get Audio MS12 profile list */ + // @text getAudioMS12ProfileList + // @brief Get Audio MS12 profile list + // @param handle: handle returned in GetAudioPort() + // @param ms12ProfileList: MS12 profile list iterator + virtual Core::hresult GetAudioMS12ProfileList(const int handle /* @in */, IDeviceSettingsAudioMS12AudioProfileIterator *&ms12ProfileList /* @out */) = 0; + + /** Get Audio MS12 profile */ + // @text getAudioMS12Profile + // @brief Get Audio MS12 profile + // @param handle: handle returned in GetAudioPort() + // @param profile: Name of the profile + virtual Core::hresult GetAudioMS12Profile(const int handle /* @in */, string &profile /* @out */) = 0; + + /** Set Audio MS12 profile */ + // @text setAudioMS12Profile + // @brief Set Audio MS12 profile + // @param handle: handle returned in GetAudioPort() + // @param profile: Name of the profile + virtual Core::hresult SetAudioMS12Profile(const int handle /* @in */, string &profile /* @out */) = 0; + + /** Set Audio Mixer Levels */ + // @text setAudioMixerLevels + // @brief Set Audio Mixer levels + // @param handle: handle returned in GetAudioPort() + // @param audioInput: AudioInput + // @param volume: Volume level + virtual Core::hresult SetAudioMixerLevels(const int handle /* @in */, const AudioInput audioInput /* @in */, int &volume /* @in */) = 0; + + /** Set Associated Audio Mixing values */ + // @text setAssociatedAudioMixing + // @brief Set Associated Audio Mixing values + // @param handle: handle returned in GetAudioPort() + // @param mixing: true or false + virtual Core::hresult SetAssociatedAudioMixing(const int handle /* @in */, bool mixing /* @out */) = 0; + + /** Get Associated Audio Mixing values */ + // @text getAssociatedAudioMixing + // @brief Get Associated Audio Mixing values + // @param handle: handle returned in GetAudioPort() + // @param types: true or false + virtual Core::hresult GetAssociatedAudioMixing(const int handle /* @in */, bool &mixing /* @out */) = 0; + + /** Set Audio Fader control values */ + // @text setAudioFaderControl + // @brief Set Audio Fader control values + // @param handle: handle returned in GetAudioPort() + // @param mixerBalance: Mixer balance for fader control + virtual Core::hresult SetAudioFaderControl(const int handle /* @in */, int &mixerBalance /* @out */) = 0; + + /** Get Audio Fader control values */ + // @text getAudioFaderControl + // @brief Get Audio Fader control values + // @param handle: handle returned in GetAudioPort() + // @param mixerBalance: Mixer balance for fader control + virtual Core::hresult GetAudioFaderControl(const int handle /* @in */, int &mixerBalance /* @out */) = 0; + + /** Set Primary Audio language */ + // @text setAudioPrimaryLanguage + // @brief Set Primary Audio language + // @param handle: handle returned in GetAudioPort() + // @param primaryAudioLanguage: Primary audio language + virtual Core::hresult SetAudioPrimaryLanguage(const int handle /* @in */, string &primaryAudioLanguage /* @in */) = 0; + + /** Get Primary Audio language */ + // @text getAudioPrimaryLanguage + // @brief Get Primary Audio language + // @param handle: handle returned in GetAudioPort() + // @param primaryAudioLanguage: Primary audio language + virtual Core::hresult GetAudioPrimaryLanguage(const int handle /* @in */, string &primaryAudioLanguage /* @out */) = 0; + + /** Set Secondary Audio language */ + // @text setAudioSecondaryLanguage + // @brief Set Secondary Audio language + // @param handle: handle returned in GetAudioPort() + // @param secondaryAudioLanguage: Secondary audio language + virtual Core::hresult SetAudioSecondaryLanguage(const int handle /* @in */, string &secondaryAudioLanguage /* @in */) = 0; + + /** Get Primary Audio language */ + // @text getAudioSecondaryLanguage + // @brief Get Secondary Audio language + // @param handle: handle returned in GetAudioPort() + // @param secondaryAudioLanguage: Secondary audio language + virtual Core::hresult GetAudioSecondaryLanguage(const int handle /* @in */, string &secondaryAudioLanguage /* @out */) = 0; + + /** Get Audio Capabilities */ + // @text getAudioCapabilities + // @brief Get Audio capabilites + // @param handle: handle returned in GetAudioPort() + // @param capabilities: Capabilities + virtual Core::hresult GetAudioCapabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + + /** Get Audio MS12 Capabilities */ + // @text getAudioMS12Capabilities + // @brief Get Audio MS12 capabilites + // @param handle: handle returned in GetAudioPort() + // @param capabilities: Capabilities + virtual Core::hresult GetAudioMS12Capabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + + /** Set Audio MS12 Settings override */ + // @text setAudioMS12SettingsOverride + // @brief Get Audio MS12 capabilites + // @param handle: handle returned in GetAudioPort() + // @param profileName: Name of the profile + // @param profileSettingsName: Name of the profile setting + // @param profileState: ADD or REMOVE + virtual Core::hresult SetAudioMS12SettingsOverride(const int handle /* @in */, string &profileName /* @in */, string &profileSettingsName /* @in */, string &profileSettingValue /* @in */, string &profileState /* @in */ ) = 0; + + /** Is Audio output connected? */ + // @text isAudioOutputConnected + // @brief Is Audio output connected? + // @param handle: handle returned in GetAudioPort() + // @param isConnected: connected (true) or not (false) + virtual Core::hresult IsAudioOutputConnected(const int handle /* @in */, bool &isConnected /* @out */) = 0; + + /** Reset Audio Dialog enhancement */ + // @text resetAudioDialogEnhancement + // @brief Reset Audio Dialog enhancement + // @param handle: handle returned in GetAudioPort() + // @param types: Supported types + virtual Core::hresult ResetAudioDialogEnhancement(const int handle /* @in */) = 0; + + /** Reset Audio Bass enhancement */ + // @text resetAudioBassEnhancer + // @brief Reset Audio Bass enhancement + // @param handle: handle returned in GetAudioPort() + // @param types: Supported types + virtual Core::hresult ResetAudioBassEnhancer(const int handle /* @in */) = 0; + + /** Reset Audio Surround virtualizer */ + // @text resetAudioSurroundVirtualizer + // @brief Reset Audio Surround virtualizer + // @param handle: handle returned in GetAudioPort() + // @param types: Supported types + virtual Core::hresult ResetAudioSurroundVirtualizer(const int handle /* @in */) = 0; + + /** Reset Audio Volume leveller */ + // @text resetAudioVolumeLeveller + // @brief Reset Audio Volume leveller + // @param handle: handle returned in GetAudioPort() + // @param types: Supported types + virtual Core::hresult ResetAudioVolumeLeveller(const int handle /* @in */) = 0; + + /** Get Audio HDMI ARC Port ID */ + // @text getAudioHDMIARCPortId + // @brief Get Audio HDMI ARC Port ID + // @param handle: handle returned in GetAudioPort() + // @param portId: Port Id + virtual Core::hresult GetAudioHDMIARCPortId(const int handle /* @in */, int &portId /* @out */) = 0; + + }; + + struct EXTERNAL IDeviceSettingsManagerCompositeIn : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN }; + + + enum CompositeInPort: int8_t { + DS_COMPOSITE_IN_PORT_NONE = -1 /* @text UNKNOWN */, + DS_COMPOSITE_IN_PORT_0 = 0 /* @text CompositeIn Port 0 */, + DS_COMPOSITE_IN_PORT_1 = 1 /* @text CompositeIn Port 1 */, + DS_COMPOSITE_IN_PORT_MAX = 2 /* @text CompositeIn Port MAX */, + } + + enum CompositeInSignalStatus: int8_t { + DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = -1 /* @text Signal Status None */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 0 /* @text Signal Status No Signal */, + DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 1 /* @text Signal Status Unstable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 2 /* @text Signal Status Not supported */, + DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 3 /* @text Signal Status Stable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @test Signal Status MAX */ + } + + struct CompositeInStatus { + bool isPresented; + CompositeInPort activePort; + bool isPort0Connected; + bool isPort1Connected; /* Can't have array in structures..so separating the booleans */ + } + + struct VideoRectangle { + int x; + int y; + int width; + int height; + } // @event - struct EXTERNAL IHDMIInNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION }; + struct EXTERNAL INotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION }; + + // @brief Composite In Hotplug event + // @text onCompositeInHotPlug + // @param port: Port of the hotplug + // @param isConnected: Is it connected (true) or not(false) + virtual void OnCompositeInHotPlug(const CompositeInPort port, const bool isConnected) {}; + + // @brief Composite In Signal status + // @text onCompositeInSignalStatus + // @param port: Port of the hotplug + // @param signalStatus: Signal status + virtual void OnCompositeInSignalStatus(const CompositeInPort port, const CompositeInSignalStatus signalStatus) {}; + + // @brief Composite In status + // @text onCompositeInStatus + // @param activePort: Active port + // @param isPresented: is it presented to user + virtual void OnCompositeInStatus(const CompositeInPort activePort, const bool isPresented) {}; + + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerCompositeIn::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerCompositeIn::INotification* notification /* @in */) = 0; + + /** Get number of composite inputs. */ + // @text getNrOfCompositeInputs + // @brief Get Preferred Sleep mode. + // @param nrCompositeInputs: number of composite inputs + virtual Core::hresult GetNrOfCompositeInputs(int &nrCompositeInputs /* @out */) = 0; + + /** Get Composite In port status. */ + // @text getCompositeInStatus + // @brief Get Composite In port status + // @param status: Composite In status + virtual Core::hresult GetCompositeInStatus(CompositeInStatus &status /* @out */) = 0; + + /** Select Composite In port */ + // @text selectCompositeInPort + // @brief Select Composite In port. + // @param port: port to be selected + virtual Core::hresult SelectCompositeInPort(const CompositeInPort port /* @in */) = 0; + + /** Scale composite video . */ + // @text scaleCompositeInVideo + // @brief Scale composite video. + // @param videoRect: co-ordinates and width/height to scale to + virtual Core::hresult ScaleCompositeInVideo(const VideoRectangle videoRect /* @in */) = 0; + + }; + + struct EXTERNAL IDeviceSettingsManagerDisplay : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY }; + + enum DisplayEvent { + DS_DISPLAY_EVENT_CONNECTED =0, ///< Display connected event + DS_DISPLAY_EVENT_DISCONNECTED =1, ///< Display disconnected event + DS_DISPLAY_RXSENSE_ON =2, ///< Rx Sense ON event + DS_DISPLAY_RXSENSE_OFF =3, ///< Rx Sense OFF event + DS_DISPLAY_HDCPPROTOCOL_CHANGE=4, ///< HDCP Protocol Version Change event + DS_DISPLAY_EVENT_MAX ///< Display max event + } + + enum DisplayTVResolution: uint32_t { + DS_DISPLAY_RESOLUTION_480I = 0x000001, + DS_DISPLAY_RESOLUTION_480P = 0x000002, + DS_DISPLAY_RESOLUTION_576I = 0x000004, + DS_DISPLAY_RESOLUTION_576P = 0x000008, + DS_DISPLAY_RESOLUTION_576P50 = 0x000010, + DS_DISPLAY_RESOLUTION_720P = 0x000020, + DS_DISPLAY_RESOLUTION_720P50 = 0x000040, + DS_DISPLAY_RESOLUTION_1080I = 0x000080, + DS_DISPLAY_RESOLUTION_1080P = 0x000100, + DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, + DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, + DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, + DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, + DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, + DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, + DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, + DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, + DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, + DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 + } + + enum DisplayVideoAspectRatio : uint8_t { + DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, + DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, + DS_DISPLAY_ASPECT_RATIO_16x9 = 2 /* @text Video Aspect Ratio 16x9 */ + } + + enum DisplayInVideoStereoScopicMode : uint8_t { + DS_DISPLAY_SSMODE_UNKNOWN = 0, + DS_DISPLAY_SSMODE_2D = 1, + DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + } + + enum DisplayInVideoFrameRate: uint8_t { + DS_DISPLAY_FRAMERATE_UNKNOWN = 0, + DS_DISPLAY_FRAMERATE_24 = 1, + DS_DISPLAY_FRAMERATE_25 = 2, + DS_DISPLAY_FRAMERATE_30 = 3, + DS_DISPLAY_FRAMERATE_60 = 4, + DS_DISPLAY_FRAMERATE_23_98 = 5, + DS_DISPLAY_FRAMERATE_29_97 = 6, + DS_DISPLAY_FRAMERATE_50 = 7, + DS_DISPLAY_FRAMERATE_59_94 = 8, + DS_DISPLAY_FRAMERATE_100 = 9, + DS_DISPLAY_FRAMERATE_119_88 = 10, + DS_DISPLAY_FRAMERATE_120 = 11, + DS_DISPLAY_FRAMERATE_200 = 12, + DS_DISPLAY_FRAMERATE_239_76 = 13, + DS_DISPLAY_FRAMERATE_240 = 14, + DS_DISPLAY_FRAMERATE_MAX = 15 + }; + + struct DisplayVideoPortResolution { + string name; + DisplayTVResolution pixelResolution; + DisplayVideoAspectRatio aspectRatio; + DisplayInVideoStereoScopicMode stereoScopicMode; + DisplayInVideoFrameRate frameRate; + bool interlaced; + }; + + using IDeviceSettingsDisplayVideoPortResolutionIterator = RPC::IIteratorType; + + struct DisplayEDID { + int32_t productCode; ///< Product code of the display device + int32_t serialNumber; ///< Serial number of the display device + int32_t manufactureYear; ///< Year of manufacture of the display device + int32_t manufactureWeek; ///< Week of manufacture of the display device + bool hdmiDeviceType; ///< Device type ( @a true if HDMI, @a false if DVI ) + bool isRepeater; ///< Receiver is a repeater ( @a true if Repeater, @a false if connected Receiver is not a repeater) + uint8_t physicalAddressA; ///< Physical Address for HDMI node A + uint8_t physicalAddressB; ///< Physical Address for HDMI node B + uint8_t physicalAddressC; ///< Physical Address for HDMI node C + uint8_t physicalAddressD; ///< Physical Address for HDMI node D + int32_t numOfSupportedResolution; ///< Number of Supported Resolution + IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< EDID Supported Resoultion List + string monitorName; + }; + + // @event + struct EXTERNAL INotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION }; + + // @brief Display HDMI Hot plug event + // @text onDisplayHDMIHotPlug + // @param displayEvent: DS_DISPLAY_EVENT_CONNECTED or DS_DISPLAY_EVENT_DISCONNECTED + virtual void OnDisplayHDMIHotPlug(const DisplayEvent displayEvent) {}; + + // @brief Display RX Sense event + // @text onDisplayRxSense + // @param displayEvent: DS_DISPLAY_RXSENSE_ON or DS_DISPLAY_RXSENSE_OFF + virtual void OnDisplayRxSense(const DisplayEvent displayEvent) {}; + + // @brief Display HDCP Status + // @text OnDisplayHDCPStatus + virtual void OnDisplayHDCPStatus() {}; + + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerDisplay::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerDisplay::INotification* notification /* @in */) = 0; + + /** Get Handle of Video port. */ + // @text getDisplay + // @brief Get Handle of Video port + // @param port: port for which the handle is required + // @param index: index of the port (there can be multiple number of ports) + // @param handle: handle to the port + virtual Core::hresult GetDisplay(VideoPort port /* @in */, int index /* @in */, int &handle /* @out */) = 0; + + /** Get Display Aspect ratio. */ + // @text getDisplayAspectRatio + // @brief Get Display Aspect ratio + // @param handle: handle returned in GetDisplay + // @param aspectRatio: Aspect ratio of port + virtual Core::hresult GetDisplayAspectRatio(const int handle /* @in */, VideoAspectRatio &aspectRatio /* @out */) = 0; + + /** Get Display EDID. */ + // @text getDisplayEdid + // @brief Get Display EDID + // @param handle: handle returned in GetDisplay + // @param edId: EDID information + virtual Core::hresult GetDisplayEdid(const int handle /* @in */, DisplayEDID &edId /* @out */) = 0; + + /** Get Display EDID bytes. */ + // @text getDisplayEdidBytes + // @brief Get Display EDID bytes + // @param handle: handle returned in GetDisplay + // @param edIdBytes: EDID Bytes + // @param edIdLength: length of EDID bytes + virtual Core::hresult GetDisplayEdidBytes(const int handle /* @in */, uint38_t edIdBytes[] /* @out */, uint32_t &edidLength /* @out */) = 0; + + }; + + struct EXTERNAL IDeviceSettingsManagerFPD : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_FPD }; + + enum FPDTimeFormat : uint8_t { + DS_FPD_TIMEFORMAT_12_HOUR = 0, + DS_FPD_TIMEFORMAT_24_HOUR = 1 + DS_FPD_TIMEFORMAT_MAX = 2 + }; + + enum FPDIndicator : uint8_t { + DS_FPD_INDICATOR_MESSAGE = 0, + DS_FPD_INDICATOR_POWER = 1, + DS_FPD_INDICATOR_RECORD = 2, + DS_FPD_INDICATOR_REMOTE = 3, + DS_FPD_INDICATOR_RFBYPASS = 4, + DS_FPD_INDICATOR_MAX = 5 + }; + + enum FPDState : uint8_t { + DS_FPD_STATE_OFF = 0, + DS_FPD_STATE_ON = 1, + DS_FPD_STATE_MAX = 2 + }; + + enum FPDTextDisplay : uint8_t { + DS_FPD_TEXTDISPLAY_TEXT = 0, + DS_FPD_TEXTDISPLAY_MAX = 1 + }; + + enum FPDMode : uint8_t { + DS_FPD_MODE_ANY = 0, + DS_FPD_MODE_TEXT = 1, + DS_FPD_MODE_CLOCK = 2, + DS_FPD_MODE_MAX = 3, + }; + + enum FDPLEDState: uint8_t { + DS_FPD_LED_DEVICE_NONE = 0, + DS_FPD_LED_DEVICE_ACTIVE = 1, + DS_FPD_LED_DEVICE_STANDBY = 2, + DS_FPD_LED_DEVICE_WPS_CONNECTING = 3, + DS_FPD_LED_DEVICE_WPS_CONNECTED = 4, + DS_FPD_LED_DEVICE_WPS_ERROR = 5, + DS_FPD_LED_DEVICE_FACTORY_RESET = 6, + DS_FPD_LED_DEVICE_USB_UPGRADE = 7, + DS_FPD_LED_DEVICE_SW_UPGRADE_ERROR = 8, + DS_FPD_LED_DEVICE_MAX = 9 + }; + + + // @event + struct EXTERNAL INotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION }; + + // @brief On Front Panel display time format changed + // @text OnFPDTimeFormatChanged + // @param timeFormat: current time format 12 or 24 hour + virtual void OnFPDTimeFormatChanged(const FPDTimeFormat timeFormat) {}; + + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerFPD::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingManagerFPD::INotification* notification /* @in */) = 0; + + /** Set Front Panel Display Time. */ + // @text setFPDTime + // @brief Set Front Panel Display Time. + // @param timeFormat: Time format in 12 hour or 24 hour format + // @param minutes: Minutes value to display + // @param seconds: Seconds value to display + virtual Core::hresult SetFPDTime(const FPDTimeFormat timeFormat /* @in */, const uint32_t minutes /* @in */, const uint32_t seconds /* @in */) = 0; + + /** Set Front Panel Display Scroll. */ + // @text setFPDScroll + // @brief Set Front Panel Display Scroll. + // @param scrollHoldDuration: Scroll hold duration + // @param nHorizontalScrollIterations: number of horizontal scroll iterations + // @param nVerticalScrollIterations: number of vertical scroll iterations + virtual Core::hresult SetFPDScroll(const uint32_t scrollHoldDuration /* @in */, const uint32_t nHorizontalScrollIterations /* @in */, const uint32_t nVerticalScrollIterations /* @in */) = 0; + + /** Set Front Panel Display Blink. */ + // @text setFPDBlink + // @brief Set Front Panel Display Blink. + // @param indicator: Type of indicator + // @param blinkDuration: Time in seconds for which the indictor has to be blinked + // @param blinkIterations: number of times the blink has to be done for the blink duration + virtual Core::hresult SetFPDBlink(const FPDIndicator indicator /* @in */, const uint32_t blinkDuration /* @in */, const uint32_t blinkIterations /* @in */) = 0; + + /** Set Front Panel Display Blink. */ + // @text setFPDBrightness + // @brief Set Front Panel Display Blink. + // @param indicator: Type of indicator + // @param brightNess: brightness between 1 and 100 + // @param persist: persist( true ) the brightness or not (false) + virtual Core::hresult SetFPDBrightness(const FPDIndicator indicator /* @in */, const uint32_t brightNess /* @in */, const bool persist /* @in */) = 0; + + /** Get Front Panel Display Brightness. */ + // @text getFPDScroll + // @brief Get Front Panel Display Brightness. + // @param indicator: Type of indicator + // @param brightNess: brightness between 1 and 100 + virtual Core::hresult GetFPDBrightness(const FPDIndicator indicator /* @in */, uint32_t &brightNess /* @out */) = 0; + + /** Set Front Panel Display State. */ + // @text setFPDState + // @brief Set Front Panel Display State. + // @param indicator: Type of indicator + // @param state: FPD State + virtual Core::hresult SetFPDState(const FPDIndicator indicator /* @in */, const FPDState state /* @in */) = 0; + + /** Get Front Panel Display State. */ + // @text getFPDState + // @brief Get Front Panel Display State. + // @param indicator: Type of indicator + // @param state: FPD State + virtual Core::hresult GetFPDState(const FPDIndicator indicator /* @in */, FPDState &state /* @out */) = 0; + + /** Get Front Panel Display Color. */ + // @text getFPDColor + // @brief Get Front Panel Display Color. + // @param indicator: Type of indicator + // @param color: color + virtual Core::hresult GetFPDColor(const FPDIndicator indicator /* @in */, uint32_t &color /* @out */) = 0; + + /** Set Front Panel Display Color. */ + // @text setFPDColor + // @brief Set Front Panel Display State. + // @param indicator: Type of indicator + // @param color: color + virtual Core::hresult SetFPDColor(const FPDIndicator indicator /* @in */, const uint32_t color /* @in */) = 0; + + /** Set Front Panel Text Display (LED). */ + // @text setFPDColor + // @brief Set Front Panel Text Display (LED). + // @param textDisplay: Text display + // @param brightNess: Brightness of the text display + virtual Core::hresult SetFPDTextBrightness(const FPDTextDisplay textDisplay /* @in */, const uint32_t brightNess /* @in */) = 0; + + /** Get Front Panel Text Display (LED). */ + // @text setFPDColor + // @brief Get Front Panel Text Display (LED). + // @param textDisplay: Text display + // @param brightNess: Brightness of the text display + virtual Core::hresult GetFPDTextBrightness(const FPDTextDisplay textDisplay /* @in */, uint32_t &brightNess /* @out */) = 0; + + /** Enable Front Panel Clock display. */ + // @text enableFPDClockDisplay + // @brief Enable Front Panel Clock display. + // @param enable: enable (true) or disable (false) clock display + virtual Core::hresult EnableFPDClockDisplay(const bool enable /* @in */) = 0; + + /** Get Front Panel Display Time format. */ + // @text getFPDTimeFormat + // @brief Get Front Panel Display Time format. + // @param fpdTimeFormat: 12 or 24 hour format + virtual Core::hresult GetFPDTimeFormat(FPDTimeFormat &fpdTimeFormat /* @out */) = 0; + + /** Set Front Panel Display Time format. */ + // @text setFPDTimeFormat + // @brief Set Front Panel Display Time format. + // @param fpdTimeFormat: 12 or 24 hour format + virtual Core::hresult SetFPDTimeFormat(const FPDTimeFormat fpdTimeFormat /* @in */) = 0; + + /** Set Front Panel Display Mode. */ + // @text setFPDMode + // @brief Set Front Panel Display Mode. + // @param fpdMode: FPD Mode + virtual Core::hresult SetFPDMode(const FPDMode fpdMode /* @in */) = 0; + }; + + struct EXTERNAL IDeviceSettingsManagerHDMIIn : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN }; + + enum HDMIInPort : int8_t { + DS_HDMI_IN_PORT_NONE = -1, + DS_HDMI_IN_PORT_0 = 0, + DS_HDMI_IN_PORT_1 = 1, + DS_HDMI_IN_PORT_2 = 2, + DS_HDMI_IN_PORT_3 = 3, + DS_HDMI_IN_PORT_4 = 4, + DS_HDMI_IN_PORT_MAX = 5 + }; + + enum HDMIInSignalStatus: int8_t { + DS_HDMI_IN_SIGNAL_STATUS_NONE = -1, + DS_HDMI_IN_SIGNAL_STATUS_NOSIGNAL = 0, + DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, + DS_HDMI_IN_SIGNAL_STATUS_NOTSUPPORTED = 2, + DS_HDMI_IN_SIGNAL_STATUS_STABLE = 3, + DS_HDMI_IN_SIGNAL_STATUS_MAX. = 4 + }; + + struct HDMIPortConnectionStatus { + bool isPortConnected; + }; + using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; + struct HDMIInStatus { + bool isPresented; + IHDMIInPortConnectionStatusIterator portConnectionStatus; + HDMIInPort activePort; + }; + + // Need iterator here or should we add a connected Port.. + + struct HDMIInCapabilities { + bool isPortArcCapable; + }; + + using IHDMIInCapabilitiesIterator = RPC::IIteratorType; + + struct HDMIInGameFeatureList { + string gameFeature; + }; + + using IHDMIInGameFeatureListIterator = RPC::IIteratorType; + + struct HDMIInSpdInfoFrame { + uint8_t pkttype; /*!< Package type */ + uint8_t version; /*!< Version */ + uint8_t length; /*!< max length 25, min length 0 */ + uint8_t rsd; /*!< Repetition of static data */ + uint8_t checksum; /*!< Checksum for spd info frame */ + string vendor_name; /*!< Vendor Name string. Min length 0 */ + string product_des; /*!< Product Description string. Min length 0 */ + uint8_t source_info; /*!< Source info of the frame */ + }; + + enum HDMIInEdidVersion : uint8_t { + HDMI_EDID_VER_14 = 0, + HDMI_EDID_VER_20 = 1, + HDMI_EDID_VER_MAX = 2 + }; + + enum HDMIVideoPlaneType: uint8_t { + DS_HDMIIN_VIDEOPLANE_PRIMARY = 0, + DS_HDMIIN_VIDEOPLANE_SECONDARY = 1, + DS_HDMIIN_VIDEOPLANE_MAX = 2 + }; + + enum HDMIInCapabilityVersion { + HDMI_COMPATIBILITY_VERSION_14 = 0, + HDMI_COMPATIBILITY_VERSION_20 = 1, + HDMI_COMPATIBILITY_VERSION_21 = 2, + HDMI_COMPATIBILITY_VERSION_MAX = 3 + }; + + struct HDMIInVideoRectangle { + int32_t x; + int32_t y; + int32_t width; + int32_t height; + }; + + enum HDMIInVideoZoom : uint8_t { + DS_HDMIIN_VIDEO_ZOOM_UNKNOWN = 0, + DS_HDMIIN_VIDEO_ZOOM_NONE = 1, + DS_HDMIIN_VIDEO_ZOOM_FULL = 2, + DS_HDMIIN_VIDEO_ZOOM_LB_16_9 = 3, + DS_HDMIIN_VIDEO_ZOOM_LB_14_9 = 4, + DS_HDMIIN_VIDEO_ZOOM_CCO = 5, + DS_HDMIIN_VIDEO_ZOOM_PAN_SCAN = 6, + DS_HDMIIN_VIDEO_ZOOM_LB_2_21_1_ON_4_3 = 7, + DS_HDMIIN_VIDEO_ZOOM_LB_2_21_1_ON_16_9 = 8, + DS_HDMIIN_VIDEO_ZOOM_PLATFORM = 9, + DS_HDMIIN_VIDEO_ZOOM_16_9_ZOOM = 10, + DS_HDMIIN_VIDEO_ZOOM_PILLARBOX_4_3 = 11, + DS_HDMIIN_VIDEO_ZOOM_WIDE_4_3 = 12 + }; + + enum HDMIInVRRType: uint8_t { + DS_HDMIIN_VRR_NONE = 0, + DS_HDMIIN_HDMI_VRR = 1, + DS_HDMIIN_AMD_FREESYNC = 2, + DS_HDMIIN_AMD_FREESYNC_PREMIUM = 3, + DS_HDMIIN_AMD_FREESYNC_PREMIUM_PRO = 4 + }; + + enum HDMIInTVResolution: uint32_t { + DS_HDMIIN_RESOLUTION_480I = 0x000001, + DS_HDMIIN_RESOLUTION_480P = 0x000002, + DS_HDMIIN_RESOLUTION_576I = 0x000004, + DS_HDMIIN_RESOLUTION_576P = 0x000008, + DS_HDMIIN_RESOLUTION_576P50 = 0x000010, + DS_HDMIIN_RESOLUTION_720P = 0x000020, + DS_HDMIIN_RESOLUTION_720P50 = 0x000040, + DS_HDMIIN_RESOLUTION_1080I = 0x000080, + DS_HDMIIN_RESOLUTION_1080P = 0x000100, + DS_HDMIIN_RESOLUTION_1080P24 = 0x000200, + DS_HDMIIN_RESOLUTION_1080I25 = 0x000400, + DS_HDMIIN_RESOLUTION_1080I25 = 0x000800, + DS_HDMIIN_RESOLUTION_1080P30 = 0x001000, + DS_HDMIIN_RESOLUTION_1080I50 = 0x002000, + DS_HDMIIN_RESOLUTION_1080P50 = 0x004000, + DS_HDMIIN_RESOLUTION_1080P60 = 0x008000, + DS_HDMIIN_RESOLUTION_2160P24 = 0x010000, + DS_HDMIIN_RESOLUTION_2160P25 = 0x020000, + DS_HDMIIN_RESOLUTION_2160P30 = 0x040000, + DS_HDMIIN_RESOLUTION_2160P50 = 0x080000, + DS_HDMIIN_RESOLUTION_2160P60 = 0x100000 + }; + + enum HDMIVideoAspectRatio : uint8_t { + DS_HDMIIN_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, + DS_HDMIIN_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, + DS_HDMIIN_ASPECT_RATIO_16x9 = 2 /* @text Video Aspect Ratio 16x9 */ + }; + + enum HDMIInVideoStereoScopicMode : uint8_t { + DS_HDMIIN_SSMODE_UNKNOWN = 0, + DS_HDMIIN_SSMODE_2D = 1, + DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3 + }; + + enum HDMIInVideoFrameRate: uint8_t { + DS_HDMIIN_FRAMERATE_UNKNOWN = 0, + DS_HDMIIN_FRAMERATE_24 = 1, + DS_HDMIIN_FRAMERATE_25 = 2, + DS_HDMIIN_FRAMERATE_30 = 3, + DS_HDMIIN_FRAMERATE_60 = 4, + DS_HDMIIN_FRAMERATE_23_98 = 5, + DS_HDMIIN_FRAMERATE_29_97 = 6, + DS_HDMIIN_FRAMERATE_50 = 7, + DS_HDMIIN_FRAMERATE_59_94 = 8 + }; + + + enum HDMIInAviContentType { + DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS =0, + DS_HDMIIN_AVICONTENT_TYPE_PHOTO =1, + DS_HDMIIN_AVICONTENT_TYPE_CINEMA =2, + DS_HDMIIN_AVICONTENT_TYPE_GAME =3, + DS_HDMIIN_AVICONTENT_TYPE_NOT_SIGNALLED =4, + DS_HDMIIN_AVICONTENT_TYPE_MAX =5 + }; + + struct HDMIVideoPortResolution { + string name; + HDMIInTVResolution pixelResolution; + HDMIVideoAspectRatio aspectRatio; + HDMIInVideoStereoScopicMode stereoScopicMode; + HDMIInVideoFrameRate frameRate; + bool interlaced; + }; + + // @event + struct EXTERNAL INotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION }; + // @brief HDMI Event Hot Plug // @text onHDMIInEventHotPlug // @param port: port 0 or 1 et al // @param isConnected: is it connected (true) or not (false) - virtual void OnHDMIInEventHotPlug(HDMIInPort port, bool isConnected) { }; + virtual void OnHDMIInEventHotPlug(const HDMIInPort port, const bool isConnected) {}; // @brief HDMI Event Signal status // @text OnHDMIInEventSignalStatus // @param port: port 0 or 1 et al // @param signalStatus: Signal Status - virtual void OnHDMIInEventSignalStatus(HDMIInPort port, HDMIInSignalStatus signalStatus) { }; + virtual void OnHDMIInEventSignalStatus(const HDMIInPort port, const HDMIInSignalStatus signalStatus) {}; // @brief HDMI Event Signal status // @text onHDMIInEventStatus // @param activePort: port 0 or 1 et al // @param isPresented: is it presented or not - virtual void OnHDMIInEventStatus(HDMIInPort activePort, bool isPresented) { }; + virtual void OnHDMIInEventStatus(const HDMIInPort activePort, const bool isPresented) {}; // @brief HDMI Video Mode update // @text onHDMInVideoModeUpdate // @param port: port 0 or 1 et al // @param videoPortResolution: Video port resolution - virtual void OnHDMInVideoModeUpdate(HDMIInPort port, const HDMIVideoPortResolution& videoPortResolution) { }; - - // @brief HDMI ALLM (Auto Low Latency Mode) status + virtual void OnHDMInVideoModeUpdate(const HDMIInPort port, const HDMIVideoPortResolution videoPortResolution) {}; + + // @brief HDMI ALLM status // @text onHDMInAllmStatus // @param port: port 0 or 1 et al // @param allmStatus: allm status - virtual void OnHDMInAllmStatus(HDMIInPort port, bool allmStatus) { }; + virtual void OnHDMInAllmStatus(const HDMIInPort port, const bool allmStatus) {}; // @brief HDMI Event AVI content type // @text OnHDMInAVIContentType // @param port: port 0 or 1 et al // @param aviContentType: AVI content type - virtual void OnHDMInAVIContentType(HDMIInPort port, HDMIInAviContentType aviContentType) { }; + virtual void OnHDMInAVIContentType(const HDMIInPort port, const HDMIInAviContentType aviContentType) {}; // @brief HDMI Event AV Latency // @text OnHDMInAVLatency - // @param audioDelay: audio delay (in millisecs) - // @param videoDelay: video delay (in millisecs) - virtual void OnHDMInAVLatency(int audioDelay, int videoDelay) { }; + // @param port: port 0 or 1 et al + // @param audioDelay: audio delay + // @param videoDelay: video delay + virtual void OnHDMInAVLatency(const int audioDelay, const int videoDelay) {}; + + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; + + /** Get Number of HDMI Inputs in the platform. */ + // @text getHDMIInNumbefOfInputs + // @brief Get Number of HDMI Inputs in the platform + // @param count: number of inputs + virtual Core::hresult GetHDMIInNumbefOfInputs(int &count /* @out */) = 0; + + /** Get HDMIIn Status. */ + // @text getHDMIInStatus + // @brief Get HDMIIn Status + // @param hdmiStatus: HDMI Status + virtual Core::hresult GetHDMIInStatus(HDMIInStatus &hdmiStatus /* @out */) = 0; + + /** Select HDMIIn Port. */ + // @text selectHDMIInPort + // @brief Get HDMIIn Status + // @param port: Port to select + // @param requestAudioMix: Should audio be mixed on this port? + // @param topMostPlane: Should this be on top for display? + // @param videoPlaneType: Primary or secondary? + virtual Core::hresult SelectHDMIInPort(HDMIInPort port /* @in */, bool requestAudioMix /* @in */, bool topMostPlane /* @in */, HDMIVideoPlaneType videoPlaneType /* @in */) = 0; + + /** Scale HDMIIn Video. */ + // @text scaleHDMIInVideo + // @brief Scale HDMIIn Video + // @param videoPosition: co-ordinates to scale + virtual Core::hresult ScaleHDMIInVideo(HDMIInVideoRectangle videoPosition /* @in */) = 0; + + /** Select HDMIIn Zoom mode. */ + // @text selectHDMIZoomMode + // @brief Select HDMIIn Zoom mode + // @param zoomMode: zoom mode + virtual Core::hresult SelectHDMIZoomMode(HDMIInVideoZoom zoomMode /* @in */) = 0; + + /** Get Supported Game feature list. */ + // @text getSupportedGameFeaturesList + // @brief Get Supported Game feature list + // @param gameFeatureList: game feature list + virtual Core::hresult GetSupportedGameFeaturesList(HDMIInGameFeatureList *& gameFeatureList /* @out */) = 0; + + /** Get AV latency. */ + // @text getHDMIInAVLatency + // @brief Get AV latency + // @param videoLatency: video latency + // @param videoLatency: audio latency + virtual Core::hresult GetHDMIInAVLatency(int32 &videoLatency /* out */, int32 &audioLatency /* @out*/) = 0; + + /** Get ALLM Status. */ + // @text getHDMIInAllmStatus + // @brief Get ALLM Status + // @param port: Port number + // @param allmStatus: ALLM status + virtual Core::hresult GetHDMIInAllmStatus(HDMIInPort port /* @in */, bool &allmStatus /* @out*/) = 0; + + /** Get EDID to ALLM Supported or not. */ + // @text getHDMIInEdid2AllmSupport + // @brief Get EDID to ALLM Supported or not + // @param port: Port number + // @param allmSupport: ALLM supported (true) or not (false) + virtual Core::hresult GetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool &allmSupport /* @out*/) = 0; + + /** Set EDID to ALLM Supported or not. */ + // @text setHDMIInEdid2AllmSupport + // @brief Get EDID to ALLM Supported or not + // @param port: Port number + // @param allmSupport: ALLM supported (true) or not (false) + virtual Core::hresult SetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool &allmSupport /* @in*/) = 0; + + /** Get EDID bytes. */ + // @text getEdidBytes + // @brief Get EDID bytes. + // @param port: Port number + // @param edidBytesLength: number of bytes in the edidBytes array + // @param edidBytes: EDID information + virtual Core::hresult GetEdidBytes(HDMIInPort port /* @in */, uint32_t &edidBytesLength /* @out */, uint8_t edidBytes[] /* @out @length:return @maxlength:edidBytesLength */) = 0; + + /** Get HDMI SPD Information. */ + // @text getEdidBytes + // @brief Get HDMI SPD Information. + // @param port: Port number + // @param spdBytesLength: number of bytes in the spdBytes array + // @param spdBytes: SPD information + virtual Core::hresult GetHDMISPDInformation(HDMIInPort port /* @in */, uint32_t &spdBytesLength /* @out */, uint8_t spdBytes[] /* @out @length:return @maxlength:spdBytesLength */) = 0; + + /** Get HDMI Port EDID version. */ + // @text getHDMIEdidVersion + // @brief Get HDMI Port EDID version. + // @param port: Port number + // @param edidVersion: EDID version + virtual Core::hresult GetHDMIEdidVersion(HDMIInPort port /* @in */, HDMIInEdidVersion &edidVersion /* @out */) = 0; + + /** Set HDMI Port EDID version. */ + // @text setHDMIEdidVersion + // @brief Set HDMI Port EDID version. + // @param port: Port number + // @param edidVersion: EDID version + virtual Core::hresult SetHDMIEdidVersion(HDMIInPort port /* @in */, HDMIInEdidVersion edidVersion /* @in */) = 0; + + + /** Get HDMI Video mode. */ + // @text getHDMIVideoMode + // @brief Get HDMI Video mode. + // @param port: Port number + // @param videoPortResolution: Video port resolution structure + virtual Core::hresult GetHDMIVideoMode(HDMIInPort port /* @in */, HDMIVideoPortResolution &videoPortResolution /* @out */) = 0; + + }; + + struct EXTERNAL IDeviceSettingsManagerHost : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_HOST }; + + enum SleepMode : uint8_t { + DS_HOST_SLEEPMODE_LIGHT = 0, + DS_HOST_SLEEPMODE_DEEP = 1, + DS_HOST_SLEEPMODE_MAX = 2 }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IHDMIInNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IHDMIInNotification* notification /* @in */) = 0; // @event - struct EXTERNAL IDSVideoPortStatusNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION }; - // @brief On Resolution Pre changed - // @text OnResolutionPreChange - // @param resolution: resolution - virtual void OnResolutionPreChange(const ResolutionChange& resolution) { }; + struct EXTERNAL INotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION }; - // @brief On Resolution Post change - // @text onResolutionPostChange - // @param resolution: resolution - virtual void OnResolutionPostChange(const ResolutionChange& resolution) { }; + // @brief Sleep mode changed + // @text onSleepModeChanged + // @param sleepMode: see SleepMode + virtual void OnSleepModeChanged(const SleepMode sleepMode) {}; + + }; - // @brief On HDCP Status change - // @text OnHDCPStatusChange - // @param hdcpStatus: HDCP Status - virtual void OnHDCPStatusChange(HDCPStatus hdcpStatus) { }; + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHost::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerHost::INotification* notification /* @in */) = 0; + + /** Get Preferred Sleep mode. */ + // @text getPreferredSleepMode + // @brief Get Preferred Sleep mode. + // @param mode: Sleep mode + virtual Core::hresult GetPreferredSleepMode(SleepMode &mode /* @out */) = 0; + + /** Get Preferred Sleep mode. */ + // @text setPreferredSleepMode + // @brief Set Preferred Sleep mode. + // @param mode: Sleep mode + virtual Core::hresult SetPreferredSleepMode(const SleepMode mode /* @in */) = 0; + + /** Get CPU temperature. */ + // @text getCPUTemperature + // @brief Get CPU temperature. + // @param temperature: temperature in degree centigrade? + virtual Core::hresult GetCPUTemperature(float &temperature /* @out */) = 0; + + /** Get HAL Version . */ + // @text getHALVersion + // @brief Get HAL Version. + // @param versionNo: 16 bits MSB is major version and 16 bits LSB is minor version + virtual Core::hresult GetHALVersion(uint32_t &versionNo /* @out */) = 0; + + /** Get SOCID. */ + // @text getHALVersion + // @brief Get SOCID. + // @param socID: SOCID in string format + virtual Core::hresult GetSoCID(string &socID /* @out */) = 0; + + /** Get EDID Bytes. */ + // @text getHALVersion + // @brief Get EDID. + // @param edId: EDID in bytes + // @param edIdLength: number of bytes in edId array + virtual Core::hresult GetEDID(uint8_t edId[] /* @out */, uint32_t &edIdLength /* @out */) = 0; + + /** Get MS12 Config type. */ + // @text getHALVersion + // @brief Get MS12 Config + // @param ms12Config: MS12 config type + virtual Core::hresult GetMS12ConfigType(string &ms12Config /* @out */) = 0; - // @brief On Video Format update - // @text OnVideoFormatUpdate - // @param videoFormatHDR: Video format HDR standard - virtual void OnVideoFormatUpdate(HDRStandard videoFormatHDR) { }; + }; + + struct EXTERNAL IDeviceSettingsManagerVideoDevice : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE }; + + enum VideoZoom : int8_t { + DS_VIDEO_DEVICE_ZOOM_UNKNOWN = -1, + DS_VIDEO_DEVICE_ZOOM_NONE = 0, + DS_VIDEO_DEVICE_ZOOM_FULL = 1, + DS_VIDEO_DEVICE_ZOOM_LB_16_9 = 2, + DS_VIDEO_DEVICE_ZOOM_LB_14_9 = 3, + DS_VIDEO_DEVICE_ZOOM_CCO = 4, + DS_VIDEO_DEVICE_ZOOM_PAN_SCAN = 5, + DS_VIDEO_DEVICE_ZOOM_LB_2_21_1_ON_4_3 = 6, + DS_VIDEO_DEVICE_ZOOM_LB_2_21_1_ON_16_9 = 7, + DS_VIDEO_DEVICE_ZOOM_PLATFORM = 8, + DS_VIDEO_DEVICE_ZOOM_16_9_ZOOM = 9, + DS_VIDEO_DEVICE_ZOOM_PILLARBOX_4_3 = 10, + DS_VIDEO_DEVICE_ZOOM_WIDE_4_3 = 11, + DS_VIDEO_DEVICE_ZOOM_MAX = 12 + }; + + enum VideoCodec: uint8_t { + DS_VIDEO_CODEC_MPEGHPART2 = 0x01, + DS_VIDEO_CODEC_MPEG4PART10 = 0x02, + DS_VIDEO_CODEC_MPEG2 = 0x04, + DS_VIDEO_CODEC_MAX = 0x08 + }; + + enum VideoCodecHEVCProfile: uint8_t { + DS_VIDEO_CODEC_HEVC_PROFILE_MAIN = 0x01, + DS_VIDEO_CODEC_HEVC_PROFILE_MAIN10 = 0x02, + DS_VIDEO_CODEC_HEVC_PROFILE_MAIN_STILLPICTURE = 0x04, + DS_VIDEO_CODEC_HEVC_PROFILE_MAX = 0x08 + }; + + struct VideoCodecProfileSupport { + VideoCodecHEVCProfile profile; + float level; }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSVideoPortStatusNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSVideoPortStatusNotification* notification /* @in */) = 0; + using IDeviceSettingsVideoCodecProfileIterator = RPC::IIteratorType; // @event - struct EXTERNAL IDSVideoDeviceNotification : virtual public Core::IUnknown { + struct EXTERNAL INotification : virtual public Core::IUnknown + { enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION }; // @brief Zoom settings changed // @text OnZoomSettingsChanged // @param zoomSetting: Currently applied zoom setting - virtual void OnZoomSettingsChanged(VideoZoom zoomSetting) { }; + virtual void OnZoomSettingsChanged(const VideoZoom zoomSetting) = 0; // @brief Display Framerate Pre-change // @text OnDisplayFrameratePreChange // @param frameRate: PreChange framerate - virtual void OnDisplayFrameratePreChange(const string& frameRate) { }; + virtual void OnDisplayFrameratePreChange(const string frameRate) = 0; // @brief Display Framerate Post-change // @text OnDisplayFrameratePostChange // @param frameRate: framerate post change - virtual void OnDisplayFrameratePostChange(const string& frameRate) { }; + virtual void OnDisplayFrameratePostChange(const string frameRate) = 0; + }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSVideoDeviceNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSVideoDeviceNotification* notification /* @in */) = 0; + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerVidoeDevice::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingManagerVideoDevice::INotification* notification /* @in */) = 0; + + + /** Get Video Device handle. */ + // @text getVideoDeviceHandle + // @brief Get Video device handle + // @param index: index (can be multiple instances) + // @param handle: video device handle (to be used for other APIs) + virtual Core::hresult GetVideoDeviceHandle(const int index /* @in */, int &handle /* @out */) = 0; + + /** Set Video Device DFC. */ + // @text setVideoDeviceDFC + // @brief Set Video Device DFC + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param zoomSetting: Zoom setting to apply + virtual Core::hresult SetVideoDeviceDFC(const int handle /* @in */, const VideoZoom zoomSetting /* @in */) = 0; + + /** Get Video Device DFC. */ + // @text getVideoDeviceDFC + // @brief Get Video Device DFC + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param zoomSetting: current Zoom setting + virtual Core::hresult GetVideoDeviceDFC(const int handle /* @in */, VideoZoom &zoomSetting /* @out */) = 0; + + /** Get Video Device HDR capabilities. */ + // @text getHDRCapabilities + // @brief Get Video Device HDR capabilities + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param capabilities: Capabilities + virtual Core::hresult GetHDRCapabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + + /** Get Video Device Supported . */ + // @text getSupportedVideoCodingFormats + // @brief Get Video Zoom setting + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param supportedFormats: Supported Formats + virtual Core::hresult GetSupportedVideoCodingFormats(const int handle /* @in */, int &supportedFormats /* @out */) = 0; + + /** Get Video Device Codec Information TBD - vdixit. */ + // @text getCodecInfo + // @brief Get Video Device Codec Information + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param supportedFormats: Supported Formats + virtual Core::hresult GetCodecInfo(const int handle /* @in */, int &supportedFormats /* @out */) = 0; + + /** Video Device Disable HDR */ + // @text disableHDR + // @brief Video Device Disable HDR + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param disable: disable (true) or enable (false) + virtual Core::hresult DisableHDR(const int handle /* @in */, const bool disable /* @in */) = 0; + + /** Set Video Device FRF mode. */ + // @text setFRFMode + // @brief Set FRF mode + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param frfmode: FRF mode + virtual Core::hresult SetFRFMode(const int handle /* @in */, const int frfmode /* @in */) = 0; + + /** Get Video Device FRF mode. */ + // @text getFRFMode + // @brief Get FRF mode + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param frfmode: FRF mode + virtual Core::hresult GetFRFMode(const int handle /* @in */, int &frfmode /* @in */) = 0; + + /** Get Video Device display frame rate */ + // @text getCurrentDisplayFrameRate + // @brief Get current display frame rate + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param framerate: frame rate + virtual Core::hresult GetCurrentDisplayFrameRate(const int handle /* @in */, string &framerate /* @out */) = 0; + + /** Set Video Device display frame rate */ + // @text setDisplayFrameRate + // @brief Set current display frame rate + // @param handle: video device handle (returned in GetVideoDeviceHandle) + // @param framerate: frame rate + virtual Core::hresult SetDisplayFrameRate(const int handle /* @in */, string &framerate /* @in */) = 0; - // @event - struct EXTERNAL IDSHostNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION }; + }; - // @brief Sleep mode changed - // @text onSleepModeChanged - // @param sleepMode: see SleepMode - virtual void OnSleepModeChanged(SleepMode sleepMode) { }; + struct EXTERNAL IDeviceSettingsManagerVideoPort : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEOPORT }; + + enum VideoPort : uint8_t { + DS_VIDEO_PORT_TYPE_RF = 0, + DS_VIDEO_PORT_TYPE_BB = 1, + DS_VIDEO_PORT_TYPE_SVIDEO = 2, + DS_VIDEO_PORT_TYPE_1394 = 3, + DS_VIDEO_PORT_TYPE_DVI = 4, + DS_VIDEO_PORT_TYPE_COMPONENT = 5, + DS_VIDEO_PORT_TYPE_HDMI = 6, + DS_VIDEO_PORT_TYPE_HDMI_INPUT = 7, + DS_VIDEO_PORT_TYPE_INTERNAL = 8, + DS_VIDEO_PORT_TYPE_MAX = 9 }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSHostNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSHostNotification* notification /* @in */) = 0; + enum VideoPortSurroundMode: uint8_t { + DS_VIDEO_PORT_SURROUNDMODE_NONE = 0, + DS_VIDEO_PORT_SURROUNDMODE_DD = 1, + DS_VIDEO_PORT_SURROUNDMODE_DDPLUS = 2, + DS_VIDEO_PORT_SURROUNDMODE_MAX = 3 + }; - // @event - struct EXTERNAL IDSCompositeInNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION }; + enum TVResolution: uint32_t { + DS_TV_RESOLUTION_480I = 0x000001, + DS_TV_RESOLUTION_480P = 0x000002, + DS_TV_RESOLUTION_576I = 0x000004, + DS_TV_RESOLUTION_576P = 0x000008, + DS_TV_RESOLUTION_576P50 = 0x000010, + DS_TV_RESOLUTION_720P = 0x000020, + DS_TV_RESOLUTION_720P50 = 0x000040, + DS_TV_RESOLUTION_1080I = 0x000080, + DS_TV_RESOLUTION_1080P = 0x000100, + DS_TV_RESOLUTION_1080P24 = 0x000200, + DS_TV_RESOLUTION_1080I25 = 0x000400, + DS_TV_RESOLUTION_1080I25 = 0x000800, + DS_TV_RESOLUTION_1080P30 = 0x001000, + DS_TV_RESOLUTION_1080I50 = 0x002000, + DS_TV_RESOLUTION_1080P50 = 0x004000, + DS_TV_RESOLUTION_1080P60 = 0x008000, + DS_TV_RESOLUTION_2160P24 = 0x010000, + DS_TV_RESOLUTION_2160P25 = 0x020000, + DS_TV_RESOLUTION_2160P30 = 0x040000, + DS_TV_RESOLUTION_2160P50 = 0x080000, + DS_TV_RESOLUTION_2160P60 = 0x100000 + }; - // @brief Composite In Hotplug event - // @text onCompositeInHotPlug - // @param port: Port of the hotplug - // @param isConnected: Is it connected (true) or not(false) - virtual void OnCompositeInHotPlug(CompositeInPort port, bool isConnected) { }; + enum VideoResolution: uint8_t { + DS_VIDEO_PIXELRES_720x480, + DS_VIDEO_PIXELRES_720x576, + DS_VIDEO_PIXELRES_1280x720, + DS_VIDEO_PIXELRES_1366x768, + DS_VIDEO_PIXELRES_1920x1080, + DS_VIDEO_PIXELRES_3840x2160, + DS_VIDEO_PIXELRES_4096x2160, + DS_VIDEO_PIXELRES_MAX + }; - // @brief Composite In Signal status - // @text onCompositeInSignalStatus - // @param port: Port of the hotplug - // @param signalStatus: Signal status - virtual void OnCompositeInSignalStatus(CompositeInPort port, CompositeInSignalStatus signalStatus) { }; + enum VideoAspectRatio: uint8_t { + DS_VIDEO_ASPECT_RATIO_4x3, + DS_VIDEO_ASPECT_RATIO_16x9, + DS_VIDEO_ASPECT_RATIO_MAX + }; + + enum VideoStereoScopicMode : uint8_t { + DS_VIDEO_SSMODE_UNKNOWN = 0, + DS_VIDEO_SSMODE_2D = 1, + DS_VIDEO_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_VIDEO_SSMODE_3D_TOP_AND_BOTTOM = 3, + DS_VIDEO_SSMODE_MAX = 4 + }; - // @brief Composite In status - // @text onCompositeInStatus - // @param activePort: Active port - // @param isPresented: is it presented to user - virtual void OnCompositeInStatus(CompositeInPort activePort, bool isPresented) { }; + enum VideoFrameRate: uint8_t { + DS_VIDEO_FRAMERATE_UNKNOWN = 0, + DS_VIDEO_FRAMERATE_24 = 1, + DS_VIDEO_FRAMERATE_25 = 2, + DS_VIDEO_FRAMERATE_30 = 3, + DS_VIDEO_FRAMERATE_60 = 4, + DS_VIDEO_FRAMERATE_23_98 = 5, + DS_VIDEO_FRAMERATE_29_97 = 6, + DS_VIDEO_FRAMERATE_50 = 7, + DS_VIDEO_FRAMERATE_59_94 = 8, + DS_VIDEO_FRAMERATE_100 = 9, + DS_VIDEO_FRAMERATE_119_88 = 10, + DS_VIDEO_FRAMERATE_120 = 11, + DS_VIDEO_FRAMERATE_200 = 12, + DS_VIDEO_FRAMERATE_239_76 = 13, + DS_VIDEO_FRAMERATE_240 = 14, + DS_VIDEO_FRAMERATE_MAX = 15 }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSCompositeInNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSCompositeInNotification* notification /* @in */) = 0; + struct VideoPortResolution { + string name; + VideoResolution pixelResolution; + VideoAspectRatio aspectRatio; + VideoStereoScopicMode stereoScopicMode; + VideoFrameRate frameRate; + bool interlaced; + }; + enum HDCPStatus : uint8_t { + DS_HDCP_STATUS_UNPOWERED = 0, + DS_HDCP_STATUS_UNAUTHENTICATED = 1, + DS_HDCP_STATUS_AUTHENTICATED = 2, + DS_HDCP_STATUS_AUTHENTICATIONFAILURE = 3, + DS_HDCP_STATUS_INPROGRESS = 4, + DS_HDCP_STATUS_PORTDISABLED = 5, + DS_HDCP_STATUS_MAX = 6 + }; + + enum HDCPProtocolVersion: uint8_t { + DS_HDCP_VERSION_1X = 0, + DS_HDCP_VERSION_2X = 1, + DS_HDCP_VERSION_MAX = 2 + }; + + enum HDRStandard: uint16_t { + DS_HDRSTANDARD_NONE = 0x0, + DS_HDRSTANDARD_HDR10 = 0x01, + DS_HDRSTANDARD_HLG = 0x02, + DS_HDRSTANDARD_DOLBYVISION = 0x04, + DS_HDRSTANDARD_TECHNICOLORPRIME = 0x08, + DS_HDRSTANDARD_HDR10PLUS = 0x10, + DS_HDRSTANDARD_SDR = 0x20, + DS_HDRSTANDARD_INVALID = 0x80 + }; + + enum DisplayMatrixCoefficients: uint8_t { + DS_DISPLAY_MATRIXCOEFFICIENT_UNKNOWN = 0, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_709 = 1, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_470_2_BG = 2, + DS_DISPLAY_MATRIXCOEFFICIENT_SMPTE_170M = 3, + DS_DISPLAY_MATRIXCOEFFICIENT_XvYCC_709 = 4, + DS_DISPLAY_MATRIXCOEFFICIENT_eXvYCC_601 = 5, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_NCL = 6, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_CL = 7, + DS_DISPLAY_MATRIXCOEFFICIENT_eDVI_FR_RGB = 8, + DS_DISPLAY_MATRIXCOEFFICIENT_eHDMI_RGB = 9, + DS_DISPLAY_MATRIXCOEFFICIENT_eFCC = 10, + DS_DISPLAY_MATRIXCOEFFICIENT_eSMPTE_240M = 11, + DS_DISPLAY_MATRIXCOEFFICIENT_eHDMI_FR_YCbCr = 12, + DS_DISPLAY_MATRIXCOEFFICIENT_MAX = 13 + }; + + enum DisplayColorSpace: uint8_t { + DS_DISPLAY_COLORSPACE_UNKNOWN = 0, + DS_DISPLAY_COLORSPACE_RGB = 1, + DS_DISPLAY_COLORSPACE_YCbCr422 = 2, + DS_DISPLAY_COLORSPACE_YCbCr444 = 3, + DS_DISPLAY_COLORSPACE_YCbCr420 = 4, + DS_DISPLAY_COLORSPACE_AUTO = 5, + DS_DISPLAY_COLORSPACE_MAX = 6 + }; + + enum DisplayQuantizationRange: uint8_t { + DS_DISPLAY_QUANTIZATIONRANGE_UNKNOWN = 0, + DS_DISPLAY_QUANTIZATIONRANGE_LIMITED = 1, + DS_DISPLAY_QUANTIZATIONRANGE_FULL = 2, + DS_DISPLAY_QUANTIZATIONRANGE_MAX = 3 + }; + + enum DisplayColorDepth : uint8_t { + DS_DISPLAY_COLORDEPTH_UNKNOWN = 0x0, + DS_DISPLAY_COLORDEPTH_8BIT = 0x01, + DS_DISPLAY_COLORDEPTH_10BIT = 0x02, + DS_DISPLAY_COLORDEPTH_12BIT = 0x04, + DS_DISPLAY_COLORDEPTH_AUTO = 0x08 + }; + + struct DSOutputSettings { + HDRStandard videoEotf; + DisplayMatrixCoefficients matrixCoefficients; + uint32_t color_depth; + DisplayColorSpace colorSpace; + DisplayQuantizationRange quantizationRange; + }; + + enum VideoBackgroundColor : uint8_t { + DS_VIDEO_BGCOLOR_BLUE = 0, + DS_VIDEO_BGCOLOR_BLACK = 1, + DS_VIDEO_BGCOLOR_NONE = 2, + DS_VIDEO_BGCOLOR_MAX = 3 + }; + + enum VideoScanMode: uint8_t { + DS_VIDEO_SCAN_MODE_INTERLACED = 0, + DS_VIDEO_SCAN_MODE_PROGRESSIVE = 1 + }; + + struct ResolutionChange { + uint32_t width; + uint32_t height; + }; + + // @event - struct EXTERNAL IDSFPDNotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION }; + struct EXTERNAL INotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION }; - // @brief On Front Panel display time format changed - // @text OnFPDTimeFormatChanged - // @param timeFormat: current time format 12 or 24 hour - virtual void OnFPDTimeFormatChanged(FPDTimeFormat timeFormat) { }; + // @brief On Resolution Post change + // @text onResolutionPostChange + // @param resolution: resolution + virtual void OnResolutionPostChange(const ResolutionChange resolution) {}; + + // @brief On Resolution Pre changed + // @text OnResolutionPreChange + // @param resolution: resolution + virtual void OnResolutionPreChange(const ResolutionChange resolution) {}; + + // @brief On HDCP Status change + // @text OnHDCPStatusChange + // @param hdcpStatus: HDCP Status + virtual void OnHDCPStatusChange(const HDCPStatus hdcpStatus) {}; + + // @brief On Video Format update + // @text OnVideoFormatUpdate + // @param videoFormatHDR: Video format HDR standard + virtual void OnVideoFormatUpdate(const HDRStandard videoFormatHDR) {}; + + }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManager::IDSFPDNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManager::IDSFPDNotification* notification /* @in */) = 0; + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerVideoPort::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerVideoPort::INotification* notification /* @in */) = 0; + + /** Get Video Port handle. */ + // @text getVideoPort + // @brief Get Video Port handle + // @param videoPort: Type of port + // @param index: index of the port (there can be multiple number of ports) + // @param handle: handle to the port + virtual Core::hresult GetVideoPort(const VideoPort videoPort /* @in */, const int index /* @in */, int &handle /* @out */) = 0; + + /** Video Port Enabled or not. */ + // @text isVideoPortEnabled + // @brief Is Video Port enabled + // @param handle: handle to the port + // @param enabled: enabled (true) or disabled (false) + virtual Core::hresult IsVideoPortEnabled(const int handle /* @in */, bool &enabled /* @out */) = 0; + + /** Video Port connected to display or not. */ + // @text isVideoPortDisplayConnected + // @brief Is Video Port connected to display or not + // @param handle: handle to the port + // @param connected: connected (true) or not connected (false) + virtual Core::hresult IsVideoPortDisplayConnected(const int handle /* @in */, bool &connected /* @out */) = 0; + + /** Video port display supports surround or not. */ + // @text isVideoPortDisplaySurround + // @brief Does Video Port display support surround or not + // @param handle: handle to the port + // @param surround: supports surround (true) or not (false) + virtual Core::hresult IsVideoPortDisplaySurround(const int handle /* @in */, bool &surround /* @out */) = 0; + + /** Get Video port displays surround mode. */ + // @text getVideoPortDisplaySurroundMode + // @brief Get Video port displays surround mode + // @param handle: handle to the port + // @param surroundMode: surround mode + virtual Core::hresult GetVideoPortDisplaySurroundMode(const int handle /* @in */, VideoPortSurroundMode &surroundMode /* @out */) = 0; + + /** Enable Video port. */ + // @text enableVideoPort + // @brief Enable video port + // @param handle: handle to the port + // @param enable: enable (true) or disable (false) + virtual Core::hresult EnableVideoPort(const int handle /* @in */, bool enable /* @in */) = 0; + + /** Get Video port resolution. */ + // @text getVideoPortResolution + // @brief Get Video port resolution + // @param handle: handle to the port + // @param videoPortResolution: video port resolution + virtual Core::hresult GetVideoPortResolution(const int handle /* @in */, VideoPortResolution &videoPortResolution /* @out */) = 0; + + /** Set Video port resolution. */ + // @text setVideoPortResolution + // @brief Set Video port resolution + // @param handle: handle to the port + // @param videoPortResolution: video port resolution + // @param persist: persist this setting + // @param forceCompatibilty: force compatibility + virtual Core::hresult SetVideoPortResolution(const int handle /* @in */, VideoPortResolution videoPortResolution /* @in */, bool persist /* @in */, bool forceCompatibility /* @in */) = 0; + + /** Enable HDCP Video port. */ + // @text enableHDCPOnVideoPort + // @brief Enable HDCP on video port + // @param handle: handle to the port + // @param enable: enable (true) or disable (false) + // @param hdcpKey: hdcp key + // @param hdcpKeySize: number of bytes in hdcpKey array + virtual Core::hresult EnableHDCPOnVideoPort(const int handle /* @in */, bool hdcpEnable /* @in */, uint8_t hdcpKey[] /* @in */, int hdcpKeySize /* @in */) = 0; + + /** Is HDCP enabled on Video port. */ + // @text isHDCPEnabledOnVideoPort + // @brief Is HDCP enabled on Video port + // @param handle: handle to the port + // @param hdcpEnabled: enabled (true) or disabled (false) + virtual Core::hresult IsHDCPEnabledOnVideoPort(const int handle /* @in */, bool &hdcpEnabled /* @out */) = 0; + + /** Get HDCP Status on Video port. */ + // @text getHDCPStatusOnVideoPort + // @brief Get HDCP Status on Video port + // @param handle: handle to the port + // @param hdcpStatus: HDCP status + virtual Core::hresult GetHDCPStatusOnVideoPort(const int handle /* @in */, HDCPStatus &hdcpStatus /* @out */) = 0; + + /** Get HDCP Protocol version on Video port. */ + // @text getHDCPProtocolVersionOnVideoPort + // @brief Get HDCP Protocol version on Video port + // @param handle: handle to the port + // @param hdcpVersion: HDCP version + virtual Core::hresult GetHDCPProtocolVersionOnVideoPort(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + + /** Get HDCP Receiver Protocol version on Video port. */ + // @text getHDCPReceiverProtocolVersionOnVideoPort + // @brief Get HDCP Receiver Protocol version on Video port + // @param handle: handle to the port + // @param hdcpVersion: HDCP version + virtual Core::hresult GetHDCPReceiverProtocolVersionOnVideoPort(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + + /** Get HDCP Current Protocol version on Video port. */ + // @text getHDCPCurrentProtocolVersionOnVideoPort + // @brief Get HDCP Current Protocol version on Video port + // @param handle: handle to the port + // @param hdcpVersion: HDCP version + virtual Core::hresult GetHDCPCurrentProtocolVersionOnVideoPort(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + + /** Is Video port active. */ + // @text isVideoPortActive + // @brief Is Video port active + // @param handle: handle to the port + // @param active: active (true) or inactive (false) + virtual Core::hresult IsVideoPortActive(const int handle /* @in */, bool &active /* @out */) = 0; + + /** Get TVs HDR capabilities. */ + // @text getTVHDRCapabilities + // @brief Get TVs HDR capabilities + // @param handle: handle to the port + // @param capabilities: capabilities (masked value) - see HDRStandard + virtual Core::hresult GetTVHDRCapabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + + /** Get TVs supported resolutions. */ + // @text getTVHDRCapabilities + // @brief Get TVs supported resolutions + // @param handle: handle to the port + // @param resolutions: resolutions (masked value) - see TVResolution + virtual Core::hresult GetTVSupportedResolutions(const int handle /* @in */, int &resolutions /* @out */) = 0; + + /** Set Disable 4K. */ + // @text setForceDisable4K + // @brief Force disable 4K + // @param handle: handle to the port + // @param disable: disable (true) or enable (false) + virtual Core::hresult SetForceDisable4K(const int handle /* @in */, bool disable /* @in */) = 0; + + /** Get Disable 4K status. */ + // @text setForceDisable4K + // @brief Get Force disable 4K value + // @param handle: handle to the port + // @param disabled: disabled (true) or enabled (false) + virtual Core::hresult GetForceDisable4K(const int handle /* @in */, bool &disabled /* @out */) = 0; + + /** Is Video port output HDR?. */ + // @text issVideoPortOutputHDR + // @brief Is Video port output HDR? + // @param handle: handle to the port + // @param isHDR: yes (true) or no (false) + virtual Core::hresult IsVideoPortOutputHDR(const int handle /* @in */, bool &isHDR /* @out */) = 0; + + /** Reset Video port output to SDR. */ + // @text resetVideoPortOutputToSDR + // @brief Reset Video port output to SDR + virtual Core::hresult ResetVideoPortOutputToSDR() = 0; + + /** Get HDMI preferred HDCP protocol version. */ + // @text getHDMIPreference + // @brief Get HDMI preferred HDCP protocol version + // @param handle: handle to the port + // @param hdcpVersion: HDCP version + virtual Core::hresult GetHDMIPreference(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + + /** Set HDMI preferred HDCP protocol version. */ + // @text setHDMIPreference + // @brief Set HDMI preferred HDCP protocol version + // @param handle: handle to the port + // @param hdcpVersion: HDCP version + virtual Core::hresult SetHDMIPreference(const int handle /* @in */, HDCPProtocolVersion hdcpVersion /* @in */) = 0; + + /** Get Video EOTF. */ + // @text getVideoEOTF + // @brief Get TVs HDR capabilities + // @param handle: handle to the port + // @param hdrStandard: see HDRStandard + virtual Core::hresult GetVideoEOTF(const int handle /* @in */, HDRStandard &hdrStandard /* @out */) = 0; + + /** Get Matrix coefficients. */ + // @text getMatrixCoefficients + // @brief Get Matrix coefficients + // @param handle: handle to the port + // @param matrixCoefficients: see DisplayMatrixCoefficients + virtual Core::hresult GetMatrixCoefficients(const int handle /* @in */, DisplayMatrixCoefficients &matrixCoefficients /* @out */) = 0; + + /** Get Color Depth. */ + // @text getColorDepth + // @brief Get Color Depth + // @param handle: handle to the port + // @param colorDepth: color depth See DisplayColorDepth (masked) + virtual Core::hresult GetColorDepth(const int handle /* @in */, uint32_t &colorDepth /* @out */) = 0; + + /** Get Color Space. */ + // @text getColorSpace + // @brief Get Color Space + // @param handle: handle to the port + // @param colorSpace: color space + virtual Core::hresult GetColorSpace(const int handle /* @in */, DisplayColorSpace &colorSpace /* @out */) = 0; + + /** Get Quantization Range. */ + // @text getQuantizationRange + // @brief Get Quantization range + // @param handle: handle to the port + // @param quantizationRange: quantization range + virtual Core::hresult GetQuantizationRange(const int handle /* @in */, DisplayQuantizationRange &quantizationRange /* @out */) = 0; + + /** Get Current output settings. */ + // @text getCurrentOutputSettings + // @brief Get Current output settings + // @param handle: handle to the port + // @param outputSettings: Output settings + virtual Core::hresult GetCurrentOutputSettings(const int handle /* @in */, DSOutputSettings &outputSettings /* @out */) = 0; + + /** Set Video background color. */ + // @text setBackgroundColor + // @brief Set Video background color. + // @param handle: handle to the port + // @param backgroundColor: video background color + virtual Core::hresult SetBackgroundColor(const int handle /* @in */, VideoBackgroundColor backgroundColor /* @in */) = 0; + + /** Set HDR mode. */ + // @text setForceHDRMode + // @brief Set HDR mode + // @param handle: handle to the port + // @param hdrMode: see HDRStandard + virtual Core::hresult SetForceHDRMode(const int handle /* @in */, HDRStandard hdrMode /* @in */) = 0; + + /** Get Color Depth capabilities. */ + // @text getColorDepthCapabilities + // @brief Get Color Depth capabilities + // @param handle: handle to the port + // @param colorDepthCapabilities: color depth capabilities See DisplayColorDepth (masked) + virtual Core::hresult GetColorDepthCapabilities(const int handle /* @in */, uint32_t &colorDepthCapabilities /* @out */) = 0; + + /** Get Preferred Color Depth. */ + // @text getPreferredColorDepth + // @brief Get Preferred Color Depth + // @param handle: handle to the port + // @param colorDepth: color depth See DisplayColorDepth + // @param persist: return persisted value (true) or not (false) + virtual Core::hresult GetPreferredColorDepth(const int handle /* @in */, DisplayColorDepth &colorDepth /* @out */, bool persist /* @in */) = 0; + + /** Set Preferred Color Depth. */ + // @text getPreferredColorDepth + // @brief Set Preferred Color Depth + // @param handle: handle to the port + // @param colorDepth: color depth See DisplayColorDepth + // @param persist: persist value (true) or not (false) + virtual Core::hresult SetPreferredColorDepth(const int handle /* @in */, DisplayColorDepth colorDepth /* @in */, bool persist /* @in */) = 0; + - /** Execute API. */ - // @text Execute API - // @brief Execute API. - // @param reqBuf: request string (contains serialized parameters) - // @param respBuf: response string (contains serialized parameters) - virtual Core::hresult Execute(const string& reqBuf /* @in */, string& respBuf /* @out*/) = 0; }; - } // namespace Exchange - } // namespace WPEFramework + +} // namespace Exchange +} // namespace WPEFramework diff --git a/apis/Ids.h b/apis/Ids.h index 1a6160b6..a70d6342 100644 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -299,16 +299,6 @@ namespace Exchange { ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, ID_DEVICESETTINGS_MANAGER = ID_ENTOS_OFFSET + 0x3E0, - ID_DEVICESETTINGS_MANAGER_HDMIHOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 1, - ID_DEVICESETTINGS_MANAGER_RXSENSE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 2, - ID_DEVICESETTINGS_MANAGER_HDCP_STATUS_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 3, - ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 4, - ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 5, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 6, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 7, - ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 8, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 9, - ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 10 }; } From 01988cb0fc4af74514f47ab13c9e963fd9d611b5 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 08:52:26 +0530 Subject: [PATCH 07/36] resolved errors --- .../IDeviceSettingsManager.h | 42 +++++++++---------- apis/Ids.h | 11 ++++- 2 files changed, 31 insertions(+), 22 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 73cc94b7..20dfbbe9 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -932,7 +932,7 @@ namespace Exchange { enum DisplayVideoAspectRatio : uint8_t { DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16x9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ } enum DisplayInVideoStereoScopicMode : uint8_t { @@ -1349,7 +1349,7 @@ namespace Exchange { enum HDMIVideoAspectRatio : uint8_t { DS_HDMIIN_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, DS_HDMIIN_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_HDMIIN_ASPECT_RATIO_16x9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_HDMIIN_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ }; enum HDMIInVideoStereoScopicMode : uint8_t { @@ -1813,19 +1813,19 @@ namespace Exchange { }; enum VideoResolution: uint8_t { - DS_VIDEO_PIXELRES_720x480, - DS_VIDEO_PIXELRES_720x576, - DS_VIDEO_PIXELRES_1280x720, - DS_VIDEO_PIXELRES_1366x768, - DS_VIDEO_PIXELRES_1920x1080, - DS_VIDEO_PIXELRES_3840x2160, - DS_VIDEO_PIXELRES_4096x2160, + DS_VIDEO_PIXELRES_720X480, + DS_VIDEO_PIXELRES_720X576, + DS_VIDEO_PIXELRES_1280X720, + DS_VIDEO_PIXELRES_1366X768, + DS_VIDEO_PIXELRES_1920X1080, + DS_VIDEO_PIXELRES_3840X2160, + DS_VIDEO_PIXELRES_4096X2160, DS_VIDEO_PIXELRES_MAX }; enum VideoAspectRatio: uint8_t { - DS_VIDEO_ASPECT_RATIO_4x3, - DS_VIDEO_ASPECT_RATIO_16x9, + DS_VIDEO_ASPECT_RATIO_4X3, + DS_VIDEO_ASPECT_RATIO_16X9, DS_VIDEO_ASPECT_RATIO_MAX }; @@ -1897,24 +1897,24 @@ namespace Exchange { DS_DISPLAY_MATRIXCOEFFICIENT_BT_709 = 1, DS_DISPLAY_MATRIXCOEFFICIENT_BT_470_2_BG = 2, DS_DISPLAY_MATRIXCOEFFICIENT_SMPTE_170M = 3, - DS_DISPLAY_MATRIXCOEFFICIENT_XvYCC_709 = 4, - DS_DISPLAY_MATRIXCOEFFICIENT_eXvYCC_601 = 5, + DS_DISPLAY_MATRIXCOEFFICIENT_XVYCC_709 = 4, + DS_DISPLAY_MATRIXCOEFFICIENT_eXVYCC_601 = 5, DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_NCL = 6, DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_CL = 7, - DS_DISPLAY_MATRIXCOEFFICIENT_eDVI_FR_RGB = 8, - DS_DISPLAY_MATRIXCOEFFICIENT_eHDMI_RGB = 9, - DS_DISPLAY_MATRIXCOEFFICIENT_eFCC = 10, - DS_DISPLAY_MATRIXCOEFFICIENT_eSMPTE_240M = 11, - DS_DISPLAY_MATRIXCOEFFICIENT_eHDMI_FR_YCbCr = 12, + DS_DISPLAY_MATRIXCOEFFICIENT_EDVI_FR_RGB = 8, + DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_RGB = 9, + DS_DISPLAY_MATRIXCOEFFICIENT_EFCC = 10, + DS_DISPLAY_MATRIXCOEFFICIENT_ESMPTE_240M = 11, + DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_FR_YCbCr = 12, DS_DISPLAY_MATRIXCOEFFICIENT_MAX = 13 }; enum DisplayColorSpace: uint8_t { DS_DISPLAY_COLORSPACE_UNKNOWN = 0, DS_DISPLAY_COLORSPACE_RGB = 1, - DS_DISPLAY_COLORSPACE_YCbCr422 = 2, - DS_DISPLAY_COLORSPACE_YCbCr444 = 3, - DS_DISPLAY_COLORSPACE_YCbCr420 = 4, + DS_DISPLAY_COLORSPACE_YCBCR422 = 2, + DS_DISPLAY_COLORSPACE_YCBCR444 = 3, + DS_DISPLAY_COLORSPACE_YCBCR420 = 4, DS_DISPLAY_COLORSPACE_AUTO = 5, DS_DISPLAY_COLORSPACE_MAX = 6 }; diff --git a/apis/Ids.h b/apis/Ids.h index a70d6342..da20fe52 100644 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -299,7 +299,16 @@ namespace Exchange { ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, ID_DEVICESETTINGS_MANAGER = ID_ENTOS_OFFSET + 0x3E0, - + ID_DEVICESETTINGS_MANAGER_HDMIHOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 1, + ID_DEVICESETTINGS_MANAGER_RXSENSE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 2, + ID_DEVICESETTINGS_MANAGER_HDCP_STATUS_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 3, + ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 4, + ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 5, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 6, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 7, + ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 8, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 9, + ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 10 }; } } From 2a90d062e30257d79e1a12f1442dde642b7dc37a Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 09:04:19 +0530 Subject: [PATCH 08/36] resolved errors.. --- .../IDeviceSettingsManager.h | 6 +++--- apis/Ids.h | 20 +++++++++---------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 20dfbbe9..5b60c80e 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -1668,17 +1668,17 @@ namespace Exchange { // @brief Zoom settings changed // @text OnZoomSettingsChanged // @param zoomSetting: Currently applied zoom setting - virtual void OnZoomSettingsChanged(const VideoZoom zoomSetting) = 0; + virtual void OnZoomSettingsChanged(const VideoZoom zoomSetting) {}; // @brief Display Framerate Pre-change // @text OnDisplayFrameratePreChange // @param frameRate: PreChange framerate - virtual void OnDisplayFrameratePreChange(const string frameRate) = 0; + virtual void OnDisplayFrameratePreChange(const string frameRate) {}; // @brief Display Framerate Post-change // @text OnDisplayFrameratePostChange // @param frameRate: framerate post change - virtual void OnDisplayFrameratePostChange(const string frameRate) = 0; + virtual void OnDisplayFrameratePostChange(const string frameRate) {}; }; diff --git a/apis/Ids.h b/apis/Ids.h index da20fe52..a905c39d 100644 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -299,16 +299,16 @@ namespace Exchange { ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, ID_DEVICESETTINGS_MANAGER = ID_ENTOS_OFFSET + 0x3E0, - ID_DEVICESETTINGS_MANAGER_HDMIHOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 1, - ID_DEVICESETTINGS_MANAGER_RXSENSE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 2, - ID_DEVICESETTINGS_MANAGER_HDCP_STATUS_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 3, - ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 4, - ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 5, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 6, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 7, - ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 8, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 9, - ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 10 + ID_DEVICESETTINGS_MANAGER_AUDIO = ID_DEVICESETTINGS_MANAGER + 1, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_DEVICESETTINGS_MANAGER + 2, + ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_DEVICESETTINGS_MANAGER + 3, + ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 4, + ID_DEVICESETTINGS_MANAGER_FPD = ID_DEVICESETTINGS_MANAGER + 5, + ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_DEVICESETTINGS_MANAGER + 6, + ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 7, + ID_DEVICESETTINGS_MANAGER_HOST = ID_DEVICESETTINGS_MANAGER + 8, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_DEVICESETTINGS_MANAGER + 9, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_DEVICESETTINGS_MANAGER + 10 }; } } From 068ab0b7fb94154052847ad047720951ee954706 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 09:15:52 +0530 Subject: [PATCH 09/36] updated Ids.h file with IDeviceSettingsManager Macros --- apis/Ids.h | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) mode change 100644 => 100755 apis/Ids.h diff --git a/apis/Ids.h b/apis/Ids.h old mode 100644 new mode 100755 index a905c39d..5967846a --- a/apis/Ids.h +++ b/apis/Ids.h @@ -298,17 +298,29 @@ namespace Exchange { ID_MIRACAST_PLAYER_NOTIFICATION = ID_MIRACAST_SERVICE + 3, ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, - ID_DEVICESETTINGS_MANAGER = ID_ENTOS_OFFSET + 0x3E0, - ID_DEVICESETTINGS_MANAGER_AUDIO = ID_DEVICESETTINGS_MANAGER + 1, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_DEVICESETTINGS_MANAGER + 2, - ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_DEVICESETTINGS_MANAGER + 3, - ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 4, - ID_DEVICESETTINGS_MANAGER_FPD = ID_DEVICESETTINGS_MANAGER + 5, - ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_DEVICESETTINGS_MANAGER + 6, - ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER + 7, - ID_DEVICESETTINGS_MANAGER_HOST = ID_DEVICESETTINGS_MANAGER + 8, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_DEVICESETTINGS_MANAGER + 9, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_DEVICESETTINGS_MANAGER + 10 + ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, + ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO +1, + + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN +1, + + ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, + ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, + + ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, + ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, + + ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, + ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, + + ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, + ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, + + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, + + ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 }; } } From 2d52dbddf9fc385b466258ae3c700a648dcbc65d Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 09:30:50 +0530 Subject: [PATCH 10/36] updated errors --- .../IDeviceSettingsManager.h | 142 +++++++++--------- 1 file changed, 71 insertions(+), 71 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 5b60c80e..f89549d2 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -809,35 +809,35 @@ namespace Exchange { enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN }; - enum CompositeInPort: int8_t { - DS_COMPOSITE_IN_PORT_NONE = -1 /* @text UNKNOWN */, - DS_COMPOSITE_IN_PORT_0 = 0 /* @text CompositeIn Port 0 */, - DS_COMPOSITE_IN_PORT_1 = 1 /* @text CompositeIn Port 1 */, - DS_COMPOSITE_IN_PORT_MAX = 2 /* @text CompositeIn Port MAX */, - } - - enum CompositeInSignalStatus: int8_t { - DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = -1 /* @text Signal Status None */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 0 /* @text Signal Status No Signal */, - DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 1 /* @text Signal Status Unstable */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 2 /* @text Signal Status Not supported */, - DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 3 /* @text Signal Status Stable */, - DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @test Signal Status MAX */ - } + enum CompositeInPort : int8_t { + DS_COMPOSITE_IN_PORT_NONE = -1 /* @text UNKNOWN */, + DS_COMPOSITE_IN_PORT_0 = 0 /* @text CompositeIn Port 0 */, + DS_COMPOSITE_IN_PORT_1 = 1 /* @text CompositeIn Port 1 */, + DS_COMPOSITE_IN_PORT_MAX = 2 /* @text CompositeIn Port MAX */, + }; + + enum CompositeInSignalStatus : int8_t { + DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = -1 /* @text Signal Status None */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 0 /* @text Signal Status No Signal */, + DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 1 /* @text Signal Status Unstable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 2 /* @text Signal Status Not supported */, + DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 3 /* @text Signal Status Stable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @test Signal Status MAX */ + }; struct CompositeInStatus { bool isPresented; CompositeInPort activePort; bool isPort0Connected; - bool isPort1Connected; /* Can't have array in structures..so separating the booleans */ - } + bool isPort1Connected; /* Can't Have array in structures..so separating the booleans */ + }; struct VideoRectangle { int x; int y; int width; int height; - } + }; // @event struct EXTERNAL INotification : virtual public Core::IUnknown @@ -897,50 +897,50 @@ namespace Exchange { enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY }; enum DisplayEvent { - DS_DISPLAY_EVENT_CONNECTED =0, ///< Display connected event - DS_DISPLAY_EVENT_DISCONNECTED =1, ///< Display disconnected event - DS_DISPLAY_RXSENSE_ON =2, ///< Rx Sense ON event - DS_DISPLAY_RXSENSE_OFF =3, ///< Rx Sense OFF event - DS_DISPLAY_HDCPPROTOCOL_CHANGE=4, ///< HDCP Protocol Version Change event + DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event + DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event + DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event + DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event + DS_DISPLAY_HDCPPROTOCOL_CHANGE = 4, ///< HDCP Protocol Version Change event DS_DISPLAY_EVENT_MAX ///< Display max event - } - - enum DisplayTVResolution: uint32_t { - DS_DISPLAY_RESOLUTION_480I = 0x000001, - DS_DISPLAY_RESOLUTION_480P = 0x000002, - DS_DISPLAY_RESOLUTION_576I = 0x000004, - DS_DISPLAY_RESOLUTION_576P = 0x000008, - DS_DISPLAY_RESOLUTION_576P50 = 0x000010, - DS_DISPLAY_RESOLUTION_720P = 0x000020, - DS_DISPLAY_RESOLUTION_720P50 = 0x000040, - DS_DISPLAY_RESOLUTION_1080I = 0x000080, - DS_DISPLAY_RESOLUTION_1080P = 0x000100, - DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, - DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, - DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, - DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, - DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, - DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, - DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, - DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, - DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, - DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 - } + }; + + enum DisplayTVResolution : uint32_t { + DS_DISPLAY_RESOLUTION_480I = 0x000001, + DS_DISPLAY_RESOLUTION_480P = 0x000002, + DS_DISPLAY_RESOLUTION_576I = 0x000004, + DS_DISPLAY_RESOLUTION_576P = 0x000008, + DS_DISPLAY_RESOLUTION_576P50 = 0x000010, + DS_DISPLAY_RESOLUTION_720P = 0x000020, + DS_DISPLAY_RESOLUTION_720P50 = 0x000040, + DS_DISPLAY_RESOLUTION_1080I = 0x000080, + DS_DISPLAY_RESOLUTION_1080P = 0x000100, + DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, + DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, + DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, + DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, + DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, + DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, + DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, + DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, + DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, + DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 + }; enum DisplayVideoAspectRatio : uint8_t { - DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, - DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ - } + DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, + DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, + DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ + }; enum DisplayInVideoStereoScopicMode : uint8_t { - DS_DISPLAY_SSMODE_UNKNOWN = 0, - DS_DISPLAY_SSMODE_2D = 1, - DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 - } + DS_DISPLAY_SSMODE_UNKNOWN = 0, + DS_DISPLAY_SSMODE_2D = 1, + DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + }; enum DisplayInVideoFrameRate: uint8_t { DS_DISPLAY_FRAMERATE_UNKNOWN = 0, @@ -979,12 +979,12 @@ namespace Exchange { int32_t manufactureWeek; ///< Week of manufacture of the display device bool hdmiDeviceType; ///< Device type ( @a true if HDMI, @a false if DVI ) bool isRepeater; ///< Receiver is a repeater ( @a true if Repeater, @a false if connected Receiver is not a repeater) - uint8_t physicalAddressA; ///< Physical Address for HDMI node A - uint8_t physicalAddressB; ///< Physical Address for HDMI node B - uint8_t physicalAddressC; ///< Physical Address for HDMI node C - uint8_t physicalAddressD; ///< Physical Address for HDMI node D - int32_t numOfSupportedResolution; ///< Number of Supported Resolution - IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< EDID Supported Resoultion List + uint8_t physicalAddressA; ///< Physical Address for HDMI nodeA + uint8_t physicalAddressB; ///< Physical Address for HDMI nodeB + uint8_t physicalAddressC; ///< Physical Address for HDMI nodeC + uint8_t physicalAddressD; ///< Physical Address for HDMI nodeD + int32_t numOfSupportedResolution; ///< Number of Supported resolution + IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< EDID Supported Resoultion list string monitorName; }; @@ -1262,14 +1262,14 @@ namespace Exchange { using IHDMIInGameFeatureListIterator = RPC::IIteratorType; struct HDMIInSpdInfoFrame { - uint8_t pkttype; /*!< Package type */ + uint8_t pktType; /*!< Package type */ uint8_t version; /*!< Version */ uint8_t length; /*!< max length 25, min length 0 */ uint8_t rsd; /*!< Repetition of static data */ - uint8_t checksum; /*!< Checksum for spd info frame */ - string vendor_name; /*!< Vendor Name string. Min length 0 */ - string product_des; /*!< Product Description string. Min length 0 */ - uint8_t source_info; /*!< Source info of the frame */ + uint8_t checkSum; /*!< Checksum for spd info frame */ + string vendorName; /*!< Vendor Name string. Min length 0 */ + string productDes; /*!< Product Description string. Min length 0 */ + uint8_t sourceInfo; /*!< Source info of the frame */ }; enum HDMIInEdidVersion : uint8_t { @@ -1898,14 +1898,14 @@ namespace Exchange { DS_DISPLAY_MATRIXCOEFFICIENT_BT_470_2_BG = 2, DS_DISPLAY_MATRIXCOEFFICIENT_SMPTE_170M = 3, DS_DISPLAY_MATRIXCOEFFICIENT_XVYCC_709 = 4, - DS_DISPLAY_MATRIXCOEFFICIENT_eXVYCC_601 = 5, + DS_DISPLAY_MATRIXCOEFFICIENT_EXVYCC_601 = 5, DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_NCL = 6, DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_CL = 7, DS_DISPLAY_MATRIXCOEFFICIENT_EDVI_FR_RGB = 8, DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_RGB = 9, DS_DISPLAY_MATRIXCOEFFICIENT_EFCC = 10, DS_DISPLAY_MATRIXCOEFFICIENT_ESMPTE_240M = 11, - DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_FR_YCbCr = 12, + DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_FR_YCBCR = 12, DS_DISPLAY_MATRIXCOEFFICIENT_MAX = 13 }; @@ -1937,7 +1937,7 @@ namespace Exchange { struct DSOutputSettings { HDRStandard videoEotf; DisplayMatrixCoefficients matrixCoefficients; - uint32_t color_depth; + uint32_t colorDepth; DisplayColorSpace colorSpace; DisplayQuantizationRange quantizationRange; }; From 3a71ecf9aecc8e2ea3969c6486c0cd2e9a325faf Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 09:36:04 +0530 Subject: [PATCH 11/36] updated errors --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index f89549d2..873a9c4b 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -977,8 +977,8 @@ namespace Exchange { int32_t serialNumber; ///< Serial number of the display device int32_t manufactureYear; ///< Year of manufacture of the display device int32_t manufactureWeek; ///< Week of manufacture of the display device - bool hdmiDeviceType; ///< Device type ( @a true if HDMI, @a false if DVI ) - bool isRepeater; ///< Receiver is a repeater ( @a true if Repeater, @a false if connected Receiver is not a repeater) + bool hdmiDeviceType; ///< Device type @a true if HDMI, @a false if DVI + bool isRepeater; ///< Receiver is a repeater @a true if Repeater, @a false if connected Receiver is not a repeater uint8_t physicalAddressA; ///< Physical Address for HDMI nodeA uint8_t physicalAddressB; ///< Physical Address for HDMI nodeB uint8_t physicalAddressC; ///< Physical Address for HDMI nodeC From d4aa5bea38d7ff310579678364b15cce690f3855 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 09:55:31 +0530 Subject: [PATCH 12/36] updated errors --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 873a9c4b..7a33bb33 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -977,7 +977,7 @@ namespace Exchange { int32_t serialNumber; ///< Serial number of the display device int32_t manufactureYear; ///< Year of manufacture of the display device int32_t manufactureWeek; ///< Week of manufacture of the display device - bool hdmiDeviceType; ///< Device type @a true if HDMI, @a false if DVI + bool hdmiDeviceType; ///< Device type @a true if HDMI, @a false if DVI device bool isRepeater; ///< Receiver is a repeater @a true if Repeater, @a false if connected Receiver is not a repeater uint8_t physicalAddressA; ///< Physical Address for HDMI nodeA uint8_t physicalAddressB; ///< Physical Address for HDMI nodeB From 5376efeb3fc6217c292ddde2a3c663ae08f62fde Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 10:09:09 +0530 Subject: [PATCH 13/36] updated errors --- .../IDeviceSettingsManager.h | 177 +++++++++++++----- 1 file changed, 128 insertions(+), 49 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 7a33bb33..822b6300 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -809,27 +809,27 @@ namespace Exchange { enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN }; - enum CompositeInPort : int8_t { - DS_COMPOSITE_IN_PORT_NONE = -1 /* @text UNKNOWN */, - DS_COMPOSITE_IN_PORT_0 = 0 /* @text CompositeIn Port 0 */, - DS_COMPOSITE_IN_PORT_1 = 1 /* @text CompositeIn Port 1 */, - DS_COMPOSITE_IN_PORT_MAX = 2 /* @text CompositeIn Port MAX */, + enum CompositeInPort: int8_t { + DS_COMPOSITE_IN_PORT_NONE = -1 /* @text UNKNOWN */, + DS_COMPOSITE_IN_PORT_0 = 0 /* @text CompositeIn Port 0 */, + DS_COMPOSITE_IN_PORT_1 = 1 /* @text CompositeIn Port 1 */, + DS_COMPOSITE_IN_PORT_MAX = 2 /* @text CompositeIn Port MAX */, }; - enum CompositeInSignalStatus : int8_t { - DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = -1 /* @text Signal Status None */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 0 /* @text Signal Status No Signal */, - DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 1 /* @text Signal Status Unstable */, - DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 2 /* @text Signal Status Not supported */, - DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 3 /* @text Signal Status Stable */, - DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @test Signal Status MAX */ + enum CompositeInSignalStatus: int8_t { + DS_COMPOSITE_IN_SIGNAL_STATUS_NONE = -1 /* @text Signal Status None */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOSIGNAL = 0 /* @text Signal Status No Signal */, + DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 1 /* @text Signal Status Unstable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 2 /* @text Signal Status Not supported */, + DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 3 /* @text Signal Status Stable */, + DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @test Signal Status MAX */ }; struct CompositeInStatus { bool isPresented; CompositeInPort activePort; bool isPort0Connected; - bool isPort1Connected; /* Can't Have array in structures..so separating the booleans */ + bool isPort1Connected; /* Can't have array in structures..so separating the booleans */ }; struct VideoRectangle { @@ -839,6 +839,70 @@ namespace Exchange { int height; }; + enum DisplayTVResolution: uint32_t { + DS_DISPLAY_RESOLUTION_480I = 0x000001, + DS_DISPLAY_RESOLUTION_480P = 0x000002, + DS_DISPLAY_RESOLUTION_576I = 0x000004, + DS_DISPLAY_RESOLUTION_576P = 0x000008, + DS_DISPLAY_RESOLUTION_576P50 = 0x000010, + DS_DISPLAY_RESOLUTION_720P = 0x000020, + DS_DISPLAY_RESOLUTION_720P50 = 0x000040, + DS_DISPLAY_RESOLUTION_1080I = 0x000080, + DS_DISPLAY_RESOLUTION_1080P = 0x000100, + DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, + DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, + DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, + DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, + DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, + DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, + DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, + DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, + DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, + DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 + }; + + enum DisplayVideoAspectRatio : uint8_t { + DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, + DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, + DS_DISPLAY_ASPECT_RATIO_16x9 = 2 /* @text Video Aspect Ratio 16x9 */ + }; + + enum DisplayInVideoStereoScopicMode : uint8_t { + DS_DISPLAY_SSMODE_UNKNOWN = 0, + DS_DISPLAY_SSMODE_2D = 1, + DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + }; + + enum DisplayInVideoFrameRate: uint8_t { + DS_DISPLAY_FRAMERATE_UNKNOWN = 0, + DS_DISPLAY_FRAMERATE_24 = 1, + DS_DISPLAY_FRAMERATE_25 = 2, + DS_DISPLAY_FRAMERATE_30 = 3, + DS_DISPLAY_FRAMERATE_60 = 4, + DS_DISPLAY_FRAMERATE_23_98 = 5, + DS_DISPLAY_FRAMERATE_29_97 = 6, + DS_DISPLAY_FRAMERATE_50 = 7, + DS_DISPLAY_FRAMERATE_59_94 = 8, + DS_DISPLAY_FRAMERATE_100 = 9, + DS_DISPLAY_FRAMERATE_119_88 = 10, + DS_DISPLAY_FRAMERATE_120 = 11, + DS_DISPLAY_FRAMERATE_200 = 12, + DS_DISPLAY_FRAMERATE_239_76 = 13, + DS_DISPLAY_FRAMERATE_240 = 14, + DS_DISPLAY_FRAMERATE_MAX = 15 + }; + + struct DisplayVideoPortResolution { + string name; + DisplayTVResolution pixelResolution; + DisplayVideoAspectRatio aspectRatio; + DisplayInVideoFrameRate frameRate; + bool interlaced; + }; + // @event struct EXTERNAL INotification : virtual public Core::IUnknown { @@ -861,6 +925,14 @@ namespace Exchange { // @param activePort: Active port // @param isPresented: is it presented to user virtual void OnCompositeInStatus(const CompositeInPort activePort, const bool isPresented) {}; + + // @brief Composite In status + // @text onCompositeInStatus + // @param activePort: Active port + // @param videoResolution: See DisplayVideoPortResolution + virtual void OnCompositeInVideoModeUpdate(const CompositeInPort activePort, const DisplayVideoPortResolution videoResolution) {}; + + }; @@ -897,49 +969,49 @@ namespace Exchange { enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY }; enum DisplayEvent { - DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event - DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event - DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event - DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event + DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event + DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event + DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event + DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event DS_DISPLAY_HDCPPROTOCOL_CHANGE = 4, ///< HDCP Protocol Version Change event - DS_DISPLAY_EVENT_MAX ///< Display max event - }; - - enum DisplayTVResolution : uint32_t { - DS_DISPLAY_RESOLUTION_480I = 0x000001, - DS_DISPLAY_RESOLUTION_480P = 0x000002, - DS_DISPLAY_RESOLUTION_576I = 0x000004, - DS_DISPLAY_RESOLUTION_576P = 0x000008, - DS_DISPLAY_RESOLUTION_576P50 = 0x000010, - DS_DISPLAY_RESOLUTION_720P = 0x000020, - DS_DISPLAY_RESOLUTION_720P50 = 0x000040, - DS_DISPLAY_RESOLUTION_1080I = 0x000080, - DS_DISPLAY_RESOLUTION_1080P = 0x000100, - DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, - DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, - DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, - DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, - DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, - DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, - DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, - DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, - DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, - DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 + DS_DISPLAY_EVENT_MAX ///< Display max event + }; + + enum DisplayTVResolution: uint32_t { + DS_DISPLAY_RESOLUTION_480I = 0x000001, + DS_DISPLAY_RESOLUTION_480P = 0x000002, + DS_DISPLAY_RESOLUTION_576I = 0x000004, + DS_DISPLAY_RESOLUTION_576P = 0x000008, + DS_DISPLAY_RESOLUTION_576P50 = 0x000010, + DS_DISPLAY_RESOLUTION_720P = 0x000020, + DS_DISPLAY_RESOLUTION_720P50 = 0x000040, + DS_DISPLAY_RESOLUTION_1080I = 0x000080, + DS_DISPLAY_RESOLUTION_1080P = 0x000100, + DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, + DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, + DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, + DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, + DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, + DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, + DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, + DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, + DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, + DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 }; enum DisplayVideoAspectRatio : uint8_t { - DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, - DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, + DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, + DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ }; enum DisplayInVideoStereoScopicMode : uint8_t { - DS_DISPLAY_SSMODE_UNKNOWN = 0, - DS_DISPLAY_SSMODE_2D = 1, - DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + DS_DISPLAY_SSMODE_UNKNOWN = 0, + DS_DISPLAY_SSMODE_2D = 1, + DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 }; enum DisplayInVideoFrameRate: uint8_t { @@ -1437,6 +1509,13 @@ namespace Exchange { // @param audioDelay: audio delay // @param videoDelay: video delay virtual void OnHDMInAVLatency(const int audioDelay, const int videoDelay) {}; + + // @brief HDMI VRR status + // @text OnHDMInVRRStatus + // @param port: port 0 or 1 et al + // @param vrrType: VRR type + virtual void OnHDMInVRRStatus(const HDMIInPort port, const HDMIInVRRType vrrType) {}; + }; From 9dfb96e92dacc97cb154445ac93abbbf23964256 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 10:11:24 +0530 Subject: [PATCH 14/36] updated errors --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 822b6300..af246399 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -866,7 +866,7 @@ namespace Exchange { enum DisplayVideoAspectRatio : uint8_t { DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16x9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ }; enum DisplayInVideoStereoScopicMode : uint8_t { From 4acc307474033f5c98833552bfdc050d321c9cbc Mon Sep 17 00:00:00 2001 From: Dosakaya <110212899+Dosakaya@users.noreply.github.com> Date: Wed, 6 Aug 2025 10:51:02 +0530 Subject: [PATCH 15/36] Update Ids.h --- apis/Ids.h | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/apis/Ids.h b/apis/Ids.h index 5967846a..fb4ec227 100755 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -298,29 +298,29 @@ namespace Exchange { ID_MIRACAST_PLAYER_NOTIFICATION = ID_MIRACAST_SERVICE + 3, ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, - ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, - ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO +1, + ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, + ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO +1, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN +1, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN +1, - ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, - ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, + ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, + ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, - ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, - ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, + ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, + ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, - ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, - ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, + ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, + ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, - ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, - ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, + ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, + ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 + ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 }; } } From 86c59595b02e76452e0895ce7ff534ace68214e9 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 6 Aug 2025 14:41:07 +0530 Subject: [PATCH 16/36] errors --- .../IDeviceSettingsManager.h | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index af246399..0b836758 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -117,11 +117,6 @@ namespace Exchange { AUDIO_INPUT_MAX = 2 }; - struct AudioARCStatus { - AudioARCType type; - bool status; - }; - enum MS12Capabilities : uint8_t { AUDIO_MS12_CAPABILITIES_NONE = 0, AUDIO_MS12_CAPABILITIES_DOLBYVOLUME = 1, @@ -309,7 +304,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param count: number of items in sadList (max 15) // @param sadList: SAD array - virtual Core::hresult SetSAD(const int handle /* @in */, int count /* @in */, int sadList[] /* @in */) = 0; + virtual Core::hresult SetSAD(const int handle /* @in */, int count /* @in */, int sadList[] /* @in @length:return @maxlength:count */) = 0; /** Enable ARC */ // @text enableARC @@ -427,7 +422,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param enable : persistence enable (true) or disable (false) // @param portName: portName for which persistence is enabled - virtual Core::hresult SetAudioEnablePersist(const int handle /* @in */, bool enable /* @in */, string &portName /* @in */) = 0; + virtual Core::hresult SetAudioEnablePersist(const int handle /* @in */, bool enable /* @in */, string portName /* @in */) = 0; /** Audio MS decode Status. */ // @text isAudioMSDecoded @@ -652,7 +647,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param mode: Equalizer mode virtual Core::hresult GetAudioGraphicEqualizerMode(const int handle /* @in */, int &mode /* @out */) = 0; - +#if 0 /** Get Audio MS12 profile list */ // @text getAudioMS12ProfileList // @brief Get Audio MS12 profile list @@ -680,7 +675,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param audioInput: AudioInput // @param volume: Volume level - virtual Core::hresult SetAudioMixerLevels(const int handle /* @in */, const AudioInput audioInput /* @in */, int &volume /* @in */) = 0; + virtual Core::hresult SetAudioMixerLevels(const int handle /* @in */, const AudioInput audioInput /* @in */, int volume /* @in */) = 0; /** Set Associated Audio Mixing values */ // @text setAssociatedAudioMixing @@ -802,9 +797,10 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param portId: Port Id virtual Core::hresult GetAudioHDMIARCPortId(const int handle /* @in */, int &portId /* @out */) = 0; - +#endif }; +#if 1 struct EXTERNAL IDeviceSettingsManagerCompositeIn : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN }; @@ -1090,7 +1086,8 @@ namespace Exchange { // @param port: port for which the handle is required // @param index: index of the port (there can be multiple number of ports) // @param handle: handle to the port - virtual Core::hresult GetDisplay(VideoPort port /* @in */, int index /* @in */, int &handle /* @out */) = 0; + // virtual Core::hresult GetDisplay(VideoPort port /* @in */, int index /* @in */, int &handle /* @out */) = 0; + // Lakshmi commented above as VideoPort is avalable at line no: 1847 /** Get Display Aspect ratio. */ // @text getDisplayAspectRatio @@ -1104,7 +1101,8 @@ namespace Exchange { // @brief Get Display EDID // @param handle: handle returned in GetDisplay // @param edId: EDID information - virtual Core::hresult GetDisplayEdid(const int handle /* @in */, DisplayEDID &edId /* @out */) = 0; +// virtual Core::hresult GetDisplayEdid(const int handle, DisplayEDID &edId /* @out */) = 0; +//Lakshmi: ERROR: IFirmwareVersion.h: /home/nadosakayala/dsmgr/entservices-apis/apis/DeviceSettingsManager/IDeviceSettingsManager.h(1105): parse error: in/out tags not allowed here /** Get Display EDID bytes. */ // @text getDisplayEdidBytes @@ -1306,7 +1304,7 @@ namespace Exchange { DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, DS_HDMI_IN_SIGNAL_STATUS_NOTSUPPORTED = 2, DS_HDMI_IN_SIGNAL_STATUS_STABLE = 3, - DS_HDMI_IN_SIGNAL_STATUS_MAX. = 4 + DS_HDMI_IN_SIGNAL_STATUS_MAX = 4 }; struct HDMIPortConnectionStatus { @@ -2315,6 +2313,6 @@ namespace Exchange { }; - +#endif } // namespace Exchange } // namespace WPEFramework From 9bc97a445073a360488e665b911cf76a21240cc0 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Thu, 7 Aug 2025 18:05:15 +0530 Subject: [PATCH 17/36] fixed all the thundertools build errors --- .../IDeviceSettingsManager.h | 336 +++++++++--------- apis/Ids.h | 42 ++- 2 files changed, 184 insertions(+), 194 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 0b836758..95a59e96 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -117,7 +117,8 @@ namespace Exchange { AUDIO_INPUT_MAX = 2 }; - enum MS12Capabilities : uint8_t { + /* Lakshmi: removed struct AudioARCStatus to avoid duplication */ + enum MS12Capabilities : uint64_t { AUDIO_MS12_CAPABILITIES_NONE = 0, AUDIO_MS12_CAPABILITIES_DOLBYVOLUME = 1, AUDIO_MS12_CAPABILITIES_INTELLIGENT_EQUALIZER = 2, @@ -130,7 +131,7 @@ namespace Exchange { AUDIO_MS12_CAPABILITIES_MI_STEERING = 256, AUDIO_MS12_CAPABILITIES_GRAPHIC_EQUALIZER = 512, AUDIO_MS12_CAPABILITIES_LE_CONFIG = 1024, - AUDIO_MS12_CAPABILITIES_INVALID = (1 << 31) + //AUDIO_MS12_CAPABILITIES_INVALID = (1 << 31) }; // TODO AudioSADList @@ -138,7 +139,7 @@ namespace Exchange { // TODO MS12 Audio Profile list struct MS12AudioProfile { - string audioProfile; + string audioProfile; }; using IDeviceSettingsAudioMS12AudioProfileIterator = RPC::IIteratorType; @@ -189,6 +190,8 @@ namespace Exchange { struct AudioSADItem { int sad /* @brief SAD value */ ; }; + + // Lakshmi not using this iterator. shall we remove. using IDSAudioSADIterator = RPC::IIteratorType; struct AudioARCStatus { @@ -297,15 +300,15 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param types: Supported types virtual Core::hresult GetSupportedARCTypes(const int handle /* @in */, int &types /* @out */) = 0; - +#if 0 /** Set SAD */ // @text setSAD // @brief Get Supported ARC types // @param handle: handle returned in GetAudioPort() - // @param count: number of items in sadList (max 15) // @param sadList: SAD array - virtual Core::hresult SetSAD(const int handle /* @in */, int count /* @in */, int sadList[] /* @in @length:return @maxlength:count */) = 0; - + // @param count: number of items in sadList (max 15) + virtual Core::hresult SetSAD(const int handle /* @in */, int sadList[] /* @in @length:return @maxlength:count */, int count /* @in */) = 0; +#endif /** Enable ARC */ // @text enableARC // @brief Get Supported ARC types @@ -647,13 +650,15 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param mode: Equalizer mode virtual Core::hresult GetAudioGraphicEqualizerMode(const int handle /* @in */, int &mode /* @out */) = 0; + #if 0 /** Get Audio MS12 profile list */ // @text getAudioMS12ProfileList // @brief Get Audio MS12 profile list // @param handle: handle returned in GetAudioPort() // @param ms12ProfileList: MS12 profile list iterator - virtual Core::hresult GetAudioMS12ProfileList(const int handle /* @in */, IDeviceSettingsAudioMS12AudioProfileIterator *&ms12ProfileList /* @out */) = 0; + virtual Core::hresult GetAudioMS12ProfileList(const int handle /* @in */, IDeviceSettingsAudioMS12AudioProfileIterator*& ms12ProfileList /* @out */) const = 0; +#endif /** Get Audio MS12 profile */ // @text getAudioMS12Profile @@ -667,7 +672,7 @@ namespace Exchange { // @brief Set Audio MS12 profile // @param handle: handle returned in GetAudioPort() // @param profile: Name of the profile - virtual Core::hresult SetAudioMS12Profile(const int handle /* @in */, string &profile /* @out */) = 0; + virtual Core::hresult SetAudioMS12Profile(const int handle /* @in */, string profile /* @in */) = 0; /** Set Audio Mixer Levels */ // @text setAudioMixerLevels @@ -677,6 +682,7 @@ namespace Exchange { // @param volume: Volume level virtual Core::hresult SetAudioMixerLevels(const int handle /* @in */, const AudioInput audioInput /* @in */, int volume /* @in */) = 0; + /** Set Associated Audio Mixing values */ // @text setAssociatedAudioMixing // @brief Set Associated Audio Mixing values @@ -688,7 +694,7 @@ namespace Exchange { // @text getAssociatedAudioMixing // @brief Get Associated Audio Mixing values // @param handle: handle returned in GetAudioPort() - // @param types: true or false + // @param mixing: true or false virtual Core::hresult GetAssociatedAudioMixing(const int handle /* @in */, bool &mixing /* @out */) = 0; /** Set Audio Fader control values */ @@ -696,7 +702,7 @@ namespace Exchange { // @brief Set Audio Fader control values // @param handle: handle returned in GetAudioPort() // @param mixerBalance: Mixer balance for fader control - virtual Core::hresult SetAudioFaderControl(const int handle /* @in */, int &mixerBalance /* @out */) = 0; + virtual Core::hresult SetAudioFaderControl(const int handle /* @in */, int mixerBalance /* @in */) = 0; /** Get Audio Fader control values */ // @text getAudioFaderControl @@ -710,7 +716,7 @@ namespace Exchange { // @brief Set Primary Audio language // @param handle: handle returned in GetAudioPort() // @param primaryAudioLanguage: Primary audio language - virtual Core::hresult SetAudioPrimaryLanguage(const int handle /* @in */, string &primaryAudioLanguage /* @in */) = 0; + virtual Core::hresult SetAudioPrimaryLanguage(const int handle /* @in */, string primaryAudioLanguage /* @in */) = 0; /** Get Primary Audio language */ // @text getAudioPrimaryLanguage @@ -724,7 +730,7 @@ namespace Exchange { // @brief Set Secondary Audio language // @param handle: handle returned in GetAudioPort() // @param secondaryAudioLanguage: Secondary audio language - virtual Core::hresult SetAudioSecondaryLanguage(const int handle /* @in */, string &secondaryAudioLanguage /* @in */) = 0; + virtual Core::hresult SetAudioSecondaryLanguage(const int handle /* @in */, string secondaryAudioLanguage /* @in */) = 0; /** Get Primary Audio language */ // @text getAudioSecondaryLanguage @@ -753,8 +759,9 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param profileName: Name of the profile // @param profileSettingsName: Name of the profile setting + // @param profileSettingValue : value of the profile setting // @param profileState: ADD or REMOVE - virtual Core::hresult SetAudioMS12SettingsOverride(const int handle /* @in */, string &profileName /* @in */, string &profileSettingsName /* @in */, string &profileSettingValue /* @in */, string &profileState /* @in */ ) = 0; + virtual Core::hresult SetAudioMS12SettingsOverride(const int handle /* @in */, string profileName /* @in */, string profileSettingsName /* @in */, string profileSettingValue /* @in */, string profileState /* @in */ ) = 0; /** Is Audio output connected? */ // @text isAudioOutputConnected @@ -763,32 +770,29 @@ namespace Exchange { // @param isConnected: connected (true) or not (false) virtual Core::hresult IsAudioOutputConnected(const int handle /* @in */, bool &isConnected /* @out */) = 0; + /** Reset Audio Dialog enhancement */ // @text resetAudioDialogEnhancement // @brief Reset Audio Dialog enhancement // @param handle: handle returned in GetAudioPort() - // @param types: Supported types virtual Core::hresult ResetAudioDialogEnhancement(const int handle /* @in */) = 0; /** Reset Audio Bass enhancement */ // @text resetAudioBassEnhancer // @brief Reset Audio Bass enhancement // @param handle: handle returned in GetAudioPort() - // @param types: Supported types virtual Core::hresult ResetAudioBassEnhancer(const int handle /* @in */) = 0; /** Reset Audio Surround virtualizer */ // @text resetAudioSurroundVirtualizer // @brief Reset Audio Surround virtualizer // @param handle: handle returned in GetAudioPort() - // @param types: Supported types virtual Core::hresult ResetAudioSurroundVirtualizer(const int handle /* @in */) = 0; /** Reset Audio Volume leveller */ // @text resetAudioVolumeLeveller // @brief Reset Audio Volume leveller // @param handle: handle returned in GetAudioPort() - // @param types: Supported types virtual Core::hresult ResetAudioVolumeLeveller(const int handle /* @in */) = 0; /** Get Audio HDMI ARC Port ID */ @@ -797,10 +801,8 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param portId: Port Id virtual Core::hresult GetAudioHDMIARCPortId(const int handle /* @in */, int &portId /* @out */) = 0; -#endif }; -#if 1 struct EXTERNAL IDeviceSettingsManagerCompositeIn : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN }; @@ -836,27 +838,26 @@ namespace Exchange { }; enum DisplayTVResolution: uint32_t { - DS_DISPLAY_RESOLUTION_480I = 0x000001, - DS_DISPLAY_RESOLUTION_480P = 0x000002, - DS_DISPLAY_RESOLUTION_576I = 0x000004, - DS_DISPLAY_RESOLUTION_576P = 0x000008, - DS_DISPLAY_RESOLUTION_576P50 = 0x000010, - DS_DISPLAY_RESOLUTION_720P = 0x000020, - DS_DISPLAY_RESOLUTION_720P50 = 0x000040, - DS_DISPLAY_RESOLUTION_1080I = 0x000080, - DS_DISPLAY_RESOLUTION_1080P = 0x000100, - DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, - DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, - DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, - DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, - DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, - DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, - DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, - DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, - DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, - DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 + DS_DISPLAY_RESOLUTION_480I = 0x000001, + DS_DISPLAY_RESOLUTION_480P = 0x000002, + DS_DISPLAY_RESOLUTION_576I = 0x000004, + DS_DISPLAY_RESOLUTION_576P = 0x000008, + DS_DISPLAY_RESOLUTION_576P50 = 0x000010, + DS_DISPLAY_RESOLUTION_720P = 0x000020, + DS_DISPLAY_RESOLUTION_720P50 = 0x000040, + DS_DISPLAY_RESOLUTION_1080I = 0x000080, + DS_DISPLAY_RESOLUTION_1080P = 0x000100, + DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, + DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, + DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, + DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, + DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, + DS_DISPLAY_RESOLUTION_1080P60 = 0x008000, + DS_DISPLAY_RESOLUTION_2160P24 = 0x010000, + DS_DISPLAY_RESOLUTION_2160P25 = 0x020000, + DS_DISPLAY_RESOLUTION_2160P30 = 0x040000, + DS_DISPLAY_RESOLUTION_2160P50 = 0x080000, + DS_DISPLAY_RESOLUTION_2160P60 = 0x100000 }; enum DisplayVideoAspectRatio : uint8_t { @@ -866,21 +867,21 @@ namespace Exchange { }; enum DisplayInVideoStereoScopicMode : uint8_t { - DS_DISPLAY_SSMODE_UNKNOWN = 0, - DS_DISPLAY_SSMODE_2D = 1, - DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + DS_DISPLAY_SSMODE_UNKNOWN = 0, + DS_DISPLAY_SSMODE_2D = 1, + DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 }; enum DisplayInVideoFrameRate: uint8_t { - DS_DISPLAY_FRAMERATE_UNKNOWN = 0, + DS_DISPLAY_FRAMERATE_UNKNOWN = 0, DS_DISPLAY_FRAMERATE_24 = 1, - DS_DISPLAY_FRAMERATE_25 = 2, - DS_DISPLAY_FRAMERATE_30 = 3, - DS_DISPLAY_FRAMERATE_60 = 4, - DS_DISPLAY_FRAMERATE_23_98 = 5, - DS_DISPLAY_FRAMERATE_29_97 = 6, - DS_DISPLAY_FRAMERATE_50 = 7, + DS_DISPLAY_FRAMERATE_25 = 2, + DS_DISPLAY_FRAMERATE_30 = 3, + DS_DISPLAY_FRAMERATE_60 = 4, + DS_DISPLAY_FRAMERATE_23_98 = 5, + DS_DISPLAY_FRAMERATE_29_97 = 6, + DS_DISPLAY_FRAMERATE_50 = 7, DS_DISPLAY_FRAMERATE_59_94 = 8, DS_DISPLAY_FRAMERATE_100 = 9, DS_DISPLAY_FRAMERATE_119_88 = 10, @@ -890,7 +891,7 @@ namespace Exchange { DS_DISPLAY_FRAMERATE_240 = 14, DS_DISPLAY_FRAMERATE_MAX = 15 }; - + struct DisplayVideoPortResolution { string name; DisplayTVResolution pixelResolution; @@ -928,13 +929,11 @@ namespace Exchange { // @param videoResolution: See DisplayVideoPortResolution virtual void OnCompositeInVideoModeUpdate(const CompositeInPort activePort, const DisplayVideoPortResolution videoResolution) {}; - - }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerCompositeIn::INotification* notification /* @in */) = 0; virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerCompositeIn::INotification* notification /* @in */) = 0; - + /** Get number of composite inputs. */ // @text getNrOfCompositeInputs // @brief Get Preferred Sleep mode. @@ -958,15 +957,14 @@ namespace Exchange { // @brief Scale composite video. // @param videoRect: co-ordinates and width/height to scale to virtual Core::hresult ScaleCompositeInVideo(const VideoRectangle videoRect /* @in */) = 0; - }; struct EXTERNAL IDeviceSettingsManagerDisplay : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY }; enum DisplayEvent { - DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event - DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event + DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event + DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event DS_DISPLAY_HDCPPROTOCOL_CHANGE = 4, ///< HDCP Protocol Version Change event @@ -985,7 +983,6 @@ namespace Exchange { DS_DISPLAY_RESOLUTION_1080P = 0x000100, DS_DISPLAY_RESOLUTION_1080P24 = 0x000200, DS_DISPLAY_RESOLUTION_1080I25 = 0x000400, - DS_DISPLAY_RESOLUTION_1080I25 = 0x000800, DS_DISPLAY_RESOLUTION_1080P30 = 0x001000, DS_DISPLAY_RESOLUTION_1080I50 = 0x002000, DS_DISPLAY_RESOLUTION_1080P50 = 0x004000, @@ -1039,7 +1036,7 @@ namespace Exchange { }; using IDeviceSettingsDisplayVideoPortResolutionIterator = RPC::IIteratorType; - + struct DisplayEDID { int32_t productCode; ///< Product code of the display device int32_t serialNumber; ///< Serial number of the display device @@ -1052,20 +1049,15 @@ namespace Exchange { uint8_t physicalAddressC; ///< Physical Address for HDMI nodeC uint8_t physicalAddressD; ///< Physical Address for HDMI nodeD int32_t numOfSupportedResolution; ///< Number of Supported resolution - IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< EDID Supported Resoultion list + //IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< EDID Supported Resoultion list string monitorName; }; - + // @event struct EXTERNAL INotification : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION }; - // @brief Display HDMI Hot plug event - // @text onDisplayHDMIHotPlug - // @param displayEvent: DS_DISPLAY_EVENT_CONNECTED or DS_DISPLAY_EVENT_DISCONNECTED - virtual void OnDisplayHDMIHotPlug(const DisplayEvent displayEvent) {}; - // @brief Display RX Sense event // @text onDisplayRxSense // @param displayEvent: DS_DISPLAY_RXSENSE_ON or DS_DISPLAY_RXSENSE_OFF @@ -1079,39 +1071,37 @@ namespace Exchange { virtual Core::hresult Register(Exchange::IDeviceSettingsManagerDisplay::INotification* notification /* @in */) = 0; virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerDisplay::INotification* notification /* @in */) = 0; - - /** Get Handle of Video port. */ - // @text getDisplay - // @brief Get Handle of Video port - // @param port: port for which the handle is required - // @param index: index of the port (there can be multiple number of ports) - // @param handle: handle to the port - // virtual Core::hresult GetDisplay(VideoPort port /* @in */, int index /* @in */, int &handle /* @out */) = 0; - // Lakshmi commented above as VideoPort is avalable at line no: 1847 - /** Get Display Aspect ratio. */ - // @text getDisplayAspectRatio - // @brief Get Display Aspect ratio - // @param handle: handle returned in GetDisplay - // @param aspectRatio: Aspect ratio of port - virtual Core::hresult GetDisplayAspectRatio(const int handle /* @in */, VideoAspectRatio &aspectRatio /* @out */) = 0; + // @event + struct EXTERNAL IDisplayNotification : virtual public Core::IUnknown + { + enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY_HOTPLUG_NOTIFICATION }; + + // @brief Display HDMI Hot plug event + // @text onDisplayHDMIHotPlug + // @param displayEvent: DS_DISPLAY_EVENT_CONNECTED or DS_DISPLAY_EVENT_DISCONNECTED + virtual void OnDisplayHDMIHotPlug(const DisplayEvent displayEvent) {}; + + }; + + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerDisplay::IDisplayNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerDisplay::IDisplayNotification* notification /* @in */) = 0; /** Get Display EDID. */ // @text getDisplayEdid // @brief Get Display EDID // @param handle: handle returned in GetDisplay // @param edId: EDID information -// virtual Core::hresult GetDisplayEdid(const int handle, DisplayEDID &edId /* @out */) = 0; -//Lakshmi: ERROR: IFirmwareVersion.h: /home/nadosakayala/dsmgr/entservices-apis/apis/DeviceSettingsManager/IDeviceSettingsManager.h(1105): parse error: in/out tags not allowed here - + virtual Core::hresult GetDisplayEdid(const int handle /* @in */, DisplayEDID &edId /* @out */) = 0; +#if 0 /** Get Display EDID bytes. */ // @text getDisplayEdidBytes // @brief Get Display EDID bytes // @param handle: handle returned in GetDisplay // @param edIdBytes: EDID Bytes - // @param edIdLength: length of EDID bytes - virtual Core::hresult GetDisplayEdidBytes(const int handle /* @in */, uint38_t edIdBytes[] /* @out */, uint32_t &edidLength /* @out */) = 0; - + // @param edidLength: length of EDID bytes + virtual Core::hresult GetDisplayEdidBytes(const int handle /* @in */, uint8_t &edIdBytes[] /* @out @length:return @maxlength:edidLength */, uint32_t &edidLength /* @out */) = 0; +#endif }; struct EXTERNAL IDeviceSettingsManagerFPD : virtual public Core::IUnknown { @@ -1119,7 +1109,7 @@ namespace Exchange { enum FPDTimeFormat : uint8_t { DS_FPD_TIMEFORMAT_12_HOUR = 0, - DS_FPD_TIMEFORMAT_24_HOUR = 1 + DS_FPD_TIMEFORMAT_24_HOUR = 1, DS_FPD_TIMEFORMAT_MAX = 2 }; @@ -1177,7 +1167,7 @@ namespace Exchange { }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerFPD::INotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingManagerFPD::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerFPD::INotification* notification /* @in */) = 0; /** Set Front Panel Display Time. */ // @text setFPDTime @@ -1289,20 +1279,20 @@ namespace Exchange { enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN }; enum HDMIInPort : int8_t { - DS_HDMI_IN_PORT_NONE = -1, - DS_HDMI_IN_PORT_0 = 0, - DS_HDMI_IN_PORT_1 = 1, - DS_HDMI_IN_PORT_2 = 2, - DS_HDMI_IN_PORT_3 = 3, + DS_HDMI_IN_PORT_NONE = -1, + DS_HDMI_IN_PORT_0 = 0, + DS_HDMI_IN_PORT_1 = 1, + DS_HDMI_IN_PORT_2 = 2, + DS_HDMI_IN_PORT_3 = 3, DS_HDMI_IN_PORT_4 = 4, DS_HDMI_IN_PORT_MAX = 5 }; enum HDMIInSignalStatus: int8_t { - DS_HDMI_IN_SIGNAL_STATUS_NONE = -1, - DS_HDMI_IN_SIGNAL_STATUS_NOSIGNAL = 0, - DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, - DS_HDMI_IN_SIGNAL_STATUS_NOTSUPPORTED = 2, + DS_HDMI_IN_SIGNAL_STATUS_NONE = -1, + DS_HDMI_IN_SIGNAL_STATUS_NOSIGNAL = 0, + DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, + DS_HDMI_IN_SIGNAL_STATUS_NOTSUPPORTED = 2, DS_HDMI_IN_SIGNAL_STATUS_STABLE = 3, DS_HDMI_IN_SIGNAL_STATUS_MAX = 4 }; @@ -1313,7 +1303,7 @@ namespace Exchange { using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; struct HDMIInStatus { bool isPresented; - IHDMIInPortConnectionStatusIterator portConnectionStatus; + //IHDMIInPortConnectionStatusIterator portConnectionStatus; HDMIInPort activePort; }; @@ -1323,6 +1313,7 @@ namespace Exchange { bool isPortArcCapable; }; + //Lakshmi: Not using this iterator. shall we remove? using IHDMIInCapabilitiesIterator = RPC::IIteratorType; struct HDMIInGameFeatureList { @@ -1343,7 +1334,7 @@ namespace Exchange { }; enum HDMIInEdidVersion : uint8_t { - HDMI_EDID_VER_14 = 0, + HDMI_EDID_VER_14 = 0, HDMI_EDID_VER_20 = 1, HDMI_EDID_VER_MAX = 2 }; @@ -1355,13 +1346,13 @@ namespace Exchange { }; enum HDMIInCapabilityVersion { - HDMI_COMPATIBILITY_VERSION_14 = 0, - HDMI_COMPATIBILITY_VERSION_20 = 1, - HDMI_COMPATIBILITY_VERSION_21 = 2, - HDMI_COMPATIBILITY_VERSION_MAX = 3 + HDMI_COMPATIBILITY_VERSION_14 = 0, + HDMI_COMPATIBILITY_VERSION_20 = 1, + HDMI_COMPATIBILITY_VERSION_21 = 2, + HDMI_COMPATIBILITY_VERSION_MAX = 3 }; - struct HDMIInVideoRectangle { + struct HDMIInVideoRectangle { int32_t x; int32_t y; int32_t width; @@ -1393,27 +1384,26 @@ namespace Exchange { }; enum HDMIInTVResolution: uint32_t { - DS_HDMIIN_RESOLUTION_480I = 0x000001, - DS_HDMIIN_RESOLUTION_480P = 0x000002, - DS_HDMIIN_RESOLUTION_576I = 0x000004, - DS_HDMIIN_RESOLUTION_576P = 0x000008, - DS_HDMIIN_RESOLUTION_576P50 = 0x000010, - DS_HDMIIN_RESOLUTION_720P = 0x000020, - DS_HDMIIN_RESOLUTION_720P50 = 0x000040, - DS_HDMIIN_RESOLUTION_1080I = 0x000080, - DS_HDMIIN_RESOLUTION_1080P = 0x000100, - DS_HDMIIN_RESOLUTION_1080P24 = 0x000200, - DS_HDMIIN_RESOLUTION_1080I25 = 0x000400, - DS_HDMIIN_RESOLUTION_1080I25 = 0x000800, - DS_HDMIIN_RESOLUTION_1080P30 = 0x001000, - DS_HDMIIN_RESOLUTION_1080I50 = 0x002000, - DS_HDMIIN_RESOLUTION_1080P50 = 0x004000, - DS_HDMIIN_RESOLUTION_1080P60 = 0x008000, - DS_HDMIIN_RESOLUTION_2160P24 = 0x010000, - DS_HDMIIN_RESOLUTION_2160P25 = 0x020000, - DS_HDMIIN_RESOLUTION_2160P30 = 0x040000, - DS_HDMIIN_RESOLUTION_2160P50 = 0x080000, - DS_HDMIIN_RESOLUTION_2160P60 = 0x100000 + DS_HDMIIN_RESOLUTION_480I = 0x000001, + DS_HDMIIN_RESOLUTION_480P = 0x000002, + DS_HDMIIN_RESOLUTION_576I = 0x000004, + DS_HDMIIN_RESOLUTION_576P = 0x000008, + DS_HDMIIN_RESOLUTION_576P50 = 0x000010, + DS_HDMIIN_RESOLUTION_720P = 0x000020, + DS_HDMIIN_RESOLUTION_720P50 = 0x000040, + DS_HDMIIN_RESOLUTION_1080I = 0x000080, + DS_HDMIIN_RESOLUTION_1080P = 0x000100, + DS_HDMIIN_RESOLUTION_1080P24 = 0x000200, + DS_HDMIIN_RESOLUTION_1080I25 = 0x000400, + DS_HDMIIN_RESOLUTION_1080P30 = 0x001000, + DS_HDMIIN_RESOLUTION_1080I50 = 0x002000, + DS_HDMIIN_RESOLUTION_1080P50 = 0x004000, + DS_HDMIIN_RESOLUTION_1080P60 = 0x008000, + DS_HDMIIN_RESOLUTION_2160P24 = 0x010000, + DS_HDMIIN_RESOLUTION_2160P25 = 0x020000, + DS_HDMIIN_RESOLUTION_2160P30 = 0x040000, + DS_HDMIIN_RESOLUTION_2160P50 = 0x080000, + DS_HDMIIN_RESOLUTION_2160P60 = 0x100000 }; enum HDMIVideoAspectRatio : uint8_t { @@ -1423,30 +1413,29 @@ namespace Exchange { }; enum HDMIInVideoStereoScopicMode : uint8_t { - DS_HDMIIN_SSMODE_UNKNOWN = 0, - DS_HDMIIN_SSMODE_2D = 1, - DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3 + DS_HDMIIN_SSMODE_UNKNOWN = 0, + DS_HDMIIN_SSMODE_2D = 1, + DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3 }; enum HDMIInVideoFrameRate: uint8_t { - DS_HDMIIN_FRAMERATE_UNKNOWN = 0, + DS_HDMIIN_FRAMERATE_UNKNOWN = 0, DS_HDMIIN_FRAMERATE_24 = 1, - DS_HDMIIN_FRAMERATE_25 = 2, - DS_HDMIIN_FRAMERATE_30 = 3, - DS_HDMIIN_FRAMERATE_60 = 4, - DS_HDMIIN_FRAMERATE_23_98 = 5, - DS_HDMIIN_FRAMERATE_29_97 = 6, - DS_HDMIIN_FRAMERATE_50 = 7, + DS_HDMIIN_FRAMERATE_25 = 2, + DS_HDMIIN_FRAMERATE_30 = 3, + DS_HDMIIN_FRAMERATE_60 = 4, + DS_HDMIIN_FRAMERATE_23_98 = 5, + DS_HDMIIN_FRAMERATE_29_97 = 6, + DS_HDMIIN_FRAMERATE_50 = 7, DS_HDMIIN_FRAMERATE_59_94 = 8 }; - enum HDMIInAviContentType { - DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS =0, - DS_HDMIIN_AVICONTENT_TYPE_PHOTO =1, - DS_HDMIIN_AVICONTENT_TYPE_CINEMA =2, - DS_HDMIIN_AVICONTENT_TYPE_GAME =3, + DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS =0, + DS_HDMIIN_AVICONTENT_TYPE_PHOTO =1, + DS_HDMIIN_AVICONTENT_TYPE_CINEMA =2, + DS_HDMIIN_AVICONTENT_TYPE_GAME =3, DS_HDMIIN_AVICONTENT_TYPE_NOT_SIGNALLED =4, DS_HDMIIN_AVICONTENT_TYPE_MAX =5 }; @@ -1513,13 +1502,11 @@ namespace Exchange { // @param port: port 0 or 1 et al // @param vrrType: VRR type virtual void OnHDMInVRRStatus(const HDMIInPort port, const HDMIInVRRType vrrType) {}; - - }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; - + /** Get Number of HDMI Inputs in the platform. */ // @text getHDMIInNumbefOfInputs // @brief Get Number of HDMI Inputs in the platform @@ -1536,9 +1523,9 @@ namespace Exchange { // @text selectHDMIInPort // @brief Get HDMIIn Status // @param port: Port to select - // @param requestAudioMix: Should audio be mixed on this port? - // @param topMostPlane: Should this be on top for display? - // @param videoPlaneType: Primary or secondary? + // @param requestAudioMix: Should audio be mixed on this port + // @param topMostPlane: Should this be on top for display + // @param videoPlaneType: Primary or secondary virtual Core::hresult SelectHDMIInPort(HDMIInPort port /* @in */, bool requestAudioMix /* @in */, bool topMostPlane /* @in */, HDMIVideoPlaneType videoPlaneType /* @in */) = 0; /** Scale HDMIIn Video. */ @@ -1552,19 +1539,19 @@ namespace Exchange { // @brief Select HDMIIn Zoom mode // @param zoomMode: zoom mode virtual Core::hresult SelectHDMIZoomMode(HDMIInVideoZoom zoomMode /* @in */) = 0; - +#if 0 /** Get Supported Game feature list. */ // @text getSupportedGameFeaturesList // @brief Get Supported Game feature list // @param gameFeatureList: game feature list - virtual Core::hresult GetSupportedGameFeaturesList(HDMIInGameFeatureList *& gameFeatureList /* @out */) = 0; - + virtual Core::hresult GetSupportedGameFeaturesList(IHDMIInGameFeatureListIterator *& gameFeatureList /* @out */) = 0; +#endif /** Get AV latency. */ // @text getHDMIInAVLatency // @brief Get AV latency // @param videoLatency: video latency - // @param videoLatency: audio latency - virtual Core::hresult GetHDMIInAVLatency(int32 &videoLatency /* out */, int32 &audioLatency /* @out*/) = 0; + // @param audioLatency: audio latency + virtual Core::hresult GetHDMIInAVLatency(uint32_t &videoLatency /* @out */, uint32_t &audioLatency /* @out*/) = 0; /** Get ALLM Status. */ // @text getHDMIInAllmStatus @@ -1585,8 +1572,8 @@ namespace Exchange { // @brief Get EDID to ALLM Supported or not // @param port: Port number // @param allmSupport: ALLM supported (true) or not (false) - virtual Core::hresult SetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool &allmSupport /* @in*/) = 0; - + virtual Core::hresult SetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool allmSupport /* @in*/) = 0; +#if 0 /** Get EDID bytes. */ // @text getEdidBytes // @brief Get EDID bytes. @@ -1602,7 +1589,7 @@ namespace Exchange { // @param spdBytesLength: number of bytes in the spdBytes array // @param spdBytes: SPD information virtual Core::hresult GetHDMISPDInformation(HDMIInPort port /* @in */, uint32_t &spdBytesLength /* @out */, uint8_t spdBytes[] /* @out @length:return @maxlength:spdBytesLength */) = 0; - +#endif /** Get HDMI Port EDID version. */ // @text getHDMIEdidVersion // @brief Get HDMI Port EDID version. @@ -1617,14 +1604,12 @@ namespace Exchange { // @param edidVersion: EDID version virtual Core::hresult SetHDMIEdidVersion(HDMIInPort port /* @in */, HDMIInEdidVersion edidVersion /* @in */) = 0; - /** Get HDMI Video mode. */ // @text getHDMIVideoMode // @brief Get HDMI Video mode. // @param port: Port number // @param videoPortResolution: Video port resolution structure virtual Core::hresult GetHDMIVideoMode(HDMIInPort port /* @in */, HDMIVideoPortResolution &videoPortResolution /* @out */) = 0; - }; struct EXTERNAL IDeviceSettingsManagerHost : virtual public Core::IUnknown { @@ -1650,7 +1635,7 @@ namespace Exchange { virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHost::INotification* notification /* @in */) = 0; virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerHost::INotification* notification /* @in */) = 0; - + /** Get Preferred Sleep mode. */ // @text getPreferredSleepMode // @brief Get Preferred Sleep mode. @@ -1680,14 +1665,14 @@ namespace Exchange { // @brief Get SOCID. // @param socID: SOCID in string format virtual Core::hresult GetSoCID(string &socID /* @out */) = 0; - +#if 0 /** Get EDID Bytes. */ // @text getHALVersion // @brief Get EDID. // @param edId: EDID in bytes // @param edIdLength: number of bytes in edId array - virtual Core::hresult GetEDID(uint8_t edId[] /* @out */, uint32_t &edIdLength /* @out */) = 0; - + virtual Core::hresult GetEDID(uint8_t edId[] /* @out @length:return @maxlength:edIdLength */, uint32_t &edIdLength /* @out */) = 0; +#endif /** Get MS12 Config type. */ // @text getHALVersion // @brief Get MS12 Config @@ -1735,6 +1720,7 @@ namespace Exchange { float level; }; + // Lakshmi: Not using this iterator anywhere. shall we remove this? using IDeviceSettingsVideoCodecProfileIterator = RPC::IIteratorType; // @event @@ -1756,12 +1742,11 @@ namespace Exchange { // @text OnDisplayFrameratePostChange // @param frameRate: framerate post change virtual void OnDisplayFrameratePostChange(const string frameRate) {}; - + }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManagerVidoeDevice::INotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingManagerVideoDevice::INotification* notification /* @in */) = 0; - + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerVideoDevice::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerVideoDevice::INotification* notification /* @in */) = 0; /** Get Video Device handle. */ // @text getVideoDeviceHandle @@ -1824,7 +1809,7 @@ namespace Exchange { // @brief Get FRF mode // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param frfmode: FRF mode - virtual Core::hresult GetFRFMode(const int handle /* @in */, int &frfmode /* @in */) = 0; + virtual Core::hresult GetFRFMode(const int handle /* @in */, int &frfmode /* @out */) = 0; /** Get Video Device display frame rate */ // @text getCurrentDisplayFrameRate @@ -1838,8 +1823,7 @@ namespace Exchange { // @brief Set current display frame rate // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param framerate: frame rate - virtual Core::hresult SetDisplayFrameRate(const int handle /* @in */, string &framerate /* @in */) = 0; - + virtual Core::hresult SetDisplayFrameRate(const int handle /* @in */, string framerate /* @in */) = 0; }; struct EXTERNAL IDeviceSettingsManagerVideoPort : virtual public Core::IUnknown { @@ -1877,7 +1861,6 @@ namespace Exchange { DS_TV_RESOLUTION_1080P = 0x000100, DS_TV_RESOLUTION_1080P24 = 0x000200, DS_TV_RESOLUTION_1080I25 = 0x000400, - DS_TV_RESOLUTION_1080I25 = 0x000800, DS_TV_RESOLUTION_1080P30 = 0x001000, DS_TV_RESOLUTION_1080I50 = 0x002000, DS_TV_RESOLUTION_1080P50 = 0x004000, @@ -2126,7 +2109,7 @@ namespace Exchange { // @param persist: persist this setting // @param forceCompatibilty: force compatibility virtual Core::hresult SetVideoPortResolution(const int handle /* @in */, VideoPortResolution videoPortResolution /* @in */, bool persist /* @in */, bool forceCompatibility /* @in */) = 0; - +#if 0 /** Enable HDCP Video port. */ // @text enableHDCPOnVideoPort // @brief Enable HDCP on video port @@ -2134,8 +2117,8 @@ namespace Exchange { // @param enable: enable (true) or disable (false) // @param hdcpKey: hdcp key // @param hdcpKeySize: number of bytes in hdcpKey array - virtual Core::hresult EnableHDCPOnVideoPort(const int handle /* @in */, bool hdcpEnable /* @in */, uint8_t hdcpKey[] /* @in */, int hdcpKeySize /* @in */) = 0; - + virtual Core::hresult EnableHDCPOnVideoPort(const int handle /* @in */, bool hdcpEnable /* @in */, uint8_t hdcpKey[] /* @in @length:return @maxlength:hdcpKeySize */, int hdcpKeySize /* @in */) = 0; +#endif /** Is HDCP enabled on Video port. */ // @text isHDCPEnabledOnVideoPort // @brief Is HDCP enabled on Video port @@ -2310,9 +2293,8 @@ namespace Exchange { // @param colorDepth: color depth See DisplayColorDepth // @param persist: persist value (true) or not (false) virtual Core::hresult SetPreferredColorDepth(const int handle /* @in */, DisplayColorDepth colorDepth /* @in */, bool persist /* @in */) = 0; - }; -#endif + } // namespace Exchange } // namespace WPEFramework diff --git a/apis/Ids.h b/apis/Ids.h index fb4ec227..12b463dd 100755 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -298,29 +298,37 @@ namespace Exchange { ID_MIRACAST_PLAYER_NOTIFICATION = ID_MIRACAST_SERVICE + 3, ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, - ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, - ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO +1, + ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, + ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO + 1, + ID_DEVICE_SETTINGS_AUDIO_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 2, + ID_DSAUDIO_SAD_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 3, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN +1, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN +1, - ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, - ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, + ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, + ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, + ID_DEVICE_SETTINGS_DISPLAY_RESOLUTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_DISPLAY + 2, + ID_DEVICESETTINGS_MANAGER_DISPLAY_HOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 3, - ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, - ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, + ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, + ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, - ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, - ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, + ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, + ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, + ID_DEVICESETTINGS_HDMIIN_PORTCONNECTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 2, + ID_DEVICESETTINGS_HDMIIN_CAPS_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 3, + ID_DEVICESETTINGS_HDMIIN_GAMELIST_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 4, - ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, - ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, + ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, + ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, - - ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, + ID_DEVICE_SETTINGS_VIDEO_CODEC_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 2, + + ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 }; } } From bc14067cdf9f6c1d999534c2752230e303d70e45 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Mon, 11 Aug 2025 15:06:23 +0530 Subject: [PATCH 18/36] fixed all warning and errors --- .../IDeviceSettingsManager.h | 353 +++++++++--------- 1 file changed, 170 insertions(+), 183 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 95a59e96..5ce21788 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -24,6 +24,8 @@ #include "Module.h" +// @stubgen:include + namespace WPEFramework { namespace Exchange { struct EXTERNAL IDeviceSettingsManagerAudio : virtual public Core::IUnknown { @@ -117,8 +119,7 @@ namespace Exchange { AUDIO_INPUT_MAX = 2 }; - /* Lakshmi: removed struct AudioARCStatus to avoid duplication */ - enum MS12Capabilities : uint64_t { + enum MS12Capabilities : uint32_t { AUDIO_MS12_CAPABILITIES_NONE = 0, AUDIO_MS12_CAPABILITIES_DOLBYVOLUME = 1, AUDIO_MS12_CAPABILITIES_INTELLIGENT_EQUALIZER = 2, @@ -131,13 +132,9 @@ namespace Exchange { AUDIO_MS12_CAPABILITIES_MI_STEERING = 256, AUDIO_MS12_CAPABILITIES_GRAPHIC_EQUALIZER = 512, AUDIO_MS12_CAPABILITIES_LE_CONFIG = 1024, - //AUDIO_MS12_CAPABILITIES_INVALID = (1 << 31) + AUDIO_MS12_CAPABILITIES_INVALID = (1 << 30) }; - // TODO AudioSADList - - // TODO MS12 Audio Profile list - struct MS12AudioProfile { string audioProfile; }; @@ -188,12 +185,9 @@ namespace Exchange { // TODO AudioConfig type from dsAVDTypes.h - vdixit struct AudioSADItem { - int sad /* @brief SAD value */ ; + int32_t sad /* @brief SAD value */ ; }; - // Lakshmi not using this iterator. shall we remove. - using IDSAudioSADIterator = RPC::IIteratorType; - struct AudioARCStatus { AudioARCType arcType /* @brief ARC Type */ ; bool status /* @brief ARC status */; @@ -211,7 +205,7 @@ namespace Exchange { // @brief Audio Fader balance changed // @text onAudioFaderControlChanged // @param mixerBalance: applied mixer balance value - virtual void OnAudioFaderControlChanged(int mixerBalance) { }; + virtual void OnAudioFaderControlChanged(int32_t mixerBalance) { }; // @brief Primary language for Audio changed // @text onAudioPrimaryLanguageChanged @@ -228,7 +222,7 @@ namespace Exchange { // @param portType: Type of audio port see AudioPortType // @param uiPortNumber: The port number assigned by UI // @param isPortConnected: true (connected) or false (not connected) - virtual void OnAudioOutHotPlug(AudioPortType portType, int uiPortNumber, bool isPortConnected) { }; + virtual void OnAudioOutHotPlug(AudioPortType portType, int32_t uiPortNumber, bool isPortConnected) { }; // @brief Audio Output format changed // @text onAudioFormatUpdate @@ -256,7 +250,7 @@ namespace Exchange { // @text onAudioModeEvent // @param audioPortType: audio port type see AudioPortType // @param audioMode: audio mode - see StereoMode - virtual void OnAudioLevelChangedEvent(int audioLevel) { }; + virtual void OnAudioLevelChangedEvent(int32_t audioLevel) { }; }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerAudio::INotification* notification /* @in */) = 0; @@ -268,7 +262,7 @@ namespace Exchange { // @param type: Type of Audio port - see AudioPortType // @param index: index of the audio port within the list of audio port types // @param handle: handle to the port - virtual Core::hresult GetAudioPort(const AudioPortType type /* @in */, const int index /* @in */,int &handle /* @out */) = 0; + virtual Core::hresult GetAudioPort(const AudioPortType type /* @in */, const int32_t index /* @in */, int32_t &handle /* @out */) = 0; /** Terminate Audio Port . */ // @text audioPortTerm @@ -276,7 +270,7 @@ namespace Exchange { // @param type: Type of Audio port - see AudioPortType // @param index: index of the audio port within the list of audio port types // @param handle: handle to the port - virtual Core::hresult AudioPortTerm(const AudioPortType type /* @in */, const int index /* @in */,int handle /* @in */) = 0; + virtual Core::hresult AudioPortTerm(const AudioPortType type /* @in */, const int32_t index /* @in */,int32_t handle /* @in */) = 0; /** Audio Port status. */ // @text isAudioPortEnabled @@ -284,7 +278,7 @@ namespace Exchange { // @param type: Type of Audio port - see AudioPortType // @param index: index of the audio port within the list of audio port types // @param handle: handle to the port - virtual Core::hresult IsAudioPortEnabled(const AudioPortType type /* @in */, const int index /* @in */,int &handle /* @out */) = 0; + virtual Core::hresult IsAudioPortEnabled(const AudioPortType type /* @in */, const int32_t index /* @in */,int32_t &handle /* @out */) = 0; /** Enable Audio Port. */ // @text enableAudioPort @@ -292,36 +286,36 @@ namespace Exchange { // @param type: Type of Audio port - see AudioPortType // @param index: index of the audio port within the list of audio port types // @param handle: handle to the port - virtual Core::hresult EnableAudioPort(const AudioPortType type /* @in */, const int index /* @in */,int &handle /* @out */) = 0; + virtual Core::hresult EnableAudioPort(const AudioPortType type /* @in */, const int32_t index /* @in */,int32_t &handle /* @out */) = 0; /** Get Supported ARC types . */ // @text getSupportedARCTypes // @brief Get Supported ARC types // @param handle: handle returned in GetAudioPort() // @param types: Supported types - virtual Core::hresult GetSupportedARCTypes(const int handle /* @in */, int &types /* @out */) = 0; -#if 0 + virtual Core::hresult GetSupportedARCTypes(const int32_t handle /* @in */, int32_t &types /* @out */) = 0; + /** Set SAD */ // @text setSAD // @brief Get Supported ARC types // @param handle: handle returned in GetAudioPort() // @param sadList: SAD array // @param count: number of items in sadList (max 15) - virtual Core::hresult SetSAD(const int handle /* @in */, int sadList[] /* @in @length:return @maxlength:count */, int count /* @in */) = 0; -#endif + virtual Core::hresult SetSAD(const int32_t handle /* @in */, const uint8_t sadList[] /* @in @length:count @maxlength:count */, uint8_t count /* @in */) = 0; + /** Enable ARC */ // @text enableARC // @brief Get Supported ARC types // @param handle: handle returned in GetAudioPort() // @param arcStatus: ARC param - virtual Core::hresult EnableARC(const int handle /* @in */, AudioARCStatus arcStatus /* @in */) = 0; + virtual Core::hresult EnableARC(const int32_t handle /* @in */, AudioARCStatus arcStatus /* @in */) = 0; /** Get Stereo Mode . */ // @text getStereoMode // @brief Get Stereo Mode // @param handle: handle returned in GetAudioPort() // @param mode: mode - virtual Core::hresult GetStereoMode(const int handle /* @in */, StereoMode &mode /* @out */) = 0; + virtual Core::hresult GetStereoMode(const int32_t handle /* @in */, StereoMode &mode /* @out */) = 0; /** Set Stereo Mode . */ // @text setStereoMode @@ -329,14 +323,14 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param mode: mode // @param persist: persist the mode - virtual Core::hresult SetStereoMode(const int handle /* @in */, StereoMode mode /* @in */ ,bool persist /* @in */) = 0; + virtual Core::hresult SetStereoMode(const int32_t handle /* @in */, StereoMode mode /* @in */ ,bool persist /* @in */) = 0; /** Get Stereo Auto . */ // @text getStereoAuto // @brief Get Stereo Auto // @param handle: handle returned in GetAudioPort() // @param mode: auto mode - virtual Core::hresult GetStereoAuto(const int handle /* @in */, int &mode /* @out */) = 0; + virtual Core::hresult GetStereoAuto(const int32_t handle /* @in */, int32_t &mode /* @out */) = 0; /** Set Stereo Auto . */ // @text setStereoAuto @@ -344,21 +338,21 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param mode: auto mode // @param persist: persist the setting - virtual Core::hresult SetStereoAuto(const int handle /* @in */, int mode /* @in */, bool persist /* @in */) = 0; + virtual Core::hresult SetStereoAuto(const int32_t handle /* @in */, int32_t mode /* @in */, bool persist /* @in */) = 0; /** Set Audio Mute . */ // @text setAudioMute // @brief Set Audio mute // @param handle: handle returned in GetAudioPort() // @param mute: Mute (true) or Unmute (false) - virtual Core::hresult SetAudioMute(const int handle /* @in */, bool mute /* @in */) = 0; + virtual Core::hresult SetAudioMute(const int32_t handle /* @in */, bool mute /* @in */) = 0; /** Audio Mute Status. */ // @text isAudioMuted // @brief Audio mute status // @param handle: handle returned in GetAudioPort() // @param muted: Muted (true) or not (false) - virtual Core::hresult IsAudioMuted(const int handle /* @in */, bool &muted /* @out */) = 0; + virtual Core::hresult IsAudioMuted(const int32_t handle /* @in */, bool &muted /* @out */) = 0; /** Set Audio ducking */ // @text setAudioDucking @@ -367,49 +361,49 @@ namespace Exchange { // @param duckingType: Audio ducking type // @param duckingAction: Audio ducking action // @param level : Volume level when audio is ducked. - virtual Core::hresult SetAudioDucking(const int handle /* @in */, AudioDuckingType duckingType /* @in */, AudioDuckingAction duckingAction /* @in */, uint8_t level /* @in */) = 0; + virtual Core::hresult SetAudioDucking(const int32_t handle /* @in */, AudioDuckingType duckingType /* @in */, AudioDuckingAction duckingAction /* @in */, uint8_t level /* @in */) = 0; /** Set Audio Level */ // @text setAudioLevel // @brief Set Audio Level // @param handle: handle returned in GetAudioPort() // @param audioLevel: Audio level - virtual Core::hresult SetAudioLevel(const int handle /* @in */, float audioLevel /* @in */) = 0; + virtual Core::hresult SetAudioLevel(const int32_t handle /* @in */, float audioLevel /* @in */) = 0; /** Get Audio Level */ // @text GetAudioDucking // @brief Get Audio Level // @param handle: handle returned in GetAudioPort() // @param audioLevel: Audio level - virtual Core::hresult GetAudioLevel(const int handle /* @in */, float &audioLevel /* @out */) = 0; + virtual Core::hresult GetAudioLevel(const int32_t handle /* @in */, float &audioLevel /* @out */) = 0; /** Set Audio Gain */ // @text setAudioGain // @brief Set Audio Gain // @param handle: handle returned in GetAudioPort() // @param gainLevel: Gain level - virtual Core::hresult SetAudioGain(const int handle /* @in */, float gainLevel /* @in */) = 0; + virtual Core::hresult SetAudioGain(const int32_t handle /* @in */, float gainLevel /* @in */) = 0; /** Get Audio Gain */ // @text setAudioGain // @brief Get Audio Gain // @param handle: handle returned in GetAudioPort() // @param gainLevel: Gain level - virtual Core::hresult GetAudioGain(const int handle /* @in */, float &gainLevel /* @out */) = 0; + virtual Core::hresult GetAudioGain(const int32_t handle /* @in */, float &gainLevel /* @out */) = 0; /** Get Audio Format */ // @text getAudioFormat // @brief Get Audio Format // @param handle: handle returned in GetAudioPort() // @param audioFormat: Audio format - virtual Core::hresult GetAudioFormat(const int handle /* @in */, AudioFormat &audioFormat /* @out */) = 0; + virtual Core::hresult GetAudioFormat(const int32_t handle /* @in */, AudioFormat &audioFormat /* @out */) = 0; /** Get Audio encoding */ // @text getAudioEncoding // @brief Get Audio encoding // @param handle: handle returned in GetAudioPort() // @param encoding: Audio encoding - virtual Core::hresult GetAudioEncoding(const int handle /* @in */, AudioEncoding &encoding /* @out */) = 0; + virtual Core::hresult GetAudioEncoding(const int32_t handle /* @in */, AudioEncoding &encoding /* @out */) = 0; /** Get Audio Persistence status . */ // @text getAudioEnablePersist @@ -417,7 +411,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param enabled: Is persistence enabled or not // @param portName: portName for which persistence is enabled - virtual Core::hresult GetAudioEnablePersist(const int handle /* @in */, bool &enabled /* @out */, string &portName /* @out */) = 0; + virtual Core::hresult GetAudioEnablePersist(const int32_t handle /* @in */, bool &enabled /* @out */, string &portName /* @out */) = 0; /** Set Audio Persistence status . */ // @text SetAudioEnablePersist @@ -425,254 +419,252 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param enable : persistence enable (true) or disable (false) // @param portName: portName for which persistence is enabled - virtual Core::hresult SetAudioEnablePersist(const int handle /* @in */, bool enable /* @in */, string portName /* @in */) = 0; + virtual Core::hresult SetAudioEnablePersist(const int32_t handle /* @in */, bool enable /* @in */, string portName /* @in */) = 0; /** Audio MS decode Status. */ // @text isAudioMSDecoded // @brief Audio MS decode status // @param handle: handle returned in GetAudioPort() // @param hasms11Decode: true or false - virtual Core::hresult IsAudioMSDecoded(const int handle /* @in */, bool &hasms11Decode /* @out */) = 0; + virtual Core::hresult IsAudioMSDecoded(const int32_t handle /* @in */, bool &hasms11Decode /* @out */) = 0; /** Audio MS12 decode Status. */ // @text isAudioMS12Decoded // @brief Audio MS12 decode status // @param handle: handle returned in GetAudioPort() // @param hasms12Decode: true or false - virtual Core::hresult IsAudioMS12Decoded(const int handle /* @in */, int &hasms12Decode /* @out */) = 0; + virtual Core::hresult IsAudioMS12Decoded(const int32_t handle /* @in */, bool &hasms12Decode /* @out */) = 0; /** Get Audio LE config */ // @text getAudioLEConfig // @brief Get Audio LE config // @param handle: handle returned in GetAudioPort() // @param enabled: true (enabled) or false (disabled) - virtual Core::hresult GetAudioLEConfig(const int handle /* @in */, bool &enabled /* @out */) = 0; + virtual Core::hresult GetAudioLEConfig(const int32_t handle /* @in */, bool &enabled /* @out */) = 0; /** Enable Audio LE config */ // @text enableAudioLEConfig // @brief Audio LE config Enable // @param handle: handle returned in GetAudioPort() // @param enabled: true (enabled) or false (disabled) - virtual Core::hresult EnableAudioLEConfig(const int handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult EnableAudioLEConfig(const int32_t handle /* @in */, bool enable /* @in */) = 0; /** Set Audio Delay */ // @text setAudioDelay // @brief Set Audio Delay // @param handle: handle returned in GetAudioPort() // @param audioDelay: Audio delay in millisecs - virtual Core::hresult SetAudioDelay(const int handle /* @in */, uint32_t audioDelay /* @in */) = 0; + virtual Core::hresult SetAudioDelay(const int32_t handle /* @in */, uint32_t audioDelay /* @in */) = 0; /** Get Audio Delay */ // @text getAudioDelay // @brief Get Audio Delay // @param handle: handle returned in GetAudioPort() // @param audioDelay: Audio delay in millisecs - virtual Core::hresult GetAudioDelay(const int handle /* @in */, uint32_t &audioDelay /* @out */) = 0; + virtual Core::hresult GetAudioDelay(const int32_t handle /* @in */, uint32_t &audioDelay /* @out */) = 0; /** Set Audio Delay Offset */ // @text setAudioDelayOffset // @brief Set Audio Delay offset // @param handle: handle returned in GetAudioPort() // @param delayOffset: delay offset in millisecs - virtual Core::hresult SetAudioDelayOffset(const int handle /* @in */, int delayOffset /* @in */) = 0; + virtual Core::hresult SetAudioDelayOffset(const int32_t handle /* @in */, const uint32_t delayOffset /* @in */) = 0; /** Get Audio Delay Offset */ // @text getAudioDelayOffset // @brief Get Audio Delay offset // @param handle: handle returned in GetAudioPort() // @param delayOffset: delay offset in millisecs - virtual Core::hresult GetAudioDelayOffset(const int handle /* @in */, uint32_t &delayOffset /* @out */) = 0; + virtual Core::hresult GetAudioDelayOffset(const int32_t handle /* @in */, uint32_t &delayOffset /* @out */) = 0; /** Get Audio Sink device Atmos capability */ // @text getAudioSinkDeviceAtmosCapability // @brief Get Audio Sink device Atmos capability // @param handle: handle returned in GetAudioPort() // @param atmosCapability: Atmos capability - virtual Core::hresult GetAudioSinkDeviceAtmosCapability(const int handle /* @in */, DolbyAtmosCapability &atmosCapability /* @out */) = 0; + virtual Core::hresult GetAudioSinkDeviceAtmosCapability(const int32_t handle /* @in */, DolbyAtmosCapability &atmosCapability /* @out */) = 0; /** Set Audio Atmos output mode */ // @text setAudioAtmosOutputMode // @brief Set Audio Atmos output mode // @param handle: handle returned in GetAudioPort() // @param enable: Enable audio atmos output mode - virtual Core::hresult SetAudioAtmosOutputMode(const int handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult SetAudioAtmosOutputMode(const int32_t handle /* @in */, bool enable /* @in */) = 0; /** Set Audio Compression */ // @text setAudioCompression // @brief Set Audio Compression // @param handle: handle returned in GetAudioPort() // @param compressionLevel: compression level - virtual Core::hresult SetAudioCompression(const int handle /* @in */, int compressionLevel /* @in */) = 0; + virtual Core::hresult SetAudioCompression(const int32_t handle /* @in */, const int32_t compressionLevel /* @in */) = 0; /** Get Audio Compression */ // @text getAudioCompression // @brief Get Audio Compression // @param handle: handle returned in GetAudioPort() // @param compressionLevel: compression level - virtual Core::hresult GetAudioCompression(const int handle /* @in */, int &compressionLevel /* @out */) = 0; + virtual Core::hresult GetAudioCompression(const int32_t handle /* @in */, int32_t &compressionLevel /* @out */) = 0; /** Set Audio Dialog Enhancement */ // @text setAudioDialogEnhancement // @brief Set Audio Dialog Enhancement // @param handle: handle returned in GetAudioPort() // @param level: Enhancement level - virtual Core::hresult SetAudioDialogEnhancement(const int handle /* @in */, int level /* @in */) = 0; + virtual Core::hresult SetAudioDialogEnhancement(const int32_t handle /* @in */, const int32_t level /* @in */) = 0; /** Get Audio Dialog Enhancement */ // @text getAudioDialogEnhancement // @brief Get Audio Dialog Enhancement // @param handle: handle returned in GetAudioPort() // @param level: Enhancement level - virtual Core::hresult GetAudioDialogEnhancement(const int handle /* @in */, int &level /* @out */) = 0; + virtual Core::hresult GetAudioDialogEnhancement(const int32_t handle /* @in */, int32_t &level /* @out */) = 0; /** Set Audio Dolby Volume mode */ // @text setAudioDolbyVolumeMode // @brief Set Audio Dolby volume mode // @param handle: handle returned in GetAudioPort() // @param enable: true (enable dolby volume mode) or false (disable dolby volume mode) - virtual Core::hresult SetAudioDolbyVolumeMode(const int handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult SetAudioDolbyVolumeMode(const int32_t handle /* @in */, bool enable /* @in */) = 0; /** Get Audio Dolby Volume mode */ // @text getAudioDolbyVolumeMode // @brief Get Audio Dolby volume mode // @param handle: handle returned in GetAudioPort() // @param enabled: true (enabled dolby volume mode) or false (disabled dolby volume mode) - virtual Core::hresult GetAudioDolbyVolumeMode(const int handle /* @in */, bool &enabled /* @out */) = 0; + virtual Core::hresult GetAudioDolbyVolumeMode(const int32_t handle /* @in */, bool &enabled /* @out */) = 0; /** Set Audio Intelligent equalizer mode */ // @text setAudioIntelligentEqualizerMode // @brief Set Audio Intelligent equalizer mode // @param handle: handle returned in GetAudioPort() // @param mode: mode - virtual Core::hresult SetAudioIntelligentEqualizerMode(const int handle /* @in */, int mode /* @in */) = 0; + virtual Core::hresult SetAudioIntelligentEqualizerMode(const int32_t handle /* @in */, const int32_t mode /* @in */) = 0; /** Get Audio Intelligent equalizer mode */ // @text getAudioIntelligentEqualizerMode // @brief Get Audio Intelligent equalizer mode // @param handle: handle returned in GetAudioPort() // @param mode: mode - virtual Core::hresult GetAudioIntelligentEqualizerMode(const int handle /* @in */, int &mode /* @out */) = 0; + virtual Core::hresult GetAudioIntelligentEqualizerMode(const int32_t handle /* @in */, int32_t &mode /* @out */) = 0; /** Set Audio Volume leveller */ // @text setAudioVolumeLeveller // @brief Set Audio Volume leveller // @param handle: handle returned in GetAudioPort() // @param volumeLeveller: volume leveller (mode and a level) - virtual Core::hresult SetAudioVolumeLeveller(const int handle /* @in */, VolumeLeveller volumeLeveller /* @in */) = 0; + virtual Core::hresult SetAudioVolumeLeveller(const int32_t handle /* @in */, VolumeLeveller volumeLeveller /* @in */) = 0; /** Get Audio Volume leveller */ // @text getAudioVolumeLeveller // @brief Get Audio Volume leveller // @param handle: handle returned in GetAudioPort() // @param volumeLeveller: volume leveller (mode and a level) - virtual Core::hresult GetAudioVolumeLeveller(const int handle /* @in */, VolumeLeveller &volumeLeveller /* @out */) = 0; + virtual Core::hresult GetAudioVolumeLeveller(const int32_t handle /* @in */, VolumeLeveller &volumeLeveller /* @out */) = 0; /** Set Audio Bass Enhancer */ // @text setAudioBassEnhancer // @brief Set Audio Bass Enhancer // @param handle: handle returned in GetAudioPort() // @param boost: boost for bass - virtual Core::hresult SetAudioBassEnhancer(const int handle /* @in */, int boost /* @in */) = 0; + virtual Core::hresult SetAudioBassEnhancer(const int32_t handle /* @in */, const int32_t boost /* @in */) = 0; /** Get Audio Bass Enhancer */ // @text getAudioBassEnhancer // @brief Get Audio Bass Enhancer // @param handle: handle returned in GetAudioPort() // @param boost: boost for bass - virtual Core::hresult GetAudioBassEnhancer(const int handle /* @in */, int &boost /* @out */) = 0; + virtual Core::hresult GetAudioBassEnhancer(const int32_t handle /* @in */, int32_t &boost /* @out */) = 0; /** Enable Audio Surroud Decoder */ // @text enableAudioSurroudDecoder // @brief Enable Audio Surroud Decoder // @param handle: handle returned in GetAudioPort() // @param enable: true (surround decoder enabled) or false (surround decoder disabled) - virtual Core::hresult EnableAudioSurroudDecoder(const int handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult EnableAudioSurroudDecoder(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Is Audio Surroud Decoder enabled? */ // @text isAudioSurroudDecoderEnabled // @brief Audio Surroud Decoder enabled or not // @param handle: handle returned in GetAudioPort() // @param enabled: true (surround decoder enabled) or false (surround decoder disabled) - virtual Core::hresult IsAudioSurroudDecoderEnabled(const int handle /* @in */, bool &enabled /* @out */) = 0; + virtual Core::hresult IsAudioSurroudDecoderEnabled(const int32_t handle /* @in */, bool &enabled /* @out */) = 0; /** Set Audio DRC mode */ // @text setAudioDRCMode // @brief Set Audio Bass Enhancer // @param handle: handle returned in GetAudioPort() // @param drcMode: mode - virtual Core::hresult SetAudioDRCMode(const int handle /* @in */, int drcMode /* @in */) = 0; + virtual Core::hresult SetAudioDRCMode(const int32_t handle /* @in */, const int32_t drcMode /* @in */) = 0; /** Get Audio DRC mode */ // @text getAudioDRCMode // @brief Get Audio Bass Enhancer // @param handle: handle returned in GetAudioPort() // @param drcMode: mode - virtual Core::hresult GetAudioDRCMode(const int handle /* @in */, int &drcMode /* @out */) = 0; + virtual Core::hresult GetAudioDRCMode(const int32_t handle /* @in */, int32_t &drcMode /* @out */) = 0; /** Set Audio Surroud Virtualizer */ // @text setAudioSurroudVirtualizer // @brief Set Audio Surroud Virtualizer // @param handle: handle returned in GetAudioPort() // @param surroundVirtualizer: virtualizer - virtual Core::hresult SetAudioSurroudVirtualizer(const int handle /* @in */, SurroundVirtualizer surroundVirtualizer /* @in */) = 0; + virtual Core::hresult SetAudioSurroudVirtualizer(const int32_t handle /* @in */, SurroundVirtualizer surroundVirtualizer /* @in */) = 0; /** Get Audio Surroud Virtualizer */ // @text getAudioSurroudVirtualizer // @brief Get Audio Surroud Virtualizer // @param handle: handle returned in GetAudioPort() // @param surroundVirtualizer: virtualizer - virtual Core::hresult GetAudioSurroudVirtualizer(const int handle /* @in */, SurroundVirtualizer &surroundVirtualizer /* @out */) = 0; + virtual Core::hresult GetAudioSurroudVirtualizer(const int32_t handle /* @in */, SurroundVirtualizer &surroundVirtualizer /* @out */) = 0; /** Set Audio MI Steering */ // @text setAudioMISteering // @brief Set Audio MI Steering // @param handle: handle returned in GetAudioPort() // @param enable: true (enable steering) or false (disable steering) - virtual Core::hresult SetAudioMISteering(const int handle /* @in */, bool enable /* @out */) = 0; + virtual Core::hresult SetAudioMISteering(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Get Audio MI Steering */ // @text getAudioMISteering // @brief Get Audio MI Steering // @param handle: handle returned in GetAudioPort() // @param enable: true (enable steering) or false (disable steering) - virtual Core::hresult GetAudioMISteering(const int handle /* @in */, bool &enable /* @out */) = 0; + virtual Core::hresult GetAudioMISteering(const int32_t handle /* @in */, bool &enable /* @out */) = 0; /** Set Audio Graphic Equalizer Mode */ // @text setAudioGraphicEqualizerMode // @brief Set Audio Graphic Equalizer Mode // @param handle: handle returned in GetAudioPort() // @param mode: Equalizer mode - virtual Core::hresult SetAudioGraphicEqualizerMode(const int handle /* @in */, int mode /* @in */) = 0; + virtual Core::hresult SetAudioGraphicEqualizerMode(const int32_t handle /* @in */, const int32_t mode /* @in */) = 0; /** Get Audio Graphic Equalizer Mode */ // @text getAudioGraphicEqualizerMode // @brief Get Audio Graphic Equalizer Mode // @param handle: handle returned in GetAudioPort() // @param mode: Equalizer mode - virtual Core::hresult GetAudioGraphicEqualizerMode(const int handle /* @in */, int &mode /* @out */) = 0; + virtual Core::hresult GetAudioGraphicEqualizerMode(const int32_t handle /* @in */, int32_t &mode /* @out */) = 0; -#if 0 /** Get Audio MS12 profile list */ // @text getAudioMS12ProfileList // @brief Get Audio MS12 profile list // @param handle: handle returned in GetAudioPort() // @param ms12ProfileList: MS12 profile list iterator - virtual Core::hresult GetAudioMS12ProfileList(const int handle /* @in */, IDeviceSettingsAudioMS12AudioProfileIterator*& ms12ProfileList /* @out */) const = 0; -#endif + virtual Core::hresult GetAudioMS12ProfileList(const int32_t handle /* @in */, IDeviceSettingsAudioMS12AudioProfileIterator*& ms12ProfileList /* @out */) const = 0; /** Get Audio MS12 profile */ // @text getAudioMS12Profile // @brief Get Audio MS12 profile // @param handle: handle returned in GetAudioPort() // @param profile: Name of the profile - virtual Core::hresult GetAudioMS12Profile(const int handle /* @in */, string &profile /* @out */) = 0; + virtual Core::hresult GetAudioMS12Profile(const int32_t handle /* @in */, string &profile /* @out */) = 0; /** Set Audio MS12 profile */ // @text setAudioMS12Profile // @brief Set Audio MS12 profile // @param handle: handle returned in GetAudioPort() // @param profile: Name of the profile - virtual Core::hresult SetAudioMS12Profile(const int handle /* @in */, string profile /* @in */) = 0; + virtual Core::hresult SetAudioMS12Profile(const int32_t handle /* @in */, string profile /* @in */) = 0; /** Set Audio Mixer Levels */ // @text setAudioMixerLevels @@ -680,7 +672,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param audioInput: AudioInput // @param volume: Volume level - virtual Core::hresult SetAudioMixerLevels(const int handle /* @in */, const AudioInput audioInput /* @in */, int volume /* @in */) = 0; + virtual Core::hresult SetAudioMixerLevels(const int32_t handle /* @in */, const AudioInput audioInput /* @in */, int32_t volume /* @in */) = 0; /** Set Associated Audio Mixing values */ @@ -688,70 +680,70 @@ namespace Exchange { // @brief Set Associated Audio Mixing values // @param handle: handle returned in GetAudioPort() // @param mixing: true or false - virtual Core::hresult SetAssociatedAudioMixing(const int handle /* @in */, bool mixing /* @out */) = 0; + virtual Core::hresult SetAssociatedAudioMixing(const int32_t handle /* @in */, const bool mixing /* @in */) = 0; /** Get Associated Audio Mixing values */ // @text getAssociatedAudioMixing // @brief Get Associated Audio Mixing values // @param handle: handle returned in GetAudioPort() // @param mixing: true or false - virtual Core::hresult GetAssociatedAudioMixing(const int handle /* @in */, bool &mixing /* @out */) = 0; + virtual Core::hresult GetAssociatedAudioMixing(const int32_t handle /* @in */, bool &mixing /* @out */) = 0; /** Set Audio Fader control values */ // @text setAudioFaderControl // @brief Set Audio Fader control values // @param handle: handle returned in GetAudioPort() // @param mixerBalance: Mixer balance for fader control - virtual Core::hresult SetAudioFaderControl(const int handle /* @in */, int mixerBalance /* @in */) = 0; + virtual Core::hresult SetAudioFaderControl(const int32_t handle /* @in */, const int32_t mixerBalance /* @in */) = 0; /** Get Audio Fader control values */ // @text getAudioFaderControl // @brief Get Audio Fader control values // @param handle: handle returned in GetAudioPort() // @param mixerBalance: Mixer balance for fader control - virtual Core::hresult GetAudioFaderControl(const int handle /* @in */, int &mixerBalance /* @out */) = 0; + virtual Core::hresult GetAudioFaderControl(const int32_t handle /* @in */, int32_t &mixerBalance /* @out */) = 0; /** Set Primary Audio language */ // @text setAudioPrimaryLanguage // @brief Set Primary Audio language // @param handle: handle returned in GetAudioPort() // @param primaryAudioLanguage: Primary audio language - virtual Core::hresult SetAudioPrimaryLanguage(const int handle /* @in */, string primaryAudioLanguage /* @in */) = 0; + virtual Core::hresult SetAudioPrimaryLanguage(const int32_t handle /* @in */, string primaryAudioLanguage /* @in */) = 0; /** Get Primary Audio language */ // @text getAudioPrimaryLanguage // @brief Get Primary Audio language // @param handle: handle returned in GetAudioPort() // @param primaryAudioLanguage: Primary audio language - virtual Core::hresult GetAudioPrimaryLanguage(const int handle /* @in */, string &primaryAudioLanguage /* @out */) = 0; + virtual Core::hresult GetAudioPrimaryLanguage(const int32_t handle /* @in */, string &primaryAudioLanguage /* @out */) = 0; /** Set Secondary Audio language */ // @text setAudioSecondaryLanguage // @brief Set Secondary Audio language // @param handle: handle returned in GetAudioPort() // @param secondaryAudioLanguage: Secondary audio language - virtual Core::hresult SetAudioSecondaryLanguage(const int handle /* @in */, string secondaryAudioLanguage /* @in */) = 0; + virtual Core::hresult SetAudioSecondaryLanguage(const int32_t handle /* @in */, string secondaryAudioLanguage /* @in */) = 0; /** Get Primary Audio language */ // @text getAudioSecondaryLanguage // @brief Get Secondary Audio language // @param handle: handle returned in GetAudioPort() // @param secondaryAudioLanguage: Secondary audio language - virtual Core::hresult GetAudioSecondaryLanguage(const int handle /* @in */, string &secondaryAudioLanguage /* @out */) = 0; + virtual Core::hresult GetAudioSecondaryLanguage(const int32_t handle /* @in */, string &secondaryAudioLanguage /* @out */) = 0; /** Get Audio Capabilities */ // @text getAudioCapabilities // @brief Get Audio capabilites // @param handle: handle returned in GetAudioPort() // @param capabilities: Capabilities - virtual Core::hresult GetAudioCapabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + virtual Core::hresult GetAudioCapabilities(const int32_t handle /* @in */, int32_t &capabilities /* @out */) = 0; /** Get Audio MS12 Capabilities */ // @text getAudioMS12Capabilities // @brief Get Audio MS12 capabilites // @param handle: handle returned in GetAudioPort() // @param capabilities: Capabilities - virtual Core::hresult GetAudioMS12Capabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + virtual Core::hresult GetAudioMS12Capabilities(const int32_t handle /* @in */, int32_t &capabilities /* @out */) = 0; /** Set Audio MS12 Settings override */ // @text setAudioMS12SettingsOverride @@ -761,46 +753,46 @@ namespace Exchange { // @param profileSettingsName: Name of the profile setting // @param profileSettingValue : value of the profile setting // @param profileState: ADD or REMOVE - virtual Core::hresult SetAudioMS12SettingsOverride(const int handle /* @in */, string profileName /* @in */, string profileSettingsName /* @in */, string profileSettingValue /* @in */, string profileState /* @in */ ) = 0; + virtual Core::hresult SetAudioMS12SettingsOverride(const int32_t handle /* @in */, string profileName /* @in */, string profileSettingsName /* @in */, string profileSettingValue /* @in */, string profileState /* @in */ ) = 0; /** Is Audio output connected? */ // @text isAudioOutputConnected // @brief Is Audio output connected? // @param handle: handle returned in GetAudioPort() // @param isConnected: connected (true) or not (false) - virtual Core::hresult IsAudioOutputConnected(const int handle /* @in */, bool &isConnected /* @out */) = 0; + virtual Core::hresult IsAudioOutputConnected(const int32_t handle /* @in */, bool &isConnected /* @out */) = 0; /** Reset Audio Dialog enhancement */ // @text resetAudioDialogEnhancement // @brief Reset Audio Dialog enhancement // @param handle: handle returned in GetAudioPort() - virtual Core::hresult ResetAudioDialogEnhancement(const int handle /* @in */) = 0; + virtual Core::hresult ResetAudioDialogEnhancement(const int32_t handle /* @in */) = 0; /** Reset Audio Bass enhancement */ // @text resetAudioBassEnhancer // @brief Reset Audio Bass enhancement // @param handle: handle returned in GetAudioPort() - virtual Core::hresult ResetAudioBassEnhancer(const int handle /* @in */) = 0; + virtual Core::hresult ResetAudioBassEnhancer(const int32_t handle /* @in */) = 0; /** Reset Audio Surround virtualizer */ // @text resetAudioSurroundVirtualizer // @brief Reset Audio Surround virtualizer // @param handle: handle returned in GetAudioPort() - virtual Core::hresult ResetAudioSurroundVirtualizer(const int handle /* @in */) = 0; + virtual Core::hresult ResetAudioSurroundVirtualizer(const int32_t handle /* @in */) = 0; /** Reset Audio Volume leveller */ // @text resetAudioVolumeLeveller // @brief Reset Audio Volume leveller // @param handle: handle returned in GetAudioPort() - virtual Core::hresult ResetAudioVolumeLeveller(const int handle /* @in */) = 0; + virtual Core::hresult ResetAudioVolumeLeveller(const int32_t handle /* @in */) = 0; /** Get Audio HDMI ARC Port ID */ // @text getAudioHDMIARCPortId // @brief Get Audio HDMI ARC Port ID // @param handle: handle returned in GetAudioPort() // @param portId: Port Id - virtual Core::hresult GetAudioHDMIARCPortId(const int handle /* @in */, int &portId /* @out */) = 0; + virtual Core::hresult GetAudioHDMIARCPortId(const int32_t handle /* @in */, int32_t &portId /* @out */) = 0; }; struct EXTERNAL IDeviceSettingsManagerCompositeIn : virtual public Core::IUnknown { @@ -831,10 +823,10 @@ namespace Exchange { }; struct VideoRectangle { - int x; - int y; - int width; - int height; + int32_t x; + int32_t y; + int32_t width; + int32_t height; }; enum DisplayTVResolution: uint32_t { @@ -938,7 +930,7 @@ namespace Exchange { // @text getNrOfCompositeInputs // @brief Get Preferred Sleep mode. // @param nrCompositeInputs: number of composite inputs - virtual Core::hresult GetNrOfCompositeInputs(int &nrCompositeInputs /* @out */) = 0; + virtual Core::hresult GetNrOfCompositeInputs(int32_t &nrCompositeInputs /* @out */) = 0; /** Get Composite In port status. */ // @text getCompositeInStatus @@ -962,7 +954,7 @@ namespace Exchange { struct EXTERNAL IDeviceSettingsManagerDisplay : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY }; - enum DisplayEvent { + enum DisplayEvent: uint8_t { DS_DISPLAY_EVENT_CONNECTED = 0, ///< Display connected event DS_DISPLAY_EVENT_DISCONNECTED = 1, ///< Display disconnected event DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event @@ -1049,7 +1041,7 @@ namespace Exchange { uint8_t physicalAddressC; ///< Physical Address for HDMI nodeC uint8_t physicalAddressD; ///< Physical Address for HDMI nodeD int32_t numOfSupportedResolution; ///< Number of Supported resolution - //IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< EDID Supported Resoultion list + //IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< TODO: Need to enable. EDID Supported Resoultion list string monitorName; }; @@ -1092,16 +1084,15 @@ namespace Exchange { // @brief Get Display EDID // @param handle: handle returned in GetDisplay // @param edId: EDID information - virtual Core::hresult GetDisplayEdid(const int handle /* @in */, DisplayEDID &edId /* @out */) = 0; -#if 0 + virtual Core::hresult GetDisplayEdid(const int32_t handle /* @in */, DisplayEDID &edId /* @out */) = 0; + /** Get Display EDID bytes. */ // @text getDisplayEdidBytes // @brief Get Display EDID bytes // @param handle: handle returned in GetDisplay // @param edIdBytes: EDID Bytes // @param edidLength: length of EDID bytes - virtual Core::hresult GetDisplayEdidBytes(const int handle /* @in */, uint8_t &edIdBytes[] /* @out @length:return @maxlength:edidLength */, uint32_t &edidLength /* @out */) = 0; -#endif + virtual Core::hresult GetDisplayEdidBytes(const int32_t handle /* @in */, uint8_t edIdBytes[] /* @out @length:edidLength @maxlength:edidLength */, const uint16_t edidLength /* @in */) = 0; }; struct EXTERNAL IDeviceSettingsManagerFPD : virtual public Core::IUnknown { @@ -1301,21 +1292,17 @@ namespace Exchange { bool isPortConnected; }; using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; + struct HDMIInStatus { bool isPresented; - //IHDMIInPortConnectionStatusIterator portConnectionStatus; + //IHDMIInPortConnectionStatusIterator portConnectionStatus; //TODO: Need to enable this variable. HDMIInPort activePort; }; - // Need iterator here or should we add a connected Port.. - struct HDMIInCapabilities { bool isPortArcCapable; }; - //Lakshmi: Not using this iterator. shall we remove? - using IHDMIInCapabilitiesIterator = RPC::IIteratorType; - struct HDMIInGameFeatureList { string gameFeature; }; @@ -1431,7 +1418,7 @@ namespace Exchange { DS_HDMIIN_FRAMERATE_59_94 = 8 }; - enum HDMIInAviContentType { + enum HDMIInAviContentType: uint8_t { DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS =0, DS_HDMIIN_AVICONTENT_TYPE_PHOTO =1, DS_HDMIIN_AVICONTENT_TYPE_CINEMA =2, @@ -1495,7 +1482,7 @@ namespace Exchange { // @param port: port 0 or 1 et al // @param audioDelay: audio delay // @param videoDelay: video delay - virtual void OnHDMInAVLatency(const int audioDelay, const int videoDelay) {}; + virtual void OnHDMInAVLatency(const int32_t audioDelay, const int32_t videoDelay) {}; // @brief HDMI VRR status // @text OnHDMInVRRStatus @@ -1511,7 +1498,7 @@ namespace Exchange { // @text getHDMIInNumbefOfInputs // @brief Get Number of HDMI Inputs in the platform // @param count: number of inputs - virtual Core::hresult GetHDMIInNumbefOfInputs(int &count /* @out */) = 0; + virtual Core::hresult GetHDMIInNumbefOfInputs(int32_t &count /* @out */) = 0; /** Get HDMIIn Status. */ // @text getHDMIInStatus @@ -1539,13 +1526,13 @@ namespace Exchange { // @brief Select HDMIIn Zoom mode // @param zoomMode: zoom mode virtual Core::hresult SelectHDMIZoomMode(HDMIInVideoZoom zoomMode /* @in */) = 0; -#if 0 + /** Get Supported Game feature list. */ // @text getSupportedGameFeaturesList // @brief Get Supported Game feature list // @param gameFeatureList: game feature list virtual Core::hresult GetSupportedGameFeaturesList(IHDMIInGameFeatureListIterator *& gameFeatureList /* @out */) = 0; -#endif + /** Get AV latency. */ // @text getHDMIInAVLatency // @brief Get AV latency @@ -1573,14 +1560,14 @@ namespace Exchange { // @param port: Port number // @param allmSupport: ALLM supported (true) or not (false) virtual Core::hresult SetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool allmSupport /* @in*/) = 0; -#if 0 + /** Get EDID bytes. */ // @text getEdidBytes // @brief Get EDID bytes. // @param port: Port number // @param edidBytesLength: number of bytes in the edidBytes array // @param edidBytes: EDID information - virtual Core::hresult GetEdidBytes(HDMIInPort port /* @in */, uint32_t &edidBytesLength /* @out */, uint8_t edidBytes[] /* @out @length:return @maxlength:edidBytesLength */) = 0; + virtual Core::hresult GetEdidBytes(HDMIInPort port /* @in */, const uint16_t edidBytesLength /* @in */, uint8_t edidBytes[] /* @out @length:edidBytesLength @maxlength:edidBytesLength */) = 0; /** Get HDMI SPD Information. */ // @text getEdidBytes @@ -1588,8 +1575,8 @@ namespace Exchange { // @param port: Port number // @param spdBytesLength: number of bytes in the spdBytes array // @param spdBytes: SPD information - virtual Core::hresult GetHDMISPDInformation(HDMIInPort port /* @in */, uint32_t &spdBytesLength /* @out */, uint8_t spdBytes[] /* @out @length:return @maxlength:spdBytesLength */) = 0; -#endif + virtual Core::hresult GetHDMISPDInformation(HDMIInPort port /* @in */, const uint16_t spdBytesLength /* @in */, uint8_t spdBytes[] /* @out @length:spdBytesLength @maxlength:spdBytesLength */) = 0; + /** Get HDMI Port EDID version. */ // @text getHDMIEdidVersion // @brief Get HDMI Port EDID version. @@ -1665,14 +1652,14 @@ namespace Exchange { // @brief Get SOCID. // @param socID: SOCID in string format virtual Core::hresult GetSoCID(string &socID /* @out */) = 0; -#if 0 + /** Get EDID Bytes. */ // @text getHALVersion // @brief Get EDID. // @param edId: EDID in bytes // @param edIdLength: number of bytes in edId array - virtual Core::hresult GetEDID(uint8_t edId[] /* @out @length:return @maxlength:edIdLength */, uint32_t &edIdLength /* @out */) = 0; -#endif + virtual Core::hresult GetEDID(uint8_t edId[] /* @out @length:edIdLength @maxlength:edIdLength */, const uint16_t edIdLength /* @in */) = 0; + /** Get MS12 Config type. */ // @text getHALVersion // @brief Get MS12 Config @@ -1720,8 +1707,8 @@ namespace Exchange { float level; }; - // Lakshmi: Not using this iterator anywhere. shall we remove this? - using IDeviceSettingsVideoCodecProfileIterator = RPC::IIteratorType; + // TODO: + //using IDeviceSettingsVideoCodecProfileIterator = RPC::IIteratorType; // @event struct EXTERNAL INotification : virtual public Core::IUnknown @@ -1753,77 +1740,77 @@ namespace Exchange { // @brief Get Video device handle // @param index: index (can be multiple instances) // @param handle: video device handle (to be used for other APIs) - virtual Core::hresult GetVideoDeviceHandle(const int index /* @in */, int &handle /* @out */) = 0; + virtual Core::hresult GetVideoDeviceHandle(const int32_t index /* @in */, int32_t &handle /* @out */) = 0; /** Set Video Device DFC. */ // @text setVideoDeviceDFC // @brief Set Video Device DFC // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param zoomSetting: Zoom setting to apply - virtual Core::hresult SetVideoDeviceDFC(const int handle /* @in */, const VideoZoom zoomSetting /* @in */) = 0; + virtual Core::hresult SetVideoDeviceDFC(const int32_t handle /* @in */, const VideoZoom zoomSetting /* @in */) = 0; /** Get Video Device DFC. */ // @text getVideoDeviceDFC // @brief Get Video Device DFC // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param zoomSetting: current Zoom setting - virtual Core::hresult GetVideoDeviceDFC(const int handle /* @in */, VideoZoom &zoomSetting /* @out */) = 0; + virtual Core::hresult GetVideoDeviceDFC(const int32_t handle /* @in */, VideoZoom &zoomSetting /* @out */) = 0; /** Get Video Device HDR capabilities. */ // @text getHDRCapabilities // @brief Get Video Device HDR capabilities // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param capabilities: Capabilities - virtual Core::hresult GetHDRCapabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + virtual Core::hresult GetHDRCapabilities(const int32_t handle /* @in */, int32_t &capabilities /* @out */) = 0; /** Get Video Device Supported . */ // @text getSupportedVideoCodingFormats // @brief Get Video Zoom setting // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param supportedFormats: Supported Formats - virtual Core::hresult GetSupportedVideoCodingFormats(const int handle /* @in */, int &supportedFormats /* @out */) = 0; + virtual Core::hresult GetSupportedVideoCodingFormats(const int32_t handle /* @in */, int32_t &supportedFormats /* @out */) = 0; /** Get Video Device Codec Information TBD - vdixit. */ // @text getCodecInfo // @brief Get Video Device Codec Information // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param supportedFormats: Supported Formats - virtual Core::hresult GetCodecInfo(const int handle /* @in */, int &supportedFormats /* @out */) = 0; + virtual Core::hresult GetCodecInfo(const int32_t handle /* @in */, int32_t &supportedFormats /* @out */) = 0; /** Video Device Disable HDR */ // @text disableHDR // @brief Video Device Disable HDR // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param disable: disable (true) or enable (false) - virtual Core::hresult DisableHDR(const int handle /* @in */, const bool disable /* @in */) = 0; + virtual Core::hresult DisableHDR(const int32_t handle /* @in */, const bool disable /* @in */) = 0; /** Set Video Device FRF mode. */ // @text setFRFMode // @brief Set FRF mode // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param frfmode: FRF mode - virtual Core::hresult SetFRFMode(const int handle /* @in */, const int frfmode /* @in */) = 0; + virtual Core::hresult SetFRFMode(const int32_t handle /* @in */, const int32_t frfmode /* @in */) = 0; /** Get Video Device FRF mode. */ // @text getFRFMode // @brief Get FRF mode // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param frfmode: FRF mode - virtual Core::hresult GetFRFMode(const int handle /* @in */, int &frfmode /* @out */) = 0; + virtual Core::hresult GetFRFMode(const int32_t handle /* @in */, int32_t &frfmode /* @out */) = 0; /** Get Video Device display frame rate */ // @text getCurrentDisplayFrameRate // @brief Get current display frame rate // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param framerate: frame rate - virtual Core::hresult GetCurrentDisplayFrameRate(const int handle /* @in */, string &framerate /* @out */) = 0; + virtual Core::hresult GetCurrentDisplayFrameRate(const int32_t handle /* @in */, string &framerate /* @out */) = 0; /** Set Video Device display frame rate */ // @text setDisplayFrameRate // @brief Set current display frame rate // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param framerate: frame rate - virtual Core::hresult SetDisplayFrameRate(const int handle /* @in */, string framerate /* @in */) = 0; + virtual Core::hresult SetDisplayFrameRate(const int32_t handle /* @in */, string framerate /* @in */) = 0; }; struct EXTERNAL IDeviceSettingsManagerVideoPort : virtual public Core::IUnknown { @@ -1890,22 +1877,22 @@ namespace Exchange { }; enum VideoStereoScopicMode : uint8_t { - DS_VIDEO_SSMODE_UNKNOWN = 0, - DS_VIDEO_SSMODE_2D = 1, - DS_VIDEO_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_VIDEO_SSMODE_UNKNOWN = 0, + DS_VIDEO_SSMODE_2D = 1, + DS_VIDEO_SSMODE_3D_SIDE_BY_SIDE = 2, DS_VIDEO_SSMODE_3D_TOP_AND_BOTTOM = 3, DS_VIDEO_SSMODE_MAX = 4 }; enum VideoFrameRate: uint8_t { - DS_VIDEO_FRAMERATE_UNKNOWN = 0, + DS_VIDEO_FRAMERATE_UNKNOWN = 0, DS_VIDEO_FRAMERATE_24 = 1, - DS_VIDEO_FRAMERATE_25 = 2, - DS_VIDEO_FRAMERATE_30 = 3, - DS_VIDEO_FRAMERATE_60 = 4, - DS_VIDEO_FRAMERATE_23_98 = 5, - DS_VIDEO_FRAMERATE_29_97 = 6, - DS_VIDEO_FRAMERATE_50 = 7, + DS_VIDEO_FRAMERATE_25 = 2, + DS_VIDEO_FRAMERATE_30 = 3, + DS_VIDEO_FRAMERATE_60 = 4, + DS_VIDEO_FRAMERATE_23_98 = 5, + DS_VIDEO_FRAMERATE_29_97 = 6, + DS_VIDEO_FRAMERATE_50 = 7, DS_VIDEO_FRAMERATE_59_94 = 8, DS_VIDEO_FRAMERATE_100 = 9, DS_VIDEO_FRAMERATE_119_88 = 10, @@ -1926,7 +1913,7 @@ namespace Exchange { }; enum HDCPStatus : uint8_t { - DS_HDCP_STATUS_UNPOWERED = 0, + DS_HDCP_STATUS_UNPOWERED = 0, DS_HDCP_STATUS_UNAUTHENTICATED = 1, DS_HDCP_STATUS_AUTHENTICATED = 2, DS_HDCP_STATUS_AUTHENTICATIONFAILURE = 3, @@ -2057,49 +2044,49 @@ namespace Exchange { // @param videoPort: Type of port // @param index: index of the port (there can be multiple number of ports) // @param handle: handle to the port - virtual Core::hresult GetVideoPort(const VideoPort videoPort /* @in */, const int index /* @in */, int &handle /* @out */) = 0; + virtual Core::hresult GetVideoPort(const VideoPort videoPort /* @in */, const int32_t index /* @in */, int32_t &handle /* @out */) = 0; /** Video Port Enabled or not. */ // @text isVideoPortEnabled // @brief Is Video Port enabled // @param handle: handle to the port // @param enabled: enabled (true) or disabled (false) - virtual Core::hresult IsVideoPortEnabled(const int handle /* @in */, bool &enabled /* @out */) = 0; + virtual Core::hresult IsVideoPortEnabled(const int32_t handle /* @in */, bool &enabled /* @out */) = 0; /** Video Port connected to display or not. */ // @text isVideoPortDisplayConnected // @brief Is Video Port connected to display or not // @param handle: handle to the port // @param connected: connected (true) or not connected (false) - virtual Core::hresult IsVideoPortDisplayConnected(const int handle /* @in */, bool &connected /* @out */) = 0; + virtual Core::hresult IsVideoPortDisplayConnected(const int32_t handle /* @in */, bool &connected /* @out */) = 0; /** Video port display supports surround or not. */ // @text isVideoPortDisplaySurround // @brief Does Video Port display support surround or not // @param handle: handle to the port // @param surround: supports surround (true) or not (false) - virtual Core::hresult IsVideoPortDisplaySurround(const int handle /* @in */, bool &surround /* @out */) = 0; + virtual Core::hresult IsVideoPortDisplaySurround(const int32_t handle /* @in */, bool &surround /* @out */) = 0; /** Get Video port displays surround mode. */ // @text getVideoPortDisplaySurroundMode // @brief Get Video port displays surround mode // @param handle: handle to the port // @param surroundMode: surround mode - virtual Core::hresult GetVideoPortDisplaySurroundMode(const int handle /* @in */, VideoPortSurroundMode &surroundMode /* @out */) = 0; + virtual Core::hresult GetVideoPortDisplaySurroundMode(const int32_t handle /* @in */, VideoPortSurroundMode &surroundMode /* @out */) = 0; /** Enable Video port. */ // @text enableVideoPort // @brief Enable video port // @param handle: handle to the port // @param enable: enable (true) or disable (false) - virtual Core::hresult EnableVideoPort(const int handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult EnableVideoPort(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Get Video port resolution. */ // @text getVideoPortResolution // @brief Get Video port resolution // @param handle: handle to the port // @param videoPortResolution: video port resolution - virtual Core::hresult GetVideoPortResolution(const int handle /* @in */, VideoPortResolution &videoPortResolution /* @out */) = 0; + virtual Core::hresult GetVideoPortResolution(const int32_t handle /* @in */, VideoPortResolution &videoPortResolution /* @out */) = 0; /** Set Video port resolution. */ // @text setVideoPortResolution @@ -2108,93 +2095,93 @@ namespace Exchange { // @param videoPortResolution: video port resolution // @param persist: persist this setting // @param forceCompatibilty: force compatibility - virtual Core::hresult SetVideoPortResolution(const int handle /* @in */, VideoPortResolution videoPortResolution /* @in */, bool persist /* @in */, bool forceCompatibility /* @in */) = 0; -#if 0 - /** Enable HDCP Video port. */ + virtual Core::hresult SetVideoPortResolution(const int32_t handle /* @in */, VideoPortResolution videoPortResolution /* @in */, bool persist /* @in */, bool forceCompatibility /* @in */) = 0; + + /** Enable HDCP Video port. */ // @text enableHDCPOnVideoPort // @brief Enable HDCP on video port // @param handle: handle to the port // @param enable: enable (true) or disable (false) // @param hdcpKey: hdcp key // @param hdcpKeySize: number of bytes in hdcpKey array - virtual Core::hresult EnableHDCPOnVideoPort(const int handle /* @in */, bool hdcpEnable /* @in */, uint8_t hdcpKey[] /* @in @length:return @maxlength:hdcpKeySize */, int hdcpKeySize /* @in */) = 0; -#endif - /** Is HDCP enabled on Video port. */ + virtual Core::hresult EnableHDCPOnVideoPort(const int32_t handle /* @in */, const bool hdcpEnable /* @in */, const uint8_t hdcpKey[] /* @in @length:hdcpKeySize @maxlength:hdcpKeySize */, const uint16_t hdcpKeySize /* @in */) = 0; + + /** Is HDCP enabled on Video port. */ // @text isHDCPEnabledOnVideoPort // @brief Is HDCP enabled on Video port // @param handle: handle to the port // @param hdcpEnabled: enabled (true) or disabled (false) - virtual Core::hresult IsHDCPEnabledOnVideoPort(const int handle /* @in */, bool &hdcpEnabled /* @out */) = 0; + virtual Core::hresult IsHDCPEnabledOnVideoPort(const int32_t handle /* @in */, bool &hdcpEnabled /* @out */) = 0; /** Get HDCP Status on Video port. */ // @text getHDCPStatusOnVideoPort // @brief Get HDCP Status on Video port // @param handle: handle to the port // @param hdcpStatus: HDCP status - virtual Core::hresult GetHDCPStatusOnVideoPort(const int handle /* @in */, HDCPStatus &hdcpStatus /* @out */) = 0; + virtual Core::hresult GetHDCPStatusOnVideoPort(const int32_t handle /* @in */, HDCPStatus &hdcpStatus /* @out */) = 0; /** Get HDCP Protocol version on Video port. */ // @text getHDCPProtocolVersionOnVideoPort // @brief Get HDCP Protocol version on Video port // @param handle: handle to the port // @param hdcpVersion: HDCP version - virtual Core::hresult GetHDCPProtocolVersionOnVideoPort(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + virtual Core::hresult GetHDCPProtocolVersionOnVideoPort(const int32_t handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; /** Get HDCP Receiver Protocol version on Video port. */ // @text getHDCPReceiverProtocolVersionOnVideoPort // @brief Get HDCP Receiver Protocol version on Video port // @param handle: handle to the port // @param hdcpVersion: HDCP version - virtual Core::hresult GetHDCPReceiverProtocolVersionOnVideoPort(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + virtual Core::hresult GetHDCPReceiverProtocolVersionOnVideoPort(const int32_t handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; /** Get HDCP Current Protocol version on Video port. */ // @text getHDCPCurrentProtocolVersionOnVideoPort // @brief Get HDCP Current Protocol version on Video port // @param handle: handle to the port // @param hdcpVersion: HDCP version - virtual Core::hresult GetHDCPCurrentProtocolVersionOnVideoPort(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + virtual Core::hresult GetHDCPCurrentProtocolVersionOnVideoPort(const int32_t handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; /** Is Video port active. */ // @text isVideoPortActive // @brief Is Video port active // @param handle: handle to the port // @param active: active (true) or inactive (false) - virtual Core::hresult IsVideoPortActive(const int handle /* @in */, bool &active /* @out */) = 0; + virtual Core::hresult IsVideoPortActive(const int32_t handle /* @in */, bool &active /* @out */) = 0; /** Get TVs HDR capabilities. */ // @text getTVHDRCapabilities // @brief Get TVs HDR capabilities // @param handle: handle to the port // @param capabilities: capabilities (masked value) - see HDRStandard - virtual Core::hresult GetTVHDRCapabilities(const int handle /* @in */, int &capabilities /* @out */) = 0; + virtual Core::hresult GetTVHDRCapabilities(const int32_t handle /* @in */, int32_t &capabilities /* @out */) = 0; /** Get TVs supported resolutions. */ // @text getTVHDRCapabilities // @brief Get TVs supported resolutions // @param handle: handle to the port // @param resolutions: resolutions (masked value) - see TVResolution - virtual Core::hresult GetTVSupportedResolutions(const int handle /* @in */, int &resolutions /* @out */) = 0; + virtual Core::hresult GetTVSupportedResolutions(const int32_t handle /* @in */, int32_t &resolutions /* @out */) = 0; /** Set Disable 4K. */ // @text setForceDisable4K // @brief Force disable 4K // @param handle: handle to the port // @param disable: disable (true) or enable (false) - virtual Core::hresult SetForceDisable4K(const int handle /* @in */, bool disable /* @in */) = 0; + virtual Core::hresult SetForceDisable4K(const int32_t handle /* @in */, const bool disable /* @in */) = 0; /** Get Disable 4K status. */ // @text setForceDisable4K // @brief Get Force disable 4K value // @param handle: handle to the port // @param disabled: disabled (true) or enabled (false) - virtual Core::hresult GetForceDisable4K(const int handle /* @in */, bool &disabled /* @out */) = 0; + virtual Core::hresult GetForceDisable4K(const int32_t handle /* @in */, bool &disabled /* @out */) = 0; /** Is Video port output HDR?. */ // @text issVideoPortOutputHDR // @brief Is Video port output HDR? // @param handle: handle to the port // @param isHDR: yes (true) or no (false) - virtual Core::hresult IsVideoPortOutputHDR(const int handle /* @in */, bool &isHDR /* @out */) = 0; + virtual Core::hresult IsVideoPortOutputHDR(const int32_t handle /* @in */, bool &isHDR /* @out */) = 0; /** Reset Video port output to SDR. */ // @text resetVideoPortOutputToSDR @@ -2206,77 +2193,77 @@ namespace Exchange { // @brief Get HDMI preferred HDCP protocol version // @param handle: handle to the port // @param hdcpVersion: HDCP version - virtual Core::hresult GetHDMIPreference(const int handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; + virtual Core::hresult GetHDMIPreference(const int32_t handle /* @in */, HDCPProtocolVersion &hdcpVersion /* @out */) = 0; /** Set HDMI preferred HDCP protocol version. */ // @text setHDMIPreference // @brief Set HDMI preferred HDCP protocol version // @param handle: handle to the port // @param hdcpVersion: HDCP version - virtual Core::hresult SetHDMIPreference(const int handle /* @in */, HDCPProtocolVersion hdcpVersion /* @in */) = 0; + virtual Core::hresult SetHDMIPreference(const int32_t handle /* @in */, HDCPProtocolVersion hdcpVersion /* @in */) = 0; /** Get Video EOTF. */ // @text getVideoEOTF // @brief Get TVs HDR capabilities // @param handle: handle to the port // @param hdrStandard: see HDRStandard - virtual Core::hresult GetVideoEOTF(const int handle /* @in */, HDRStandard &hdrStandard /* @out */) = 0; + virtual Core::hresult GetVideoEOTF(const int32_t handle /* @in */, HDRStandard &hdrStandard /* @out */) = 0; /** Get Matrix coefficients. */ // @text getMatrixCoefficients // @brief Get Matrix coefficients // @param handle: handle to the port // @param matrixCoefficients: see DisplayMatrixCoefficients - virtual Core::hresult GetMatrixCoefficients(const int handle /* @in */, DisplayMatrixCoefficients &matrixCoefficients /* @out */) = 0; + virtual Core::hresult GetMatrixCoefficients(const int32_t handle /* @in */, DisplayMatrixCoefficients &matrixCoefficients /* @out */) = 0; /** Get Color Depth. */ // @text getColorDepth // @brief Get Color Depth // @param handle: handle to the port // @param colorDepth: color depth See DisplayColorDepth (masked) - virtual Core::hresult GetColorDepth(const int handle /* @in */, uint32_t &colorDepth /* @out */) = 0; + virtual Core::hresult GetColorDepth(const int32_t handle /* @in */, uint32_t &colorDepth /* @out */) = 0; /** Get Color Space. */ // @text getColorSpace // @brief Get Color Space // @param handle: handle to the port // @param colorSpace: color space - virtual Core::hresult GetColorSpace(const int handle /* @in */, DisplayColorSpace &colorSpace /* @out */) = 0; + virtual Core::hresult GetColorSpace(const int32_t handle /* @in */, DisplayColorSpace &colorSpace /* @out */) = 0; /** Get Quantization Range. */ // @text getQuantizationRange // @brief Get Quantization range // @param handle: handle to the port // @param quantizationRange: quantization range - virtual Core::hresult GetQuantizationRange(const int handle /* @in */, DisplayQuantizationRange &quantizationRange /* @out */) = 0; + virtual Core::hresult GetQuantizationRange(const int32_t handle /* @in */, DisplayQuantizationRange &quantizationRange /* @out */) = 0; /** Get Current output settings. */ // @text getCurrentOutputSettings // @brief Get Current output settings // @param handle: handle to the port // @param outputSettings: Output settings - virtual Core::hresult GetCurrentOutputSettings(const int handle /* @in */, DSOutputSettings &outputSettings /* @out */) = 0; + virtual Core::hresult GetCurrentOutputSettings(const int32_t handle /* @in */, DSOutputSettings &outputSettings /* @out */) = 0; /** Set Video background color. */ // @text setBackgroundColor // @brief Set Video background color. // @param handle: handle to the port // @param backgroundColor: video background color - virtual Core::hresult SetBackgroundColor(const int handle /* @in */, VideoBackgroundColor backgroundColor /* @in */) = 0; + virtual Core::hresult SetBackgroundColor(const int32_t handle /* @in */, VideoBackgroundColor backgroundColor /* @in */) = 0; /** Set HDR mode. */ // @text setForceHDRMode // @brief Set HDR mode // @param handle: handle to the port // @param hdrMode: see HDRStandard - virtual Core::hresult SetForceHDRMode(const int handle /* @in */, HDRStandard hdrMode /* @in */) = 0; + virtual Core::hresult SetForceHDRMode(const int32_t handle /* @in */, HDRStandard hdrMode /* @in */) = 0; /** Get Color Depth capabilities. */ // @text getColorDepthCapabilities // @brief Get Color Depth capabilities // @param handle: handle to the port // @param colorDepthCapabilities: color depth capabilities See DisplayColorDepth (masked) - virtual Core::hresult GetColorDepthCapabilities(const int handle /* @in */, uint32_t &colorDepthCapabilities /* @out */) = 0; + virtual Core::hresult GetColorDepthCapabilities(const int32_t handle /* @in */, uint32_t &colorDepthCapabilities /* @out */) = 0; /** Get Preferred Color Depth. */ // @text getPreferredColorDepth @@ -2284,7 +2271,7 @@ namespace Exchange { // @param handle: handle to the port // @param colorDepth: color depth See DisplayColorDepth // @param persist: return persisted value (true) or not (false) - virtual Core::hresult GetPreferredColorDepth(const int handle /* @in */, DisplayColorDepth &colorDepth /* @out */, bool persist /* @in */) = 0; + virtual Core::hresult GetPreferredColorDepth(const int32_t handle /* @in */, DisplayColorDepth &colorDepth /* @out */, bool persist /* @in */) = 0; /** Set Preferred Color Depth. */ // @text getPreferredColorDepth @@ -2292,7 +2279,7 @@ namespace Exchange { // @param handle: handle to the port // @param colorDepth: color depth See DisplayColorDepth // @param persist: persist value (true) or not (false) - virtual Core::hresult SetPreferredColorDepth(const int handle /* @in */, DisplayColorDepth colorDepth /* @in */, bool persist /* @in */) = 0; + virtual Core::hresult SetPreferredColorDepth(const int32_t handle /* @in */, DisplayColorDepth colorDepth /* @in */, bool persist /* @in */) = 0; }; From dedfa8b24feb6b3ee08b4df2b3f8f582d818794c Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 12 Aug 2025 12:27:14 +0530 Subject: [PATCH 19/36] Fixed the iterator issue. --- .../IDeviceSettingsManager.h | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 5ce21788..8f2a9262 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -55,6 +55,8 @@ namespace Exchange { AUDIO_ENCODING_EAC3 = 4 }; + using IDeviceSettingsAudioEncodingIterator = RPC::IIteratorType; + enum AudioCompression : uint8_t { AUDIO_COMPRESSION_NONE = 0, AUDIO_COMPRESSION_LIGHT = 1, @@ -63,6 +65,8 @@ namespace Exchange { AUDIO_COMPRESSION_MAX = 4, }; + using IDeviceSettingsAudioCompressionIterator = RPC::IIteratorType; + enum AudioFormat : uint8_t { AUDIO_FORMAT_NONE = 0, AUDIO_FORMAT_PCM = 1, @@ -162,6 +166,8 @@ namespace Exchange { AUDIO_STEREO_MAX = 7 }; + using IDeviceSettingsStereoModeIterator = RPC::IIteratorType; + enum DolbyAtmosCapability: uint8_t { AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, AUDIO_DOLBYATMOS_DDPLUS_STREAM = 1, @@ -182,7 +188,13 @@ namespace Exchange { AUDIO_MS12_FEATURE_MAX = 2 }; - // TODO AudioConfig type from dsAVDTypes.h - vdixit + struct AudioConfig { + int32_t typeId; + string name; + IDeviceSettingsAudioCompressionIterator *audioCompressions; + IDeviceSettingsAudioEncodingIterator *audioEncodings; + IDeviceSettingsStereoModeIterator *stereoModes; + }; struct AudioSADItem { int32_t sad /* @brief SAD value */ ; @@ -1027,7 +1039,7 @@ namespace Exchange { bool interlaced; }; - using IDeviceSettingsDisplayVideoPortResolutionIterator = RPC::IIteratorType; + using IDSVideoPortResolutionIterator = RPC::IIteratorType; struct DisplayEDID { int32_t productCode; ///< Product code of the display device @@ -1041,7 +1053,7 @@ namespace Exchange { uint8_t physicalAddressC; ///< Physical Address for HDMI nodeC uint8_t physicalAddressD; ///< Physical Address for HDMI nodeD int32_t numOfSupportedResolution; ///< Number of Supported resolution - //IDeviceSettingsDisplayVideoPortResolutionIterator suppResolutionList; ///< TODO: Need to enable. EDID Supported Resoultion list + IDSVideoPortResolutionIterator *suppResolutionList; ///< EDID Supported Resoultion list string monitorName; }; @@ -1295,7 +1307,7 @@ namespace Exchange { struct HDMIInStatus { bool isPresented; - //IHDMIInPortConnectionStatusIterator portConnectionStatus; //TODO: Need to enable this variable. + IHDMIInPortConnectionStatusIterator *portConnectionStatus; HDMIInPort activePort; }; @@ -1707,8 +1719,7 @@ namespace Exchange { float level; }; - // TODO: - //using IDeviceSettingsVideoCodecProfileIterator = RPC::IIteratorType; + using IDeviceSettingsVideoCodecProfileSupportIterator = RPC::IIteratorType; // @event struct EXTERNAL INotification : virtual public Core::IUnknown @@ -1770,12 +1781,13 @@ namespace Exchange { // @param supportedFormats: Supported Formats virtual Core::hresult GetSupportedVideoCodingFormats(const int32_t handle /* @in */, int32_t &supportedFormats /* @out */) = 0; - /** Get Video Device Codec Information TBD - vdixit. */ + /** Get Video Device Codec Information */ // @text getCodecInfo // @brief Get Video Device Codec Information // @param handle: video device handle (returned in GetVideoDeviceHandle) - // @param supportedFormats: Supported Formats - virtual Core::hresult GetCodecInfo(const int32_t handle /* @in */, int32_t &supportedFormats /* @out */) = 0; + // @param videoCodec: Video codec for which information is needed + // @param videoCodecInfo: Video codec information + virtual Core::hresult GetCodecInfo(const int32_t handle /* @in */, VideoCodec videoCodec /* @in */, IDeviceSettingsVideoCodecProfileSupportIterator *&codecInfo /* @out */) = 0; /** Video Device Disable HDR */ // @text disableHDR From acf70d3c7eb4c7db03fc1928b865ffb64d153c94 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 12 Aug 2025 15:04:57 +0530 Subject: [PATCH 20/36] fixing error --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 8 ++++---- apis/Ids.h | 11 ++++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 8f2a9262..4a08c73e 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -191,9 +191,9 @@ namespace Exchange { struct AudioConfig { int32_t typeId; string name; - IDeviceSettingsAudioCompressionIterator *audioCompressions; - IDeviceSettingsAudioEncodingIterator *audioEncodings; - IDeviceSettingsStereoModeIterator *stereoModes; + IDeviceSettingsAudioCompressionIterator *AudioCompressions; + IDeviceSettingsAudioEncodingIterator *AudioEncodings; + IDeviceSettingsStereoModeIterator *StereoModes; }; struct AudioSADItem { @@ -1307,7 +1307,7 @@ namespace Exchange { struct HDMIInStatus { bool isPresented; - IHDMIInPortConnectionStatusIterator *portConnectionStatus; + IHDMIInPortConnectionStatusIterator *PortConnectionStatus; HDMIInPort activePort; }; diff --git a/apis/Ids.h b/apis/Ids.h index 12b463dd..53496acc 100755 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -300,11 +300,13 @@ namespace Exchange { ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO + 1, - ID_DEVICE_SETTINGS_AUDIO_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 2, - ID_DSAUDIO_SAD_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 3, + ID_DEVICE_SETTINGS_AUDIO_ENCODING_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 2, + ID_DEVICE_SETTINGS_AUDIO_COMPRESSION_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 3, + ID_DEVICE_SETTINGS_AUDIO_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 4, + ID_DEVICE_SETTINGS_AUDIO_STEREOMODE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 5, ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN +1, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN + 1, ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, @@ -317,8 +319,7 @@ namespace Exchange { ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, ID_DEVICESETTINGS_HDMIIN_PORTCONNECTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 2, - ID_DEVICESETTINGS_HDMIIN_CAPS_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 3, - ID_DEVICESETTINGS_HDMIIN_GAMELIST_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 4, + ID_DEVICESETTINGS_HDMIIN_GAMELIST_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 3, ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, From 8762fcca28003c3642bd5d4923a1168933152c62 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 12 Aug 2025 15:11:32 +0530 Subject: [PATCH 21/36] fixing error --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 4a08c73e..8f2a9262 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -191,9 +191,9 @@ namespace Exchange { struct AudioConfig { int32_t typeId; string name; - IDeviceSettingsAudioCompressionIterator *AudioCompressions; - IDeviceSettingsAudioEncodingIterator *AudioEncodings; - IDeviceSettingsStereoModeIterator *StereoModes; + IDeviceSettingsAudioCompressionIterator *audioCompressions; + IDeviceSettingsAudioEncodingIterator *audioEncodings; + IDeviceSettingsStereoModeIterator *stereoModes; }; struct AudioSADItem { @@ -1307,7 +1307,7 @@ namespace Exchange { struct HDMIInStatus { bool isPresented; - IHDMIInPortConnectionStatusIterator *PortConnectionStatus; + IHDMIInPortConnectionStatusIterator *portConnectionStatus; HDMIInPort activePort; }; From 6fabe14417b66b6718e5b9407e9a6e02576c3564 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 12 Aug 2025 15:52:41 +0530 Subject: [PATCH 22/36] fixing error --- .../IDeviceSettingsManager.h | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 8f2a9262..ebba3c07 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -188,13 +188,13 @@ namespace Exchange { AUDIO_MS12_FEATURE_MAX = 2 }; - struct AudioConfig { - int32_t typeId; - string name; - IDeviceSettingsAudioCompressionIterator *audioCompressions; - IDeviceSettingsAudioEncodingIterator *audioEncodings; - IDeviceSettingsStereoModeIterator *stereoModes; - }; + struct AudioConfig { + int32_t typeId; /* @brief AudioConfig Type */; + string name; /* @brief AudioConfig Name */; + IDeviceSettingsAudioCompressionIterator *audioCompressions; /* @brief Audio Compressions */; + IDeviceSettingsAudioEncodingIterator *audioEncodings; /* @brief Audio Encoding */; + IDeviceSettingsStereoModeIterator *stereoModes; /* @brief Audio StereoMode */; + }; struct AudioSADItem { int32_t sad /* @brief SAD value */ ; @@ -1306,9 +1306,9 @@ namespace Exchange { using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; struct HDMIInStatus { - bool isPresented; - IHDMIInPortConnectionStatusIterator *portConnectionStatus; - HDMIInPort activePort; + bool isPresented; ///< Hdmi Status Present or Not + IHDMIInPortConnectionStatusIterator *portConnectionStatus; ///< Hdmi Port Connection Status + HDMIInPort activePort; ///< Hdmi status }; struct HDMIInCapabilities { From 6f4495c6920d42011e3ea565378317efa49067aa Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 12 Aug 2025 16:32:32 +0530 Subject: [PATCH 23/36] fixing error --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index ebba3c07..5acf2582 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -191,9 +191,9 @@ namespace Exchange { struct AudioConfig { int32_t typeId; /* @brief AudioConfig Type */; string name; /* @brief AudioConfig Name */; - IDeviceSettingsAudioCompressionIterator *audioCompressions; /* @brief Audio Compressions */; - IDeviceSettingsAudioEncodingIterator *audioEncodings; /* @brief Audio Encoding */; - IDeviceSettingsStereoModeIterator *stereoModes; /* @brief Audio StereoMode */; + //IDeviceSettingsAudioCompressionIterator *audioCompressions; /* @brief Audio Compressions */; + //IDeviceSettingsAudioEncodingIterator *audioEncodings; /* @brief Audio Encoding */; + //IDeviceSettingsStereoModeIterator *stereoModes; /* @brief Audio StereoMode */; }; struct AudioSADItem { @@ -1306,9 +1306,9 @@ namespace Exchange { using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; struct HDMIInStatus { - bool isPresented; ///< Hdmi Status Present or Not + bool isPresented; ///< Hdmi Status Is Present IHDMIInPortConnectionStatusIterator *portConnectionStatus; ///< Hdmi Port Connection Status - HDMIInPort activePort; ///< Hdmi status + HDMIInPort activePort; ///< Hdmi Status }; struct HDMIInCapabilities { From 5850c8b3330fb74efc00d110f3d6dbbd9d4754dd Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 12 Aug 2025 16:57:38 +0530 Subject: [PATCH 24/36] fixing error --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 5acf2582..559a052e 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -1306,9 +1306,9 @@ namespace Exchange { using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; struct HDMIInStatus { - bool isPresented; ///< Hdmi Status Is Present - IHDMIInPortConnectionStatusIterator *portConnectionStatus; ///< Hdmi Port Connection Status - HDMIInPort activePort; ///< Hdmi Status + bool isPresented; + //IHDMIInPortConnectionStatusIterator *portConnectionStatus; + HDMIInPort activePort; }; struct HDMIInCapabilities { From 9c08e21495e0bb7f7f7b44aa24173d7ab4004b1f Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 13 Aug 2025 10:34:05 +0530 Subject: [PATCH 25/36] fixing errors --- .../IDeviceSettingsManager.h | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 559a052e..b8688e63 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -55,7 +55,7 @@ namespace Exchange { AUDIO_ENCODING_EAC3 = 4 }; - using IDeviceSettingsAudioEncodingIterator = RPC::IIteratorType; + using IDeviceSettingsAudioEncodingIterator = RPC::IIteratorType; enum AudioCompression : uint8_t { AUDIO_COMPRESSION_NONE = 0, @@ -65,7 +65,7 @@ namespace Exchange { AUDIO_COMPRESSION_MAX = 4, }; - using IDeviceSettingsAudioCompressionIterator = RPC::IIteratorType; + using IDeviceSettingsAudioCompressionIterator = RPC::IIteratorType; enum AudioFormat : uint8_t { AUDIO_FORMAT_NONE = 0, @@ -166,7 +166,7 @@ namespace Exchange { AUDIO_STEREO_MAX = 7 }; - using IDeviceSettingsStereoModeIterator = RPC::IIteratorType; + using IDeviceSettingsStereoModeIterator = RPC::IIteratorType; enum DolbyAtmosCapability: uint8_t { AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, @@ -188,13 +188,14 @@ namespace Exchange { AUDIO_MS12_FEATURE_MAX = 2 }; - struct AudioConfig { - int32_t typeId; /* @brief AudioConfig Type */; - string name; /* @brief AudioConfig Name */; - //IDeviceSettingsAudioCompressionIterator *audioCompressions; /* @brief Audio Compressions */; - //IDeviceSettingsAudioEncodingIterator *audioEncodings; /* @brief Audio Encoding */; - //IDeviceSettingsStereoModeIterator *stereoModes; /* @brief Audio StereoMode */; - }; + + struct AudioConfig { + int32_t typeId; + string name; + IDeviceSettingsAudioCompressionIterator *audioCompressions; + IDeviceSettingsAudioEncodingIterator *audioEncodings; + IDeviceSettingsStereoModeIterator *stereoModes; + }; struct AudioSADItem { int32_t sad /* @brief SAD value */ ; @@ -1053,8 +1054,8 @@ namespace Exchange { uint8_t physicalAddressC; ///< Physical Address for HDMI nodeC uint8_t physicalAddressD; ///< Physical Address for HDMI nodeD int32_t numOfSupportedResolution; ///< Number of Supported resolution - IDSVideoPortResolutionIterator *suppResolutionList; ///< EDID Supported Resoultion list string monitorName; + // IDSVideoPortResolutionIterator *suppResolutionList; ///< EDID Supported Resoultion list }; // @event @@ -1096,7 +1097,7 @@ namespace Exchange { // @brief Get Display EDID // @param handle: handle returned in GetDisplay // @param edId: EDID information - virtual Core::hresult GetDisplayEdid(const int32_t handle /* @in */, DisplayEDID &edId /* @out */) = 0; + virtual Core::hresult GetDisplayEdid(const int32_t handle /* @in */, DisplayEDID &edId /* @out */, IDSVideoPortResolutionIterator*& supportedResolutionList /* @out */) = 0; /** Get Display EDID bytes. */ // @text getDisplayEdidBytes @@ -1307,8 +1308,8 @@ namespace Exchange { struct HDMIInStatus { bool isPresented; - //IHDMIInPortConnectionStatusIterator *portConnectionStatus; HDMIInPort activePort; + // IHDMIInPortConnectionStatusIterator *portConnectionStatus; }; struct HDMIInCapabilities { @@ -1516,7 +1517,7 @@ namespace Exchange { // @text getHDMIInStatus // @brief Get HDMIIn Status // @param hdmiStatus: HDMI Status - virtual Core::hresult GetHDMIInStatus(HDMIInStatus &hdmiStatus /* @out */) = 0; + virtual Core::hresult GetHDMIInStatus(HDMIInStatus &hdmiStatus /* @out */, IHDMIInPortConnectionStatusIterator*& portConnectionStatus /* @out */) = 0; /** Select HDMIIn Port. */ // @text selectHDMIInPort From 4ea46c44ecbcbafb831fbf209a6d9e76f66f0be1 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Thu, 14 Aug 2025 09:54:39 +0530 Subject: [PATCH 26/36] fixing error comments --- .../IDeviceSettingsManager.h | 161 +++++++++--------- apis/Ids.h | 64 +++---- 2 files changed, 108 insertions(+), 117 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index b8688e63..e064b9e7 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -2,7 +2,7 @@ * If not stated otherwise in this file or this component's LICENSE file the * following copyright and licenses apply: * - * Copyright 2024 RDK Management - vdixit - Change to 2025 + * Copyright 2025 RDK Management. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,20 +52,21 @@ namespace Exchange { AUDIO_ENCODING_DISPLAY = 1, AUDIO_ENCODING_PCM = 2, AUDIO_ENCODING_AC3 = 3, - AUDIO_ENCODING_EAC3 = 4 + AUDIO_ENCODING_EAC3 = 4, + AUDIO_ENCODING_MAX = 5 }; - using IDeviceSettingsAudioEncodingIterator = RPC::IIteratorType; + using IDeviceSettingsAudioEncodingIterator = RPC::IIteratorType; enum AudioCompression : uint8_t { AUDIO_COMPRESSION_NONE = 0, AUDIO_COMPRESSION_LIGHT = 1, AUDIO_COMPRESSION_MEDIUM = 2, AUDIO_COMPRESSION_HEAVY = 3, - AUDIO_COMPRESSION_MAX = 4, + AUDIO_COMPRESSION_MAX = 4 }; - using IDeviceSettingsAudioCompressionIterator = RPC::IIteratorType; + using IDeviceSettingsAudioCompressionIterator = RPC::IIteratorType; enum AudioFormat : uint8_t { AUDIO_FORMAT_NONE = 0, @@ -108,7 +109,6 @@ namespace Exchange { AUDIO_CAPS_MS12 = 32, AUDIO_CAPS_MS12_V2 = 64, AUDIO_CAPS_INVALID = 128, - }; enum AudioARCType : uint8_t { @@ -143,7 +143,7 @@ namespace Exchange { string audioProfile; }; - using IDeviceSettingsAudioMS12AudioProfileIterator = RPC::IIteratorType; + using IDeviceSettingsAudioMS12AudioProfileIterator = RPC::IIteratorType; struct VolumeLeveller { uint8_t mode; /* @text 0 = off, 1 = on, 2 = auto */ @@ -166,7 +166,7 @@ namespace Exchange { AUDIO_STEREO_MAX = 7 }; - using IDeviceSettingsStereoModeIterator = RPC::IIteratorType; + using IDeviceSettingsStereoModeIterator = RPC::IIteratorType; enum DolbyAtmosCapability: uint8_t { AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, @@ -188,17 +188,12 @@ namespace Exchange { AUDIO_MS12_FEATURE_MAX = 2 }; - - struct AudioConfig { - int32_t typeId; - string name; - IDeviceSettingsAudioCompressionIterator *audioCompressions; - IDeviceSettingsAudioEncodingIterator *audioEncodings; - IDeviceSettingsStereoModeIterator *stereoModes; - }; - - struct AudioSADItem { - int32_t sad /* @brief SAD value */ ; + struct AudioConfig { + int32_t typeId; + string name; + IDeviceSettingsAudioCompressionIterator *audioCompressions; + IDeviceSettingsAudioEncodingIterator *audioEncodings; + IDeviceSettingsStereoModeIterator *stereoModes; }; struct AudioARCStatus { @@ -973,7 +968,7 @@ namespace Exchange { DS_DISPLAY_RXSENSE_ON = 2, ///< Rx Sense ON event DS_DISPLAY_RXSENSE_OFF = 3, ///< Rx Sense OFF event DS_DISPLAY_HDCPPROTOCOL_CHANGE = 4, ///< HDCP Protocol Version Change event - DS_DISPLAY_EVENT_MAX ///< Display max event + DS_DISPLAY_EVENT_MAX = 5 ///< Display max event }; enum DisplayTVResolution: uint32_t { @@ -1030,7 +1025,7 @@ namespace Exchange { DS_DISPLAY_FRAMERATE_240 = 14, DS_DISPLAY_FRAMERATE_MAX = 15 }; - + struct DisplayVideoPortResolution { string name; DisplayTVResolution pixelResolution; @@ -1040,7 +1035,7 @@ namespace Exchange { bool interlaced; }; - using IDSVideoPortResolutionIterator = RPC::IIteratorType; + using IDSVideoPortResolutionIterator = RPC::IIteratorType; struct DisplayEDID { int32_t productCode; ///< Product code of the display device @@ -1055,7 +1050,6 @@ namespace Exchange { uint8_t physicalAddressD; ///< Physical Address for HDMI nodeD int32_t numOfSupportedResolution; ///< Number of Supported resolution string monitorName; - // IDSVideoPortResolutionIterator *suppResolutionList; ///< EDID Supported Resoultion list }; // @event @@ -1078,7 +1072,7 @@ namespace Exchange { virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerDisplay::INotification* notification /* @in */) = 0; // @event - struct EXTERNAL IDisplayNotification : virtual public Core::IUnknown + struct EXTERNAL IDisplayHDMIHotPlugNotification : virtual public Core::IUnknown { enum { ID = ID_DEVICESETTINGS_MANAGER_DISPLAY_HOTPLUG_NOTIFICATION }; @@ -1304,7 +1298,7 @@ namespace Exchange { struct HDMIPortConnectionStatus { bool isPortConnected; }; - using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; + using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; struct HDMIInStatus { bool isPresented; @@ -1320,7 +1314,7 @@ namespace Exchange { string gameFeature; }; - using IHDMIInGameFeatureListIterator = RPC::IIteratorType; + using IHDMIInGameFeatureListIterator = RPC::IIteratorType; struct HDMIInSpdInfoFrame { uint8_t pktType; /*!< Package type */ @@ -1346,9 +1340,9 @@ namespace Exchange { }; enum HDMIInCapabilityVersion { - HDMI_COMPATIBILITY_VERSION_14 = 0, - HDMI_COMPATIBILITY_VERSION_20 = 1, - HDMI_COMPATIBILITY_VERSION_21 = 2, + HDMI_COMPATIBILITY_VERSION_14 = 0, + HDMI_COMPATIBILITY_VERSION_20 = 1, + HDMI_COMPATIBILITY_VERSION_21 = 2, HDMI_COMPATIBILITY_VERSION_MAX = 3 }; @@ -1452,7 +1446,7 @@ namespace Exchange { // @event struct EXTERNAL INotification : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION }; + enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION }; // @brief HDMI Event Hot Plug // @text onHDMIInEventHotPlug @@ -1709,10 +1703,10 @@ namespace Exchange { }; enum VideoCodecHEVCProfile: uint8_t { - DS_VIDEO_CODEC_HEVC_PROFILE_MAIN = 0x01, - DS_VIDEO_CODEC_HEVC_PROFILE_MAIN10 = 0x02, + DS_VIDEO_CODEC_HEVC_PROFILE_MAIN = 0x01, + DS_VIDEO_CODEC_HEVC_PROFILE_MAIN10 = 0x02, DS_VIDEO_CODEC_HEVC_PROFILE_MAIN_STILLPICTURE = 0x04, - DS_VIDEO_CODEC_HEVC_PROFILE_MAX = 0x08 + DS_VIDEO_CODEC_HEVC_PROFILE_MAX = 0x08 }; struct VideoCodecProfileSupport { @@ -1720,7 +1714,7 @@ namespace Exchange { float level; }; - using IDeviceSettingsVideoCodecProfileSupportIterator = RPC::IIteratorType; + using IDeviceSettingsVideoCodecProfileSupportIterator = RPC::IIteratorType; // @event struct EXTERNAL INotification : virtual public Core::IUnknown @@ -1873,22 +1867,22 @@ namespace Exchange { }; enum VideoResolution: uint8_t { - DS_VIDEO_PIXELRES_720X480, - DS_VIDEO_PIXELRES_720X576, - DS_VIDEO_PIXELRES_1280X720, - DS_VIDEO_PIXELRES_1366X768, - DS_VIDEO_PIXELRES_1920X1080, - DS_VIDEO_PIXELRES_3840X2160, + DS_VIDEO_PIXELRES_720X480, + DS_VIDEO_PIXELRES_720X576, + DS_VIDEO_PIXELRES_1280X720, + DS_VIDEO_PIXELRES_1366X768, + DS_VIDEO_PIXELRES_1920X1080, + DS_VIDEO_PIXELRES_3840X2160, DS_VIDEO_PIXELRES_4096X2160, - DS_VIDEO_PIXELRES_MAX + DS_VIDEO_PIXELRES_MAX }; enum VideoAspectRatio: uint8_t { - DS_VIDEO_ASPECT_RATIO_4X3, + DS_VIDEO_ASPECT_RATIO_4X3, DS_VIDEO_ASPECT_RATIO_16X9, DS_VIDEO_ASPECT_RATIO_MAX }; - + enum VideoStereoScopicMode : uint8_t { DS_VIDEO_SSMODE_UNKNOWN = 0, DS_VIDEO_SSMODE_2D = 1, @@ -1926,71 +1920,71 @@ namespace Exchange { }; enum HDCPStatus : uint8_t { - DS_HDCP_STATUS_UNPOWERED = 0, - DS_HDCP_STATUS_UNAUTHENTICATED = 1, - DS_HDCP_STATUS_AUTHENTICATED = 2, - DS_HDCP_STATUS_AUTHENTICATIONFAILURE = 3, - DS_HDCP_STATUS_INPROGRESS = 4, + DS_HDCP_STATUS_UNPOWERED = 0, + DS_HDCP_STATUS_UNAUTHENTICATED = 1, + DS_HDCP_STATUS_AUTHENTICATED = 2, + DS_HDCP_STATUS_AUTHENTICATIONFAILURE = 3, + DS_HDCP_STATUS_INPROGRESS = 4, DS_HDCP_STATUS_PORTDISABLED = 5, DS_HDCP_STATUS_MAX = 6 }; enum HDCPProtocolVersion: uint8_t { - DS_HDCP_VERSION_1X = 0, - DS_HDCP_VERSION_2X = 1, + DS_HDCP_VERSION_1X = 0, + DS_HDCP_VERSION_2X = 1, DS_HDCP_VERSION_MAX = 2 }; enum HDRStandard: uint16_t { - DS_HDRSTANDARD_NONE = 0x0, - DS_HDRSTANDARD_HDR10 = 0x01, - DS_HDRSTANDARD_HLG = 0x02, - DS_HDRSTANDARD_DOLBYVISION = 0x04, - DS_HDRSTANDARD_TECHNICOLORPRIME = 0x08, - DS_HDRSTANDARD_HDR10PLUS = 0x10, + DS_HDRSTANDARD_NONE = 0x0, + DS_HDRSTANDARD_HDR10 = 0x01, + DS_HDRSTANDARD_HLG = 0x02, + DS_HDRSTANDARD_DOLBYVISION = 0x04, + DS_HDRSTANDARD_TECHNICOLORPRIME = 0x08, + DS_HDRSTANDARD_HDR10PLUS = 0x10, DS_HDRSTANDARD_SDR = 0x20, DS_HDRSTANDARD_INVALID = 0x80 }; enum DisplayMatrixCoefficients: uint8_t { - DS_DISPLAY_MATRIXCOEFFICIENT_UNKNOWN = 0, - DS_DISPLAY_MATRIXCOEFFICIENT_BT_709 = 1, - DS_DISPLAY_MATRIXCOEFFICIENT_BT_470_2_BG = 2, - DS_DISPLAY_MATRIXCOEFFICIENT_SMPTE_170M = 3, - DS_DISPLAY_MATRIXCOEFFICIENT_XVYCC_709 = 4, - DS_DISPLAY_MATRIXCOEFFICIENT_EXVYCC_601 = 5, - DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_NCL = 6, - DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_CL = 7, - DS_DISPLAY_MATRIXCOEFFICIENT_EDVI_FR_RGB = 8, - DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_RGB = 9, - DS_DISPLAY_MATRIXCOEFFICIENT_EFCC = 10, - DS_DISPLAY_MATRIXCOEFFICIENT_ESMPTE_240M = 11, + DS_DISPLAY_MATRIXCOEFFICIENT_UNKNOWN = 0, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_709 = 1, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_470_2_BG = 2, + DS_DISPLAY_MATRIXCOEFFICIENT_SMPTE_170M = 3, + DS_DISPLAY_MATRIXCOEFFICIENT_XVYCC_709 = 4, + DS_DISPLAY_MATRIXCOEFFICIENT_EXVYCC_601 = 5, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_NCL = 6, + DS_DISPLAY_MATRIXCOEFFICIENT_BT_2020_CL = 7, + DS_DISPLAY_MATRIXCOEFFICIENT_EDVI_FR_RGB = 8, + DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_RGB = 9, + DS_DISPLAY_MATRIXCOEFFICIENT_EFCC = 10, + DS_DISPLAY_MATRIXCOEFFICIENT_ESMPTE_240M = 11, DS_DISPLAY_MATRIXCOEFFICIENT_EHDMI_FR_YCBCR = 12, DS_DISPLAY_MATRIXCOEFFICIENT_MAX = 13 }; enum DisplayColorSpace: uint8_t { - DS_DISPLAY_COLORSPACE_UNKNOWN = 0, - DS_DISPLAY_COLORSPACE_RGB = 1, - DS_DISPLAY_COLORSPACE_YCBCR422 = 2, - DS_DISPLAY_COLORSPACE_YCBCR444 = 3, - DS_DISPLAY_COLORSPACE_YCBCR420 = 4, + DS_DISPLAY_COLORSPACE_UNKNOWN = 0, + DS_DISPLAY_COLORSPACE_RGB = 1, + DS_DISPLAY_COLORSPACE_YCBCR422 = 2, + DS_DISPLAY_COLORSPACE_YCBCR444 = 3, + DS_DISPLAY_COLORSPACE_YCBCR420 = 4, DS_DISPLAY_COLORSPACE_AUTO = 5, DS_DISPLAY_COLORSPACE_MAX = 6 }; enum DisplayQuantizationRange: uint8_t { DS_DISPLAY_QUANTIZATIONRANGE_UNKNOWN = 0, - DS_DISPLAY_QUANTIZATIONRANGE_LIMITED = 1, + DS_DISPLAY_QUANTIZATIONRANGE_LIMITED = 1, DS_DISPLAY_QUANTIZATIONRANGE_FULL = 2, DS_DISPLAY_QUANTIZATIONRANGE_MAX = 3 }; enum DisplayColorDepth : uint8_t { - DS_DISPLAY_COLORDEPTH_UNKNOWN = 0x0, - DS_DISPLAY_COLORDEPTH_8BIT = 0x01, - DS_DISPLAY_COLORDEPTH_10BIT = 0x02, - DS_DISPLAY_COLORDEPTH_12BIT = 0x04, + DS_DISPLAY_COLORDEPTH_UNKNOWN = 0x0, + DS_DISPLAY_COLORDEPTH_8BIT = 0x01, + DS_DISPLAY_COLORDEPTH_10BIT = 0x02, + DS_DISPLAY_COLORDEPTH_12BIT = 0x04, DS_DISPLAY_COLORDEPTH_AUTO = 0x08 }; @@ -2003,8 +1997,8 @@ namespace Exchange { }; enum VideoBackgroundColor : uint8_t { - DS_VIDEO_BGCOLOR_BLUE = 0, - DS_VIDEO_BGCOLOR_BLACK = 1, + DS_VIDEO_BGCOLOR_BLUE = 0, + DS_VIDEO_BGCOLOR_BLACK = 1, DS_VIDEO_BGCOLOR_NONE = 2, DS_VIDEO_BGCOLOR_MAX = 3 }; @@ -2019,7 +2013,6 @@ namespace Exchange { uint32_t height; }; - // @event struct EXTERNAL INotification : virtual public Core::IUnknown { @@ -2044,8 +2037,6 @@ namespace Exchange { // @text OnVideoFormatUpdate // @param videoFormatHDR: Video format HDR standard virtual void OnVideoFormatUpdate(const HDRStandard videoFormatHDR) {}; - - }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerVideoPort::INotification* notification /* @in */) = 0; @@ -2110,7 +2101,7 @@ namespace Exchange { // @param forceCompatibilty: force compatibility virtual Core::hresult SetVideoPortResolution(const int32_t handle /* @in */, VideoPortResolution videoPortResolution /* @in */, bool persist /* @in */, bool forceCompatibility /* @in */) = 0; - /** Enable HDCP Video port. */ + /** Enable HDCP Video port. */ // @text enableHDCPOnVideoPort // @brief Enable HDCP on video port // @param handle: handle to the port @@ -2119,7 +2110,7 @@ namespace Exchange { // @param hdcpKeySize: number of bytes in hdcpKey array virtual Core::hresult EnableHDCPOnVideoPort(const int32_t handle /* @in */, const bool hdcpEnable /* @in */, const uint8_t hdcpKey[] /* @in @length:hdcpKeySize @maxlength:hdcpKeySize */, const uint16_t hdcpKeySize /* @in */) = 0; - /** Is HDCP enabled on Video port. */ + /** Is HDCP enabled on Video port. */ // @text isHDCPEnabledOnVideoPort // @brief Is HDCP enabled on Video port // @param handle: handle to the port diff --git a/apis/Ids.h b/apis/Ids.h index 53496acc..96910ff8 100755 --- a/apis/Ids.h +++ b/apis/Ids.h @@ -298,38 +298,38 @@ namespace Exchange { ID_MIRACAST_PLAYER_NOTIFICATION = ID_MIRACAST_SERVICE + 3, ID_MIRACAST_PLAYER_ENV_ARGUMENTS_ITERATOR = ID_MIRACAST_SERVICE + 4, - ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, - ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO + 1, - ID_DEVICE_SETTINGS_AUDIO_ENCODING_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 2, - ID_DEVICE_SETTINGS_AUDIO_COMPRESSION_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 3, - ID_DEVICE_SETTINGS_AUDIO_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 4, - ID_DEVICE_SETTINGS_AUDIO_STEREOMODE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 5, - - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, - ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN + 1, - - ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, - ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, - ID_DEVICE_SETTINGS_DISPLAY_RESOLUTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_DISPLAY + 2, - ID_DEVICESETTINGS_MANAGER_DISPLAY_HOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 3, - - ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, - ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, - - ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, - ID_DEVICESETTINGS_MANAGER_HDMI_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, - ID_DEVICESETTINGS_HDMIIN_PORTCONNECTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 2, - ID_DEVICESETTINGS_HDMIIN_GAMELIST_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 3, - - ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, - ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, - - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, - ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, - ID_DEVICE_SETTINGS_VIDEO_CODEC_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 2, - - ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, - ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 + ID_DEVICESETTINGS_MANAGER_AUDIO = ID_ENTOS_OFFSET + 0x3E0, + ID_DEVICESETTINGS_MANAGER_AUDIO_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_AUDIO + 1, + ID_DEVICESETTINGS_MANAGER_AUDIO_ENCODING_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 2, + ID_DEVICESETTINGS_MANAGER_AUDIO_COMPRESSION_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 3, + ID_DEVICESETTINGS_MANAGER_AUDIO_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 4, + ID_DEVICESETTINGS_MANAGER_AUDIO_STEREOMODE_ITERATOR = ID_DEVICESETTINGS_MANAGER_AUDIO + 5, + + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN = ID_ENTOS_OFFSET + 0x3F0, + ID_DEVICESETTINGS_MANAGER_COMPOSITEIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_COMPOSITEIN + 1, + + ID_DEVICESETTINGS_MANAGER_DISPLAY = ID_ENTOS_OFFSET + 0x400, + ID_DEVICESETTINGS_MANAGER_DISPLAY_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 1, + ID_DEVICESETTINGS_MANAGER_DISPLAY_RESOLUTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_DISPLAY + 2, + ID_DEVICESETTINGS_MANAGER_DISPLAY_HOTPLUG_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_DISPLAY + 3, + + ID_DEVICESETTINGS_MANAGER_FPD = ID_ENTOS_OFFSET + 0x410, + ID_DEVICESETTINGS_MANAGER_FPD_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_FPD + 1, + + ID_DEVICESETTINGS_MANAGER_HDMIIN = ID_ENTOS_OFFSET + 0x420, + ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HDMIIN + 1, + ID_DEVICESETTINGS_MANAGER_HDMIIN_PORTCONNECTION_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 2, + ID_DEVICESETTINGS_MANAGER_HDMIIN_GAMELIST_ITERATOR = ID_DEVICESETTINGS_MANAGER_HDMIIN + 3, + + ID_DEVICESETTINGS_MANAGER_HOST = ID_ENTOS_OFFSET + 0x430, + ID_DEVICESETTINGS_MANAGER_HOST_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_HOST + 1, + + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE = ID_ENTOS_OFFSET + 0x440, + ID_DEVICESETTINGS_MANAGER_VIDEODEVICE_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 1, + ID_DEVICESETTINGS_MANAGER_VIDEO_CODEC_PROFILE_ITERATOR = ID_DEVICESETTINGS_MANAGER_VIDEODEVICE + 2, + + ID_DEVICESETTINGS_MANAGER_VIDEOPORT = ID_ENTOS_OFFSET + 0x450, + ID_DEVICESETTINGS_MANAGER_VIDEOPORT_NOTIFICATION = ID_DEVICESETTINGS_MANAGER_VIDEOPORT + 1 }; } } From 616b253e207764c3d9b7488ae487cfb529b2a114 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Mon, 18 Aug 2025 15:58:16 +0530 Subject: [PATCH 27/36] Addressing review comments. --- .../IDeviceSettingsManager.h | 153 ++++++++++-------- 1 file changed, 82 insertions(+), 71 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index e064b9e7..2e64b2d1 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -42,9 +42,9 @@ namespace Exchange { }; enum AudioPortState : uint8_t { - AUDIO_PORT_STATE_UNKNOWN = 0, - AUDIO_PORT_STATE_UNINITIALIZED = 1, - AUDIO_PORT_STATE_INITIALIZED = 2 + AUDIO_PORT_STATE_UNINITIALIZED = 0, + AUDIO_PORT_STATE_INITIALIZED = 1, + dsAUDIOPORT_STATE_MAX = 2 }; enum AudioEncoding : uint8_t { @@ -169,10 +169,10 @@ namespace Exchange { using IDeviceSettingsStereoModeIterator = RPC::IIteratorType; enum DolbyAtmosCapability: uint8_t { - AUDIO_DOLBYATMOS_NOT_SUPPORTED = 0, - AUDIO_DOLBYATMOS_DDPLUS_STREAM = 1, - AUDIO_DOLBYATMOS_ATMOS_METADATA = 2, - AUDIO_DOLBYATMOS_MAX = 3 + AUDIO_DOLBY_ATMOS_NOT_SUPPORTED = 0, + AUDIO_DOLBY_ATMOS_DDPLUS_STREAM = 1, + AUDIO_DOLBY_ATMOS_METADATA = 2, + AUDIO_DOLBY_ATMOS_MAX = 3 }; enum SurroundMode: uint8_t { @@ -870,7 +870,8 @@ namespace Exchange { DS_DISPLAY_SSMODE_UNKNOWN = 0, DS_DISPLAY_SSMODE_2D = 1, DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3, + DS_DISPLAY_SSMODE_MAX = 4 }; enum DisplayInVideoFrameRate: uint8_t { @@ -997,25 +998,27 @@ namespace Exchange { enum DisplayVideoAspectRatio : uint8_t { DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */, + DS_DISPLAY_ASPECT_RATIO_MAX = 3 }; enum DisplayInVideoStereoScopicMode : uint8_t { - DS_DISPLAY_SSMODE_UNKNOWN = 0, - DS_DISPLAY_SSMODE_2D = 1, - DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 + DS_DISPLAY_SSMODE_UNKNOWN = 0, + DS_DISPLAY_SSMODE_2D = 1, + DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3, + DS_DISPLAY_SSMODE_MAX = 4 }; enum DisplayInVideoFrameRate: uint8_t { DS_DISPLAY_FRAMERATE_UNKNOWN = 0, DS_DISPLAY_FRAMERATE_24 = 1, - DS_DISPLAY_FRAMERATE_25 = 2, - DS_DISPLAY_FRAMERATE_30 = 3, - DS_DISPLAY_FRAMERATE_60 = 4, - DS_DISPLAY_FRAMERATE_23_98 = 5, - DS_DISPLAY_FRAMERATE_29_97 = 6, - DS_DISPLAY_FRAMERATE_50 = 7, + DS_DISPLAY_FRAMERATE_25 = 2, + DS_DISPLAY_FRAMERATE_30 = 3, + DS_DISPLAY_FRAMERATE_60 = 4, + DS_DISPLAY_FRAMERATE_23_98 = 5, + DS_DISPLAY_FRAMERATE_29_97 = 6, + DS_DISPLAY_FRAMERATE_50 = 7, DS_DISPLAY_FRAMERATE_59_94 = 8, DS_DISPLAY_FRAMERATE_100 = 9, DS_DISPLAY_FRAMERATE_119_88 = 10, @@ -1083,8 +1086,8 @@ namespace Exchange { }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManagerDisplay::IDisplayNotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerDisplay::IDisplayNotification* notification /* @in */) = 0; + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerDisplay::IDisplayHDMIHotPlugNotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerDisplay::IDisplayHDMIHotPlugNotification* notification /* @in */) = 0; /** Get Display EDID. */ // @text getDisplayEdid @@ -1303,7 +1306,6 @@ namespace Exchange { struct HDMIInStatus { bool isPresented; HDMIInPort activePort; - // IHDMIInPortConnectionStatusIterator *portConnectionStatus; }; struct HDMIInCapabilities { @@ -1354,19 +1356,20 @@ namespace Exchange { }; enum HDMIInVideoZoom : uint8_t { - DS_HDMIIN_VIDEO_ZOOM_UNKNOWN = 0, - DS_HDMIIN_VIDEO_ZOOM_NONE = 1, - DS_HDMIIN_VIDEO_ZOOM_FULL = 2, - DS_HDMIIN_VIDEO_ZOOM_LB_16_9 = 3, - DS_HDMIIN_VIDEO_ZOOM_LB_14_9 = 4, - DS_HDMIIN_VIDEO_ZOOM_CCO = 5, - DS_HDMIIN_VIDEO_ZOOM_PAN_SCAN = 6, - DS_HDMIIN_VIDEO_ZOOM_LB_2_21_1_ON_4_3 = 7, - DS_HDMIIN_VIDEO_ZOOM_LB_2_21_1_ON_16_9 = 8, - DS_HDMIIN_VIDEO_ZOOM_PLATFORM = 9, - DS_HDMIIN_VIDEO_ZOOM_16_9_ZOOM = 10, - DS_HDMIIN_VIDEO_ZOOM_PILLARBOX_4_3 = 11, - DS_HDMIIN_VIDEO_ZOOM_WIDE_4_3 = 12 + DS_HDMIIN_VIDEO_ZOOM_UNKNOWN = -1, + DS_HDMIIN_VIDEO_ZOOM_NONE = 0, + DS_HDMIIN_VIDEO_ZOOM_FULL = 1, + DS_HDMIIN_VIDEO_ZOOM_LB_16_9 = 2, + DS_HDMIIN_VIDEO_ZOOM_LB_14_9 = 3, + DS_HDMIIN_VIDEO_ZOOM_CCO = 4, + DS_HDMIIN_VIDEO_ZOOM_PAN_SCAN = 5, + DS_HDMIIN_VIDEO_ZOOM_LB_2_21_1_ON_4_3 = 6, + DS_HDMIIN_VIDEO_ZOOM_LB_2_21_1_ON_16_9 = 7, + DS_HDMIIN_VIDEO_ZOOM_PLATFORM = 8, + DS_HDMIIN_VIDEO_ZOOM_16_9_ZOOM = 9, + DS_HDMIIN_VIDEO_ZOOM_PILLARBOX_4_3 = 10, + DS_HDMIIN_VIDEO_ZOOM_WIDE_4_3 = 11, + DS_HDMIIN_VIDEO_ZOOM_WIDE_MAX = 12 }; enum HDMIInVRRType: uint8_t { @@ -1401,16 +1404,17 @@ namespace Exchange { }; enum HDMIVideoAspectRatio : uint8_t { - DS_HDMIIN_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, - DS_HDMIIN_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_HDMIIN_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_HDMIIN_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, + DS_HDMIIN_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, + DS_HDMIIN_ASPECT_RATIO_MAX = 2 }; enum HDMIInVideoStereoScopicMode : uint8_t { DS_HDMIIN_SSMODE_UNKNOWN = 0, DS_HDMIIN_SSMODE_2D = 1, DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3 + DS_HDMIIN_SSMODE_3D_TOP_AND_BOTTOM = 3, + DS_HDMIIN_SSMODE_MAX = 4 }; enum HDMIInVideoFrameRate: uint8_t { @@ -1422,7 +1426,14 @@ namespace Exchange { DS_HDMIIN_FRAMERATE_23_98 = 5, DS_HDMIIN_FRAMERATE_29_97 = 6, DS_HDMIIN_FRAMERATE_50 = 7, - DS_HDMIIN_FRAMERATE_59_94 = 8 + DS_HDMIIN_FRAMERATE_59_94 = 8, + DS_HDMIIN_FRAMERATE_100 = 9, + DS_HDMIIN_FRAMERATE_119dot88 = 10, + DS_HDMIIN_FRAMERATE_120 = 11, + DS_HDMIIN_FRAMERATE_200 = 12, + DS_HDMIIN_FRAMERATE_239dot76 = 13, + DS_HDMIIN_FRAMERATE_240 = 14, + DS_HDMIIN_FRAMERATE_MAX = 15 }; enum HDMIInAviContentType: uint8_t { @@ -1844,43 +1855,43 @@ namespace Exchange { }; enum TVResolution: uint32_t { - DS_TV_RESOLUTION_480I = 0x000001, - DS_TV_RESOLUTION_480P = 0x000002, - DS_TV_RESOLUTION_576I = 0x000004, - DS_TV_RESOLUTION_576P = 0x000008, - DS_TV_RESOLUTION_576P50 = 0x000010, - DS_TV_RESOLUTION_720P = 0x000020, - DS_TV_RESOLUTION_720P50 = 0x000040, - DS_TV_RESOLUTION_1080I = 0x000080, - DS_TV_RESOLUTION_1080P = 0x000100, - DS_TV_RESOLUTION_1080P24 = 0x000200, - DS_TV_RESOLUTION_1080I25 = 0x000400, - DS_TV_RESOLUTION_1080P30 = 0x001000, - DS_TV_RESOLUTION_1080I50 = 0x002000, - DS_TV_RESOLUTION_1080P50 = 0x004000, - DS_TV_RESOLUTION_1080P60 = 0x008000, - DS_TV_RESOLUTION_2160P24 = 0x010000, - DS_TV_RESOLUTION_2160P25 = 0x020000, - DS_TV_RESOLUTION_2160P30 = 0x040000, - DS_TV_RESOLUTION_2160P50 = 0x080000, - DS_TV_RESOLUTION_2160P60 = 0x100000 + DS_TV_RESOLUTION_480I = 0x000001, + DS_TV_RESOLUTION_480P = 0x000002, + DS_TV_RESOLUTION_576I = 0x000004, + DS_TV_RESOLUTION_576P = 0x000008, + DS_TV_RESOLUTION_576P50 = 0x000010, + DS_TV_RESOLUTION_720P = 0x000020, + DS_TV_RESOLUTION_720P50 = 0x000040, + DS_TV_RESOLUTION_1080I = 0x000080, + DS_TV_RESOLUTION_1080P = 0x000100, + DS_TV_RESOLUTION_1080P24 = 0x000200, + DS_TV_RESOLUTION_1080I25 = 0x000400, + DS_TV_RESOLUTION_1080P30 = 0x001000, + DS_TV_RESOLUTION_1080I50 = 0x002000, + DS_TV_RESOLUTION_1080P50 = 0x004000, + DS_TV_RESOLUTION_1080P60 = 0x008000, + DS_TV_RESOLUTION_2160P24 = 0x010000, + DS_TV_RESOLUTION_2160P25 = 0x020000, + DS_TV_RESOLUTION_2160P30 = 0x040000, + DS_TV_RESOLUTION_2160P50 = 0x080000, + DS_TV_RESOLUTION_2160P60 = 0x100000 }; enum VideoResolution: uint8_t { - DS_VIDEO_PIXELRES_720X480, - DS_VIDEO_PIXELRES_720X576, - DS_VIDEO_PIXELRES_1280X720, - DS_VIDEO_PIXELRES_1366X768, - DS_VIDEO_PIXELRES_1920X1080, - DS_VIDEO_PIXELRES_3840X2160, - DS_VIDEO_PIXELRES_4096X2160, - DS_VIDEO_PIXELRES_MAX + DS_VIDEO_PIXELRES_720X480 = 0, + DS_VIDEO_PIXELRES_720X576 = 1, + DS_VIDEO_PIXELRES_1280X720 = 2, + DS_VIDEO_PIXELRES_1366X768 = 3, + DS_VIDEO_PIXELRES_1920X1080 = 4, + DS_VIDEO_PIXELRES_3840X2160 = 5, + DS_VIDEO_PIXELRES_4096X2160 = 6, + DS_VIDEO_PIXELRES_MAX = 7 }; enum VideoAspectRatio: uint8_t { - DS_VIDEO_ASPECT_RATIO_4X3, - DS_VIDEO_ASPECT_RATIO_16X9, - DS_VIDEO_ASPECT_RATIO_MAX + DS_VIDEO_ASPECT_RATIO_4X3 = 0, + DS_VIDEO_ASPECT_RATIO_16X9 = 1, + DS_VIDEO_ASPECT_RATIO_MAX = 2 }; enum VideoStereoScopicMode : uint8_t { From 5e2651509a4a24234dfd8dabe1efd960eb62e34c Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 19 Aug 2025 11:18:20 +0530 Subject: [PATCH 28/36] Addressing review comments. --- .../IDeviceSettingsManager.h | 97 ++++++++++++------- 1 file changed, 60 insertions(+), 37 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 2e64b2d1..76057be2 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -272,29 +272,19 @@ namespace Exchange { // @param handle: handle to the port virtual Core::hresult GetAudioPort(const AudioPortType type /* @in */, const int32_t index /* @in */, int32_t &handle /* @out */) = 0; - /** Terminate Audio Port . */ - // @text audioPortTerm - // @brief Terminate the Audio Port for the port type and index - // @param type: Type of Audio port - see AudioPortType - // @param index: index of the audio port within the list of audio port types - // @param handle: handle to the port - virtual Core::hresult AudioPortTerm(const AudioPortType type /* @in */, const int32_t index /* @in */,int32_t handle /* @in */) = 0; - /** Audio Port status. */ // @text isAudioPortEnabled - // @brief Audio port status - // @param type: Type of Audio port - see AudioPortType - // @param index: index of the audio port within the list of audio port types + // @brief Audio port enabled or not // @param handle: handle to the port - virtual Core::hresult IsAudioPortEnabled(const AudioPortType type /* @in */, const int32_t index /* @in */,int32_t &handle /* @out */) = 0; + // @param enabled: enabled (true) or not (false) + virtual Core::hresult IsAudioPortEnabled(const int32_t handle /* @in */, bool &enabled /* @out */) = 0; /** Enable Audio Port. */ // @text enableAudioPort // @brief Audio port status - // @param type: Type of Audio port - see AudioPortType - // @param index: index of the audio port within the list of audio port types // @param handle: handle to the port - virtual Core::hresult EnableAudioPort(const AudioPortType type /* @in */, const int32_t index /* @in */,int32_t &handle /* @out */) = 0; + // @param enable : enable (true) or disable (false) + virtual Core::hresult EnableAudioPort(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Get Supported ARC types . */ // @text getSupportedARCTypes @@ -861,17 +851,16 @@ namespace Exchange { }; enum DisplayVideoAspectRatio : uint8_t { - DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, - DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */ + DS_DISPLAY_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, + DS_DISPLAY_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, + DS_DISPLAY_ASPECT_RATIO_MAX = 2 /* @text Video Aspect Ratio 16x9 */ }; enum DisplayInVideoStereoScopicMode : uint8_t { DS_DISPLAY_SSMODE_UNKNOWN = 0, DS_DISPLAY_SSMODE_2D = 1, DS_DISPLAY_SSMODE_3D_SIDE_BY_SIDE = 2, - DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3, - DS_DISPLAY_SSMODE_MAX = 4 + DS_DISPLAY_SSMODE_3D_TOP_AND_BOTTOM = 3 }; enum DisplayInVideoFrameRate: uint8_t { @@ -1355,7 +1344,7 @@ namespace Exchange { int32_t height; }; - enum HDMIInVideoZoom : uint8_t { + enum HDMIInVideoZoom : int8_t { DS_HDMIIN_VIDEO_ZOOM_UNKNOWN = -1, DS_HDMIIN_VIDEO_ZOOM_NONE = 0, DS_HDMIIN_VIDEO_ZOOM_FULL = 1, @@ -1369,7 +1358,7 @@ namespace Exchange { DS_HDMIIN_VIDEO_ZOOM_16_9_ZOOM = 9, DS_HDMIIN_VIDEO_ZOOM_PILLARBOX_4_3 = 10, DS_HDMIIN_VIDEO_ZOOM_WIDE_4_3 = 11, - DS_HDMIIN_VIDEO_ZOOM_WIDE_MAX = 12 + DS_HDMIIN_VIDEO_ZOOM_MAX = 12 }; enum HDMIInVRRType: uint8_t { @@ -1380,6 +1369,11 @@ namespace Exchange { DS_HDMIIN_AMD_FREESYNC_PREMIUM_PRO = 4 }; + struct HDMIInVRRStatus { + HDMIInVRRType vrrType; + double vrrFreeSyncFramerateHz; + }; + enum HDMIInTVResolution: uint32_t { DS_HDMIIN_RESOLUTION_480I = 0x000001, DS_HDMIIN_RESOLUTION_480P = 0x000002, @@ -1406,7 +1400,7 @@ namespace Exchange { enum HDMIVideoAspectRatio : uint8_t { DS_HDMIIN_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, DS_HDMIIN_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, - DS_HDMIIN_ASPECT_RATIO_MAX = 2 + DS_HDMIIN_ASPECT_RATIO_MAX = 2 /* @text Video Aspect Ratio MAX */ }; enum HDMIInVideoStereoScopicMode : uint8_t { @@ -1428,10 +1422,10 @@ namespace Exchange { DS_HDMIIN_FRAMERATE_50 = 7, DS_HDMIIN_FRAMERATE_59_94 = 8, DS_HDMIIN_FRAMERATE_100 = 9, - DS_HDMIIN_FRAMERATE_119dot88 = 10, + DS_HDMIIN_FRAMERATE_119_88 = 10, DS_HDMIIN_FRAMERATE_120 = 11, DS_HDMIIN_FRAMERATE_200 = 12, - DS_HDMIIN_FRAMERATE_239dot76 = 13, + DS_HDMIIN_FRAMERATE_239_76 = 13, DS_HDMIIN_FRAMERATE_240 = 14, DS_HDMIIN_FRAMERATE_MAX = 15 }; @@ -1563,21 +1557,21 @@ namespace Exchange { // @brief Get ALLM Status // @param port: Port number // @param allmStatus: ALLM status - virtual Core::hresult GetHDMIInAllmStatus(HDMIInPort port /* @in */, bool &allmStatus /* @out*/) = 0; + virtual Core::hresult GetHDMIInAllmStatus(const HDMIInPort port /* @in */, bool &allmStatus /* @out*/) = 0; /** Get EDID to ALLM Supported or not. */ // @text getHDMIInEdid2AllmSupport // @brief Get EDID to ALLM Supported or not // @param port: Port number // @param allmSupport: ALLM supported (true) or not (false) - virtual Core::hresult GetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool &allmSupport /* @out*/) = 0; + virtual Core::hresult GetHDMIInEdid2AllmSupport(const HDMIInPort port /* @in */, bool &allmSupport /* @out*/) = 0; /** Set EDID to ALLM Supported or not. */ // @text setHDMIInEdid2AllmSupport // @brief Get EDID to ALLM Supported or not // @param port: Port number // @param allmSupport: ALLM supported (true) or not (false) - virtual Core::hresult SetHDMIInEdid2AllmSupport(HDMIInPort port /* @in */, bool allmSupport /* @in*/) = 0; + virtual Core::hresult SetHDMIInEdid2AllmSupport(const HDMIInPort port /* @in */, bool allmSupport /* @in*/) = 0; /** Get EDID bytes. */ // @text getEdidBytes @@ -1585,7 +1579,7 @@ namespace Exchange { // @param port: Port number // @param edidBytesLength: number of bytes in the edidBytes array // @param edidBytes: EDID information - virtual Core::hresult GetEdidBytes(HDMIInPort port /* @in */, const uint16_t edidBytesLength /* @in */, uint8_t edidBytes[] /* @out @length:edidBytesLength @maxlength:edidBytesLength */) = 0; + virtual Core::hresult GetEdidBytes(const HDMIInPort port /* @in */, const uint16_t edidBytesLength /* @in */, uint8_t edidBytes[] /* @out @length:edidBytesLength @maxlength:edidBytesLength */) = 0; /** Get HDMI SPD Information. */ // @text getEdidBytes @@ -1593,28 +1587,56 @@ namespace Exchange { // @param port: Port number // @param spdBytesLength: number of bytes in the spdBytes array // @param spdBytes: SPD information - virtual Core::hresult GetHDMISPDInformation(HDMIInPort port /* @in */, const uint16_t spdBytesLength /* @in */, uint8_t spdBytes[] /* @out @length:spdBytesLength @maxlength:spdBytesLength */) = 0; + virtual Core::hresult GetHDMISPDInformation(const HDMIInPort port /* @in */, const uint16_t spdBytesLength /* @in */, uint8_t spdBytes[] /* @out @length:spdBytesLength @maxlength:spdBytesLength */) = 0; /** Get HDMI Port EDID version. */ // @text getHDMIEdidVersion // @brief Get HDMI Port EDID version. // @param port: Port number // @param edidVersion: EDID version - virtual Core::hresult GetHDMIEdidVersion(HDMIInPort port /* @in */, HDMIInEdidVersion &edidVersion /* @out */) = 0; + virtual Core::hresult GetHDMIEdidVersion(const HDMIInPort port /* @in */, HDMIInEdidVersion &edidVersion /* @out */) = 0; /** Set HDMI Port EDID version. */ // @text setHDMIEdidVersion // @brief Set HDMI Port EDID version. // @param port: Port number // @param edidVersion: EDID version - virtual Core::hresult SetHDMIEdidVersion(HDMIInPort port /* @in */, HDMIInEdidVersion edidVersion /* @in */) = 0; + virtual Core::hresult SetHDMIEdidVersion(const HDMIInPort port /* @in */, HDMIInEdidVersion edidVersion /* @in */) = 0; /** Get HDMI Video mode. */ // @text getHDMIVideoMode // @brief Get HDMI Video mode. // @param port: Port number // @param videoPortResolution: Video port resolution structure - virtual Core::hresult GetHDMIVideoMode(HDMIInPort port /* @in */, HDMIVideoPortResolution &videoPortResolution /* @out */) = 0; + virtual Core::hresult GetHDMIVideoMode(const HDMIInPort port /* @in */, HDMIVideoPortResolution &videoPortResolution /* @out */) = 0; + + /** Get HDMI Supported version. */ + // @text getHDMIVersion + // @brief Get HDMI Supported Version + // @param port: Port number + // @param capabilityVersion: supported capability version + virtual Core::hresult GetHDMIVersion(const HDMIInPort port /* @in */, HDMIInCapabilityVersion &capabilityVersion /* @out */) = 0; + + /** Set HDMI VRR Support. */ + // @text setVRRSupport + // @brief Set HDMI VRR Support. + // @param port: Port number + // @param vrrSupport: enable (true) or disable (false) + virtual Core::hresult SetVRRSupport(const HDMIInPort port /* @in */, const bool vrrSupport /* @in */) = 0; + + /** Get HDMI VRR Support. */ + // @text getVRRSupport + // @brief Get HDMI VRR Support. + // @param port: Port number + // @param vrrSupport: enabled (true) or disable (false) + virtual Core::hresult GetVRRSupport(const HDMIInPort port /* @in */, bool &vrrSupport /* @out */) = 0; + + /** Get HDMI VRR Status. */ + // @text getVRRStatus + // @brief Get HDMI VRR Status. + // @param port: Port number + // @param vrrStatus: VRR Status + virtual Core::hresult GetVRRStatus(const HDMIInPort port /* @in */, HDMIInVRRStatus &vrrStatus /* @out */) = 0; }; struct EXTERNAL IDeviceSettingsManagerHost : virtual public Core::IUnknown { @@ -1666,20 +1688,20 @@ namespace Exchange { virtual Core::hresult GetHALVersion(uint32_t &versionNo /* @out */) = 0; /** Get SOCID. */ - // @text getHALVersion + // @text getSoCID // @brief Get SOCID. // @param socID: SOCID in string format virtual Core::hresult GetSoCID(string &socID /* @out */) = 0; /** Get EDID Bytes. */ - // @text getHALVersion + // @text getEDID // @brief Get EDID. // @param edId: EDID in bytes // @param edIdLength: number of bytes in edId array virtual Core::hresult GetEDID(uint8_t edId[] /* @out @length:edIdLength @maxlength:edIdLength */, const uint16_t edIdLength /* @in */) = 0; /** Get MS12 Config type. */ - // @text getHALVersion + // @text getMS12ConfigType // @brief Get MS12 Config // @param ms12Config: MS12 config type virtual Core::hresult GetMS12ConfigType(string &ms12Config /* @out */) = 0; @@ -1996,7 +2018,8 @@ namespace Exchange { DS_DISPLAY_COLORDEPTH_8BIT = 0x01, DS_DISPLAY_COLORDEPTH_10BIT = 0x02, DS_DISPLAY_COLORDEPTH_12BIT = 0x04, - DS_DISPLAY_COLORDEPTH_AUTO = 0x08 + DS_DISPLAY_COLORDEPTH_AUTO = 0x08, + DS_DISPLAY_COLORDEPTH_MAX = 0x10 }; struct DSOutputSettings { From e83e650361a0866ee77251333f5080be24ee7a04 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 19 Aug 2025 14:29:25 +0530 Subject: [PATCH 29/36] Addressing review comments. --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 76057be2..57a18e03 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -985,10 +985,9 @@ namespace Exchange { }; enum DisplayVideoAspectRatio : uint8_t { - DS_DISPLAY_ASPECT_RATIO_UNKNOWN = 0 /* @text Video Aspect Ratio UNKNOWN */, - DS_DISPLAY_ASPECT_RATIO_4X3 = 1 /* @text Video Aspect Ratio 4X3 */, - DS_DISPLAY_ASPECT_RATIO_16X9 = 2 /* @text Video Aspect Ratio 16x9 */, - DS_DISPLAY_ASPECT_RATIO_MAX = 3 + DS_DISPLAY_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, + DS_DISPLAY_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, + DS_DISPLAY_ASPECT_RATIO_MAX = 2 }; enum DisplayInVideoStereoScopicMode : uint8_t { @@ -2208,7 +2207,7 @@ namespace Exchange { virtual Core::hresult SetForceDisable4K(const int32_t handle /* @in */, const bool disable /* @in */) = 0; /** Get Disable 4K status. */ - // @text setForceDisable4K + // @text getForceDisable4K // @brief Get Force disable 4K value // @param handle: handle to the port // @param disabled: disabled (true) or enabled (false) From f360b08a3aacd6aac4b347b108d4ff9e49c5326c Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 20 Aug 2025 12:11:54 +0530 Subject: [PATCH 30/36] Addressing review comments. --- .../IDeviceSettingsManager.h | 67 +++++++++---------- 1 file changed, 33 insertions(+), 34 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 57a18e03..234dd0e1 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -299,14 +299,14 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param sadList: SAD array // @param count: number of items in sadList (max 15) - virtual Core::hresult SetSAD(const int32_t handle /* @in */, const uint8_t sadList[] /* @in @length:count @maxlength:count */, uint8_t count /* @in */) = 0; + virtual Core::hresult SetSAD(const int32_t handle /* @in */, const uint8_t sadList[] /* @in @length:count @maxlength:count */, const uint8_t count /* @in */) = 0; /** Enable ARC */ // @text enableARC // @brief Get Supported ARC types // @param handle: handle returned in GetAudioPort() // @param arcStatus: ARC param - virtual Core::hresult EnableARC(const int32_t handle /* @in */, AudioARCStatus arcStatus /* @in */) = 0; + virtual Core::hresult EnableARC(const int32_t handle /* @in */, const AudioARCStatus arcStatus /* @in */) = 0; /** Get Stereo Mode . */ // @text getStereoMode @@ -321,7 +321,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param mode: mode // @param persist: persist the mode - virtual Core::hresult SetStereoMode(const int32_t handle /* @in */, StereoMode mode /* @in */ ,bool persist /* @in */) = 0; + virtual Core::hresult SetStereoMode(const int32_t handle /* @in */, const StereoMode mode /* @in */, const bool persist /* @in */) = 0; /** Get Stereo Auto . */ // @text getStereoAuto @@ -336,14 +336,14 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param mode: auto mode // @param persist: persist the setting - virtual Core::hresult SetStereoAuto(const int32_t handle /* @in */, int32_t mode /* @in */, bool persist /* @in */) = 0; + virtual Core::hresult SetStereoAuto(const int32_t handle /* @in */, const int32_t mode /* @in */, const bool persist /* @in */) = 0; /** Set Audio Mute . */ // @text setAudioMute // @brief Set Audio mute // @param handle: handle returned in GetAudioPort() // @param mute: Mute (true) or Unmute (false) - virtual Core::hresult SetAudioMute(const int32_t handle /* @in */, bool mute /* @in */) = 0; + virtual Core::hresult SetAudioMute(const int32_t handle /* @in */, const bool mute /* @in */) = 0; /** Audio Mute Status. */ // @text isAudioMuted @@ -359,14 +359,14 @@ namespace Exchange { // @param duckingType: Audio ducking type // @param duckingAction: Audio ducking action // @param level : Volume level when audio is ducked. - virtual Core::hresult SetAudioDucking(const int32_t handle /* @in */, AudioDuckingType duckingType /* @in */, AudioDuckingAction duckingAction /* @in */, uint8_t level /* @in */) = 0; + virtual Core::hresult SetAudioDucking(const int32_t handle /* @in */, const AudioDuckingType duckingType /* @in */, const AudioDuckingAction duckingAction /* @in */, const uint8_t level /* @in */) = 0; /** Set Audio Level */ // @text setAudioLevel // @brief Set Audio Level // @param handle: handle returned in GetAudioPort() // @param audioLevel: Audio level - virtual Core::hresult SetAudioLevel(const int32_t handle /* @in */, float audioLevel /* @in */) = 0; + virtual Core::hresult SetAudioLevel(const int32_t handle /* @in */, const float audioLevel /* @in */) = 0; /** Get Audio Level */ // @text GetAudioDucking @@ -380,7 +380,7 @@ namespace Exchange { // @brief Set Audio Gain // @param handle: handle returned in GetAudioPort() // @param gainLevel: Gain level - virtual Core::hresult SetAudioGain(const int32_t handle /* @in */, float gainLevel /* @in */) = 0; + virtual Core::hresult SetAudioGain(const int32_t handle /* @in */, const float gainLevel /* @in */) = 0; /** Get Audio Gain */ // @text setAudioGain @@ -417,7 +417,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param enable : persistence enable (true) or disable (false) // @param portName: portName for which persistence is enabled - virtual Core::hresult SetAudioEnablePersist(const int32_t handle /* @in */, bool enable /* @in */, string portName /* @in */) = 0; + virtual Core::hresult SetAudioEnablePersist(const int32_t handle /* @in */, const bool enable /* @in */, const string portName /* @in */) = 0; /** Audio MS decode Status. */ // @text isAudioMSDecoded @@ -445,14 +445,14 @@ namespace Exchange { // @brief Audio LE config Enable // @param handle: handle returned in GetAudioPort() // @param enabled: true (enabled) or false (disabled) - virtual Core::hresult EnableAudioLEConfig(const int32_t handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult EnableAudioLEConfig(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Set Audio Delay */ // @text setAudioDelay // @brief Set Audio Delay // @param handle: handle returned in GetAudioPort() // @param audioDelay: Audio delay in millisecs - virtual Core::hresult SetAudioDelay(const int32_t handle /* @in */, uint32_t audioDelay /* @in */) = 0; + virtual Core::hresult SetAudioDelay(const int32_t handle /* @in */, const uint32_t audioDelay /* @in */) = 0; /** Get Audio Delay */ // @text getAudioDelay @@ -487,7 +487,7 @@ namespace Exchange { // @brief Set Audio Atmos output mode // @param handle: handle returned in GetAudioPort() // @param enable: Enable audio atmos output mode - virtual Core::hresult SetAudioAtmosOutputMode(const int32_t handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult SetAudioAtmosOutputMode(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Set Audio Compression */ // @text setAudioCompression @@ -522,7 +522,7 @@ namespace Exchange { // @brief Set Audio Dolby volume mode // @param handle: handle returned in GetAudioPort() // @param enable: true (enable dolby volume mode) or false (disable dolby volume mode) - virtual Core::hresult SetAudioDolbyVolumeMode(const int32_t handle /* @in */, bool enable /* @in */) = 0; + virtual Core::hresult SetAudioDolbyVolumeMode(const int32_t handle /* @in */, const bool enable /* @in */) = 0; /** Get Audio Dolby Volume mode */ // @text getAudioDolbyVolumeMode @@ -550,7 +550,7 @@ namespace Exchange { // @brief Set Audio Volume leveller // @param handle: handle returned in GetAudioPort() // @param volumeLeveller: volume leveller (mode and a level) - virtual Core::hresult SetAudioVolumeLeveller(const int32_t handle /* @in */, VolumeLeveller volumeLeveller /* @in */) = 0; + virtual Core::hresult SetAudioVolumeLeveller(const int32_t handle /* @in */, const VolumeLeveller volumeLeveller /* @in */) = 0; /** Get Audio Volume leveller */ // @text getAudioVolumeLeveller @@ -606,7 +606,7 @@ namespace Exchange { // @brief Set Audio Surroud Virtualizer // @param handle: handle returned in GetAudioPort() // @param surroundVirtualizer: virtualizer - virtual Core::hresult SetAudioSurroudVirtualizer(const int32_t handle /* @in */, SurroundVirtualizer surroundVirtualizer /* @in */) = 0; + virtual Core::hresult SetAudioSurroudVirtualizer(const int32_t handle /* @in */, const SurroundVirtualizer surroundVirtualizer /* @in */) = 0; /** Get Audio Surroud Virtualizer */ // @text getAudioSurroudVirtualizer @@ -662,7 +662,7 @@ namespace Exchange { // @brief Set Audio MS12 profile // @param handle: handle returned in GetAudioPort() // @param profile: Name of the profile - virtual Core::hresult SetAudioMS12Profile(const int32_t handle /* @in */, string profile /* @in */) = 0; + virtual Core::hresult SetAudioMS12Profile(const int32_t handle /* @in */, const string profile /* @in */) = 0; /** Set Audio Mixer Levels */ // @text setAudioMixerLevels @@ -670,7 +670,7 @@ namespace Exchange { // @param handle: handle returned in GetAudioPort() // @param audioInput: AudioInput // @param volume: Volume level - virtual Core::hresult SetAudioMixerLevels(const int32_t handle /* @in */, const AudioInput audioInput /* @in */, int32_t volume /* @in */) = 0; + virtual Core::hresult SetAudioMixerLevels(const int32_t handle /* @in */, const AudioInput audioInput /* @in */, const int32_t volume /* @in */) = 0; /** Set Associated Audio Mixing values */ @@ -706,7 +706,7 @@ namespace Exchange { // @brief Set Primary Audio language // @param handle: handle returned in GetAudioPort() // @param primaryAudioLanguage: Primary audio language - virtual Core::hresult SetAudioPrimaryLanguage(const int32_t handle /* @in */, string primaryAudioLanguage /* @in */) = 0; + virtual Core::hresult SetAudioPrimaryLanguage(const int32_t handle /* @in */, const string primaryAudioLanguage /* @in */) = 0; /** Get Primary Audio language */ // @text getAudioPrimaryLanguage @@ -720,7 +720,7 @@ namespace Exchange { // @brief Set Secondary Audio language // @param handle: handle returned in GetAudioPort() // @param secondaryAudioLanguage: Secondary audio language - virtual Core::hresult SetAudioSecondaryLanguage(const int32_t handle /* @in */, string secondaryAudioLanguage /* @in */) = 0; + virtual Core::hresult SetAudioSecondaryLanguage(const int32_t handle /* @in */, const string secondaryAudioLanguage /* @in */) = 0; /** Get Primary Audio language */ // @text getAudioSecondaryLanguage @@ -751,7 +751,7 @@ namespace Exchange { // @param profileSettingsName: Name of the profile setting // @param profileSettingValue : value of the profile setting // @param profileState: ADD or REMOVE - virtual Core::hresult SetAudioMS12SettingsOverride(const int32_t handle /* @in */, string profileName /* @in */, string profileSettingsName /* @in */, string profileSettingValue /* @in */, string profileState /* @in */ ) = 0; + virtual Core::hresult SetAudioMS12SettingsOverride(const int32_t handle /* @in */, const string profileName /* @in */, const string profileSettingsName /* @in */, const string profileSettingValue /* @in */, const string profileState /* @in */ ) = 0; /** Is Audio output connected? */ // @text isAudioOutputConnected @@ -1524,19 +1524,19 @@ namespace Exchange { // @param requestAudioMix: Should audio be mixed on this port // @param topMostPlane: Should this be on top for display // @param videoPlaneType: Primary or secondary - virtual Core::hresult SelectHDMIInPort(HDMIInPort port /* @in */, bool requestAudioMix /* @in */, bool topMostPlane /* @in */, HDMIVideoPlaneType videoPlaneType /* @in */) = 0; + virtual Core::hresult SelectHDMIInPort(const HDMIInPort port /* @in */, const bool requestAudioMix /* @in */, const bool topMostPlane /* @in */, const HDMIVideoPlaneType videoPlaneType /* @in */) = 0; /** Scale HDMIIn Video. */ // @text scaleHDMIInVideo // @brief Scale HDMIIn Video // @param videoPosition: co-ordinates to scale - virtual Core::hresult ScaleHDMIInVideo(HDMIInVideoRectangle videoPosition /* @in */) = 0; + virtual Core::hresult ScaleHDMIInVideo(const HDMIInVideoRectangle videoPosition /* @in */) = 0; /** Select HDMIIn Zoom mode. */ // @text selectHDMIZoomMode // @brief Select HDMIIn Zoom mode // @param zoomMode: zoom mode - virtual Core::hresult SelectHDMIZoomMode(HDMIInVideoZoom zoomMode /* @in */) = 0; + virtual Core::hresult SelectHDMIZoomMode(const HDMIInVideoZoom zoomMode /* @in */) = 0; /** Get Supported Game feature list. */ // @text getSupportedGameFeaturesList @@ -1600,14 +1600,13 @@ namespace Exchange { // @brief Set HDMI Port EDID version. // @param port: Port number // @param edidVersion: EDID version - virtual Core::hresult SetHDMIEdidVersion(const HDMIInPort port /* @in */, HDMIInEdidVersion edidVersion /* @in */) = 0; + virtual Core::hresult SetHDMIEdidVersion(const HDMIInPort port /* @in */, const HDMIInEdidVersion edidVersion /* @in */) = 0; /** Get HDMI Video mode. */ // @text getHDMIVideoMode // @brief Get HDMI Video mode. - // @param port: Port number // @param videoPortResolution: Video port resolution structure - virtual Core::hresult GetHDMIVideoMode(const HDMIInPort port /* @in */, HDMIVideoPortResolution &videoPortResolution /* @out */) = 0; + virtual Core::hresult GetHDMIVideoMode( HDMIVideoPortResolution &videoPortResolution /* @out */) = 0; /** Get HDMI Supported version. */ // @text getHDMIVersion @@ -1814,7 +1813,7 @@ namespace Exchange { // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param videoCodec: Video codec for which information is needed // @param videoCodecInfo: Video codec information - virtual Core::hresult GetCodecInfo(const int32_t handle /* @in */, VideoCodec videoCodec /* @in */, IDeviceSettingsVideoCodecProfileSupportIterator *&codecInfo /* @out */) = 0; + virtual Core::hresult GetCodecInfo(const int32_t handle /* @in */, const VideoCodec videoCodec /* @in */, IDeviceSettingsVideoCodecProfileSupportIterator *&codecInfo /* @out */) = 0; /** Video Device Disable HDR */ // @text disableHDR @@ -1849,7 +1848,7 @@ namespace Exchange { // @brief Set current display frame rate // @param handle: video device handle (returned in GetVideoDeviceHandle) // @param framerate: frame rate - virtual Core::hresult SetDisplayFrameRate(const int32_t handle /* @in */, string framerate /* @in */) = 0; + virtual Core::hresult SetDisplayFrameRate(const int32_t handle /* @in */, const string framerate /* @in */) = 0; }; struct EXTERNAL IDeviceSettingsManagerVideoPort : virtual public Core::IUnknown { @@ -2132,7 +2131,7 @@ namespace Exchange { // @param videoPortResolution: video port resolution // @param persist: persist this setting // @param forceCompatibilty: force compatibility - virtual Core::hresult SetVideoPortResolution(const int32_t handle /* @in */, VideoPortResolution videoPortResolution /* @in */, bool persist /* @in */, bool forceCompatibility /* @in */) = 0; + virtual Core::hresult SetVideoPortResolution(const int32_t handle /* @in */, const VideoPortResolution videoPortResolution /* @in */, const bool persist /* @in */, const bool forceCompatibility /* @in */) = 0; /** Enable HDCP Video port. */ // @text enableHDCPOnVideoPort @@ -2237,7 +2236,7 @@ namespace Exchange { // @brief Set HDMI preferred HDCP protocol version // @param handle: handle to the port // @param hdcpVersion: HDCP version - virtual Core::hresult SetHDMIPreference(const int32_t handle /* @in */, HDCPProtocolVersion hdcpVersion /* @in */) = 0; + virtual Core::hresult SetHDMIPreference(const int32_t handle /* @in */, const HDCPProtocolVersion hdcpVersion /* @in */) = 0; /** Get Video EOTF. */ // @text getVideoEOTF @@ -2286,14 +2285,14 @@ namespace Exchange { // @brief Set Video background color. // @param handle: handle to the port // @param backgroundColor: video background color - virtual Core::hresult SetBackgroundColor(const int32_t handle /* @in */, VideoBackgroundColor backgroundColor /* @in */) = 0; + virtual Core::hresult SetBackgroundColor(const int32_t handle /* @in */, const VideoBackgroundColor backgroundColor /* @in */) = 0; /** Set HDR mode. */ // @text setForceHDRMode // @brief Set HDR mode // @param handle: handle to the port // @param hdrMode: see HDRStandard - virtual Core::hresult SetForceHDRMode(const int32_t handle /* @in */, HDRStandard hdrMode /* @in */) = 0; + virtual Core::hresult SetForceHDRMode(const int32_t handle /* @in */, const HDRStandard hdrMode /* @in */) = 0; /** Get Color Depth capabilities. */ // @text getColorDepthCapabilities @@ -2308,7 +2307,7 @@ namespace Exchange { // @param handle: handle to the port // @param colorDepth: color depth See DisplayColorDepth // @param persist: return persisted value (true) or not (false) - virtual Core::hresult GetPreferredColorDepth(const int32_t handle /* @in */, DisplayColorDepth &colorDepth /* @out */, bool persist /* @in */) = 0; + virtual Core::hresult GetPreferredColorDepth(const int32_t handle /* @in */, DisplayColorDepth &colorDepth /* @out */, const bool persist /* @in */) = 0; /** Set Preferred Color Depth. */ // @text getPreferredColorDepth @@ -2316,7 +2315,7 @@ namespace Exchange { // @param handle: handle to the port // @param colorDepth: color depth See DisplayColorDepth // @param persist: persist value (true) or not (false) - virtual Core::hresult SetPreferredColorDepth(const int32_t handle /* @in */, DisplayColorDepth colorDepth /* @in */, bool persist /* @in */) = 0; + virtual Core::hresult SetPreferredColorDepth(const int32_t handle /* @in */, const DisplayColorDepth colorDepth /* @in */, const bool persist /* @in */) = 0; }; From 68680ebb177adeda96cbef57f749610df182e87b Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 20 Aug 2025 12:52:03 +0530 Subject: [PATCH 31/36] Fixing errors --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 234dd0e1..b45e2172 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -44,7 +44,7 @@ namespace Exchange { enum AudioPortState : uint8_t { AUDIO_PORT_STATE_UNINITIALIZED = 0, AUDIO_PORT_STATE_INITIALIZED = 1, - dsAUDIOPORT_STATE_MAX = 2 + AUDIO_PORT_STATE_MAX = 2 }; enum AudioEncoding : uint8_t { @@ -191,9 +191,9 @@ namespace Exchange { struct AudioConfig { int32_t typeId; string name; - IDeviceSettingsAudioCompressionIterator *audioCompressions; - IDeviceSettingsAudioEncodingIterator *audioEncodings; - IDeviceSettingsStereoModeIterator *stereoModes; + // IDeviceSettingsAudioCompressionIterator *audioCompressions; + // IDeviceSettingsAudioEncodingIterator *audioEncodings; + // IDeviceSettingsStereoModeIterator *stereoModes; }; struct AudioARCStatus { From 0395e719ef8306fdb52ac9248530e84c09a96490 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Thu, 21 Aug 2025 13:00:09 +0530 Subject: [PATCH 32/36] Fixing minor issues --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index b45e2172..6be674c3 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -78,7 +78,7 @@ namespace Exchange { AUDIO_FORMAT_DOLBY_TRUEHD = 6, AUDIO_FORMAT_DOLBY_EAC3_ATMOS = 7, AUDIO_FORMAT_DOLBY_TRUEHD_ATMOS = 8, - AUDIO_FORMAT_DOLBY_MAT_ATMOS = 0, + AUDIO_FORMAT_DOLBY_MAT_ATMOS = 9, AUDIO_FORMAT_DOLBY_AC4_ATMOS = 10, AUDIO_FORMAT_AAC = 11, AUDIO_FORMAT_VORBIS = 12, @@ -810,7 +810,7 @@ namespace Exchange { DS_COMPOSITE_IN_SIGNAL_STATUS_UNSTABLE = 1 /* @text Signal Status Unstable */, DS_COMPOSITE_IN_SIGNAL_STATUS_NOTSUPPORTED = 2 /* @text Signal Status Not supported */, DS_COMPOSITE_IN_SIGNAL_STATUS_STABLE = 3 /* @text Signal Status Stable */, - DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @test Signal Status MAX */ + DS_COMPOSITE_IN_SIGNAL_STATUS_MAX = 4 /* @text Signal Status MAX */ }; struct CompositeInStatus { From 85749548f99b9be374c389ffcc457b07f0e5b8b1 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Thu, 28 Aug 2025 18:20:30 +0530 Subject: [PATCH 33/36] HDMIIn events updates --- .../IDeviceSettingsManager.h | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 6be674c3..322304dd 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -230,7 +230,7 @@ namespace Exchange { // @param portType: Type of audio port see AudioPortType // @param uiPortNumber: The port number assigned by UI // @param isPortConnected: true (connected) or false (not connected) - virtual void OnAudioOutHotPlug(AudioPortType portType, int32_t uiPortNumber, bool isPortConnected) { }; + virtual void OnAudioOutHotPlug(AudioPortType portType, uint32_t uiPortNumber, bool isPortConnected) { }; // @brief Audio Output format changed // @text onAudioFormatUpdate @@ -1471,35 +1471,35 @@ namespace Exchange { virtual void OnHDMIInEventStatus(const HDMIInPort activePort, const bool isPresented) {}; // @brief HDMI Video Mode update - // @text onHDMInVideoModeUpdate + // @text onHDMIInVideoModeUpdate // @param port: port 0 or 1 et al // @param videoPortResolution: Video port resolution - virtual void OnHDMInVideoModeUpdate(const HDMIInPort port, const HDMIVideoPortResolution videoPortResolution) {}; + virtual void OnHDMIInVideoModeUpdate(const HDMIInPort port, const HDMIVideoPortResolution videoPortResolution) {}; // @brief HDMI ALLM status - // @text onHDMInAllmStatus + // @text onHDMIInAllmStatus // @param port: port 0 or 1 et al // @param allmStatus: allm status - virtual void OnHDMInAllmStatus(const HDMIInPort port, const bool allmStatus) {}; + virtual void OnHDMIInAllmStatus(const HDMIInPort port, const bool allmStatus) {}; // @brief HDMI Event AVI content type - // @text OnHDMInAVIContentType + // @text onHDMIInAVIContentType // @param port: port 0 or 1 et al // @param aviContentType: AVI content type - virtual void OnHDMInAVIContentType(const HDMIInPort port, const HDMIInAviContentType aviContentType) {}; + virtual void OnHDMIInAVIContentType(const HDMIInPort port, const HDMIInAviContentType aviContentType) {}; // @brief HDMI Event AV Latency - // @text OnHDMInAVLatency + // @text onHDMIInAVLatency // @param port: port 0 or 1 et al // @param audioDelay: audio delay // @param videoDelay: video delay - virtual void OnHDMInAVLatency(const int32_t audioDelay, const int32_t videoDelay) {}; + virtual void OnHDMIInAVLatency(const int32_t audioDelay, const int32_t videoDelay) {}; // @brief HDMI VRR status - // @text OnHDMInVRRStatus + // @text onHDMIInVRRStatus // @param port: port 0 or 1 et al // @param vrrType: VRR type - virtual void OnHDMInVRRStatus(const HDMIInPort port, const HDMIInVRRType vrrType) {}; + virtual void OnHDMIInVRRStatus(const HDMIInPort port, const HDMIInVRRType vrrType) {}; }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; From d4d7aa83fd0781ce921686ec12d4c403e6d2ed1e Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 3 Sep 2025 09:42:09 +0530 Subject: [PATCH 34/36] Added additional APIs --- .../IDeviceSettingsManager.h | 195 +++++++++++------- 1 file changed, 116 insertions(+), 79 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index 322304dd..a63272c6 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -1262,12 +1262,20 @@ namespace Exchange { // @brief Set Front Panel Display Mode. // @param fpdMode: FPD Mode virtual Core::hresult SetFPDMode(const FPDMode fpdMode /* @in */) = 0; + + /** Set Front Panel LED Status. */ + // @text setFPDLEDStatus + // @brief Set Front Panel LED Status + // @param fpdMode: FPD Mode + virtual Core::hresult SetFPDLEDStatus(const FPDIndicator fpdIndicator /* @in */, const FPDState fpdState /* @in */ ) = 0; + + }; - struct EXTERNAL IDeviceSettingsManagerHDMIIn : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN }; + struct EXTERNAL IDeviceSettingsManagerHdmiIn : virtual public Core::IUnknown { + enum { ID = ID_DEVICESETTINGS_MANAGER_HdmiIn }; - enum HDMIInPort : int8_t { + enum HdmiInPort : int8_t { DS_HDMI_IN_PORT_NONE = -1, DS_HDMI_IN_PORT_0 = 0, DS_HDMI_IN_PORT_1 = 1, @@ -1277,7 +1285,7 @@ namespace Exchange { DS_HDMI_IN_PORT_MAX = 5 }; - enum HDMIInSignalStatus: int8_t { + enum HdmiInSignalStatus: int8_t { DS_HDMI_IN_SIGNAL_STATUS_NONE = -1, DS_HDMI_IN_SIGNAL_STATUS_NOSIGNAL = 0, DS_HDMI_IN_SIGNAL_STATUS_UNSTABLE = 1, @@ -1286,27 +1294,27 @@ namespace Exchange { DS_HDMI_IN_SIGNAL_STATUS_MAX = 4 }; - struct HDMIPortConnectionStatus { + struct HdmiPortConnectionStatus { bool isPortConnected; }; - using IHDMIInPortConnectionStatusIterator = RPC::IIteratorType; + using IHdmiInPortConnectionStatusIterator = RPC::IIteratorType; - struct HDMIInStatus { + struct HdmiInStatus { bool isPresented; - HDMIInPort activePort; + HdmiInPort activePort; }; - struct HDMIInCapabilities { + struct HdmiInCapabilities { bool isPortArcCapable; }; - struct HDMIInGameFeatureList { + struct HdmiInGameFeatureList { string gameFeature; }; - using IHDMIInGameFeatureListIterator = RPC::IIteratorType; + using IHdmiInGameFeatureListIterator = RPC::IIteratorType; - struct HDMIInSpdInfoFrame { + struct HdmiInSpdInfoFrame { uint8_t pktType; /*!< Package type */ uint8_t version; /*!< Version */ uint8_t length; /*!< max length 25, min length 0 */ @@ -1317,7 +1325,7 @@ namespace Exchange { uint8_t sourceInfo; /*!< Source info of the frame */ }; - enum HDMIInEdidVersion : uint8_t { + enum HdmiInEdidVersion : uint8_t { HDMI_EDID_VER_14 = 0, HDMI_EDID_VER_20 = 1, HDMI_EDID_VER_MAX = 2 @@ -1329,21 +1337,21 @@ namespace Exchange { DS_HDMIIN_VIDEOPLANE_MAX = 2 }; - enum HDMIInCapabilityVersion { + enum HdmiInCapabilityVersion : uint8_t { HDMI_COMPATIBILITY_VERSION_14 = 0, HDMI_COMPATIBILITY_VERSION_20 = 1, HDMI_COMPATIBILITY_VERSION_21 = 2, HDMI_COMPATIBILITY_VERSION_MAX = 3 }; - struct HDMIInVideoRectangle { + struct HdmiInVideoRectangle { int32_t x; int32_t y; int32_t width; int32_t height; }; - enum HDMIInVideoZoom : int8_t { + enum HdmiInVideoZoom : int8_t { DS_HDMIIN_VIDEO_ZOOM_UNKNOWN = -1, DS_HDMIIN_VIDEO_ZOOM_NONE = 0, DS_HDMIIN_VIDEO_ZOOM_FULL = 1, @@ -1360,7 +1368,7 @@ namespace Exchange { DS_HDMIIN_VIDEO_ZOOM_MAX = 12 }; - enum HDMIInVRRType: uint8_t { + enum HdmiInVRRType: uint8_t { DS_HDMIIN_VRR_NONE = 0, DS_HDMIIN_HDMI_VRR = 1, DS_HDMIIN_AMD_FREESYNC = 2, @@ -1368,12 +1376,12 @@ namespace Exchange { DS_HDMIIN_AMD_FREESYNC_PREMIUM_PRO = 4 }; - struct HDMIInVRRStatus { - HDMIInVRRType vrrType; + struct HdmiInVRRStatus { + HdmiInVRRType vrrType; double vrrFreeSyncFramerateHz; }; - enum HDMIInTVResolution: uint32_t { + enum HdmiInTVResolution: uint32_t { DS_HDMIIN_RESOLUTION_480I = 0x000001, DS_HDMIIN_RESOLUTION_480P = 0x000002, DS_HDMIIN_RESOLUTION_576I = 0x000004, @@ -1402,7 +1410,7 @@ namespace Exchange { DS_HDMIIN_ASPECT_RATIO_MAX = 2 /* @text Video Aspect Ratio MAX */ }; - enum HDMIInVideoStereoScopicMode : uint8_t { + enum HdmiInVideoStereoScopicMode : uint8_t { DS_HDMIIN_SSMODE_UNKNOWN = 0, DS_HDMIIN_SSMODE_2D = 1, DS_HDMIIN_SSMODE_3D_SIDE_BY_SIDE = 2, @@ -1410,7 +1418,7 @@ namespace Exchange { DS_HDMIIN_SSMODE_MAX = 4 }; - enum HDMIInVideoFrameRate: uint8_t { + enum HdmiInVideoFrameRate: uint8_t { DS_HDMIIN_FRAMERATE_UNKNOWN = 0, DS_HDMIIN_FRAMERATE_24 = 1, DS_HDMIIN_FRAMERATE_25 = 2, @@ -1429,7 +1437,7 @@ namespace Exchange { DS_HDMIIN_FRAMERATE_MAX = 15 }; - enum HDMIInAviContentType: uint8_t { + enum HdmiInAviContentType: uint8_t { DS_HDMIIN_AVICONTENT_TYPE_GRAPHICS =0, DS_HDMIIN_AVICONTENT_TYPE_PHOTO =1, DS_HDMIIN_AVICONTENT_TYPE_CINEMA =2, @@ -1440,10 +1448,10 @@ namespace Exchange { struct HDMIVideoPortResolution { string name; - HDMIInTVResolution pixelResolution; - HDMIVideoAspectRatio aspectRatio; - HDMIInVideoStereoScopicMode stereoScopicMode; - HDMIInVideoFrameRate frameRate; + HdmiInTVResolution pixelResolution; + HdmiVideoAspectRatio aspectRatio; + HdmiInVideoStereoScopicMode stereoScopicMode; + HdmiInVideoFrameRate frameRate; bool interlaced; }; @@ -1453,124 +1461,124 @@ namespace Exchange { enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN_NOTIFICATION }; // @brief HDMI Event Hot Plug - // @text onHDMIInEventHotPlug + // @text onHdmiInEventHotPlug // @param port: port 0 or 1 et al // @param isConnected: is it connected (true) or not (false) - virtual void OnHDMIInEventHotPlug(const HDMIInPort port, const bool isConnected) {}; + virtual void OnHdmiInEventHotPlug(const HdmiInPort port, const bool isConnected) {}; // @brief HDMI Event Signal status - // @text OnHDMIInEventSignalStatus + // @text onHdmiInEventSignalStatus // @param port: port 0 or 1 et al // @param signalStatus: Signal Status - virtual void OnHDMIInEventSignalStatus(const HDMIInPort port, const HDMIInSignalStatus signalStatus) {}; + virtual void OnHdmiInEventSignalStatus(const HdmiInPort port, const HdmiInSignalStatus signalStatus) {}; // @brief HDMI Event Signal status - // @text onHDMIInEventStatus + // @text onHdmiInEventStatus // @param activePort: port 0 or 1 et al // @param isPresented: is it presented or not - virtual void OnHDMIInEventStatus(const HDMIInPort activePort, const bool isPresented) {}; + virtual void OnHdmiInEventStatus(const HdmiInPort activePort, const bool isPresented) {}; // @brief HDMI Video Mode update - // @text onHDMIInVideoModeUpdate + // @text onHdmiInVideoModeUpdate // @param port: port 0 or 1 et al // @param videoPortResolution: Video port resolution - virtual void OnHDMIInVideoModeUpdate(const HDMIInPort port, const HDMIVideoPortResolution videoPortResolution) {}; + virtual void OnHdmiInVideoModeUpdate(const HdmiInPort port, const HDMIVideoPortResolution videoPortResolution) {}; // @brief HDMI ALLM status - // @text onHDMIInAllmStatus + // @text onHdmiInAllmStatus // @param port: port 0 or 1 et al // @param allmStatus: allm status - virtual void OnHDMIInAllmStatus(const HDMIInPort port, const bool allmStatus) {}; + virtual void OnHdmiInAllmStatus(const HdmiInPort port, const bool allmStatus) {}; // @brief HDMI Event AVI content type - // @text onHDMIInAVIContentType + // @text onHdmiInAVIContentType // @param port: port 0 or 1 et al // @param aviContentType: AVI content type - virtual void OnHDMIInAVIContentType(const HDMIInPort port, const HDMIInAviContentType aviContentType) {}; + virtual void OnHdmiInAVIContentType(const HdmiInPort port, const HdmiInAviContentType aviContentType) {}; // @brief HDMI Event AV Latency - // @text onHDMIInAVLatency + // @text onHdmiInAVLatency // @param port: port 0 or 1 et al // @param audioDelay: audio delay // @param videoDelay: video delay - virtual void OnHDMIInAVLatency(const int32_t audioDelay, const int32_t videoDelay) {}; + virtual void OnHdmiInAVLatency(const int32_t audioDelay, const int32_t videoDelay) {}; // @brief HDMI VRR status - // @text onHDMIInVRRStatus + // @text onHdmiInVRRStatus // @param port: port 0 or 1 et al // @param vrrType: VRR type - virtual void OnHDMIInVRRStatus(const HDMIInPort port, const HDMIInVRRType vrrType) {}; + virtual void OnHdmiInVRRStatus(const HdmiInPort port, const HdmiInVRRType vrrType) {}; }; - virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; - virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerHDMIIn::INotification* notification /* @in */) = 0; + virtual Core::hresult Register(Exchange::IDeviceSettingsManagerHdmiIn::INotification* notification /* @in */) = 0; + virtual Core::hresult Unregister(Exchange::IDeviceSettingsManagerHdmiIn::INotification* notification /* @in */) = 0; /** Get Number of HDMI Inputs in the platform. */ - // @text getHDMIInNumbefOfInputs + // @text getHdmiInNumbefOfInputs // @brief Get Number of HDMI Inputs in the platform // @param count: number of inputs - virtual Core::hresult GetHDMIInNumbefOfInputs(int32_t &count /* @out */) = 0; + virtual Core::hresult GetHdmiInNumbefOfInputs(int32_t &count /* @out */) = 0; - /** Get HDMIIn Status. */ - // @text getHDMIInStatus - // @brief Get HDMIIn Status + /** Get HdmiIn Status. */ + // @text getHdmiInStatus + // @brief Get HdmiIn Status // @param hdmiStatus: HDMI Status - virtual Core::hresult GetHDMIInStatus(HDMIInStatus &hdmiStatus /* @out */, IHDMIInPortConnectionStatusIterator*& portConnectionStatus /* @out */) = 0; + virtual Core::hresult GetHdmiInStatus(HdmiInStatus &hdmiStatus /* @out */, IHdmiInPortConnectionStatusIterator*& portConnectionStatus /* @out */) = 0; - /** Select HDMIIn Port. */ - // @text selectHDMIInPort - // @brief Get HDMIIn Status + /** Select HdmiIn Port. */ + // @text selectHdmiInPort + // @brief Get HdmiIn Status // @param port: Port to select // @param requestAudioMix: Should audio be mixed on this port // @param topMostPlane: Should this be on top for display // @param videoPlaneType: Primary or secondary - virtual Core::hresult SelectHDMIInPort(const HDMIInPort port /* @in */, const bool requestAudioMix /* @in */, const bool topMostPlane /* @in */, const HDMIVideoPlaneType videoPlaneType /* @in */) = 0; + virtual Core::hresult SelectHdmiInPort(const HdmiInPort port /* @in */, const bool requestAudioMix /* @in */, const bool topMostPlane /* @in */, const HDMIVideoPlaneType videoPlaneType /* @in */) = 0; - /** Scale HDMIIn Video. */ - // @text scaleHDMIInVideo - // @brief Scale HDMIIn Video + /** Scale HdmiIn Video. */ + // @text scaleHdmiInVideo + // @brief Scale HdmiIn Video // @param videoPosition: co-ordinates to scale - virtual Core::hresult ScaleHDMIInVideo(const HDMIInVideoRectangle videoPosition /* @in */) = 0; + virtual Core::hresult ScaleHdmiInVideo(const HdmiInVideoRectangle videoPosition /* @in */) = 0; - /** Select HDMIIn Zoom mode. */ + /** Select HdmiIn Zoom mode. */ // @text selectHDMIZoomMode - // @brief Select HDMIIn Zoom mode + // @brief Select HdmiIn Zoom mode // @param zoomMode: zoom mode - virtual Core::hresult SelectHDMIZoomMode(const HDMIInVideoZoom zoomMode /* @in */) = 0; + virtual Core::hresult SelectHDMIZoomMode(const HdmiInVideoZoom zoomMode /* @in */) = 0; /** Get Supported Game feature list. */ // @text getSupportedGameFeaturesList // @brief Get Supported Game feature list // @param gameFeatureList: game feature list - virtual Core::hresult GetSupportedGameFeaturesList(IHDMIInGameFeatureListIterator *& gameFeatureList /* @out */) = 0; + virtual Core::hresult GetSupportedGameFeaturesList(IHdmiInGameFeatureListIterator *& gameFeatureList /* @out */) = 0; /** Get AV latency. */ - // @text getHDMIInAVLatency + // @text getHdmiInAVLatency // @brief Get AV latency // @param videoLatency: video latency // @param audioLatency: audio latency - virtual Core::hresult GetHDMIInAVLatency(uint32_t &videoLatency /* @out */, uint32_t &audioLatency /* @out*/) = 0; + virtual Core::hresult GetHdmiInAVLatency(uint32_t &videoLatency /* @out */, uint32_t &audioLatency /* @out*/) = 0; /** Get ALLM Status. */ - // @text getHDMIInAllmStatus + // @text getHdmiInAllmStatus // @brief Get ALLM Status // @param port: Port number // @param allmStatus: ALLM status - virtual Core::hresult GetHDMIInAllmStatus(const HDMIInPort port /* @in */, bool &allmStatus /* @out*/) = 0; + virtual Core::hresult GetHdmiInAllmStatus(const HdmiInPort port /* @in */, bool &allmStatus /* @out*/) = 0; /** Get EDID to ALLM Supported or not. */ - // @text getHDMIInEdid2AllmSupport + // @text getHdmiInEdid2AllmSupport // @brief Get EDID to ALLM Supported or not // @param port: Port number // @param allmSupport: ALLM supported (true) or not (false) - virtual Core::hresult GetHDMIInEdid2AllmSupport(const HDMIInPort port /* @in */, bool &allmSupport /* @out*/) = 0; + virtual Core::hresult GetHdmiInEdid2AllmSupport(const HdmiInPort port /* @in */, bool &allmSupport /* @out*/) = 0; /** Set EDID to ALLM Supported or not. */ - // @text setHDMIInEdid2AllmSupport + // @text setHdmiInEdid2AllmSupport // @brief Get EDID to ALLM Supported or not // @param port: Port number // @param allmSupport: ALLM supported (true) or not (false) - virtual Core::hresult SetHDMIInEdid2AllmSupport(const HDMIInPort port /* @in */, bool allmSupport /* @in*/) = 0; + virtual Core::hresult SetHdmiInEdid2AllmSupport(const HdmiInPort port /* @in */, bool allmSupport /* @in*/) = 0; /** Get EDID bytes. */ // @text getEdidBytes @@ -1578,7 +1586,7 @@ namespace Exchange { // @param port: Port number // @param edidBytesLength: number of bytes in the edidBytes array // @param edidBytes: EDID information - virtual Core::hresult GetEdidBytes(const HDMIInPort port /* @in */, const uint16_t edidBytesLength /* @in */, uint8_t edidBytes[] /* @out @length:edidBytesLength @maxlength:edidBytesLength */) = 0; + virtual Core::hresult GetEdidBytes(const HdmiInPort port /* @in */, const uint16_t edidBytesLength /* @in */, uint8_t edidBytes[] /* @out @length:edidBytesLength @maxlength:edidBytesLength */) = 0; /** Get HDMI SPD Information. */ // @text getEdidBytes @@ -1586,21 +1594,21 @@ namespace Exchange { // @param port: Port number // @param spdBytesLength: number of bytes in the spdBytes array // @param spdBytes: SPD information - virtual Core::hresult GetHDMISPDInformation(const HDMIInPort port /* @in */, const uint16_t spdBytesLength /* @in */, uint8_t spdBytes[] /* @out @length:spdBytesLength @maxlength:spdBytesLength */) = 0; + virtual Core::hresult GetHDMISPDInformation(const HdmiInPort port /* @in */, const uint16_t spdBytesLength /* @in */, uint8_t spdBytes[] /* @out @length:spdBytesLength @maxlength:spdBytesLength */) = 0; /** Get HDMI Port EDID version. */ // @text getHDMIEdidVersion // @brief Get HDMI Port EDID version. // @param port: Port number // @param edidVersion: EDID version - virtual Core::hresult GetHDMIEdidVersion(const HDMIInPort port /* @in */, HDMIInEdidVersion &edidVersion /* @out */) = 0; + virtual Core::hresult GetHDMIEdidVersion(const HdmiInPort port /* @in */, HdmiInEdidVersion &edidVersion /* @out */) = 0; /** Set HDMI Port EDID version. */ // @text setHDMIEdidVersion // @brief Set HDMI Port EDID version. // @param port: Port number // @param edidVersion: EDID version - virtual Core::hresult SetHDMIEdidVersion(const HDMIInPort port /* @in */, const HDMIInEdidVersion edidVersion /* @in */) = 0; + virtual Core::hresult SetHDMIEdidVersion(const HdmiInPort port /* @in */, const HdmiInEdidVersion edidVersion /* @in */) = 0; /** Get HDMI Video mode. */ // @text getHDMIVideoMode @@ -1613,28 +1621,28 @@ namespace Exchange { // @brief Get HDMI Supported Version // @param port: Port number // @param capabilityVersion: supported capability version - virtual Core::hresult GetHDMIVersion(const HDMIInPort port /* @in */, HDMIInCapabilityVersion &capabilityVersion /* @out */) = 0; + virtual Core::hresult GetHDMIVersion(const HdmiInPort port /* @in */, HdmiInCapabilityVersion &capabilityVersion /* @out */) = 0; /** Set HDMI VRR Support. */ // @text setVRRSupport // @brief Set HDMI VRR Support. // @param port: Port number // @param vrrSupport: enable (true) or disable (false) - virtual Core::hresult SetVRRSupport(const HDMIInPort port /* @in */, const bool vrrSupport /* @in */) = 0; + virtual Core::hresult SetVRRSupport(const HdmiInPort port /* @in */, const bool vrrSupport /* @in */) = 0; /** Get HDMI VRR Support. */ // @text getVRRSupport // @brief Get HDMI VRR Support. // @param port: Port number // @param vrrSupport: enabled (true) or disable (false) - virtual Core::hresult GetVRRSupport(const HDMIInPort port /* @in */, bool &vrrSupport /* @out */) = 0; + virtual Core::hresult GetVRRSupport(const HdmiInPort port /* @in */, bool &vrrSupport /* @out */) = 0; /** Get HDMI VRR Status. */ // @text getVRRStatus // @brief Get HDMI VRR Status. // @param port: Port number // @param vrrStatus: VRR Status - virtual Core::hresult GetVRRStatus(const HDMIInPort port /* @in */, HDMIInVRRStatus &vrrStatus /* @out */) = 0; + virtual Core::hresult GetVRRStatus(const HdmiInPort port /* @in */, HdmiInVRRStatus &vrrStatus /* @out */) = 0; }; struct EXTERNAL IDeviceSettingsManagerHost : virtual public Core::IUnknown { @@ -1704,6 +1712,13 @@ namespace Exchange { // @param ms12Config: MS12 config type virtual Core::hresult GetMS12ConfigType(string &ms12Config /* @out */) = 0; + /** Set Reboot Config. */ + // @text setRebootConfig + // @brief Set Reboot Config + // @param rebootReasonCustom: Custom reboot reason + // @param powerState: Power State + virtual Core::hresult SetRebootConfig(string &rebootReasonCustom /* @in */, uint8_t powerState /* @in */) = 0; + }; struct EXTERNAL IDeviceSettingsManagerVideoDevice : virtual public Core::IUnknown { @@ -2317,6 +2332,28 @@ namespace Exchange { // @param persist: persist value (true) or not (false) virtual Core::hresult SetPreferredColorDepth(const int32_t handle /* @in */, const DisplayColorDepth colorDepth /* @in */, const bool persist /* @in */) = 0; + // vdixit - the APIs are not similar (no handle) in convention to the other APIs (with handle) + // vdixit - they may need to be re-looked + /** Set AV Port Power State. */ + // @text setAVPortState + // @brief Set AV Port Power State + // @param powerState: power state + virtual Core::hresult SetAVPortState(const uint8_t powerState /* @in */) = 0; + + /** Set Standby Video State. */ + // @text setStandbyVideoState + // @brief Set Standby Video State + // @param port: Port to enable + // @param enable: enable (true) or disable (false) + virtual Core::hresult SetStandbyVideoState(string &port /* @in */, const bool enable /* @in */) = 0; + + /** Get Standby Video State. */ + // @text getStandbyVideoState + // @brief Get Standby Video State + // @param port: Port name + // @param isEnabled: enable (true) or disable (false) + virtual Core::hresult GetStandbyVideoState(string &port /* @in */, bool &isEnabled /* @out */) = 0; + }; } // namespace Exchange From 4d034ad54b0307730d3ff9498bef2cf05f380618 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Wed, 3 Sep 2025 13:04:23 +0530 Subject: [PATCH 35/36] Removed OnDisplayHDCPStatus() from displayNotification --- .../IDeviceSettingsManager.h | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index a63272c6..be1ea95b 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -1052,11 +1052,6 @@ namespace Exchange { // @text onDisplayRxSense // @param displayEvent: DS_DISPLAY_RXSENSE_ON or DS_DISPLAY_RXSENSE_OFF virtual void OnDisplayRxSense(const DisplayEvent displayEvent) {}; - - // @brief Display HDCP Status - // @text OnDisplayHDCPStatus - virtual void OnDisplayHDCPStatus() {}; - }; virtual Core::hresult Register(Exchange::IDeviceSettingsManagerDisplay::INotification* notification /* @in */) = 0; @@ -1266,10 +1261,9 @@ namespace Exchange { /** Set Front Panel LED Status. */ // @text setFPDLEDStatus // @brief Set Front Panel LED Status - // @param fpdMode: FPD Mode + // @param fpdIndicator: FPD Indicator + // @param fpdState: FPD State virtual Core::hresult SetFPDLEDStatus(const FPDIndicator fpdIndicator /* @in */, const FPDState fpdState /* @in */ ) = 0; - - }; struct EXTERNAL IDeviceSettingsManagerHdmiIn : virtual public Core::IUnknown { @@ -1717,7 +1711,7 @@ namespace Exchange { // @brief Set Reboot Config // @param rebootReasonCustom: Custom reboot reason // @param powerState: Power State - virtual Core::hresult SetRebootConfig(string &rebootReasonCustom /* @in */, uint8_t powerState /* @in */) = 0; + virtual Core::hresult SetRebootConfig(string rebootReasonCustom /* @in */, uint8_t powerState /* @in */) = 0; }; @@ -2345,14 +2339,14 @@ namespace Exchange { // @brief Set Standby Video State // @param port: Port to enable // @param enable: enable (true) or disable (false) - virtual Core::hresult SetStandbyVideoState(string &port /* @in */, const bool enable /* @in */) = 0; + virtual Core::hresult SetStandbyVideoState(string port /* @in */, const bool enable /* @in */) = 0; /** Get Standby Video State. */ // @text getStandbyVideoState // @brief Get Standby Video State // @param port: Port name // @param isEnabled: enable (true) or disable (false) - virtual Core::hresult GetStandbyVideoState(string &port /* @in */, bool &isEnabled /* @out */) = 0; + virtual Core::hresult GetStandbyVideoState(string port /* @in */, bool &isEnabled /* @out */) = 0; }; From 4294deded4bb890b0d72d5fc3f6b9aafd2cbbc66 Mon Sep 17 00:00:00 2001 From: Dosakayala Nagalakshmi Date: Tue, 9 Sep 2025 19:02:31 +0530 Subject: [PATCH 36/36] fixed hdmi text issue --- apis/DeviceSettingsManager/IDeviceSettingsManager.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apis/DeviceSettingsManager/IDeviceSettingsManager.h b/apis/DeviceSettingsManager/IDeviceSettingsManager.h index be1ea95b..025589a7 100755 --- a/apis/DeviceSettingsManager/IDeviceSettingsManager.h +++ b/apis/DeviceSettingsManager/IDeviceSettingsManager.h @@ -1267,7 +1267,7 @@ namespace Exchange { }; struct EXTERNAL IDeviceSettingsManagerHdmiIn : virtual public Core::IUnknown { - enum { ID = ID_DEVICESETTINGS_MANAGER_HdmiIn }; + enum { ID = ID_DEVICESETTINGS_MANAGER_HDMIIN }; enum HdmiInPort : int8_t { DS_HDMI_IN_PORT_NONE = -1, @@ -1291,7 +1291,7 @@ namespace Exchange { struct HdmiPortConnectionStatus { bool isPortConnected; }; - using IHdmiInPortConnectionStatusIterator = RPC::IIteratorType; + using IHdmiInPortConnectionStatusIterator = RPC::IIteratorType; struct HdmiInStatus { bool isPresented; @@ -1398,7 +1398,7 @@ namespace Exchange { DS_HDMIIN_RESOLUTION_2160P60 = 0x100000 }; - enum HDMIVideoAspectRatio : uint8_t { + enum HdmiVideoAspectRatio : uint8_t { DS_HDMIIN_ASPECT_RATIO_4X3 = 0 /* @text Video Aspect Ratio 4X3 */, DS_HDMIIN_ASPECT_RATIO_16X9 = 1 /* @text Video Aspect Ratio 16x9 */, DS_HDMIIN_ASPECT_RATIO_MAX = 2 /* @text Video Aspect Ratio MAX */