-#ifndef __DALI_INTERNAL_SCENE_GRAPH_RENDER_TASK_H__
-#define __DALI_INTERNAL_SCENE_GRAPH_RENDER_TASK_H__
+#ifndef DALI_INTERNAL_SCENE_GRAPH_RENDER_TASK_H
+#define DALI_INTERNAL_SCENE_GRAPH_RENDER_TASK_H
/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2018 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
namespace Internal
{
-class FrameBufferTexture;
-class ResourceManager;
namespace Render
{
/**
* Initialize the render task. Called in update thread
* @param[in] renderMessageDispatcher to send messages to render thread
- * @param[in] resourceManager to check and update status of FBOs
*/
- void Initialize( RenderMessageDispatcher& renderMessageDispatcher, ResourceManager& resourceManager );
+ void Initialize( RenderMessageDispatcher& renderMessageDispatcher );
/**
* Set the nodes to be rendered.
/**
* Set the frame-buffer used as a render target.
- * @param[in] resourceId The resource ID of the frame-buffer, or zero if not rendering off-screen.
- * @param[in] isNativeFBO if this render task is targeting a native FBO
- */
- void SetFrameBufferId( unsigned int resourceId, bool isNativeFBO );
-
- /**
- * Retrieve the resource ID of the frame-buffer.
- * @return The resource ID, or zero if not rendering off-screen.
- */
- unsigned int GetFrameBufferId() const;
-
- /**
- * Set the frame-buffer used as a render target.
* @param[in] frameBuffer The framebuffer
*/
void SetFrameBuffer( Render::FrameBuffer* frameBuffer );
bool IsRenderRequired();
/**
- * Set whether all resources were available when the render-task was processed
- * @param[in] resourcesComplete True if the resources of the source tree are completely loaded.
- */
- void SetResourcesFinished( bool resourcesFinished );
-
- /**
* Process a frame. This method is called each frame for every ready render task, regardless
* of whether it needs to render (so that the frame counter can be updated).
*/
// Undefined
RenderTask& operator=(const RenderTask&);
-private: // PropertyOwner
-
- virtual void ResetDefaultProperties( BufferIndex currentBufferIndex );
public: // Animatable Properties
AnimatableProperty< Vector2 > mViewportPosition; ///< viewportPosition
private:
RenderMessageDispatcher* mRenderMessageDispatcher;
- ResourceManager* mResourceManager;
Render::RenderTracker* mRenderSyncTracker;
Node* mSourceNode;
Node* mCameraNode;
SceneGraph::Camera* mCamera;
Render::FrameBuffer* mFrameBuffer;
- bool mResourcesFinished:1; ///< True if all resources were available when the render-task was processed
bool mWaitingToRender:1; ///< True when an render once to FBO is waiting
bool mNotifyTrigger:1; ///< True if a render once render task has finished renderering
bool mExclusive: 1; ///< Whether the render task has exclusive access to the source actor (node in the scene graph implementation).
bool mClearEnabled: 1; ///< Whether previous results are cleared.
bool mCullMode: 1; ///< Whether renderers should be frustum culled
- FrameBufferTexture* mRenderTarget;
-
State mState; ///< Render state.
unsigned int mRefreshRate; ///< REFRESH_ONCE, REFRESH_ALWAYS or render every N frames
unsigned int mFrameCounter; ///< counter for rendering every N frames
} // namespace Dali
-#endif // __DALI_INTERNAL_SCENE_GRAPH_RENDER_TASK_H__
+#endif // DALI_INTERNAL_SCENE_GRAPH_RENDER_TASK_H