Skip to content

Commit 5ec3368

Browse files
committed
RDKEMW-1061: RDK-E Add COMRPC
Reason for change: Create the interface file for HdmiCecSource Test Procedure: Risks: low Priority: P1 Signed-off-by:Hayden Gfeller [email protected]
1 parent e7f700f commit 5ec3368

File tree

3 files changed

+20
-18
lines changed

3 files changed

+20
-18
lines changed

HdmiCecSource/HdmiCecSource.cpp

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,6 @@ namespace WPEFramework
118118
const string HdmiCecSource::Initialize(PluginHost::IShell *service)
119119
{
120120
LOGWARN("Initlaizing CEC_2");
121-
uint32_t res = Core::ERROR_GENERAL;
122121

123122
profileType = searchRdkProfile();
124123

@@ -131,11 +130,12 @@ namespace WPEFramework
131130
string msg;
132131
HdmiCecSource::_instance = this;
133132
_hdmiCecSource = _service->Root<Exchange::IHdmiCecSource>(_connectionId, 5000, _T("HdmiCecSourceImplementation"));
133+
_service->Register(&_notification);
134134

135135
if(nullptr != _hdmiCecSource)
136136
{
137137
_hdmiCecSource->Configure(service);
138-
_hdmiCecSource->Register(&_hdmiCecSourceNotification);
138+
_hdmiCecSource->Register(&_notification);
139139
msg = "HdmiCecSource plugin is available";
140140
LOGINFO("HdmiCecSource plugin is available. Successfully activated HdmiCecSource Plugin");
141141
}
@@ -154,11 +154,7 @@ namespace WPEFramework
154154
void HdmiCecSource::Deinitialize(PluginHost::IShell* /* service */)
155155
{
156156
LOGWARN("Deinitialize CEC_2");
157-
if(_powerManagerPlugin)
158-
{
159-
_powerManagerPlugin.Reset();
160-
}
161-
_registeredEventHandlers = false;
157+
162158

163159
profileType = searchRdkProfile();
164160

@@ -168,12 +164,12 @@ namespace WPEFramework
168164
return ;
169165
}
170166

171-
if(true == getEnabled())
167+
if(true == HdmiCecSource::_hdmiCecSource->getEnabled())
172168
{
173169
HdmiCecSource::_hdmiCecSource->SetEnabled(false,false);
174170
}
175171
isDeviceActiveSource = false;
176-
HdmiCecSource::_instance->sendActiveSourceEvent();
172+
HdmiCecSource::_instance->OnActiveSourceStatusUpdated();
177173
HdmiCecSource::_instance = nullptr;
178174

179175
DeinitializeIARM();
@@ -187,11 +183,11 @@ namespace WPEFramework
187183
sendNotify(eventString[HDMICECSOURCE_EVENT_DEVICE_INFO_UPDATED], params);
188184
}
189185

190-
void HdmiCecSource::sendActiveSourceEvent()
186+
void HdmiCecSource::OnActiveSourceStatusUpdated()
191187
{
192188
JsonObject params;
193189
params["status"] = isDeviceActiveSource;
194-
LOGWARN(" sendActiveSourceEvent isDeviceActiveSource: %d ",isDeviceActiveSource);
190+
LOGWARN(" OnActiveSourceStatusUpdated isDeviceActiveSource: %d ",isDeviceActiveSource);
195191
sendNotify(eventString[HDMICECSOURCE_EVENT_ACTIVE_SOURCE_STATUS_UPDATED], params);
196192
}
197193

HdmiCecSource/HdmiCecSource.h

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,14 +96,17 @@ namespace WPEFramework {
9696
void OnDeviceRemoved(const uint8_t logicalAddress) override;
9797
void OnDeviceInfoUpdated(const int logicalAddress) override;
9898
void OnActiveSourceStatusUpdated(const bool isActiveSource) override;
99-
void standbyMessageReceived(const int8_t logicalAddress) override;
99+
void StandbyMessageReceived(const int8_t logicalAddress) override;
100+
void SendKeyReleasedMsgEvent(const int8_t logicalAddress) override;
101+
void SendKeyPressMsgEvent(const int8_t logicalAddress, const int32_t keyCode) override;
100102

101103
};
102104

103105
public:
104106
// We do not allow this plugin to be copied !!
105107
HdmiCecSource(const HdmiCecSource&) = delete;
106108
HdmiCecSource& operator=(const HdmiCecSource&) = delete;
109+
static HdmiCecSource* _instance;
107110

108111
HdmiCecSource();
109112
virtual ~HdmiCecSource();
@@ -126,6 +129,7 @@ namespace WPEFramework {
126129
private:
127130
PluginHost::IShell* _service{};
128131
Exchange::IHdmiCecSource* _hdmiCecSource;
132+
Core::Sink<Notification> _notification;
129133
};
130134
} // namespace Plugin
131135
} // namespace WPEFramework

HdmiCecSource/HdmiCecSourceImplementation.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ namespace WPEFramework
130130
else
131131
isDeviceActiveSource = false;
132132
LOGINFO("ActiveSource isDeviceActiveSource status :%d \n", isDeviceActiveSource);
133-
HdmiCecSourceImplementation::_instance->sendActiveSourceEvent();
133+
HdmiCecSource::_instance->OnActiveSourceStatusUpdated();
134134
HdmiCecSourceImplementation::_instance->addDevice(header.from.toInt());
135135
}
136136
void HdmiCecSourceProcessor::process (const InActiveSource &msg, const Header &header)
@@ -270,7 +270,7 @@ namespace WPEFramework
270270
else
271271
isDeviceActiveSource = false;
272272
LOGINFO("physical_addr : %s isDeviceActiveSource :%d \n",physical_addr.toString().c_str(),isDeviceActiveSource);
273-
HdmiCecSourceImplementation::_instance->sendActiveSourceEvent();
273+
HdmiCecSource::_instance->OnActiveSourceStatusUpdated();
274274
}
275275
void HdmiCecSourceProcessor::process (const RoutingInformation &msg, const Header &header)
276276
{
@@ -281,7 +281,7 @@ namespace WPEFramework
281281
else
282282
isDeviceActiveSource = false;
283283
LOGINFO("physical_addr : %s isDeviceActiveSource :%d \n",physical_addr.toString().c_str(),isDeviceActiveSource);
284-
HdmiCecSourceImplementation::_instance->sendActiveSourceEvent();
284+
HdmiCecSource::_instance->OnActiveSourceStatusUpdated();
285285
}
286286
void HdmiCecSourceProcessor::process (const SetStreamPath &msg, const Header &header)
287287
{
@@ -292,7 +292,7 @@ namespace WPEFramework
292292
else
293293
isDeviceActiveSource = false;
294294
LOGINFO("physical_addr : %s isDeviceActiveSource :%d \n",physical_addr.toString().c_str(),isDeviceActiveSource);
295-
HdmiCecSourceImplementation::_instance->sendActiveSourceEvent();
295+
HdmiCecSource::_instance->OnActiveSourceStatusUpdated();
296296

297297
}
298298
void HdmiCecSourceProcessor::process (const GetMenuLanguage &msg, const Header &header)
@@ -397,10 +397,12 @@ namespace WPEFramework
397397
{
398398
LOGWARN("dtor");
399399
HdmiCecSourceImplementation::_instance = nullptr;
400-
if(_engine.IsValid())
400+
401+
if(_powerManagerPlugin)
401402
{
402-
_engine.Release();
403+
_powerManagerPlugin.Reset();
403404
}
405+
_registeredEventHandlers = false;
404406
}
405407

406408
HdmiCecSourceImplimentation::Configure(PluginHost::IShell* service)

0 commit comments

Comments
 (0)