State class for managing a state stack.
Inheritance:
Public Methods
-
State()
-
virtual ~State()
-
void pushStateSet(const StateSet* dstate)
- push stateset onto state stack
-
void popStateSet()
- pop drawstate off state stack
-
void captureCurrentState(StateSet& stateset) const
- copy the modes and attributes which captures the current state
-
void reset()
- reset the state object to an empty stack
-
inline const bool applyMode(const StateAttribute::GLMode mode, const bool enabled)
- apply an OpenGL mode if required.
-
inline const bool applyAttribute(const StateAttribute* attribute)
- apply an attribute if required.
-
inline void applyProjectionMatrix(const osg::Matrix* matrix)
-
const osg::Matrix& getProjectionMatrix() const
-
inline void applyModelViewMatrix(const osg::Matrix* matrix)
-
const osg::Matrix& getModelViewMatrix() const
-
ClippingVolume getClippingVolume() const
-
void apply(const StateSet* dstate)
- apply stateset
-
void apply()
- apply the state
-
void haveAppliedMode(const StateAttribute::GLMode mode, const StateAttribute::GLModeValue value)
- mode has been set externally, update state to reflect this setting
-
void haveAppliedMode(const StateAttribute::GLMode mode)
- mode has been set externally, therefore dirty the associated mode in osg::State so it is applied on next call to osg::State::apply()
-
void haveAppliedAttribute(const StateAttribute* attribute)
- attribute has been applied externally, update state to reflect this setting
-
void haveAppliedAttribute(const StateAttribute::Type type)
- attribute has been applied externally, and therefore this attribute type has been dirtied and will need to be re-appplied on next osg::Stateapply().
-
inline void setContextID(unsigned int contextID)
- Set the current OpenGL context uniqueID.
-
inline const unsigned int getContextID() const
- Get the current OpenGL context unique ID
-
inline void setFrameStamp(FrameStamp* fs)
- Set the frame stamp for the current frame
-
inline const FrameStamp* getFrameStamp() const
- Set the frame stamp for the current frame
-
inline void setDisplaySettings(DisplaySettings* vs)
- Set the DisplaySettings.
-
inline const DisplaySettings* getDisplaySettings() const
- Get the DisplaySettings
Public Methods
-
inline Referenced& operator = (Referenced&)
-
inline void ref() const
-
inline void unref() const
-
inline void unref_nodelete() const
-
inline const int referenceCount() const
Protected Fields
-
mutable int _refCount
Documentation
State class for managing a state stack.
Lazy state updating is used to minimize state changes.
- State()
- virtual ~State()
- void pushStateSet(const StateSet* dstate)
- push stateset onto state stack
- void popStateSet()
- pop drawstate off state stack
- void captureCurrentState(StateSet& stateset) const
- copy the modes and attributes which captures the current state
- void reset()
- reset the state object to an empty stack
- inline const bool applyMode(const StateAttribute::GLMode mode, const bool enabled)
- apply an OpenGL mode if required.
- inline const bool applyAttribute(const StateAttribute* attribute)
- apply an attribute if required.
- inline void applyProjectionMatrix(const osg::Matrix* matrix)
- const osg::Matrix& getProjectionMatrix() const
- inline void applyModelViewMatrix(const osg::Matrix* matrix)
- const osg::Matrix& getModelViewMatrix() const
- ClippingVolume getClippingVolume() const
- void apply(const StateSet* dstate)
- apply stateset
- void apply()
- apply the state
- void haveAppliedMode(const StateAttribute::GLMode mode, const StateAttribute::GLModeValue value)
- mode has been set externally, update state to reflect this setting
- void haveAppliedMode(const StateAttribute::GLMode mode)
- mode has been set externally, therefore dirty the associated mode in osg::State
so it is applied on next call to osg::State::apply()
- void haveAppliedAttribute(const StateAttribute* attribute)
- attribute has been applied externally, update state to reflect this setting
- void haveAppliedAttribute(const StateAttribute::Type type)
- attribute has been applied externally,
and therefore this attribute type has been dirtied
and will need to be re-appplied on next osg::Stateapply().
note, if you have an osg::StateAttribute which you have applied externally
then use the have_applied(attribute) method as this will the osg::State to
track the current state more accuratly and enable lazy state updating such
that only changed state will be applied.
- inline void setContextID(unsigned int contextID)
- Set the current OpenGL context uniqueID.
Note, it is the application developers responsibility to
set up unique ID for each OpenGL context. This value is
then used by osg::StateAttribure's and osg::Drawable's to
help manage OpenGL display list and texture binds appropriate
for each context.
- inline const unsigned int getContextID() const
- Get the current OpenGL context unique ID
- inline void setFrameStamp(FrameStamp* fs)
- Set the frame stamp for the current frame
- inline const FrameStamp* getFrameStamp() const
- Set the frame stamp for the current frame
- inline void setDisplaySettings(DisplaySettings* vs)
- Set the DisplaySettings. Note, nothing is applied, the visual settings are just used
used in the State object to pass the current visual settings to Drawables
during rendering.
- inline const DisplaySettings* getDisplaySettings() const
- Get the DisplaySettings
- ModeStack()
- bool changed
- bool last_applied_value
- bool global_default_value
- ValueVec valueVec
- AttributeStack()
- bool changed
- apply an attribute if required, passing in attribute and appropriate attribute stack
- const StateAttribute* last_applied_attribute
- ref_ptr<StateAttribute> global_default_attribute
- AttributeVec attributeVec
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.