DSWaylandServer: imply Pimpl structure to DSWaylandTizenInputDeviceManager 52/241552/1
authorjeon <jhyuni.kang@samsung.com>
Mon, 29 Jun 2020 05:02:03 +0000 (14:02 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Thu, 20 Aug 2020 09:45:09 +0000 (18:45 +0900)
Change-Id: I0589c90c9729af4fb9a0f97fc2cf59c61c144554

src/DSWaylandServer/DSWaylandTizenInputDevice.cpp
src/DSWaylandServer/DSWaylandTizenInputDevice.h
src/DSWaylandServer/DSWaylandTizenInputDeviceManager.cpp
src/DSWaylandServer/DSWaylandTizenInputDeviceManager.h
src/DSWaylandServer/DSWaylandTizenInputDeviceManagerPrivate.h
src/DSWaylandServer/DSWaylandTizenInputDevicePrivate.h
tests/DSWaylandTizenInputDevice-test.cpp [new file with mode: 0644]
tests/DSWaylandTizenInputDeviceManager-test.cpp [new file with mode: 0644]
tests/meson.build

index 840a346..90c8e0f 100644 (file)
@@ -3,7 +3,8 @@
 
 namespace display_server
 {
-DSWaylandTizenInputDevicePrivate::DSWaylandTizenInputDevicePrivate()
+DSWaylandTizenInputDevicePrivate::DSWaylandTizenInputDevicePrivate(DSWaylandTizenInputDevice *p_ptr)
+       : DSObjectPrivate(p_ptr)
 {
 }
 DSWaylandTizenInputDevicePrivate::~DSWaylandTizenInputDevicePrivate()
@@ -20,6 +21,7 @@ void DSWaylandTizenInputDevicePrivate::tizen_input_device_release(Resource *reso
 
 
 DSWaylandTizenInputDevice::DSWaylandTizenInputDevice()
+       : DSObject(std::make_unique<DSWaylandTizenInputDevicePrivate>(this))
 {
 }
 
index a5f2c53..2f0060d 100644 (file)
@@ -1,17 +1,29 @@
 #ifndef _DS_WAYLAND_TIZEN_INPUT_DEVICE_H_
 #define _DS_WAYLAND_TIZEN_INPUT_DEVICE_H_
 
+#include <DSObject.h>
+
 namespace display_server
 {
 
-class DSWaylandTizenInputDevice
+class DSWaylandTizenInputDevicePrivate;
+
+class DSWaylandTizenInputDevice : public DSObject
 {
 public:
        DSWaylandTizenInputDevice();
        virtual ~DSWaylandTizenInputDevice();
 
 private:
-
+       inline DSWaylandTizenInputDevicePrivate *__d_func()
+       {
+               return reinterpret_cast<DSWaylandTizenInputDevicePrivate *>(_d_ptr.get());
+       }
+       inline const DSWaylandTizenInputDevicePrivate *__d_func() const
+       {
+               return reinterpret_cast<DSWaylandTizenInputDevicePrivate *>(_d_ptr.get());
+       }
+       friend class DSWaylandTizenInputDevicePrivate;
 };
 
 }
index b748bf1..ec41cc6 100644 (file)
@@ -4,9 +4,12 @@
 
 namespace display_server
 {
-DSWaylandTizenInputDeviceManagerPrivate::DSWaylandTizenInputDeviceManagerPrivate()
+
+DSWaylandTizenInputDeviceManagerPrivate::DSWaylandTizenInputDeviceManagerPrivate(DSWaylandTizenInputDeviceManager *p_ptr)
+       : DSObjectPrivate(p_ptr)
 {
 }
+
 DSWaylandTizenInputDeviceManagerPrivate::~DSWaylandTizenInputDeviceManagerPrivate()
 {
 }
@@ -55,6 +58,7 @@ void DSWaylandTizenInputDeviceManagerPrivate::tizen_input_device_manager_generat
 
 
 DSWaylandTizenInputDeviceManager::DSWaylandTizenInputDeviceManager()
+       : DSObject(std::make_unique<DSWaylandTizenInputDeviceManagerPrivate>(this))
 {
 }
 
index 8c2f3f6..36ce7e5 100644 (file)
@@ -1,17 +1,29 @@
 #ifndef _DS_WAYLAND_TIZEN_INPUT_DEVICE_MANAGER_H_
 #define _DS_WAYLAND_TIZEN_INPUT_DEVICE_MANAGER_H_
 
+#include <DSObject.h>
+
 namespace display_server
 {
 
-class DSWaylandTizenInputDeviceManager
+class DSWaylandTizenInputDeviceManagerPrivate;
+
+class DSWaylandTizenInputDeviceManager : public DSObject
 {
 public:
        DSWaylandTizenInputDeviceManager();
        virtual ~DSWaylandTizenInputDeviceManager();
 
 private:
-
+       inline DSWaylandTizenInputDeviceManagerPrivate *__d_func()
+       {
+               return reinterpret_cast<DSWaylandTizenInputDeviceManagerPrivate *>(_d_ptr.get());
+       }
+       inline const DSWaylandTizenInputDeviceManagerPrivate *__d_func() const
+       {
+               return reinterpret_cast<DSWaylandTizenInputDeviceManagerPrivate *>(_d_ptr.get());
+       }
+       friend class DSWaylandTizenInputDeviceManagerPrivate;
 };
 
 }
index 0187d10..a3cb000 100644 (file)
@@ -2,14 +2,16 @@
 #define _DS_WAYLAND_TIZEN_INPUT_DEVICE_MANAGER_PRIVATE_H_
 
 #include "dswayland-server-tizen-extension.h"
+#include "DSWaylandTizenInputDeviceManager.h"
 
 namespace display_server
 {
 
-class DSWaylandTizenInputDeviceManagerPrivate : public DSWaylandServer::tizen_input_device_manager
+class DSWaylandTizenInputDeviceManagerPrivate : public DSObjectPrivate, public DSWaylandServer::tizen_input_device_manager
 {
 public:
-       DSWaylandTizenInputDeviceManagerPrivate();
+       DSWaylandTizenInputDeviceManagerPrivate() = delete;
+       DSWaylandTizenInputDeviceManagerPrivate(DSWaylandTizenInputDeviceManager *p_ptr);
        ~DSWaylandTizenInputDeviceManagerPrivate() override;
 
 protected:
index ef06efe..eb1efd2 100644 (file)
@@ -2,14 +2,16 @@
 #define _DS_WAYLAND_TIZEN_INPUT_DEVICE_PRIVATE_H_
 
 #include "dswayland-server-tizen-extension.h"
+#include "DSWaylandTizenInputDevice.h"
 
 namespace display_server
 {
 
-class DSWaylandTizenInputDevicePrivate : public DSWaylandServer::tizen_input_device
+class DSWaylandTizenInputDevicePrivate : public DSObjectPrivate, public DSWaylandServer::tizen_input_device
 {
 public:
-       DSWaylandTizenInputDevicePrivate();
+       DSWaylandTizenInputDevicePrivate() = delete;
+       DSWaylandTizenInputDevicePrivate(DSWaylandTizenInputDevice *p_ptr);
        ~DSWaylandTizenInputDevicePrivate() override;
 
 protected:
diff --git a/tests/DSWaylandTizenInputDevice-test.cpp b/tests/DSWaylandTizenInputDevice-test.cpp
new file mode 100644 (file)
index 0000000..39a28c4
--- /dev/null
@@ -0,0 +1,21 @@
+#include "libds-tests.h"
+#include "DSWaylandTizenInputDevice.h"
+
+using namespace display_server;
+
+class DSWaylandTizenInputDeviceTest : public ::testing::Test
+{
+public:
+       void SetUp(void) override
+       {}
+       void TearDown(void) override
+       {}
+};
+
+TEST_F(DSWaylandTizenInputDeviceTest, NewDSWaylandTizenInputDevice)
+{
+       DSWaylandTizenInputDevice *inputDevice = new DSWaylandTizenInputDevice;
+       delete inputDevice;
+       EXPECT_TRUE(true);
+}
+
diff --git a/tests/DSWaylandTizenInputDeviceManager-test.cpp b/tests/DSWaylandTizenInputDeviceManager-test.cpp
new file mode 100644 (file)
index 0000000..963bb1b
--- /dev/null
@@ -0,0 +1,21 @@
+#include "libds-tests.h"
+#include "DSWaylandTizenInputDeviceManager.h"
+
+using namespace display_server;
+
+class DSWaylandTizenInputDeviceManagerTest : public ::testing::Test
+{
+public:
+       void SetUp(void) override
+       {}
+       void TearDown(void) override
+       {}
+};
+
+TEST_F(DSWaylandTizenInputDeviceManagerTest, NewDSWaylandTizenInputDeviceManager)
+{
+       DSWaylandTizenInputDeviceManager *inputDeviceManager = new DSWaylandTizenInputDeviceManager;
+       delete inputDeviceManager;
+       EXPECT_TRUE(true);
+}
+
index 9f9fc8c..06ffc85 100644 (file)
@@ -15,6 +15,8 @@ libds_tests_srcs = [
        'DSDebugLog-test.cpp',
        'DSDisplayDeviceTDMImpl-test.cpp',
        'DSSignal-test.cpp',
+       'DSWaylandTizenInputDeviceManager-test.cpp',
+       'DSWaylandTizenInputDevice-test.cpp',
        ]
 
 gmock_dep = dependency('gmock', method : 'pkg-config')