2 * Copyright (c) 2015 Samsung Electronics Co., Ltd.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 #include "render-data-provider.h"
27 RenderDataProvider::RenderDataProvider()
28 : mGeometryDataProvider( NULL ),
29 mMaterialDataProvider( NULL ),
30 mUniformMapDataProvider( NULL ),
36 RenderDataProvider::~RenderDataProvider()
40 void RenderDataProvider::SetGeometry( const GeometryDataProvider& geometryDataProvider )
42 mGeometryDataProvider = &geometryDataProvider;
45 const GeometryDataProvider& RenderDataProvider::GetGeometry() const
47 return *mGeometryDataProvider;
50 void RenderDataProvider::SetMaterial( const MaterialDataProvider& materialDataProvider )
52 mMaterialDataProvider = &materialDataProvider;
55 const MaterialDataProvider& RenderDataProvider::GetMaterial() const
57 return *mMaterialDataProvider;
60 void RenderDataProvider::SetUniformMap(const UniformMapDataProvider& uniformMapDataProvider)
62 mUniformMapDataProvider = &uniformMapDataProvider;
65 const UniformMapDataProvider& RenderDataProvider::GetUniformMap() const
67 return *mUniformMapDataProvider;
70 void RenderDataProvider::SetShader( Shader& shader )
75 Shader& RenderDataProvider::GetShader() const
80 void RenderDataProvider::SetIndexBuffer( const PropertyBufferDataProvider* indexBuffer )
82 mIndexBuffer = indexBuffer;
85 const PropertyBufferDataProvider* RenderDataProvider::GetIndexBuffer() const
90 void RenderDataProvider::SetVertexBuffers( const RenderDataProvider::VertexBuffers& vertexBuffers)
92 DALI_ASSERT_DEBUG( vertexBuffers.Count() > 0 && "Using empty vertex buffer" );
93 mVertexBuffers = vertexBuffers;
96 const RenderDataProvider::VertexBuffers& RenderDataProvider::GetVertexBuffers() const
98 return mVertexBuffers;
101 void RenderDataProvider::SetSamplers( const RenderDataProvider::Samplers& samplers )
103 mSamplers = samplers;
106 const RenderDataProvider::Samplers& RenderDataProvider::GetSamplers() const