DSBuffer: add getSize from Buffer 12/241712/1
authorSooChan Lim <sc1.lim@samsung.com>
Sun, 2 Aug 2020 11:52:01 +0000 (20:52 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Thu, 20 Aug 2020 10:05:11 +0000 (19:05 +0900)
Change-Id: Icad8dc418720b4e8455f67028a49a7ddfb500105

src/DSBuffer/DSBufferTBMImpl.cpp
src/DSBuffer/DSBufferTBMImpl.h
src/DSBuffer/IDSBuffer.h
tests/DSBufferTBMImpl-test.cpp

index 2ccf911..f3f97cb 100644 (file)
@@ -73,6 +73,15 @@ void DSBufferTBMImpl::unref()
        }
 }
 
+std::shared_ptr<stSize> DSBufferTBMImpl::getSize()
+{
+       std::shared_ptr<stSize> bufferSize = std::make_shared<stSize>();
+       bufferSize->w = __width;
+       bufferSize->h = __height;
+
+       return bufferSize;
+}
+
 tbm_format DSBufferTBMImpl::getTBMFormat(const IDSBuffer::Format &format)
 {
        tbm_format tformat = 0; // what is the error format?
index 3519407..2be30fe 100644 (file)
@@ -20,6 +20,7 @@ public:
        void  setClientDestroyed() override;
        void  ref() override;
        void  unref() override;
+       std::shared_ptr<stSize> getSize() override;
 
        static tbm_format        getTBMFormat(const IDSBuffer::Format &format);
        static IDSBuffer::Format getBufferFormat(const tbm_format &tformat);
index 9b3f726..27075c7 100644 (file)
@@ -1,6 +1,9 @@
 #ifndef __I_DS_BUFFER_H_
 #define __I_DS_BUFFER_H_
 
+#include "DSCore.h"
+#include "DSStruct.h"
+
 namespace display_server
 {
 
@@ -18,6 +21,7 @@ public:
        virtual void  setClientDestroyed() = 0;
        virtual void  ref() = 0;
        virtual void  unref() = 0;
+       virtual std::shared_ptr<stSize> getSize() = 0;
 };
 
 }
index 6a96113..4e4a357 100644 (file)
@@ -9,15 +9,23 @@ class DSBufferTBMImplTest : public ::testing::Test
 {
 public:
        void SetUp(void) override
-       {}
+       {
+               setenv("XDG_RUNTIME_DIR", "/run", 1);
+       }
        void TearDown(void) override
-       {}
+       {
+               unsetenv("XDG_RUNTIME_DIR");
+       }
 };
 
 TEST_F(DSBufferTBMImplTest, CreateBuffer)
 {
-       std::unique_ptr<IDSBuffer> buffer = std::make_unique<DSBufferTBMImpl>(100, 100, IDSBuffer::FORMAT_ARGB8888);
+       std::unique_ptr<IDSBuffer> buffer = std::make_unique<DSBufferTBMImpl>(100, 200, IDSBuffer::FORMAT_ARGB8888);
        EXPECT_TRUE(buffer.get() != nullptr);
+
+       std::shared_ptr<stSize> size = buffer->getSize();
+       EXPECT_TRUE(size->w == 100);
+       EXPECT_TRUE(size->h == 200);
 }
 
 TEST_F(DSBufferTBMImplTest, CreateBufferQueue)