From 72efac2fef3ea47658fb6de500cb9e4804a5a05a Mon Sep 17 00:00:00 2001 From: "Eunki, Hong" Date: Thu, 8 Jul 2021 19:26:28 +0900 Subject: [PATCH] Add Encoded Image Buffer class relative patch : (EncodedImageBuffer) review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/259415 Change-Id: Iedfb3d7f6e843bae7316a43402acb03710b93f05 Signed-off-by: Eunki, Hong --- dali-csharp-binder/file.list | 1 + dali-csharp-binder/src/encoded-image-buffer.cpp | 174 ++++++++++++++++++++++++ 2 files changed, 175 insertions(+) create mode 100755 dali-csharp-binder/src/encoded-image-buffer.cpp diff --git a/dali-csharp-binder/file.list b/dali-csharp-binder/file.list index 7354bc8..bb36484 100755 --- a/dali-csharp-binder/file.list +++ b/dali-csharp-binder/file.list @@ -12,6 +12,7 @@ dali_csharp_binder_common_src_files = \ ${dali_csharp_binder_dir}/src/constraint.cpp \ ${dali_csharp_binder_dir}/src/keyboard_focus_manager_wrap.cpp \ ${dali_csharp_binder_dir}/src/devel-property-wrap.cpp \ + ${dali_csharp_binder_dir}/src/encoded-image-buffer.cpp \ ${dali_csharp_binder_dir}/src/version-check.cpp \ ${dali_csharp_binder_dir}/src/processor-controller.cpp \ ${dali_csharp_binder_dir}/src/fade.cpp \ diff --git a/dali-csharp-binder/src/encoded-image-buffer.cpp b/dali-csharp-binder/src/encoded-image-buffer.cpp new file mode 100755 index 0000000..82802e6 --- /dev/null +++ b/dali-csharp-binder/src/encoded-image-buffer.cpp @@ -0,0 +1,174 @@ +/* + * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + */ + +#include "common.h" +#include +#include +#include + +#ifdef __cplusplus +extern "C" +{ +#endif + +#define CALL_CATCH_EXCEPTION(ret) \ + catch (std::out_of_range & e) \ + { \ + SWIG_CSharpException(SWIG_IndexError, const_cast(e.what())); \ + return ret; \ + } \ + catch (std::exception & e) \ + { \ + SWIG_CSharpException(SWIG_RuntimeError, const_cast(e.what())); \ + return ret; \ + } \ + catch (Dali::DaliException e) \ + { \ + SWIG_CSharpException(SWIG_UnknownError, e.condition); \ + return ret; \ + } \ + catch (...) \ + { \ + SWIG_CSharpException(SWIG_UnknownError, "unknown error"); \ + return ret; \ + } + +SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_new_EncodedImageBuffer__SWIG_0() +{ + void *jresult; + Dali::EncodedImageBuffer *result = 0; + + { + try + { + result = new Dali::EncodedImageBuffer(); + } + CALL_CATCH_EXCEPTION(0); + } + + jresult = (void *)result; + return jresult; +} + +SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_new_EncodedImageBuffer__SWIG_1(void *nuiEncodedImageBuffer) +{ + void *jresult; + Dali::EncodedImageBuffer *result = (Dali::EncodedImageBuffer *)0; + Dali::EncodedImageBuffer *encodedImageBuffer = (Dali::EncodedImageBuffer *)nuiEncodedImageBuffer;; + + if (!encodedImageBuffer) + { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::EncodedImageBuffer const & type is null", 0); + return 0; + } + { + try + { + result = new Dali::EncodedImageBuffer((Dali::EncodedImageBuffer const &)*encodedImageBuffer); + } + CALL_CATCH_EXCEPTION(0); + } + + jresult = (void *)result; + return jresult; +} + +// note: nuiRawBuffer is same as Dali::Vector, which created by CSharp_Dali_new_VectorUnsignedChar__SWIG_0 +SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_EncodedImageBuffer_New(void *nuiRawBuffer) +{ + void *jresult; + Dali::EncodedImageBuffer::RawBufferType *buffer = (Dali::EncodedImageBuffer::RawBufferType *)nuiRawBuffer; + Dali::EncodedImageBuffer result; + + if (!buffer) + { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "null buffer", 0); + return 0; + } + { + try + { + result = Dali::EncodedImageBuffer::New((const Dali::EncodedImageBuffer::RawBufferType &)*buffer); + } + CALL_CATCH_EXCEPTION(0); + } + + jresult = new Dali::EncodedImageBuffer((const Dali::EncodedImageBuffer &)result); + return jresult; +} + +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_EncodedImageBuffer(void *nuiEncodedImageBuffer) +{ + Dali::EncodedImageBuffer *encodedImageBuffer = (Dali::EncodedImageBuffer *)nuiEncodedImageBuffer;; + { + try + { + delete encodedImageBuffer; + } + CALL_CATCH_EXCEPTION(); + } +} + +SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_EncodedImageBuffer_GetRawBuffer(void *nuiEncodedImageBuffer) +{ + void *jresult; + Dali::EncodedImageBuffer::RawBufferType *result = (Dali::EncodedImageBuffer::RawBufferType *)0; + Dali::EncodedImageBuffer *encodedImageBuffer = (Dali::EncodedImageBuffer *)nuiEncodedImageBuffer;; + + if (!encodedImageBuffer) + { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::EncodedImageBuffer const & type is null", 0); + return 0; + } + { + try + { + result = const_cast(&(encodedImageBuffer->GetRawBuffer())); + } + CALL_CATCH_EXCEPTION(0); + } + + jresult = (void *)result; + return jresult; +} + +SWIGEXPORT void *SWIGSTDCALL CSharp_Dali_EncodedImageBuffer_GenerateUrl(void *nuiEncodedImageBuffer) +{ + void *jresult; + Dali::Toolkit::ImageUrl result; + Dali::EncodedImageBuffer *encodedImageBuffer = (Dali::EncodedImageBuffer *)nuiEncodedImageBuffer;; + + if (!encodedImageBuffer) + { + SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::EncodedImageBuffer const & type is null", 0); + return 0; + } + { + try + { + result = Dali::Toolkit::Image::GenerateUrl((const Dali::EncodedImageBuffer &)*encodedImageBuffer); + } + CALL_CATCH_EXCEPTION(0); + } + + jresult = new Dali::Toolkit::ImageUrl((const Dali::Toolkit::ImageUrl &)result); + return jresult; +} + +#ifdef __cplusplus +} +#endif -- 2.7.4