Dali 3D User Interface Engine
List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes
Dali::RenderTask Class Reference

RenderTasks describe how the Dali scene should be rendered. More...

#include <render-task.h>

Inheritance diagram for Dali::RenderTask:
Inheritance graph
[legend]
Collaboration diagram for Dali::RenderTask:
Collaboration graph
[legend]

Classes

struct  Property
 An enumeration of properties belonging to the RenderTask class. More...
 

Public Types

enum  RefreshRate { REFRESH_ONCE = 0, REFRESH_ALWAYS = 1 }
 The refresh-rate of the RenderTask. More...
 
typedef Signal< void(RenderTask
&source) > 
RenderTaskSignalType
 Typedef for signals sent by this class. More...
 
typedef bool(* ScreenToFrameBufferFunction )(Vector2 &coordinates)
 A pointer to a function for converting screen to frame-buffer coordinates. More...
 
typedef bool(*const ConstScreenToFrameBufferFunction )(Vector2 &coordinates)
 A pointer to a function for converting screen to frame-buffer coordinates. More...
 
- Public Types inherited from Dali::Handle
enum  Capability { DYNAMIC_PROPERTIES = 0x01 }
 An Handle's capabilities can be queried using Handle::Supports() .0. More...
 
- Public Types inherited from Dali::BaseHandle
typedef void(BaseHandle::* BooleanType )() const
 Pointer-to-member type. More...
 

Public Member Functions

 RenderTask ()
 Create an empty RenderTask handle. More...
 
 ~RenderTask ()
 Destructor. More...
 
 RenderTask (const RenderTask &handle)
 This copy constructor is required for (smart) pointer semantics. More...
 
RenderTaskoperator= (const RenderTask &rhs)
 This assignment operator is required for (smart) pointer semantics. More...
 
void SetSourceActor (Actor actor)
 Set the actors to be rendered. More...
 
Actor GetSourceActor () const
 Retrieve the actors to be rendered. More...
 
void SetExclusive (bool exclusive)
 Set whether the RenderTask has exclusive access to the source actors; the default is false. More...
 
bool IsExclusive () const
 Query whether the RenderTask has exclusive access to the source actors. More...
 
void SetInputEnabled (bool enabled)
 Set whether the render-task should be considered for input handling; the default is true. More...
 
bool GetInputEnabled () const
 Query whether the render-task should be considered for input handling. More...
 
void SetCameraActor (CameraActor cameraActor)
 Set the actor from which the scene is viewed. More...
 
CameraActor GetCameraActor () const
 Retrieve the actor from which the scene is viewed. More...
 
void SetTargetFrameBuffer (FrameBufferImage frameBuffer)
 Set the frame-buffer used as a render target. More...
 
FrameBufferImage GetTargetFrameBuffer () const
 Retrieve the frame-buffer used as a render target. More...
 
void SetScreenToFrameBufferFunction (ScreenToFrameBufferFunction conversionFunction)
 Set the function used to convert screen coordinates to frame-buffer coordinates. More...
 
ScreenToFrameBufferFunction GetScreenToFrameBufferFunction () const
 Retrieve the function used to convert screen coordinates to frame-buffer coordinates. More...
 
void SetScreenToFrameBufferMappingActor (Actor mappingActor)
 Set the actor used to convert screen coordinates to frame-buffer coordinates. More...
 
Actor GetScreenToFrameBufferMappingActor () const
 Retrieve the actor used to convert screen coordinates to frame-buffer coordinates. More...
 
void SetViewportPosition (Vector2 position)
 Set the GL viewport position used when rendering. More...
 
Vector2 GetCurrentViewportPosition () const
 Retrieve the GL viewport position used when rendering. More...
 
void SetViewportSize (Vector2 size)
 Set the GL viewport size used when rendering. More...
 
Vector2 GetCurrentViewportSize () const
 Retrieve the GL viewport size used when rendering. More...
 
void SetViewport (Viewport viewport)
 Set the GL viewport used when rendering. More...
 
Viewport GetViewport () const
 Retrieve the GL viewport used when rendering. More...
 
void SetClearColor (const Vector4 &color)
 Set the clear color used when SetClearEnabled(true) is used. More...
 
Vector4 GetClearColor () const
 Retrieve the clear color used when SetClearEnabled(true) is used. More...
 
void SetClearEnabled (bool enabled)
 Set whether the render-task will clear the results of previous render-tasks. More...
 
bool GetClearEnabled () const
 Query whether the render-task will clear the results of previous render-tasks. More...
 
void SetCullMode (bool cullMode)
 Set whether the render task will cull the actors to the camera's view frustum. More...
 
bool GetCullMode () const
 Get the cull mode. More...
 
void SetRefreshRate (unsigned int refreshRate)
 Set the refresh-rate of the RenderTask. More...
 
unsigned int GetRefreshRate () const
 Query the refresh-rate of the RenderTask. More...
 
bool WorldToViewport (const Vector3 &position, float &viewportX, float &viewportY) const
 
bool ViewportToLocal (Actor actor, float viewportX, float viewportY, float &localX, float &localY) const
 
RenderTaskSignalTypeFinishedSignal ()
 If the refresh rate is REFRESH_ONCE, connect to this signal to be notified when a RenderTask has finished. More...
 
DALI_INTERNAL RenderTask (Internal::RenderTask *renderTask)
 This constructor is used by Dali New() methods. More...
 
- Public Member Functions inherited from Dali::Handle
 Handle (Dali::Internal::Object *handle)
 This constructor is used by Dali New() methods. More...
 
 Handle ()
 This constructor provides an uninitialized Dali::Handle. More...
 
 ~Handle ()
 Dali::Handle is intended as a base class. More...
 
 Handle (const Handle &handle)
 This copy constructor is required for (smart) pointer semantics. More...
 
Handleoperator= (const Handle &rhs)
 This assignment operator is required for (smart) pointer semantics. More...
 
bool Supports (Capability capability) const
 Query whether an handle supports a given capability. More...
 
unsigned int GetPropertyCount () const
 Query how many properties are provided by an handle. More...
 
std::string GetPropertyName (Property::Index index) const
 Query the name of a property. More...
 
Property::Index GetPropertyIndex (const std::string &name) const
 Query the index of a property. More...
 
bool IsPropertyWritable (Property::Index index) const
 Query whether a property can be set using SetProperty(). More...
 
bool IsPropertyAnimatable (Property::Index index) const
 Query whether a writable property can be the target of an animation or constraint. More...
 
bool IsPropertyAConstraintInput (Property::Index index) const
 Query whether a property can be used as in input to a constraint. More...
 
Property::Type GetPropertyType (Property::Index index) const
 Query the type of a property. More...
 
void SetProperty (Property::Index index, const Property::Value &propertyValue)
 Set the value of an existing property. More...
 
Property::Index RegisterProperty (const std::string &name, const Property::Value &propertyValue)
 Register a new animatable property. More...
 
Property::Index RegisterProperty (const std::string &name, const Property::Value &propertyValue, Property::AccessMode accessMode)
 Register a new property. More...
 
Property::Value GetProperty (Property::Index index) const
 Retrieve a property value. More...
 
template<typename T >
GetProperty (Property::Index index) const
 Convenience function for obtaining a property of a known type. More...
 
void GetPropertyIndices (Property::IndexContainer &indices) const
 Retrieve all the property indices for this object (including custom properties). More...
 
PropertyNotification AddPropertyNotification (Property::Index index, const PropertyCondition &condition)
 Add a property notification to this object. More...
 
PropertyNotification AddPropertyNotification (Property::Index index, int componentIndex, const PropertyCondition &condition)
 Add a property notification to this object. More...
 
void RemovePropertyNotification (Dali::PropertyNotification propertyNotification)
 Remove a property notification from this object. More...
 
void RemovePropertyNotifications ()
 Remove all property notifications from this object. More...
 
void RemoveConstraints ()
 Remove all constraints from an Object. More...
 
void RemoveConstraints (unsigned int tag)
 Remove all the constraint from the Object with a matching tag. More...
 
- Public Member Functions inherited from Dali::BaseHandle
 BaseHandle (Dali::BaseObject *handle)
 This constructor is used by Dali New() methods. More...
 
 BaseHandle ()
 This constructor provides an uninitialized Dali::BaseHandle. More...
 
 ~BaseHandle ()
 Dali::BaseHandle is intended as a base class. More...
 
 BaseHandle (const BaseHandle &handle)
 This copy constructor is required for (smart) pointer semantics. More...
 
BaseHandleoperator= (const BaseHandle &rhs)
 This assignment operator is required for (smart) pointer semantics. More...
 
template<class T >
bool ConnectSignal (ConnectionTrackerInterface *connectionTracker, const std::string &signalName, const T &functor)
 Connects a void() functor to a specified signal. More...
 
bool DoAction (const std::string &actionName, const Property::Map &attributes)
 Perform action on this object with the given action name and attributes. More...
 
const std::string & GetTypeName () const
 Returns the type name for the Handle. More...
 
bool GetTypeInfo (Dali::TypeInfo &info) const
 Returns the type info for the Handle. More...
 
BaseObjectGetBaseObject ()
 Retrieve the internal Dali resource. More...
 
const BaseObjectGetBaseObject () const
 Retrieve the internal Dali resource. More...
 
void Reset ()
 Resets the handle. More...
 
 operator BooleanType () const
 Converts an handle to a BooleanType. More...
 
bool operator== (const BaseHandle &rhs) const
 Equality operator overload. More...
 
bool operator!= (const BaseHandle &rhs) const
 Inequality operator overload. More...
 
Dali::RefObjectGetObjectPtr () const
 Get the reference counted object pointer. More...
 

Static Public Member Functions

static RenderTask DownCast (BaseHandle handle)
 Downcast a handle to RenderTask handle. More...
 
- Static Public Member Functions inherited from Dali::Handle
static Handle New ()
 Create a new object. More...
 
static Handle DownCast (BaseHandle handle)
 Downcast to a handle. More...
 

Static Public Attributes

static
ConstScreenToFrameBufferFunction 
DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION = DefaultScreenToFrameBufferFunction
 The default conversion function returns false for any screen coordinates. More...
 
static
ConstScreenToFrameBufferFunction 
FULLSCREEN_FRAMEBUFFER_FUNCTION = FullScreenFrameBufferFunction
 This conversion function outputs the (unmodified) screen coordinates as frame-buffer coordinates. More...
 
static const bool DEFAULT_EXCLUSIVE = false
 false More...
 
static const bool DEFAULT_INPUT_ENABLED = true
 true More...
 
static const Vector4 DEFAULT_CLEAR_COLOR = Vector4( 0.0f, 0.0f, 0.0f, 1.0f )
 Color::BLACK. More...
 
static const bool DEFAULT_CLEAR_ENABLED = false
 false More...
 
static const bool DEFAULT_CULL_MODE = true
 true More...
 
static const unsigned int DEFAULT_REFRESH_RATE = REFRESH_ALWAYS
 REFRESH_ALWAYS. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Dali::BaseHandle
void ThisIsSaferThanReturningVoidStar () const
 Used by the safe bool idiom. More...
 

Detailed Description

RenderTasks describe how the Dali scene should be rendered.

The Stage::GetRenderTaskList() method provides access to an ordered list of render-tasks.

Each RenderTask must specify the source actors to be rendered, and a camera actor from which the scene is viewed.

RenderTasks may optionally target a frame-buffer, otherwise the default GL surface is used; typically this is a window provided by the native system.

By default Dali provides a single RenderTask, which renders the entire actor hierachy using a default camera actor and GL surface. If stereoscopic rendering is enabled, Dali will create two additional render tasks, on for each eye. Each render task will have its own camera parented to the default camera actor.

The first RenderTask used for input handling will be the last one rendered, which also has input enabled, and has a valid source & camera actor; see SetInputEnabled().

If none of the actors are hit in the last RenderTask rendered, then input handling will continue with the second last RenderTask rendered, and so on.

All RenderTasks which target a frame-buffer (i.e. off screen) will be rendered before all RenderTasks which target the default GL surface. This allows the user to render intermediate targets which are used later when targetting the screen.

A RenderTask targetting a frame-buffer can still be hit-tested, provided that the screen->frame-buffer coordinate conversion is successful; see SetScreenToFrameBufferFunction().

If the refresh rate id REFRESH_ONCE and a "Finish" signal is connected, it will be emitted when the RenderTask is completed. Note that all connected signals must be disconnected before the object is destroyed. This is typically done in the object destructor, and requires either the Dali::Connection object or Dali::RenderTask handle to be stored.

Signals

Signal Name Method
finished FinishedSignal()

.0

Definition at line 83 of file render-task.h.

Member Typedef Documentation

typedef bool(* const Dali::RenderTask::ConstScreenToFrameBufferFunction)(Vector2 &coordinates)

A pointer to a function for converting screen to frame-buffer coordinates.

.0

Parameters
[in,out]coordinatesThe screen coordinates to convert where (0,0) is the top-left of the screen.
Returns
True if the conversion was successful, otherwise coordinates should be unmodified.

Definition at line 121 of file render-task.h.

Typedef for signals sent by this class.

.0

Definition at line 105 of file render-task.h.

typedef bool(* Dali::RenderTask::ScreenToFrameBufferFunction)(Vector2 &coordinates)

A pointer to a function for converting screen to frame-buffer coordinates.

.0

Parameters
[in,out]coordinatesThe screen coordinates to convert where (0,0) is the top-left of the screen.
Returns
True if the conversion was successful, otherwise coordinates should be unmodified.

Definition at line 113 of file render-task.h.

Member Enumeration Documentation

The refresh-rate of the RenderTask.

.0

Enumerator
REFRESH_ONCE 

Process once only e.g. take a snap-shot of the scene. .0.

REFRESH_ALWAYS 

Process every frame. .0.

Definition at line 142 of file render-task.h.

Constructor & Destructor Documentation

Dali::RenderTask::RenderTask ( )

Create an empty RenderTask handle.

This can be initialised with RenderTaskList::CreateRenderTask(). .0

Definition at line 51 of file render-task.cpp.

Referenced by DownCast().

Here is the caller graph for this function:

Dali::RenderTask::~RenderTask ( )

Destructor.

This is non-virtual since derived Handle types must not contain data or virtual methods. .0

Definition at line 60 of file render-task.cpp.

Dali::RenderTask::RenderTask ( const RenderTask handle)

This copy constructor is required for (smart) pointer semantics.

.0

Parameters
[in]handleA reference to the copied handle

Definition at line 64 of file render-task.cpp.

Dali::RenderTask::RenderTask ( Internal::RenderTask renderTask)
explicit

This constructor is used by Dali New() methods.

.0

Parameters
[in]renderTaskA pointer to a newly allocated render-task

Definition at line 262 of file render-task.cpp.

Member Function Documentation

RenderTask Dali::RenderTask::DownCast ( BaseHandle  handle)
static

Downcast a handle to RenderTask handle.

If handle points to a RenderTask the downcast produces valid handle. If not the returned handle is left uninitialized. .0

Parameters
[in]handleA handle to an object.
Returns
A handle to a RenderTask or an uninitialized handle.

Definition at line 55 of file render-task.cpp.

References Dali::BaseHandle::GetObjectPtr(), and RenderTask().

Referenced by UtcDaliRenderTaskDownCast01(), and UtcDaliRenderTaskDownCast02().

Here is the call graph for this function:

Here is the caller graph for this function:

RenderTask::RenderTaskSignalType & Dali::RenderTask::FinishedSignal ( )
CameraActor Dali::RenderTask::GetCameraActor ( ) const
Vector4 Dali::RenderTask::GetClearColor ( ) const

Retrieve the clear color used when SetClearEnabled(true) is used.

.0

Returns
The clear color.
Note
This property can be animated; the return value may not match the value written with SetClearColor().

Definition at line 193 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetClearColorN(), UtcDaliRenderTaskGetClearColorP(), and UtcDaliRenderTaskSetClearColorP().

Here is the call graph for this function:

Here is the caller graph for this function:

bool Dali::RenderTask::GetClearEnabled ( ) const

Query whether the render-task will clear the results of previous render-tasks.

.0

Returns
True if the render-task should clear.

Definition at line 203 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetClearEnabledN(), UtcDaliRenderTaskGetClearEnabledP(), and UtcDaliRenderTaskSetClearEnabledP().

Here is the call graph for this function:

Here is the caller graph for this function:

bool Dali::RenderTask::GetCullMode ( ) const

Get the cull mode.

.0

Returns
True if the render task should cull the actors to the camera's view frustum

Definition at line 213 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetCullModeN(), UtcDaliRenderTaskGetCullModeP(), and UtcDaliRenderTaskSetCullModeP().

Here is the call graph for this function:

Here is the caller graph for this function:

Vector2 Dali::RenderTask::GetCurrentViewportPosition ( ) const

Retrieve the GL viewport position used when rendering.

.0

Returns
The viewport.

Definition at line 161 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskSetViewportPosition().

Here is the call graph for this function:

Here is the caller graph for this function:

Vector2 Dali::RenderTask::GetCurrentViewportSize ( ) const

Retrieve the GL viewport size used when rendering.

.0

Returns
The viewport.

Definition at line 171 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskSetViewportSize(), and UtcDaliRenderTaskWorldToViewport().

Here is the call graph for this function:

Here is the caller graph for this function:

bool Dali::RenderTask::GetInputEnabled ( ) const

Query whether the render-task should be considered for input handling.

.0

Returns
True if the render-task should be considered for input handling.

Definition at line 238 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetInputEnabled(), and UtcDaliRenderTaskSetInputEnabled().

Here is the call graph for this function:

Here is the caller graph for this function:

unsigned int Dali::RenderTask::GetRefreshRate ( ) const

Query the refresh-rate of the RenderTask.

.0

Returns
The refresh-rate.

Definition at line 223 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by Dali::Internal::RenderTaskList::RecoverFromContextLoss(), UtcDaliEffectsViewSetRefreshOnDemandP(), UtcDaliRenderTaskGetRefreshRate(), and UtcDaliRenderTaskSetRefreshRate().

Here is the call graph for this function:

Here is the caller graph for this function:

RenderTask::ScreenToFrameBufferFunction Dali::RenderTask::GetScreenToFrameBufferFunction ( ) const

Retrieve the function used to convert screen coordinates to frame-buffer coordinates.

.0

Returns
The conversion function.

Definition at line 134 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetScreenToFrameBufferFunctionN(), UtcDaliRenderTaskGetScreenToFrameBufferFunctionP(), and UtcDaliRenderTaskSetScreenToFrameBufferFunctionP().

Here is the call graph for this function:

Here is the caller graph for this function:

Dali::Actor Dali::RenderTask::GetScreenToFrameBufferMappingActor ( ) const

Retrieve the actor used to convert screen coordinates to frame-buffer coordinates.

.0

Returns
The actor used for conversion.

Definition at line 151 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetScreenToFrameBufferMappingActor02N(), and UtcDaliRenderTaskGetScreenToFrameBufferMappingActorP().

Here is the call graph for this function:

Here is the caller graph for this function:

Actor Dali::RenderTask::GetSourceActor ( ) const
FrameBufferImage Dali::RenderTask::GetTargetFrameBuffer ( ) const

Retrieve the frame-buffer used as a render target.

.0

Returns
A valid frame-buffer handle, or an uninitialised handle if off-screen rendering is disabled.

Definition at line 124 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by Dali::Internal::RenderTaskList::RecoverFromContextLoss(), Dali::Internal::Stage::SetSize(), UtcDaliRenderTaskGetTargetFrameBufferN(), UtcDaliRenderTaskGetTargetFrameBufferP(), UtcDaliRenderTaskOnceChain01(), UtcDaliRenderTaskSetTargetFrameBufferN(), and UtcDaliRenderTaskSetTargetFrameBufferP().

Here is the call graph for this function:

Here is the caller graph for this function:

Viewport Dali::RenderTask::GetViewport ( ) const

Retrieve the GL viewport used when rendering.

.0

Returns
The viewport.

Definition at line 181 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetViewportN(), UtcDaliRenderTaskGetViewportP01(), UtcDaliRenderTaskGetViewportP02(), UtcDaliRenderTaskSetViewportP(), UtcDaliRenderTaskSetViewportPosition(), and UtcDaliRenderTaskSetViewportSize().

Here is the call graph for this function:

Here is the caller graph for this function:

bool Dali::RenderTask::IsExclusive ( ) const

Query whether the RenderTask has exclusive access to the source actors.

.0

Returns
True if the source actors will only be rendered by this render-task.

Definition at line 97 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskIsExclusive01(), UtcDaliRenderTaskIsExclusive02(), UtcDaliRenderTaskIsExclusiveN(), and UtcDaliRenderTaskSetExclusive().

Here is the call graph for this function:

Here is the caller graph for this function:

RenderTask & Dali::RenderTask::operator= ( const RenderTask rhs)

This assignment operator is required for (smart) pointer semantics.

.0

Parameters
[in]rhsA reference to the copied handle
Returns
A reference to this

Definition at line 69 of file render-task.cpp.

References Dali::BaseHandle::operator=().

Here is the call graph for this function:

void Dali::RenderTask::SetCameraActor ( CameraActor  cameraActor)
void Dali::RenderTask::SetClearColor ( const Vector4 color)
void Dali::RenderTask::SetClearEnabled ( bool  enabled)

Set whether the render-task will clear the results of previous render-tasks.

The default is false.

.0

Parameters
[in]enabledTrue if the render-task should clear.
Note
The default GL surface is cleared automatically at the beginning of each frame; this setting is only useful when 2+ render-tasks are used, and the result of the first task needs to be (partially) cleared before rendering the second.

Definition at line 198 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by anonymous_namespace{utc-Dali-RenderTask.cpp}::CreateRenderTask(), Dali::Toolkit::Internal::EmbossFilter::CreateRenderTasks(), Dali::Toolkit::Internal::SpreadFilter::CreateRenderTasks(), Dali::Toolkit::Internal::BlurTwoPassFilter::CreateRenderTasks(), Dali::Toolkit::Text::Clipper::Initialize(), Dali::Toolkit::Internal::Magnifier::InitializeRenderTask(), UtcDaliRenderTaskFinishInvisibleSourceActor(), UtcDaliRenderTaskFinishMissingImage(), UtcDaliRenderTaskSetClearEnabledN(), and UtcDaliRenderTaskSetClearEnabledP().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetCullMode ( bool  cullMode)

Set whether the render task will cull the actors to the camera's view frustum.

Note that this will only affect image actors that use the default vertex shader. The default mode is to cull actors. .0

Parameters
[in]cullModeTrue if the renderers should be culled.

Definition at line 208 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskSetCullModeN(), and UtcDaliRenderTaskSetCullModeP().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetExclusive ( bool  exclusive)
void Dali::RenderTask::SetInputEnabled ( bool  enabled)

Set whether the render-task should be considered for input handling; the default is true.

The task used for input handling will be last task in the RenderTaskList which has input enabled, and has a valid source & camera actor. A RenderTask targetting a frame-buffer can still be hit-tested, provided that the screen->frame-buffer coordinate conversion is successful; see also SetScreenToFrameBufferFunction(). .0

Parameters
[in]enabledTrue if the render-task should be considered for input handling.

Definition at line 233 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by anonymous_namespace{utc-Dali-RenderTask.cpp}::CreateRenderTask(), Dali::Toolkit::Internal::EmbossFilter::CreateRenderTasks(), Dali::Toolkit::Internal::SpreadFilter::CreateRenderTasks(), Dali::Toolkit::Internal::BlurTwoPassFilter::CreateRenderTasks(), Dali::Toolkit::Internal::Magnifier::InitializeRenderTask(), UtcDaliHitTestAlgorithmWithFunctorOnRenderTask(), UtcDaliHoverMultipleRenderTasks(), UtcDaliHoverMultipleRenderTasksWithChildLayer(), UtcDaliHoverOffscreenRenderTasks(), UtcDaliRenderTaskFinishInvisibleSourceActor(), UtcDaliRenderTaskFinishMissingImage(), UtcDaliRenderTaskSetInputEnabled(), UtcDaliRenderTaskSetScreenToFrameBufferMappingActor(), UtcDaliTouchMultipleRenderTasks(), UtcDaliTouchMultipleRenderTasksWithChildLayer(), and UtcDaliTouchOffscreenRenderTasks().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetRefreshRate ( unsigned int  refreshRate)

Set the refresh-rate of the RenderTask.

The default is REFRESH_ALWAYS (1), meaning that the RenderTask will be processed every frame if the scene graph is changing. It may be desirable to process less frequently. For example, SetRefreshRate(3) will process once every 3 frames if the scene graph is changing. If the scene graph is not changing, then the render task will not be rendered, regardless of this value.

The REFRESH_ONCE value means that the RenderTask will be processed once only, to take a snap-shot of the scene. Repeatedly calling SetRefreshRate(REFRESH_ONCE) will cause more snap-shots to be taken.

.0

Parameters
[in]refreshRateThe new refresh rate.

Definition at line 218 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by anonymous_namespace{utc-Dali-RenderTask.cpp}::CreateRenderTask(), Dali::Toolkit::Internal::EmbossFilter::CreateRenderTasks(), Dali::Toolkit::Internal::SpreadFilter::CreateRenderTasks(), Dali::Toolkit::Internal::BlurTwoPassFilter::CreateRenderTasks(), anonymous_namespace{utc-Dali-RenderTask.cpp}::RenderTaskFinishedRenderAgain::operator()(), Dali::Internal::RenderTaskList::RecoverFromContextLoss(), Dali::Toolkit::Internal::EmbossFilter::Refresh(), Dali::Toolkit::Internal::BlurTwoPassFilter::Refresh(), Dali::Toolkit::Internal::SpreadFilter::Refresh(), Dali::Toolkit::Text::Clipper::Refresh(), Dali::Toolkit::Internal::BubbleEmitter::SetBackground(), UtcDaliHitTestAlgorithmWithFunctorOnRenderTask(), UtcDaliRenderTaskFinishInvisibleSourceActor(), UtcDaliRenderTaskFinishMissingImage(), UtcDaliRenderTaskOnce03(), UtcDaliRenderTaskOnce04(), UtcDaliRenderTaskOnce05(), UtcDaliRenderTaskOnce07(), UtcDaliRenderTaskOnce08(), UtcDaliRenderTaskOnce09(), UtcDaliRenderTaskOnce10(), UtcDaliRenderTaskOnceNoSync03(), UtcDaliRenderTaskOnceNoSync04(), UtcDaliRenderTaskOnceNoSync05(), UtcDaliRenderTaskOnceNoSync07(), UtcDaliRenderTaskOnceNoSync08(), UtcDaliRenderTaskOnceNoSync09(), UtcDaliRenderTaskOnceNoSync10(), UtcDaliRenderTaskSetRefreshRate(), and UtcDaliRenderTaskSetScreenToFrameBufferMappingActor().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetScreenToFrameBufferFunction ( ScreenToFrameBufferFunction  conversionFunction)

Set the function used to convert screen coordinates to frame-buffer coordinates.

This is useful for hit-testing actors which are rendered off-screen. .0

Parameters
[in]conversionFunctionThe conversion function.

Definition at line 129 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by Dali::Toolkit::Internal::Builder::SetupTask(), UtcDaliHitTestAlgorithmWithFunctorOnRenderTask(), UtcDaliHoverOffscreenRenderTasks(), UtcDaliRenderTaskSetScreenToFrameBufferFunctionN(), UtcDaliRenderTaskSetScreenToFrameBufferFunctionP(), and UtcDaliTouchOffscreenRenderTasks().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetScreenToFrameBufferMappingActor ( Dali::Actor  mappingActor)

Set the actor used to convert screen coordinates to frame-buffer coordinates.

The local coordinates of the actor are mapped as frame-buffer coordinates. This is useful for hit-testing actors which are rendered off-screen. Note: The mapping actor needs to be rendered by the default render task to make the mapping work properly. .0

Parameters
[in]mappingActorThe actor used for conversion.

Definition at line 139 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskGetScreenToFrameBufferMappingActor02N(), UtcDaliRenderTaskGetScreenToFrameBufferMappingActorN(), UtcDaliRenderTaskGetScreenToFrameBufferMappingActorP(), and UtcDaliRenderTaskSetScreenToFrameBufferMappingActor().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetSourceActor ( Actor  actor)
void Dali::RenderTask::SetTargetFrameBuffer ( FrameBufferImage  frameBuffer)
void Dali::RenderTask::SetViewport ( Viewport  viewport)

Set the GL viewport used when rendering.

This specifies the transformation between normalized device coordinates and target window (or frame-buffer) coordinates. By default this will match the target window or frame-buffer size. .0

Parameters
[in]viewportThe new viewport.
Note
Unlike the glViewport method, the x & y coordinates refer to the top-left of the viewport rectangle.

Definition at line 176 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by Dali::Internal::Stage::SetSize(), Dali::Internal::Stage::SetViewMode(), UtcDaliHoverMultipleRenderTasks(), UtcDaliHoverMultipleRenderTasksWithChildLayer(), UtcDaliRenderTaskSetViewportN(), UtcDaliRenderTaskSetViewportP(), UtcDaliTouchMultipleRenderTasks(), and UtcDaliTouchMultipleRenderTasksWithChildLayer().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetViewportPosition ( Vector2  position)

Set the GL viewport position used when rendering.

This specifies the transformation between normalized device coordinates and target window (or frame-buffer) coordinates. By default this will match the target window or frame-buffer size. .0

Parameters
[in]positionThe viewports position (x,y)
Note
Unlike the glViewport method, the x & y coordinates refer to the top-left of the viewport rectangle.

Definition at line 156 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskSetViewportPosition().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::RenderTask::SetViewportSize ( Vector2  size)

Set the GL viewport size used when rendering.

This specifies the transformation between normalized device coordinates and target window (or frame-buffer) coordinates. By default this will match the target window or frame-buffer size. .0

Parameters
[in]sizeThe viewports size (width,height)

Definition at line 166 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskSetViewportSize().

Here is the call graph for this function:

Here is the caller graph for this function:

bool Dali::RenderTask::ViewportToLocal ( Actor  actor,
float  viewportX,
float  viewportY,
float &  localX,
float &  localY 
) const

Definition at line 248 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskViewportToLocal().

Here is the call graph for this function:

Here is the caller graph for this function:

bool Dali::RenderTask::WorldToViewport ( const Vector3 position,
float &  viewportX,
float &  viewportY 
) const

Definition at line 243 of file render-task.cpp.

References Dali::GetImplementation().

Referenced by UtcDaliRenderTaskWorldToViewport().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

const Vector4 Dali::RenderTask::DEFAULT_CLEAR_COLOR = Vector4( 0.0f, 0.0f, 0.0f, 1.0f )
static
const bool Dali::RenderTask::DEFAULT_CLEAR_ENABLED = false
static

false

Definition at line 151 of file render-task.h.

const bool Dali::RenderTask::DEFAULT_CULL_MODE = true
static

true

Definition at line 152 of file render-task.h.

const bool Dali::RenderTask::DEFAULT_EXCLUSIVE = false
static

false

Definition at line 148 of file render-task.h.

const bool Dali::RenderTask::DEFAULT_INPUT_ENABLED = true
static

true

Definition at line 149 of file render-task.h.

const unsigned int Dali::RenderTask::DEFAULT_REFRESH_RATE = REFRESH_ALWAYS
static

REFRESH_ALWAYS.

Definition at line 153 of file render-task.h.

RenderTask::ConstScreenToFrameBufferFunction Dali::RenderTask::DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION = DefaultScreenToFrameBufferFunction
static

The default conversion function returns false for any screen coordinates.

This effectively disables hit-testing for RenderTasks rendering to a frame buffer. See also FULLSCREEN_FRAMEBUFFER_FUNCTION below.

Definition at line 129 of file render-task.h.

Referenced by Dali::Toolkit::Internal::Builder::SetupTask(), and UtcDaliRenderTaskSetScreenToFrameBufferFunctionP().

RenderTask::ConstScreenToFrameBufferFunction Dali::RenderTask::FULLSCREEN_FRAMEBUFFER_FUNCTION = FullScreenFrameBufferFunction
static

This conversion function outputs the (unmodified) screen coordinates as frame-buffer coordinates.

Therefore the contents of an off-screen image is expected to be rendered "full screen".

Definition at line 136 of file render-task.h.

Referenced by Dali::Toolkit::Internal::Builder::SetupTask(), UtcDaliHitTestAlgorithmWithFunctorOnRenderTask(), UtcDaliHoverOffscreenRenderTasks(), UtcDaliRenderTaskSetScreenToFrameBufferFunctionP(), and UtcDaliTouchOffscreenRenderTasks().


The documentation for this class was generated from the following files:
Dali Docs Home
Read more about Dali