Kanzi  3.9.6
Kanzi Engine API
kanzi::TypedRenderStatePropertyNotificationHandler< T > Class Template Reference

Specialized property state and value container for render state. More...

#include <kanzi/core.ui/platform/graphics_backend/gl/render_state_property_notification_handler.hpp>

Inheritance diagram for kanzi::TypedRenderStatePropertyNotificationHandler< T >:
[legend]

Public Member Functions

 TypedRenderStatePropertyNotificationHandler ()
 Empty constructor. More...
 
 TypedRenderStatePropertyNotificationHandler (AbstractPropertyType propertyType, Node *node)
 Constructor Has no handle. More...
 
 TypedRenderStatePropertyNotificationHandler (AbstractPropertyType propertyType, Node *node, GlRenderState::HandleType handle, ShaderProgram::UniformTransformation transformation)
 Constructor. More...
 
- Public Member Functions inherited from kanzi::RenderStatePropertyNotificationHandler
int getHandle () const
 Access handle. More...
 
void update (GlRenderState &renderState, PropertyObject *object, Material &material)
 Update render state with new values acquirable from this. More...
 
- Public Member Functions inherited from kanzi::RenderValuePropertyNotificationHandlerBase
bool isDirty () const
 Is the container dirty? More...
 
RenderValuePropertyNotificationHandlerBase & operator= (RenderValuePropertyNotificationHandlerBase &&other)
 Assignment operator. More...
 
void setDirty (bool enabled)
 Set dirty flag state. More...
 
- Public Member Functions inherited from kanzi::NodePropertyNotificationHandler
Node * getNode () const
 Access the node. More...
 
void invalidate ()
 Invalidates the state of the notification handler. More...
 
bool isValid () const
 Tell if this notification handler is valid. More...
 
- Public Member Functions inherited from kanzi::AbstractPropertyNotificationHandler
AbstractPropertyType getPropertyType () const
 Get the property type this handler is listening. More...
 

Static Public Member Functions

static RenderStatePropertyNotificationHandlerPtr create (AbstractPropertyType propertyType, Node *node, GlRenderState::HandleType handle, ShaderProgram::UniformTransformation transformation)
 Create a new render state property notification handler. More...
 

Protected Member Functions

void updateOverride (GlRenderState &renderState, PropertyObject *object, Material &material) override
 RenderStatePropertyNotificationHandler::updateOverride() implementation. More...
 
- Protected Member Functions inherited from kanzi::RenderStatePropertyNotificationHandler
 RenderStatePropertyNotificationHandler ()
 Empty constructor. More...
 
 RenderStatePropertyNotificationHandler (AbstractPropertyType propertyType, Node *node)
 Constructor Has no handle. More...
 
 RenderStatePropertyNotificationHandler (AbstractPropertyType propertyType, Node *node, GlRenderState::HandleType handle, ShaderProgram::UniformTransformation transformation)
 Constructor. More...
 
- Protected Member Functions inherited from kanzi::RenderValuePropertyNotificationHandlerBase
ShaderProgram::UniformTransformation getTransformation () const
 Gets the uniform transformation. More...
 
void onPropertyChanged (PropertyNotificationReason) override
 AbstractPropertyNotificationHandler::onPropertyChanged() implementation. More...
 
 RenderValuePropertyNotificationHandlerBase ()
 Empty constructor. More...
 
 RenderValuePropertyNotificationHandlerBase (AbstractPropertyType propertyType, Node *node)
 Constructor. More...
 
 RenderValuePropertyNotificationHandlerBase (AbstractPropertyType propertyType, Node *node, ShaderProgram::UniformTransformation transformation)
 Constructor. More...
 
 RenderValuePropertyNotificationHandlerBase (RenderValuePropertyNotificationHandlerBase &&other)
 Move constructor. More...
 
- Protected Member Functions inherited from kanzi::NodePropertyNotificationHandler
 NodePropertyNotificationHandler ()
 Empty constructor. More...
 
 NodePropertyNotificationHandler (const NodePropertyNotificationHandler &rhs)
 Copy constructor. More...
 
 NodePropertyNotificationHandler (AbstractPropertyType propertyType, Node *node)
 Constructor. More...
 
NodePropertyNotificationHandler & operator= (const NodePropertyNotificationHandler &rhs)
 Assignment operator. More...
 
 ~NodePropertyNotificationHandler () override
 Destructor. More...
 
- Protected Member Functions inherited from kanzi::AbstractPropertyNotificationHandler
 AbstractPropertyNotificationHandler ()
 Empty constructor. More...
 
 AbstractPropertyNotificationHandler (AbstractPropertyType propertyType)
 Constructor. More...
 
virtual ~AbstractPropertyNotificationHandler ()=default
 

Detailed Description

template<typename T>
class kanzi::TypedRenderStatePropertyNotificationHandler< T >

Specialized property state and value container for render state.

Constructor & Destructor Documentation

◆ TypedRenderStatePropertyNotificationHandler() [1/3]

Empty constructor.

◆ TypedRenderStatePropertyNotificationHandler() [2/3]

Constructor Has no handle.

Should only used for blend mode.

Parameters
propertyTypeProperty type to listen on.
nodeNode to listen for changes on.

◆ TypedRenderStatePropertyNotificationHandler() [3/3]

Constructor.

Parameters
propertyTypeProperty type to listen on.
nodeNode to listen for changes on.
handleHandle into the render state.
transformationUniform transformation.

Member Function Documentation

◆ create()

template<typename T >
static RenderStatePropertyNotificationHandlerPtr kanzi::TypedRenderStatePropertyNotificationHandler< T >::create ( AbstractPropertyType  propertyType,
Node *  node,
GlRenderState::HandleType  handle,
ShaderProgram::UniformTransformation  transformation 
)
inlinestatic

Create a new render state property notification handler.

Parameters
propertyTypeProperty type to listen on.
nodeNode to listen for changes on.
handleHandle into the render state.
transformationUniform transformation.

◆ updateOverride()

template<typename T >
void kanzi::TypedRenderStatePropertyNotificationHandler< T >::updateOverride ( GlRenderState &  renderState,
PropertyObject *  object,
Material &  material 
)
inlineoverrideprotectedvirtual

The documentation for this class was generated from the following file: