- Added a check when creating Capture to only work with the GLES backend for now
- Only reason Capture taken out was because of NativeImage which is compiled in for
Vulkan, just not implemented yet.
Change-Id: Id471d44030ae9115e194deecd4ab6cf17f5eda08
${static_libraries_libunibreak_src_files}
${adaptor_addons_common_src_files}
${adaptor_addons_dummy_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
)
${adaptor_graphics_gles_src_files}
${adaptor_graphics_tizen_src_files}
${adaptor_imaging_tizen_egl_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_tizen_wayland_egl_src_files}
)
)
ELSE()
SET(SOURCES ${SOURCES}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
${adaptor_graphics_gl_src_files}
${adaptor_graphics_glib_x11_src_files}
${adaptor_imaging_x11_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_x11_egl_src_files}
)
${adaptor_graphics_gles_src_files}
${adaptor_graphics_tizen_src_files}
${adaptor_imaging_tizen_egl_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_tizen_wayland_egl_src_files}
)
)
ELSE()
SET(SOURCES ${SOURCES}
- ${adaptor_public_api_egl_src_files}
-
${adaptor_devel_api_egl_src_files}
${adaptor_graphics_gles_src_files}
${adaptor_imaging_x11_egl_src_files}
- ${adaptor_system_common_egl_src_files}
-
${adaptor_window_system_x11_egl_src_files}
${adaptor_window_system_common_egl_src_files}
)
${adaptor_addons_common_src_files}
${adaptor_addons_macos_src_files}
${static_libraries_libunibreak_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
)
${adaptor_graphics_gles_src_files}
${adaptor_graphics_tizen_src_files}
${adaptor_imaging_tizen_egl_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_tizen_wayland_egl_src_files}
)
${adaptor_graphics_gles_src_files}
${adaptor_graphics_tizen_src_files}
${adaptor_imaging_tizen_egl_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_tizen_wayland_egl_src_files}
)
)
ELSE()
SET(SOURCES ${SOURCES}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
${adaptor_graphics_gles_src_files}
${adaptor_graphics_ubuntu_src_files}
${adaptor_imaging_ubuntu_x11_src_files}
${adaptor_imaging_ubuntu_x11_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_ubuntu_x11_egl_src_files}
)
${adaptor_graphics_gles_src_files}
${adaptor_graphics_tizen_src_files}
${adaptor_imaging_tizen_egl_src_files}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
${adaptor_window_system_tizen_wayland_egl_src_files}
)
IF(NOT ENABLE_VULKAN)
SET(SOURCES ${SOURCES}
- ${adaptor_public_api_egl_src_files}
${adaptor_devel_api_egl_src_files}
- ${adaptor_system_common_egl_src_files}
${adaptor_window_system_common_egl_src_files}
)
ENDIF()
${adaptor_devel_api_dir}/adaptor-framework/application-devel.cpp
${adaptor_devel_api_dir}/adaptor-framework/atspi-accessibility.cpp
${adaptor_devel_api_dir}/adaptor-framework/bitmap-saver.cpp
+ ${adaptor_devel_api_dir}/adaptor-framework/capture-devel.cpp
${adaptor_devel_api_dir}/adaptor-framework/clipboard.cpp
${adaptor_devel_api_dir}/adaptor-framework/drag-and-drop.cpp
${adaptor_devel_api_dir}/adaptor-framework/color-controller.cpp
)
SET( adaptor_devel_api_egl_src_files
- ${adaptor_devel_api_dir}/adaptor-framework/capture-devel.cpp
${adaptor_devel_api_dir}/adaptor-framework/gl-window.cpp
)
#include <dali/devel-api/adaptor-framework/window-devel.h>
#include <dali/integration-api/adaptor-framework/adaptor.h>
#include <dali/internal/adaptor/common/adaptor-impl.h>
+#include <dali/public-api/adaptor-framework/graphics-backend.h>
namespace Dali
{
{
namespace
{
-static constexpr uint32_t ORDER_INDEX_CAPTURE_RENDER_TASK = 1000;
-constexpr uint32_t TIME_OUT_DURATION = 1000;
+static constexpr uint32_t ORDER_INDEX_CAPTURE_RENDER_TASK = 1000;
+constexpr uint32_t TIME_OUT_DURATION = 1000;
} // namespace
Capture::Capture()
CapturePtr Capture::New()
{
+ DALI_ASSERT_ALWAYS(Graphics::GetCurrentGraphicsBackend() == Graphics::Backend::GLES && "Only GLES Backend Supported");
+
CapturePtr pWorker = new Capture();
return pWorker;
CapturePtr Capture::New(Dali::CameraActor cameraActor)
{
+ DALI_ASSERT_ALWAYS(Graphics::GetCurrentGraphicsBackend() == Graphics::Backend::GLES && "Only GLES Backend Supported");
+
CapturePtr pWorker = new Capture(cameraActor);
return pWorker;
Dali::PixelData pixelData = mRenderTask.GetRenderResult();
if(pixelData)
{
- auto pixelDataBuffer = Dali::Integration::GetPixelDataBuffer(pixelData);
- NativeImageSourcePtr nativeImageSourcePtr = Dali::NativeImageSource::New(pixelData.GetWidth(), pixelData.GetHeight(), Dali::NativeImageSource::COLOR_DEPTH_32); // Texture pixel format is RGBA8888
+ auto pixelDataBuffer = Dali::Integration::GetPixelDataBuffer(pixelData);
+ NativeImageSourcePtr nativeImageSourcePtr = Dali::NativeImageSource::New(pixelData.GetWidth(), pixelData.GetHeight(), Dali::NativeImageSource::COLOR_DEPTH_32); // Texture pixel format is RGBA8888
if(Dali::DevelNativeImageSource::SetPixels(*nativeImageSourcePtr, pixelDataBuffer.buffer, pixelData.GetPixelFormat()))
{
# module: system, backend: common
SET( adaptor_system_common_src_files
${adaptor_system_dir}/common/abort-handler.cpp
+ ${adaptor_system_dir}/common/capture-impl.cpp
${adaptor_system_dir}/common/color-controller-impl.cpp
${adaptor_system_dir}/common/command-line-options.cpp
${adaptor_system_dir}/common/configuration-manager.cpp
${adaptor_system_dir}/common/texture-upload-manager-impl.cpp
)
-# module: system, backend: egl
-SET( adaptor_system_common_egl_src_files
- ${adaptor_system_dir}/common/capture-impl.cpp
-)
-
-# module: system, backend: vulkan
-SET( adaptor_system_common_vulkan_src_files
- ${adaptor_system_dir}/vulkan/capture-vk-impl.cpp
-)
-
# module: system, backend: linux
SET( adaptor_system_linux_src_files
${adaptor_system_dir}/common/shared-file.cpp
+++ /dev/null
-/*
- * 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.
- * 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.
- *
- */
-
-// CLASS HEADER
-#include <dali/internal/system/common/capture-impl.h>
-
-// EXTERNAL INCLUDES
-#include <dali/integration-api/debug.h>
-#include <dali/public-api/common/vector-wrapper.h>
-#include <dali/public-api/render-tasks/render-task-list.h>
-#include <string.h>
-#include <fstream>
-
-// INTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/bitmap-saver.h>
-#include <dali/devel-api/adaptor-framework/native-image-source-devel.h>
-#include <dali/devel-api/adaptor-framework/window-devel.h>
-#include <dali/integration-api/adaptor-framework/adaptor.h>
-#include <dali/internal/adaptor/common/adaptor-impl.h>
-
-namespace Dali
-{
-namespace Internal
-{
-namespace Adaptor
-{
-namespace
-{
-constexpr int32_t SHADER_VERSION_NATIVE_IMAGE_SOURCE_AVAILABLE = 300;
-constexpr uint32_t TIME_OUT_DURATION = 1000;
-} // namespace
-
-Capture::Capture()
-: mQuality(DEFAULT_QUALITY),
- mTimer(),
- mPath(),
- mNativeImageSourcePtr(nullptr),
- mFileSave(false),
- mUseDefaultCamera(true),
- mSceneOffCameraAfterCaptureFinished(false)
-{
-}
-
-Capture::Capture(Dali::CameraActor cameraActor)
-: mQuality(DEFAULT_QUALITY),
- mCameraActor(cameraActor),
- mTimer(),
- mPath(),
- mNativeImageSourcePtr(nullptr),
- mFileSave(false),
- mUseDefaultCamera(!cameraActor),
- mSceneOffCameraAfterCaptureFinished(false)
-{
-}
-
-Capture::~Capture()
-{
-}
-
-CapturePtr Capture::New()
-{
- CapturePtr pWorker = new Capture();
-
- return pWorker;
-}
-
-CapturePtr Capture::New(Dali::CameraActor cameraActor)
-{
- CapturePtr pWorker = new Capture(cameraActor);
-
- return pWorker;
-}
-
-void Capture::Start(Dali::Actor source, const Dali::Vector2& position, const Dali::Vector2& size, const std::string& path, const Dali::Vector4& clearColor, const uint32_t quality)
-{
-}
-
-void Capture::Start(Dali::Actor source, const Dali::Vector2& position, const Dali::Vector2& size, const std::string& path, const Dali::Vector4& clearColor)
-{
-}
-
-void Capture::SetImageQuality(uint32_t quality)
-{
-}
-
-Dali::NativeImageSourcePtr Capture::GetNativeImageSource() const
-{
- return nullptr;
-}
-
-Dali::Texture Capture::GetTexture() const
-{
- return Dali::Texture();
-}
-
-Dali::Devel::PixelBuffer Capture::GetCapturedBuffer()
-{
- return Dali::Devel::PixelBuffer();
-}
-
-Dali::Capture::CaptureFinishedSignalType& Capture::FinishedSignal()
-{
- return mFinishedSignal;
-}
-
-void Capture::CreateTexture(const Vector2& size)
-{
-}
-
-void Capture::DeleteNativeImageSource()
-{
-}
-
-void Capture::CreateFrameBuffer()
-{
-}
-
-void Capture::DeleteFrameBuffer()
-{
-}
-
-bool Capture::IsFrameBufferCreated()
-{
- return false;
-}
-
-void Capture::SetupRenderTask(const Dali::Vector2& position, const Dali::Vector2& size, Dali::Actor source, const Dali::Vector4& clearColor)
-{
-}
-
-void Capture::UnsetRenderTask()
-{
-}
-
-bool Capture::IsRenderTaskSetup()
-{
- return false;
-}
-
-void Capture::SetupResources(const Dali::Vector2& position, const Dali::Vector2& size, const Dali::Vector4& clearColor, Dali::Actor source)
-{
-}
-
-void Capture::UnsetResources()
-{
-}
-
-void Capture::OnRenderFinished(Dali::RenderTask& task)
-{
-}
-
-bool Capture::OnTimeOut()
-{
- return false;
-}
-
-bool Capture::SaveFile()
-{
- return false;
-}
-
-} // End of namespace Adaptor
-
-} // End of namespace Internal
-
-} // End of namespace Dali
${adaptor_public_api_dir}/adaptor-framework/widget-impl.cpp
${adaptor_public_api_dir}/adaptor-framework/async-task-manager.cpp
${adaptor_public_api_dir}/adaptor-framework/window-data.cpp
- ${adaptor_public_api_dir}/dali-adaptor-version.cpp
-)
-
-SET( adaptor_public_api_egl_src_files
${adaptor_public_api_dir}/capture/capture.cpp
+ ${adaptor_public_api_dir}/dali-adaptor-version.cpp
)
SET( public_api_header_files