Tizen 2.4.0 rev3 SDK Public Release
[framework/graphics/dali.git] / dali / internal / render / common / render-manager.cpp
index c3d5a41..49d32a1 100644 (file)
@@ -35,6 +35,7 @@
 #include <dali/internal/render/gl-resources/frame-buffer-texture.h>
 #include <dali/internal/render/gl-resources/native-frame-buffer-texture.h>
 #include <dali/internal/render/gl-resources/texture-cache.h>
+#include <dali/internal/render/renderers/scene-graph-image-renderer.h>
 #include <dali/internal/render/renderers/scene-graph-renderer.h>
 #include <dali/internal/render/renderers/render-geometry.h>
 #include <dali/internal/render/shaders/program-controller.h>
@@ -288,6 +289,30 @@ void RenderManager::RemoveRenderer( Renderer* renderer )
   }
 }
 
+void RenderManager::AddImageRenderer( ImageRenderer* renderer, NodeDataProvider* dataProvider )
+{
+  // Initialize the renderer as we are now in render thread
+  renderer->Initialize( mImpl->context, mImpl->textureCache );
+  renderer->SetDataProvider( dataProvider );
+
+  if( !mImpl->renderersAdded )
+  {
+    mImpl->renderersAdded = true;
+  }
+
+  // Note - ImageRenderers are not owned by RenderManager
+}
+
+void RenderManager::RemoveImageRenderer( ImageRenderer* renderer )
+{
+  DALI_ASSERT_DEBUG( NULL != renderer );
+
+  // GL cleanup
+  renderer->OnRemove();
+
+  // Note - ImageRenderers are not owned by RenderManager
+}
+
 void RenderManager::AddGeometry( RenderGeometry* renderGeometry )
 {
   mImpl->renderGeometryContainer.PushBack( renderGeometry );