1a4a0847016801d0c283c03bbcb7ac63e2722b74
[platform/core/uifw/dali-adaptor.git] / dali / internal / vector-image / common / vector-image-renderer-impl.cpp
1 /*
2  * Copyright (c) 2020 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
18 // CLASS HEADER
19 #include <dali/internal/vector-image/common/vector-image-renderer-impl.h>
20
21 // EXTERNAL INCLUDES
22 #include <dali/public-api/object/type-registry.h>
23
24 // INTERNAL INCLUDES
25
26 namespace Dali
27 {
28
29 namespace Internal
30 {
31
32 namespace Adaptor
33 {
34
35 namespace // unnamed namespace
36 {
37
38 // Type Registration
39 Dali::BaseHandle Create()
40 {
41   return Dali::BaseHandle();
42 }
43
44 Dali::TypeRegistration type( typeid( Dali::VectorImageRenderer ), typeid( Dali::BaseHandle ), Create );
45
46 } // unnamed namespace
47
48 VectorImageRendererPtr VectorImageRenderer::New()
49 {
50   VectorImageRendererPtr renderer = new VectorImageRenderer();
51   return renderer;
52 }
53
54 VectorImageRenderer::VectorImageRenderer()
55 : mPlugin( std::string() )
56 {
57 }
58
59 void VectorImageRenderer::Initialize()
60 {
61   mPlugin.Initialize();
62 }
63
64 void VectorImageRenderer::SetBuffer( Dali::Devel::PixelBuffer &buffer )
65 {
66   mPlugin.SetBuffer( buffer );
67 }
68
69 bool VectorImageRenderer::Render(float scale)
70 {
71   return mPlugin.Render( scale );
72 }
73
74 bool VectorImageRenderer::Load( const std::string& url )
75 {
76   return mPlugin.Load( url );
77 }
78
79 bool VectorImageRenderer::Load( const char *data, uint32_t size )
80 {
81   return mPlugin.Load( data, size );
82 }
83
84 void VectorImageRenderer::GetDefaultSize( uint32_t& width, uint32_t& height ) const
85 {
86   mPlugin.GetDefaultSize( width, height );
87 }
88
89 } // namespace Adaptor
90
91 } // namespace internal
92
93 } // namespace Dali