Home -> IStateContainer

Declaration

class IStateContainer;

Description

The IStateContainer interface is a base interface, which is implemented by the IStateGroupNode, IRenderableNode, and IDefaultState types. The purpose of this interface is to define the set of methods that allow state values to be set, and resource bindings to be established. Since this functionality is shared by the IStateGroupNode and IRenderableNode node types, and the optional IDefaultState type that can be supplied when an IProgramNode is added to a IRenderPassNode, these methods are factored out to this common base interface so they can be easily shared and defined in a consistent manner.

As this is a base interface only, objects of type IStateContainer cannot be constructed or deleted directly. Only objects that implement this interface can be constructed or deleted.

Members

Resource binding methods

Name Description
Public member BindTextureWithCombinedSampler
Creates a texture resource binding with a combined image sampler for the current shader program
Public member BindTexture
Creates a texture resource binding for the current shader program
Public member UnbindTexture
Removes a previously established texture resource binding, with or without a combined image sampler.
Public member BindSampler
Creates a sampler resource binding for the current shader program
Public member UnbindSampler
Removes a previously established sampler binding for the current shader program
Public member BindStateBuffer
Creates a state buffer resource binding for the current shader program
Public member UnbindStateBuffer
Removes a previously established state buffer binding for the current shader program
Public member BindResourceArray
Creates a resource array binding for the current shader program
Public member UnbindResourceArray
Removes a previously established resource array binding for the current shader program

State value methods

Name Description
Public member SetStateValue
Sets the current target shader state variable to the specified value for this node and any child nodes
Public member ResetStateValue
Restores the target shader state variable to its inherited or default value

See also