{
// TODO: think about using unordered_map
__renderViewList.push_back(__renderEngine->makeRenderView(window));
- __displayDeviceHWCWindowList.push_back(__displayDeviceHWC->makeHWCWindow(window));
+ __displayDeviceHWCWindowList.push_back(__displayDeviceHWC->makeHWCWindow());
}
void DSDisplayAreaPrivate::__onWindowDestroy(std::shared_ptr<DSWindow> window)
return true;
}
-std::shared_ptr<IDSDisplayDeviceHWCWindow> DSDisplayDeviceHWCTDMImpl::makeHWCWindow(std::shared_ptr<DSWindow> window)
+std::shared_ptr<IDSDisplayDeviceHWCWindow> DSDisplayDeviceHWCTDMImpl::makeHWCWindow()
{
std::shared_ptr<IDSDisplayDeviceHWCWindow> deviceHWCWindow;
tdm_error terror;
return nullptr;
}
- deviceHWCWindow = std::make_shared<DSDisplayDeviceHWCWindowTDMImpl>(window, twindow);
+ deviceHWCWindow = std::make_shared<DSDisplayDeviceHWCWindowTDMImpl>(twindow);
if (!deviceHWCWindow) {
DSLOG_ERR("HWCTDM", "new DSDisplayDeviceHWCWindowTDMImpl fails.");
return nullptr;
std::shared_ptr<IDSBufferQueue> getTargetBufferQueue() override;
bool setTargetBuffer(std::shared_ptr<IDSBuffer> buffer) override;
- std::shared_ptr<IDSDisplayDeviceHWCWindow> makeHWCWindow(std::shared_ptr<DSWindow> window) override;
+ std::shared_ptr<IDSDisplayDeviceHWCWindow> makeHWCWindow() override;
bool addVisibleHWCWindow(std::shared_ptr<IDSDisplayDeviceHWCWindow> deviceHWCWindow) override;
bool removeVisibleHWCWindow(std::shared_ptr<IDSDisplayDeviceHWCWindow> deviceHWCWindow) override;
void clearVisibleHWCWindows() override;
namespace display_server
{
-DSDisplayDeviceHWCWindowTDMImpl::DSDisplayDeviceHWCWindowTDMImpl(std::shared_ptr<DSWindow> window, tdm_hwc_window *twindow)
- : __window(window),
- __twindow(twindow)
+DSDisplayDeviceHWCWindowTDMImpl::DSDisplayDeviceHWCWindowTDMImpl(tdm_hwc_window *twindow)
+ : __twindow(twindow)
{}
+
DSDisplayDeviceHWCWindowTDMImpl::~DSDisplayDeviceHWCWindowTDMImpl()
{
tdm_hwc_window_destroy(__twindow);
class DSDisplayDeviceHWCWindowTDMImpl : public IDSDisplayDeviceHWCWindow
{
public:
- DSDisplayDeviceHWCWindowTDMImpl(std::shared_ptr<DSWindow> window, tdm_hwc_window *twindow);
+ DSDisplayDeviceHWCWindowTDMImpl(tdm_hwc_window *twindow);
~DSDisplayDeviceHWCWindowTDMImpl();
tdm_hwc_window *getNativeHWCWindow();
virtual std::shared_ptr<IDSBufferQueue> getTargetBufferQueue() = 0;
virtual bool setTargetBuffer(std::shared_ptr<IDSBuffer> buffer) = 0;
- virtual std::shared_ptr<IDSDisplayDeviceHWCWindow> makeHWCWindow(std::shared_ptr<DSWindow> window) = 0;
+ virtual std::shared_ptr<IDSDisplayDeviceHWCWindow> makeHWCWindow() = 0;
virtual bool addVisibleHWCWindow(std::shared_ptr<IDSDisplayDeviceHWCWindow> deviceHWCWindow) = 0;
virtual bool removeVisibleHWCWindow(std::shared_ptr<IDSDisplayDeviceHWCWindow> deviceHWCWindow) = 0;
virtual void clearVisibleHWCWindows() = 0;
deviceHWC = output->getHWC();
EXPECT_TRUE(deviceHWC != nullptr);
- deviceHWCWindow = deviceHWC->makeHWCWindow(std::make_shared<DSWindow>());
+ deviceHWCWindow = deviceHWC->makeHWCWindow();
EXPECT_TRUE(deviceHWC != nullptr);
}
}
auto bufferQueue = deviceHWC->getTargetBufferQueue();
EXPECT_TRUE(deviceHWC != nullptr);
- deviceHWCWindow = deviceHWC->makeHWCWindow(std::make_shared<DSWindow>());
+ deviceHWCWindow = deviceHWC->makeHWCWindow();
EXPECT_TRUE(deviceHWC != nullptr);
EXPECT_TRUE(deviceHWC->addVisibleHWCWindow(deviceHWCWindow));