Skip to content

Commit cae99bf

Browse files
modifications
1 parent 8089d93 commit cae99bf

File tree

2 files changed

+21
-126
lines changed

2 files changed

+21
-126
lines changed

AVInput/AVInput.cpp

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -113,10 +113,9 @@ AVInput* AVInput::_instance = nullptr;
113113

114114
AVInput::AVInput()
115115
: PluginHost::JSONRPC()
116-
, _hostListener(device::Host::getInstance())
117-
, _hdmiEventNotification(*this)
118-
, _compositeinEventNotification(*this)
119-
, _registeredHostEventHandlers(false)
116+
, _registeredDsEventHandlers(false)
117+
, m_HdmiInEventsNotification(this)
118+
, m_CompositeInEventsNotification(this)
120119
{
121120
RegisterAll();
122121
}
@@ -137,8 +136,10 @@ const string AVInput::Initialize(PluginHost::IShell * /* service */)
137136
void AVInput::Deinitialize(PluginHost::IShell * /* service */)
138137
{
139138

139+
device::Host::getInstance().UnRegister(m_HdmiInEventsNotification);
140+
device::Host::getInstance().UnRegister(m_CompositeInEventsNotification);
141+
_registeredDsEventHandlers = false;
140142
DeInitializeDeviceManager();
141-
_registeredHostEventHandlers = false;
142143

143144
AVInput::_instance = nullptr;
144145
}
@@ -150,7 +151,7 @@ string AVInput::Information() const
150151

151152
void AVInput::InitializeDeviceManager()
152153
{
153-
registerHostEventHandlers();
154+
registerDsEventHandlers();
154155
}
155156

156157
void AVInput::DeInitializeDeviceManager()
@@ -1723,14 +1724,14 @@ int AVInput::getEdidVersion(int iPort)
17231724
return edidVersion;
17241725
}
17251726

1726-
void AVInput::registerHostEventHandlers()
1727+
void AVInput::registerDsEventHandlers()
17271728
{
1728-
LOGINFO("registerHostEventHandlers");
1729-
if(!_registeredHostEventHandlers)
1729+
LOGINFO("registerDsEventHandlers");
1730+
if(!_registeredDsEventHandlers)
17301731
{
1731-
_registeredHostEventHandlers = true;
1732-
device::Host::getInstance().Register(_hdmiEventNotification);
1733-
device::Host::getInstance().Register(_compositeinEventNotification);
1732+
_registeredDsEventHandlers = true;
1733+
device::Host::getInstance().Register(m_HdmiInEventsNotification);
1734+
device::Host::getInstance().Register(m_CompositeInEventsNotification);
17341735
}
17351736
}
17361737

AVInput/AVInput.h

Lines changed: 8 additions & 114 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,8 @@
2222
#include "Module.h"
2323
#include "libIBus.h"
2424

25-
#if 1
2625
#include "dsTypes.h"
2726
#include "host.hpp"
28-
#endif
2927

3028
#define DEFAULT_PRIM_VOL_LEVEL 25
3129
#define MAX_PRIM_VOL_LEVEL 100
@@ -34,114 +32,10 @@
3432
namespace WPEFramework {
3533
namespace Plugin {
3634

37-
class AVInput: public PluginHost::IPlugin, public PluginHost::JSONRPC
38-
{
39-
private:
35+
class AVInput: public PluginHost::IPlugin, public PluginHost::JSONRPC,
36+
public device::Host::IHdmiInEvents, public device::Host::ICompositeInEvents{
4037

41-
#if 1 /* HDMIIn Events from libds Library */
42-
43-
class HdmiInEventNotification : public device::Host::IHdmiInEvents {
44-
private:
45-
HdmiInEventNotification(const HdmiInEventNotification&) = delete;
46-
HdmiInEventNotification& operator=(const HdmiInEventNotification&) = delete;
47-
48-
public:
49-
explicit HdmiInEventNotification(AVInput& parent)
50-
: _parent(parent)
51-
{
52-
}
53-
~HdmiInEventNotification() override = default;
54-
55-
public:
56-
void OnHdmiInEventHotPlug(dsHdmiInPort_t port, bool isConnected) override
57-
{
58-
_parent.OnHdmiInEventHotPlug(port,isConnected);
59-
}
60-
61-
void OnHdmiInEventSignalStatus(dsHdmiInPort_t port, dsHdmiInSignalStatus_t signalStatus) override
62-
{
63-
_parent.OnHdmiInEventSignalStatus(port,signalStatus);
64-
}
65-
66-
void OnHdmiInEventStatus(dsHdmiInPort_t activePort, bool isPresented) override
67-
{
68-
_parent.OnHdmiInEventStatus(activePort,isPresented);
69-
}
70-
71-
void OnHdmiInVideoModeUpdate(dsHdmiInPort_t port, const dsVideoPortResolution_t& videoPortResolution) override
72-
{
73-
_parent.OnHdmiInVideoModeUpdate(port,videoPortResolution);
74-
}
75-
76-
void OnHdmiInAllmStatus(dsHdmiInPort_t port, bool allmStatus) override
77-
{
78-
_parent.OnHdmiInAllmStatus(port,allmStatus);
79-
}
80-
81-
void OnHdmiInAVIContentType(dsHdmiInPort_t port, dsAviContentType_t aviContentType) override
82-
{
83-
_parent.OnHdmiInAVIContentType(port, aviContentType);
84-
}
85-
86-
void OnHdmiInVRRStatus(dsHdmiInPort_t port, dsVRRType_t vrrType) override
87-
{
88-
_parent.OnHdmiInVRRStatus(port, vrrType);
89-
}
90-
91-
void OnHdmiInAVLatency(int audioDelay, int videoDelay) override
92-
{
93-
_parent.OnHdmiInAVLatency(audioDelay, videoDelay);
94-
}
95-
96-
BEGIN_INTERFACE_MAP(HdmiInEventNotification)
97-
INTERFACE_ENTRY(device::Host::IHDMIInEvents)
98-
END_INTERFACE_MAP
99-
100-
private:
101-
AVInput& _parent;
102-
};
103-
104-
class CompositeInEventNotification : public device::Host::ICompositeInEvents {
105-
private:
106-
CompositeInEventNotification(const CompositeInEventNotification&) = delete;
107-
CompositeInEventNotification& operator=(const CompositeInEventNotification&) = delete;
108-
109-
public:
110-
explicit CompositeInEventNotification(AVInput& parent)
111-
: _parent(parent)
112-
{
113-
}
114-
~CompositeInEventNotification() override = default;
115-
116-
public:
117-
void OnCompositeInHotPlug(dsCompositeInPort_t port, bool isConnected) override
118-
{
119-
_parent.OnCompositeInHotPlug(port,isConnected);
120-
}
121-
122-
void OnCompositeInSignalStatus(dsCompositeInPort_t port, dsCompInSignalStatus_t signalStatus) override
123-
{
124-
_parent.OnCompositeInSignalStatus(port,signalStatus);
125-
}
126-
127-
void OnCompositeInStatus(dsCompositeInPort_t activePort, bool isPresented) override
128-
{
129-
_parent.OnCompositeInStatus(activePort,isPresented);
130-
}
131-
132-
void OnCompositeInVideoModeUpdate(dsCompositeInPort_t activePort, dsVideoPortResolution_t videoResolution) override
133-
{
134-
_parent.OnCompositeInVideoModeUpdate(activePort,videoResolution);
135-
}
136-
137-
BEGIN_INTERFACE_MAP(CompositeInEventNotification)
138-
INTERFACE_ENTRY(device::Host::ICompositeInEvents)
139-
END_INTERFACE_MAP
140-
141-
private:
142-
AVInput& _parent;
143-
};
144-
#endif
38+
private:
14539

14640
AVInput(const AVInput &) = delete;
14741
AVInput &operator=(const AVInput &) = delete;
@@ -236,14 +130,14 @@ class AVInput: public PluginHost::IPlugin, public PluginHost::JSONRPC
236130
static void dsAviContentTypeEventHandler(const char *owner, IARM_EventId_t eventId, void *data, size_t len);
237131

238132
private:
239-
device::Host &_hostListener;
240-
HdmiInEventNotification _hdmiEventNotification;
241-
CompositeInEventNotification _compositeinEventNotification;
242133

243-
bool _registeredHostEventHandlers;
134+
device::Host::IHdmiInEvents *m_HdmiInEventsNotification;
135+
device::Host::ICompositeInEvents *m_CompositeInEventsNotification;
136+
137+
bool _registeredDsEventHandlers;
244138

245139
public:
246-
void registerHostEventHandlers();
140+
void registerDsEventHandlers();
247141

248142
/* HdmiInEventNotification*/
249143

0 commit comments

Comments
 (0)