Dali 3D User Interface Engine
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes
Dali::Internal::SceneGraph::Renderer Class Reference

#include <scene-graph-renderer.h>

Inheritance diagram for Dali::Internal::SceneGraph::Renderer:
Inheritance graph
[legend]
Collaboration diagram for Dali::Internal::SceneGraph::Renderer:
Collaboration graph
[legend]

Public Types

enum  Opacity { OPAQUE, TRANSPARENT, TRANSLUCENT }
 

Public Member Functions

virtual ~Renderer ()
 Destructor. More...
 
void operator delete (void *ptr)
 Overriden delete operator Deletes the renderer from its global memory pool. More...
 
void SetMaterial (BufferIndex bufferIndex, Material *material)
 Set the material for the renderer. More...
 
MaterialGetMaterial ()
 Get the material of this renderer. More...
 
void SetGeometry (BufferIndex bufferIndex, Geometry *material)
 Set the geometry for the renderer. More...
 
GeometryGetGeometry ()
 Get the geometry of this renderer. More...
 
void SetDepthIndex (int depthIndex)
 Set the depth index. More...
 
int GetDepthIndex () const
 Get the depth index. More...
 
void SetFaceCullingMode (unsigned int faceCullingMode)
 Set the face culling mode. More...
 
void SetBlendingMode (unsigned int blendingMode)
 Set the blending mode. More...
 
void SetBlendingOptions (unsigned int options)
 Set the blending options. More...
 
void SetBlendColor (const Vector4 &blendColor)
 Set the blend color for blending operation. More...
 
void EnablePreMultipliedAlpha (bool preMultipled)
 Set whether the Pre-multiplied Alpha Blending is required. More...
 
void OnStageConnect ()
 Called when an actor with this renderer is added to the stage. More...
 
void OnStageDisconnect ()
 
void PrepareRender (BufferIndex updateBufferIndex)
 Prepare the object for rendering. More...
 
Render::RendererGetRenderer ()
 
void GetReadyAndComplete (bool &ready, bool &complete) const
 Check whether the renderer has been marked as ready to render ready means that renderer has all resources and should produce correct result complete means all resources have finished loading It's possible that renderer is complete but not ready, for example in case of resource load failed. More...
 
Opacity GetOpacity (BufferIndex updateBufferIndex, const Node &node) const
 Query whether the renderer is fully opaque, fully transparent or transparent. More...
 
bool IsReferenced () const
 Query whether the renderer is currently in use by an actor on the stage. More...
 
void ConnectToSceneGraph (SceneController &sceneController, BufferIndex bufferIndex)
 Connect the object to the scene graph. More...
 
void DisconnectFromSceneGraph (SceneController &sceneController, BufferIndex bufferIndex)
 Disconnect the object from the scene graph. More...
 
void AddConnectionObserver (ConnectionChangePropagator::Observer &observer)
  More...
 
void RemoveConnectionObserver (ConnectionChangePropagator::Observer &observer)
  More...
 
virtual void UniformMappingsChanged (const UniformMap &mappings)
  More...
 
virtual void ConnectionsChanged (PropertyOwner &owner)
 Inform the observers that the connections to the object have changed. More...
 
virtual void ConnectedUniformMapChanged ()
 Inform the observers that the uniform map of this or a connected object has changed. More...
 
virtual void ObservedObjectDestroyed (PropertyOwner &owner)
 Inform the observers that the uniform map of this or a connected object has changed. More...
 
virtual void ResetDefaultProperties (BufferIndex updateBufferIndex)
 Called after ResetToBaseValues; derived classes should reset any default properties. More...
 
virtual bool GetUniformMapChanged (BufferIndex bufferIndex) const
 Return true if the uniform map has been changed this frame Note, this only informs if the uniform mappings have changed, not if any actual property value has changed. More...
 
virtual const CollectedUniformMapGetUniformMap (BufferIndex bufferIndex) const
 Get the complete map of uniforms to property value addresses (The map is double buffered - it can be retrieved through this interface) More...
 
- Public Member Functions inherited from Dali::Internal::SceneGraph::PropertyOwner
virtual ~PropertyOwner ()
 Virtual destructor; this is intended as a base class. More...
 
void AddObserver (Observer &observer)
 Add an observer. More...
 
void RemoveObserver (Observer &observer)
 Remove an observer. More...
 
bool IsObserved ()
 This method can be used to determine if there is an animation or constraint that is using this property owner. More...
 
void Destroy ()
 Called just before destruction to disconnect all observers and remove constraints. More...
 
void ConnectToSceneGraph ()
 Notify all observers that the object has been connected This occurs when the object is connected to the scene-graph during UpdateManager::Update(). More...
 
void DisconnectFromSceneGraph (BufferIndex updateBufferIndex)
 Notify all observers that the object has been disconnected and remove constraints. More...
 
void InstallCustomProperty (PropertyBase *property)
 Install a custom property. More...
 
OwnedPropertyContainerGetCustomProperties ()
 Retrieve the custom properties owned by the object. More...
 
const OwnedPropertyContainerGetCustomProperties () const
 Retrieve the custom properties owned by the object. More...
 
void ResetToBaseValues (BufferIndex updateBufferIndex)
 Reset animatable properties to the corresponding base values. More...
 
void ApplyConstraint (ConstraintBase *constraint)
 Apply a constraint. More...
 
void RemoveConstraint (ConstraintBase *constraint)
 Begin removal of constraints. More...
 
ConstraintOwnerContainerGetConstraints ()
 Retrieve the constraints that are currently applied. More...
 
virtual void AddUniformMapping (UniformPropertyMapping *map)
 Add a map to the mappings table. More...
 
virtual void RemoveUniformMapping (const std::string &uniformName)
 Remove a map from the mappings table. More...
 
const UniformMapGetUniformMap () const
 Get the mappings table. More...
 
void AddUniformMapObserver (UniformMap::Observer &observer)
  More...
 
void RemoveUniformMapObserver (UniformMap::Observer &observer)
  More...
 
- Public Member Functions inherited from Dali::Internal::SceneGraph::UniformMapDataProvider
 UniformMapDataProvider ()
 Constructor. More...
 

Static Public Member Functions

static RendererNew ()
 Construct a new Renderer. More...
 
- Static Public Member Functions inherited from Dali::Internal::SceneGraph::PropertyOwner
static PropertyOwnerNew ()
 Create a property owner. More...
 

Public Attributes

int mDepthIndex
 Used only in PrepareRenderInstructions. More...
 

Private Member Functions

 Renderer ()
 Protected constructor; See also Renderer::New() More...
 
RenderDataProviderNewRenderDataProvider ()
 Helper function to create a new render data provider. More...
 

Private Attributes

SceneControllermSceneController
 Used for initializing renderers whilst attached. More...
 
Render::RenderermRenderer
 Raw pointer to the new renderer (that's owned by RenderManager) More...
 
MaterialmMaterial
 The material this renderer uses. (Not owned) More...
 
GeometrymGeometry
 The geometry this renderer uses. (Not owned) More...
 
Vector4mBlendColor
 The blend color for blending operation. More...
 
unsigned int mBlendBitmask
 The bitmask of blending options. More...
 
Dali::Renderer::FaceCullingMode mFaceCullingMode
 The mode of face culling. More...
 
BlendingMode::Type mBlendingMode
 The mode of blending. More...
 
CollectedUniformMap mCollectedUniformMap [2]
 Uniform maps collected by the renderer. More...
 
unsigned int mReferenceCount
 Number of nodes currently using this renderer. More...
 
unsigned int mRegenerateUniformMap
 2 if the map should be regenerated, 1 if it should be copied. More...
 
unsigned char mResendFlag
 Indicate whether data should be resent to the renderer. More...
 
bool mUniformMapChanged [2]
 Records if the uniform map has been altered this frame. More...
 
bool mResourcesReady
 Set during the Update algorithm; true if the attachment has resources ready for the current frame. More...
 
bool mFinishedResourceAcquisition
 Set during DoPrepareResources; true if ready & all resource acquisition has finished (successfully or otherwise) More...
 
bool mPremultipledAlphaEnabled
 Flag indicating whether the Pre-multiplied Alpha Blending is required. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Dali::Internal::SceneGraph::PropertyOwner
 PropertyOwner ()
 Protected constructor. More...
 
- Protected Member Functions inherited from Dali::Internal::SceneGraph::UniformMapDataProvider
virtual ~UniformMapDataProvider ()
 No deletion through this interface. More...
 
- Protected Attributes inherited from Dali::Internal::SceneGraph::PropertyOwner
OwnedPropertyContainer mCustomProperties
 Properties provided with InstallCustomProperty() More...
 
UniformMap mUniformMaps
 Container of owned uniform maps. More...
 

Detailed Description

Definition at line 52 of file scene-graph-renderer.h.

Member Enumeration Documentation

Enumerator
OPAQUE 
TRANSPARENT 
TRANSLUCENT 

Definition at line 59 of file scene-graph-renderer.h.

Constructor & Destructor Documentation

Dali::Internal::SceneGraph::Renderer::~Renderer ( )
virtual
Dali::Internal::SceneGraph::Renderer::Renderer ( )
private

Protected constructor; See also Renderer::New()

Definition at line 115 of file scene-graph-renderer.cpp.

References Dali::Internal::SceneGraph::PropertyOwner::AddUniformMapObserver(), and mUniformMapChanged.

Referenced by New().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Function Documentation

void Dali::Internal::SceneGraph::Renderer::AddConnectionObserver ( ConnectionChangePropagator::Observer observer)
inline

Definition at line 230 of file scene-graph-renderer.h.

void Dali::Internal::SceneGraph::Renderer::ConnectedUniformMapChanged ( )
virtual

Inform the observers that the uniform map of this or a connected object has changed.

Implements Dali::Internal::SceneGraph::ConnectionChangePropagator::Observer.

Definition at line 485 of file scene-graph-renderer.cpp.

References mRegenerateUniformMap, and anonymous_namespace{scene-graph-renderer.cpp}::REGENERATE_UNIFORM_MAP.

void Dali::Internal::SceneGraph::Renderer::ConnectionsChanged ( PropertyOwner owner)
virtual

Inform the observers that the connections to the object have changed.

Parameters
[in]objectThe connection owner

Implements Dali::Internal::SceneGraph::ConnectionChangePropagator::Observer.

Definition at line 475 of file scene-graph-renderer.cpp.

References mRegenerateUniformMap, mResendFlag, anonymous_namespace{scene-graph-renderer.cpp}::REGENERATE_UNIFORM_MAP, and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_DATA_PROVIDER.

void Dali::Internal::SceneGraph::Renderer::ConnectToSceneGraph ( SceneController sceneController,
BufferIndex  bufferIndex 
)

Connect the object to the scene graph.

Parameters
[in]sceneControllerThe scene controller - used for sending messages to render thread
[in]bufferIndexThe current buffer index - used for sending messages to render thread

Definition at line 376 of file scene-graph-renderer.cpp.

References mRegenerateUniformMap, mSceneController, and anonymous_namespace{scene-graph-renderer.cpp}::REGENERATE_UNIFORM_MAP.

void Dali::Internal::SceneGraph::Renderer::DisconnectFromSceneGraph ( SceneController sceneController,
BufferIndex  bufferIndex 
)

Disconnect the object from the scene graph.

Parameters
[in]sceneControllerThe scene controller - used for sending messages to render thread
[in]bufferIndexThe current buffer index - used for sending messages to render thread

Definition at line 384 of file scene-graph-renderer.cpp.

References Dali::Internal::SceneGraph::SceneController::GetRenderMessageDispatcher(), mRenderer, mSceneController, and Dali::Internal::SceneGraph::RenderMessageDispatcher::RemoveRenderer().

Here is the call graph for this function:

void Dali::Internal::SceneGraph::Renderer::EnablePreMultipliedAlpha ( bool  preMultipled)

Set whether the Pre-multiplied Alpha Blending is required.

Parameters
[in]preMultipledwhether alpha is pre-multiplied.

Definition at line 336 of file scene-graph-renderer.cpp.

References mPremultipledAlphaEnabled, mResendFlag, and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_PREMULTIPLIED_ALPHA.

Referenced by Dali::Internal::SceneGraph::SetEnablePreMultipliedAlphaMessage().

Here is the caller graph for this function:

int Dali::Internal::SceneGraph::Renderer::GetDepthIndex ( ) const
inline

Get the depth index.

Returns
The depth index

Definition at line 124 of file scene-graph-renderer.h.

References mDepthIndex.

Referenced by Dali::Internal::SceneGraph::AddRendererToRenderList().

Here is the caller graph for this function:

Geometry& Dali::Internal::SceneGraph::Renderer::GetGeometry ( )
inline

Get the geometry of this renderer.

Returns
the geometry this renderer uses

Definition at line 109 of file scene-graph-renderer.h.

References mGeometry.

Material& Dali::Internal::SceneGraph::Renderer::GetMaterial ( )
inline

Get the material of this renderer.

Returns
the material this renderer uses

Definition at line 93 of file scene-graph-renderer.h.

References mMaterial.

Referenced by Dali::Internal::SceneGraph::AddRendererToRenderList().

Here is the caller graph for this function:

Renderer::Opacity Dali::Internal::SceneGraph::Renderer::GetOpacity ( BufferIndex  updateBufferIndex,
const Node node 
) const

Query whether the renderer is fully opaque, fully transparent or transparent.

Parameters
[in]updateBufferIndexThe current update buffer index.
Returns
OPAQUE if fully opaque, TRANSPARENT if fully transparent and TRANSLUCENT if in between

Definition at line 430 of file scene-graph-renderer.cpp.

References Dali::Vector4::a, Dali::BlendingMode::AUTO, Dali::Internal::FULLY_OPAQUE, Dali::Internal::FULLY_TRANSPARENT, Dali::Internal::SceneGraph::Node::GetWorldColor(), Dali::Internal::SceneGraph::Material::IsTranslucent(), mBlendingMode, mMaterial, Dali::BlendingMode::OFF, Dali::BlendingMode::ON, OPAQUE, TRANSLUCENT, and TRANSPARENT.

Referenced by Dali::Internal::SceneGraph::AddRendererToRenderList().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::GetReadyAndComplete ( bool &  ready,
bool &  complete 
) const

Check whether the renderer has been marked as ready to render ready means that renderer has all resources and should produce correct result complete means all resources have finished loading It's possible that renderer is complete but not ready, for example in case of resource load failed.

Parameters
[out]readyTRUE if the renderer has resources to render
[out]completeTRUE if the renderer resources are complete

Definition at line 424 of file scene-graph-renderer.cpp.

References mFinishedResourceAcquisition, and mResourcesReady.

Referenced by Dali::Internal::SceneGraph::anonymous_namespace{process-render-tasks.cpp}::AddRenderablesForTask().

Here is the caller graph for this function:

Render::Renderer & Dali::Internal::SceneGraph::Renderer::GetRenderer ( )

Definition at line 414 of file scene-graph-renderer.cpp.

References mRenderer.

Referenced by Dali::Internal::SceneGraph::AddRendererToRenderList().

Here is the caller graph for this function:

const CollectedUniformMap & Dali::Internal::SceneGraph::Renderer::GetUniformMap ( BufferIndex  bufferIndex) const
virtual

Get the complete map of uniforms to property value addresses (The map is double buffered - it can be retrieved through this interface)

Parameters
[in]bufferIndexThe bufferIndex
Returns
the uniform map

Implements Dali::Internal::SceneGraph::UniformMapDataProvider.

Definition at line 419 of file scene-graph-renderer.cpp.

References mCollectedUniformMap.

virtual bool Dali::Internal::SceneGraph::Renderer::GetUniformMapChanged ( BufferIndex  bufferIndex) const
inlinevirtual

Return true if the uniform map has been changed this frame Note, this only informs if the uniform mappings have changed, not if any actual property value has changed.

Parameters
[in]bufferIndexThe buffer index
Returns
true if the uniform map has changed

Implements Dali::Internal::SceneGraph::UniformMapDataProvider.

Definition at line 274 of file scene-graph-renderer.h.

References mUniformMapChanged.

bool Dali::Internal::SceneGraph::Renderer::IsReferenced ( ) const
inline

Query whether the renderer is currently in use by an actor on the stage.

Definition at line 204 of file scene-graph-renderer.h.

References mReferenceCount.

Renderer * Dali::Internal::SceneGraph::Renderer::New ( )
static

Construct a new Renderer.

Definition at line 110 of file scene-graph-renderer.cpp.

References anonymous_namespace{scene-graph-renderer.cpp}::gRendererMemoryPool, and Renderer().

Referenced by Dali::Internal::Renderer::Initialize().

Here is the call graph for this function:

Here is the caller graph for this function:

RenderDataProvider * Dali::Internal::SceneGraph::Renderer::NewRenderDataProvider ( )
private
void Dali::Internal::SceneGraph::Renderer::ObservedObjectDestroyed ( PropertyOwner owner)
virtual

Inform the observers that the uniform map of this or a connected object has changed.

Reimplemented from Dali::Internal::SceneGraph::ConnectionChangePropagator::Observer.

Definition at line 496 of file scene-graph-renderer.cpp.

References mGeometry, and mMaterial.

void Dali::Internal::SceneGraph::Renderer::OnStageConnect ( )
void Dali::Internal::SceneGraph::Renderer::OnStageDisconnect ( )
void Dali::Internal::SceneGraph::Renderer::operator delete ( void *  ptr)

Overriden delete operator Deletes the renderer from its global memory pool.

Definition at line 152 of file scene-graph-renderer.cpp.

References anonymous_namespace{scene-graph-renderer.cpp}::gRendererMemoryPool.

void Dali::Internal::SceneGraph::Renderer::PrepareRender ( BufferIndex  updateBufferIndex)

Prepare the object for rendering.

This is called by the UpdateManager when an object is due to be rendered in the current frame.

Parameters
[in]updateBufferIndexThe current update buffer index.

Definition at line 158 of file scene-graph-renderer.cpp.

References anonymous_namespace{scene-graph-renderer.cpp}::AddMappings(), Dali::Vector< T, IsTrivialType >::Begin(), anonymous_namespace{scene-graph-renderer.cpp}::COPY_UNIFORM_MAP, Dali::VectorBase::Count(), DALI_ASSERT_DEBUG, Dali::Internal::Render::Renderer::EnablePreMultipliedAlpha(), Dali::Vector< T, IsTrivialType >::End(), Dali::Internal::SceneGraph::Geometry::GetRenderGeometry(), Dali::Internal::SceneGraph::SceneController::GetRenderQueue(), Dali::Internal::SceneGraph::Material::GetResourcesStatus(), Dali::Internal::SceneGraph::Material::GetShader(), Dali::Internal::SceneGraph::PropertyOwner::GetUniformMap(), Dali::Internal::SceneGraph::Geometry::GetVertexBuffers(), mBlendBitmask, mBlendColor, mCollectedUniformMap, mFaceCullingMode, mFinishedResourceAcquisition, mGeometry, mMaterial, mPremultipledAlphaEnabled, mRegenerateUniformMap, mRenderer, mResendFlag, mResourcesReady, mSceneController, mUniformMapChanged, NewRenderDataProvider(), anonymous_namespace{scene-graph-renderer.cpp}::REGENERATE_UNIFORM_MAP, anonymous_namespace{scene-graph-renderer.cpp}::RESEND_BLEND_BIT_MASK, anonymous_namespace{scene-graph-renderer.cpp}::RESEND_BLEND_COLOR, anonymous_namespace{scene-graph-renderer.cpp}::RESEND_DATA_PROVIDER, anonymous_namespace{scene-graph-renderer.cpp}::RESEND_FACE_CULLING_MODE, anonymous_namespace{scene-graph-renderer.cpp}::RESEND_GEOMETRY, anonymous_namespace{scene-graph-renderer.cpp}::RESEND_PREMULTIPLIED_ALPHA, Dali::Internal::SceneGraph::RenderQueue::ReserveMessageSlot(), Dali::Vector< T, IsTrivialType >::Resize(), Dali::Internal::Render::Renderer::SetBlendColor(), Dali::Internal::Render::Renderer::SetBlendingBitMask(), Dali::Internal::Render::Renderer::SetFaceCullingMode(), Dali::Internal::Render::Renderer::SetGeometry(), Dali::Internal::Render::Renderer::SetRenderDataProvider(), and anonymous_namespace{scene-graph-renderer.cpp}::UNIFORM_MAP_READY.

Here is the call graph for this function:

void Dali::Internal::SceneGraph::Renderer::RemoveConnectionObserver ( ConnectionChangePropagator::Observer observer)
inline

Definition at line 235 of file scene-graph-renderer.h.

virtual void Dali::Internal::SceneGraph::Renderer::ResetDefaultProperties ( BufferIndex  updateBufferIndex)
inlinevirtual

Called after ResetToBaseValues; derived classes should reset any default properties.

Parameters
[in]currentBufferIndexThe buffer to reset.

Reimplemented from Dali::Internal::SceneGraph::PropertyOwner.

Definition at line 267 of file scene-graph-renderer.h.

void Dali::Internal::SceneGraph::Renderer::SetBlendColor ( const Vector4 blendColor)

Set the blend color for blending operation.

Parameters
blendColorto pass to GL

Definition at line 322 of file scene-graph-renderer.cpp.

References mBlendColor, mResendFlag, and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_BLEND_COLOR.

Referenced by Dali::Internal::SceneGraph::SetBlendColorMessage().

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::SetBlendingMode ( unsigned int  blendingMode)

Set the blending mode.

Parameters
[in]blendingModeto use

Definition at line 308 of file scene-graph-renderer.cpp.

References mBlendingMode.

Referenced by Dali::Internal::SceneGraph::SetBlendingModeMessage().

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::SetBlendingOptions ( unsigned int  options)

Set the blending options.

This should only be called from the update thread.

Parameters
[in]optionsA bitmask of blending options.

Definition at line 313 of file scene-graph-renderer.cpp.

References mBlendBitmask, mResendFlag, and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_BLEND_BIT_MASK.

Referenced by Dali::Internal::SceneGraph::SetBlendingOptionsMessage().

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::SetDepthIndex ( int  depthIndex)

Set the depth index.

Parameters
[in]depthIndexthe new depth index to use

Definition at line 297 of file scene-graph-renderer.cpp.

References mDepthIndex.

Referenced by Dali::Internal::SceneGraph::SetDepthIndexMessage().

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::SetFaceCullingMode ( unsigned int  faceCullingMode)

Set the face culling mode.

Parameters
[in]faceCullingModeto use

Definition at line 302 of file scene-graph-renderer.cpp.

References mFaceCullingMode, mResendFlag, and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_FACE_CULLING_MODE.

Referenced by Dali::Internal::SceneGraph::SetFaceCullingModeMessage().

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::SetGeometry ( BufferIndex  bufferIndex,
Geometry material 
)

Set the geometry for the renderer.

Parameters
[in]bufferIndexThe current frame's buffer index
[in]geometryThe geometry this renderer will use

Definition at line 278 of file scene-graph-renderer.cpp.

References Dali::Internal::SceneGraph::Geometry::AddConnectionObserver(), DALI_ASSERT_DEBUG, mGeometry, mRegenerateUniformMap, mRenderer, mResendFlag, Dali::Internal::SceneGraph::Geometry::OnRendererDisconnect(), anonymous_namespace{scene-graph-renderer.cpp}::REGENERATE_UNIFORM_MAP, Dali::Internal::SceneGraph::Geometry::RemoveConnectionObserver(), and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_GEOMETRY.

Referenced by Dali::Internal::SceneGraph::SetGeometryMessage().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::SetMaterial ( BufferIndex  bufferIndex,
Material material 
)

Set the material for the renderer.

Parameters
[in]bufferIndexThe current frame's buffer index
[in]materialThe material this renderer will use

Definition at line 267 of file scene-graph-renderer.cpp.

References Dali::Internal::SceneGraph::Material::AddConnectionObserver(), DALI_ASSERT_DEBUG, mMaterial, mRegenerateUniformMap, mResendFlag, anonymous_namespace{scene-graph-renderer.cpp}::REGENERATE_UNIFORM_MAP, and anonymous_namespace{scene-graph-renderer.cpp}::RESEND_DATA_PROVIDER.

Referenced by Dali::Internal::SceneGraph::SetMaterialMessage().

Here is the call graph for this function:

Here is the caller graph for this function:

void Dali::Internal::SceneGraph::Renderer::UniformMappingsChanged ( const UniformMap mappings)
virtual

Member Data Documentation

unsigned int Dali::Internal::SceneGraph::Renderer::mBlendBitmask
private

The bitmask of blending options.

Definition at line 302 of file scene-graph-renderer.h.

Referenced by OnStageConnect(), PrepareRender(), and SetBlendingOptions().

Vector4* Dali::Internal::SceneGraph::Renderer::mBlendColor
private

The blend color for blending operation.

Definition at line 301 of file scene-graph-renderer.h.

Referenced by OnStageConnect(), PrepareRender(), and SetBlendColor().

BlendingMode::Type Dali::Internal::SceneGraph::Renderer::mBlendingMode
private

The mode of blending.

Definition at line 304 of file scene-graph-renderer.h.

Referenced by GetOpacity(), and SetBlendingMode().

CollectedUniformMap Dali::Internal::SceneGraph::Renderer::mCollectedUniformMap[2]
private

Uniform maps collected by the renderer.

Definition at line 306 of file scene-graph-renderer.h.

Referenced by GetUniformMap(), and PrepareRender().

int Dali::Internal::SceneGraph::Renderer::mDepthIndex

Used only in PrepareRenderInstructions.

Definition at line 316 of file scene-graph-renderer.h.

Referenced by GetDepthIndex(), and SetDepthIndex().

Dali::Renderer::FaceCullingMode Dali::Internal::SceneGraph::Renderer::mFaceCullingMode
private

The mode of face culling.

Definition at line 303 of file scene-graph-renderer.h.

Referenced by OnStageConnect(), PrepareRender(), and SetFaceCullingMode().

bool Dali::Internal::SceneGraph::Renderer::mFinishedResourceAcquisition
private

Set during DoPrepareResources; true if ready & all resource acquisition has finished (successfully or otherwise)

Definition at line 312 of file scene-graph-renderer.h.

Referenced by GetReadyAndComplete(), and PrepareRender().

Geometry* Dali::Internal::SceneGraph::Renderer::mGeometry
private

The geometry this renderer uses. (Not owned)

Definition at line 299 of file scene-graph-renderer.h.

Referenced by GetGeometry(), ObservedObjectDestroyed(), OnStageConnect(), OnStageDisconnect(), PrepareRender(), SetGeometry(), and ~Renderer().

Material* Dali::Internal::SceneGraph::Renderer::mMaterial
private

The material this renderer uses. (Not owned)

Definition at line 298 of file scene-graph-renderer.h.

Referenced by GetMaterial(), GetOpacity(), NewRenderDataProvider(), ObservedObjectDestroyed(), PrepareRender(), SetMaterial(), and ~Renderer().

bool Dali::Internal::SceneGraph::Renderer::mPremultipledAlphaEnabled
private

Flag indicating whether the Pre-multiplied Alpha Blending is required.

Definition at line 313 of file scene-graph-renderer.h.

Referenced by EnablePreMultipliedAlpha(), OnStageConnect(), and PrepareRender().

unsigned int Dali::Internal::SceneGraph::Renderer::mReferenceCount
private

Number of nodes currently using this renderer.

Definition at line 307 of file scene-graph-renderer.h.

Referenced by IsReferenced(), OnStageConnect(), and OnStageDisconnect().

unsigned int Dali::Internal::SceneGraph::Renderer::mRegenerateUniformMap
private

2 if the map should be regenerated, 1 if it should be copied.

Definition at line 308 of file scene-graph-renderer.h.

Referenced by ConnectedUniformMapChanged(), ConnectionsChanged(), ConnectToSceneGraph(), PrepareRender(), SetGeometry(), SetMaterial(), and UniformMappingsChanged().

Render::Renderer* Dali::Internal::SceneGraph::Renderer::mRenderer
private

Raw pointer to the new renderer (that's owned by RenderManager)

Definition at line 297 of file scene-graph-renderer.h.

Referenced by DisconnectFromSceneGraph(), GetRenderer(), OnStageConnect(), OnStageDisconnect(), PrepareRender(), and SetGeometry().

unsigned char Dali::Internal::SceneGraph::Renderer::mResendFlag
private

Indicate whether data should be resent to the renderer.

Definition at line 309 of file scene-graph-renderer.h.

Referenced by ConnectionsChanged(), EnablePreMultipliedAlpha(), OnStageConnect(), PrepareRender(), SetBlendColor(), SetBlendingOptions(), SetFaceCullingMode(), SetGeometry(), and SetMaterial().

bool Dali::Internal::SceneGraph::Renderer::mResourcesReady
private

Set during the Update algorithm; true if the attachment has resources ready for the current frame.

Definition at line 311 of file scene-graph-renderer.h.

Referenced by GetReadyAndComplete(), and PrepareRender().

SceneController* Dali::Internal::SceneGraph::Renderer::mSceneController
private

Used for initializing renderers whilst attached.

Definition at line 296 of file scene-graph-renderer.h.

Referenced by ConnectToSceneGraph(), DisconnectFromSceneGraph(), OnStageConnect(), OnStageDisconnect(), and PrepareRender().

bool Dali::Internal::SceneGraph::Renderer::mUniformMapChanged[2]
private

Records if the uniform map has been altered this frame.

Definition at line 310 of file scene-graph-renderer.h.

Referenced by GetUniformMapChanged(), PrepareRender(), and Renderer().


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