1 #ifndef DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_H
2 #define DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_H
5 * Copyright (c) 2021 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
22 #include <dali/devel-api/adaptor-framework/native-image-source-queue.h>
31 * Dali internal NativeImageSourceQueue.
33 class NativeImageSourceQueue
37 * @copydoc Dali::NativeImageSourceQueue::New()
39 static NativeImageSourceQueue* New(uint32_t width, uint32_t height, Dali::NativeImageSourceQueue::ColorDepth depth, Any nativeImageSourceQueue);
42 * @copydoc Dali::NativeImageSourceQueue::GetNativeImageSourceQueue()
44 virtual Any GetNativeImageSourceQueue() const = 0;
47 * @copydoc Dali::NativeImageSourceQueue::SetSize
49 virtual void SetSize(uint32_t width, uint32_t height) = 0;
52 * @copydoc Dali::NativeImageSourceQueue::IgnoreSourceImage
54 virtual void IgnoreSourceImage() = 0;
59 virtual ~NativeImageSourceQueue() = default;
62 * @copydoc Dali::NativeImageInterface::CreateResource()
64 virtual bool CreateResource() = 0;
67 * @copydoc Dali::NativeImageInterface::DestroyResource()
69 virtual void DestroyResource() = 0;
72 * @copydoc Dali::NativeImageInterface::TargetTexture()
74 virtual uint32_t TargetTexture() = 0;
77 * @copydoc Dali::NativeImageInterface::PrepareTexture()
79 virtual void PrepareTexture() = 0;
82 * @copydoc Dali::NativeImageInterface::GetWidth()
84 virtual uint32_t GetWidth() const = 0;
87 * @copydoc Dali::NativeImageInterface::GetHeight()
89 virtual uint32_t GetHeight() const = 0;
92 * @copydoc Dali::NativeImageInterface::RequiresBlending()
94 virtual bool RequiresBlending() const = 0;
97 * @copydoc Dali::NativeImageInterface::GetTextureTarget()
99 virtual int GetTextureTarget() const = 0;
102 * @copydoc Dali::NativeImageInterface::GetCustomFragmentPrefix()
104 virtual const char* GetCustomFragmentPrefix() const = 0;
107 * @copydoc Dali::NativeImageInterface::GetCustomSamplerTypename()
109 virtual const char* GetCustomSamplerTypename() const = 0;
112 * @copydoc Dali::NativeImageInterface::GetNativeImageHandle()
114 virtual Any GetNativeImageHandle() const = 0;
117 * @copydoc Dali::NativeImageInterface::SourceChanged()
119 virtual bool SourceChanged() const = 0;
122 * @copydoc Dali::NativeImageInterface::GetExtension()
124 virtual NativeImageInterface::Extension* GetNativeImageInterfaceExtension() = 0;
127 } // namespace Adaptor
129 } // namespace Internal
133 #endif // DALI_INTERNAL_NATIVE_IMAGE_SOURCE_QUEUE_IMPL_H