/*\r
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.\r
+ * Copyright (c) 2024 Samsung Electronics Co., Ltd.\r
*\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
// EXTERNAL INCLUDES\r
#include <dali/dali.h>\r
#include <dali/devel-api/adaptor-framework/native-image-source-devel.h>\r
+#include <dali/devel-api/adaptor-framework/native-image-source-queue.h>\r
+\r
+// Tizen dependency header\r
#include <tbm_surface.h>\r
+#include <tbm_surface_queue.h>\r
\r
// INTERNAL INCLUDES\r
#include "common.h"\r
Dali::Any source(tbm_surface);\r
mNativeImageSrc = Dali::NativeImageSource::New(source);\r
mNativeTexture = Dali::Texture::New( *mNativeImageSrc );\r
- } CALL_CATCH_EXCEPTION(0);\r
+ } CALL_CATCH_EXCEPTION(0);\r
\r
jresult = new Dali::Texture((const Dali::Texture &)mNativeTexture);\r
return (void*)jresult;\r
}\r
\r
+struct NativeImageSourcePtrHandle\r
+{\r
+ Dali::NativeImageSourcePtr Ptr;\r
+};\r
+\r
+SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_NativeImageSource_New_Handle_With_TbmSurface(tbm_surface_h csTbmSurface)\r
+{\r
+ void* jresult;\r
+ NativeImageSourcePtrHandle* handle = new NativeImageSourcePtrHandle();\r
+ Dali::Any tbmSurface = (Dali::Any)csTbmSurface;\r
+ {\r
+ try {\r
+ handle->Ptr = NativeImageSource::New(tbmSurface);\r
+ } CALL_CATCH_EXCEPTION_WITH_FUNCTION(0, [](NativeImageSourcePtrHandle* ptr){delete ptr;}, handle);\r
+ }\r
+ jresult = (void *)handle;\r
+ return jresult;\r
+}\r
\r
-SWIGEXPORT void SWIGSTDCALL CSharp_Dali_NativeImageSource_SetSource(void* jarg1, tbm_surface_h jarg2)\r
+SWIGEXPORT void SWIGSTDCALL CSharp_Dali_NativeImageSource_SetSource(void* jarg1, tbm_surface_h csTbmSurface)\r
{\r
Dali::NativeImageSource* pImage = (Dali::NativeImageSource*)jarg1;\r
- Dali::Any source = (Dali::Any)jarg2;\r
+ Dali::Any tbmSurface = (Dali::Any)csTbmSurface;\r
\r
try {\r
- pImage->SetSource(source);\r
- }\r
- catch (std::out_of_range & e) {\r
- SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what()));\r
- return;\r
- }\r
- catch (std::exception & e) {\r
- SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what()));\r
- return;\r
- }\r
- catch (Dali::DaliException e) {\r
- SWIG_CSharpException(SWIG_UnknownError, e.condition);\r
- return;\r
- }\r
- catch (...) {\r
- SWIG_CSharpException(SWIG_UnknownError, "unknown error");\r
- return;\r
+ pImage->SetSource(tbmSurface);\r
+ } CALL_CATCH_EXCEPTION();\r
+}\r
+\r
+struct NativeImageSourceQueuePtrHandle\r
+{\r
+ Dali::NativeImageSourceQueuePtr Ptr;\r
+};\r
+\r
+SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_NativeImageQueuePtr_New_Handle_With_TbmQueue(tbm_queue_h csTbmQueue)\r
+{\r
+ void* jresult;\r
+ NativeImageSourceQueuePtrHandle* queue = new NativeImageSourceQueuePtrHandle();\r
+ Dali::Any tbmQueue = (Dali::Any)csTbmQueue;\r
+ {\r
+ try {\r
+ queue->Ptr = Dali::NativeImageSourceQueue::New(tbmQueue);\r
+ }\r
+ CALL_CATCH_EXCEPTION_WITH_FUNCTION(0, [](NativeImageSourceQueuePtrHandle* ptr){delete ptr;}, queue);\r
}\r
+ jresult = (void *)queue;\r
+ return jresult;\r
}\r
\r
#ifdef __cplusplus\r
/*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 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.
SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Capture_GetNativeImageSource(void* jarg1)
{
Dali::Capture* arg1 = (Dali::Capture*)jarg1;
- NativeImageSourcePtrHandle* handle = new NativeImageSourcePtrHandle();
if(!arg1)
{
SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "some argument is null", 0);
- delete handle;
return 0;
}
+
+ NativeImageSourcePtrHandle* handle = new NativeImageSourcePtrHandle();
{
try
{
handle->Ptr = arg1->GetNativeImageSource();
- }
- catch(std::out_of_range& e)
- {
- SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what()));
- delete handle;
- return 0;
- }
- catch(std::exception& e)
- {
- SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what()));
- delete handle;
- return 0;
- }
- catch(Dali::DaliException e)
- {
- SWIG_CSharpException(SWIG_UnknownError, e.condition);
- delete handle;
- return 0;
- }
- catch(...)
- {
- SWIG_CSharpException(SWIG_UnknownError, "unknown error");
- delete handle;
- return 0;
- }
+ } CALL_CATCH_EXCEPTION_WITH_FUNCTION(0, [](NativeImageSourcePtrHandle* ptr){delete ptr;}, handle);
}
return (void*)handle;
}
/*
- * Copyright (c) 2023 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 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.
NativeImageSourcePtr Ptr;
};
-
SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_NativeImageSource_New_Handle(unsigned int jarg1, unsigned int jarg2, int jarg3)
{
void* jresult;
{
try {
handle->Ptr = ( NativeImageSource::New(jarg1, jarg2, (NativeImageSource::ColorDepth)jarg3) );
- }
- catch (std::out_of_range & e) {
- {
- SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
- };
- }
- catch (std::exception & e) {
- {
- SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
- };
- }
- catch (Dali::DaliException e) {
- {
- SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
- };
- }
- catch (...) {
- {
- SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
- };
- }
+ } CALL_CATCH_EXCEPTION_WITH_FUNCTION(0, [](NativeImageSourcePtrHandle* ptr){delete ptr;}, handle);
}
jresult = (void *)handle;
return jresult;
{
void* jresult;
NativeImageSourcePtrHandle* handle = (NativeImageSourcePtrHandle*)jarg1;
- jresult = (void*)( handle->Ptr.Get() );
+ {
+ try {
+ jresult = (void*)( handle->Ptr.Get() );
+ } CALL_CATCH_EXCEPTION(0);
+ }
return jresult;
}
{
try {
delete arg1;
- }
- catch (std::out_of_range & e) {
- {
- SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return;
- };
- }
- catch (std::exception & e) {
- {
- SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return;
- };
- }
- catch (Dali::DaliException e) {
- {
- SWIG_CSharpException(SWIG_UnknownError, e.condition); return;
- };
- }
- catch (...) {
- {
- SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return;
- };
- }
+ } CALL_CATCH_EXCEPTION();
}
}
{
try {
jresult = (void *)Dali::DevelNativeImageSource::AcquireBuffer( *arg1, *arg2, *arg3, *arg4 );
- }
- catch (std::out_of_range & e) {
- {
- SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
- };
- }
- catch (std::exception & e) {
- {
- SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
- };
- }
- catch (Dali::DaliException e) {
- {
- SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
- };
- }
- catch (...) {
- {
- SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
- };
- }
+ } CALL_CATCH_EXCEPTION(0);
}
return jresult;
}
{
try {
jresult = Dali::DevelNativeImageSource::ReleaseBuffer(*arg1, Rect<uint32_t>{});
- }
- catch (std::out_of_range & e) {
- {
- SWIG_CSharpException(SWIG_IndexError, const_cast<char*>(e.what())); return 0;
- };
- }
- catch (std::exception & e) {
- {
- SWIG_CSharpException(SWIG_RuntimeError, const_cast<char*>(e.what())); return 0;
- };
- }
- catch (Dali::DaliException e) {
- {
- SWIG_CSharpException(SWIG_UnknownError, e.condition); return 0;
- };
- }
- catch (...) {
- {
- SWIG_CSharpException(SWIG_UnknownError, "unknown error"); return 0;
- };
- }
+ } CALL_CATCH_EXCEPTION(0);
}
return jresult;
}
try
{
Dali::DevelNativeImageSource::EnableBackBuffer(*nativeImage, enable);
- }
- CALL_CATCH_EXCEPTION();
+ } CALL_CATCH_EXCEPTION();
}
}
/*
- * Copyright (c) 2021 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2024 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.
try {
queue->Ptr = Dali::NativeImageSourceQueue::New(queueCount, width, height, (Dali::NativeImageSourceQueue::ColorFormat)colorFormat);
}
- CALL_CATCH_EXCEPTION(0);
+ CALL_CATCH_EXCEPTION_WITH_FUNCTION(0, [](NativeImageSourceQueuePtrHandle* ptr){delete ptr;}, queue);
}
jresult = (void *)queue;
return jresult;