[dali_2.2.45] Merge branch 'devel/master'
[platform/core/uifw/dali-adaptor.git] / dali / devel-api / adaptor-framework / texture-upload-manager.cpp
1 /*
2  * Copyright (c) 2023 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 // CLASS HEADER
18 #include <dali/devel-api/adaptor-framework/texture-upload-manager.h>
19
20 // INTERNAL INCLUDES
21 #include <dali/internal/system/common/texture-upload-manager-impl.h>
22
23 namespace Dali::Devel
24 {
25 // Called by main thread
26
27 TextureUploadManager::TextureUploadManager() = default;
28
29 TextureUploadManager::~TextureUploadManager() = default;
30
31 TextureUploadManager TextureUploadManager::Get()
32 {
33   return Internal::Adaptor::TextureUploadManager::Get();
34 }
35
36 Dali::Texture TextureUploadManager::GenerateTexture2D()
37 {
38   return GetImplementation(*this).GenerateTexture2D();
39 }
40
41 TextureUploadManager::TextureUploadManager(Internal::Adaptor::TextureUploadManager* impl)
42 : BaseHandle(impl)
43 {
44 }
45
46 // Called by update thread
47
48 bool TextureUploadManager::ResourceUpload()
49 {
50   return GetImplementation(*this).ResourceUpload();
51 }
52
53 // Called by worker thread
54
55 void TextureUploadManager::RequestUpload(ResourceId resourceId, PixelData pixelData)
56 {
57   GetImplementation(*this).RequestUpload(resourceId, pixelData);
58 }
59
60 } // namespace Dali::Devel