All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
SurgSim::Graphics::OsgUniform< T > Class Template Reference

OSG implementation of graphics uniform with a value of type T. More...

#include <SurgSim/Graphics/OsgCamera.h>

Inheritance diagram for SurgSim::Graphics::OsgUniform< T >:
Inheritance graph
[legend]
Collaboration diagram for SurgSim::Graphics::OsgUniform< T >:
Collaboration graph
[legend]

Public Member Functions

 OsgUniform (const std::string &name)
 Constructor. More...
 
virtual void set (const T &value)
 Sets the value of the uniform. More...
 
virtual const T & get () const
 Returns the value of the uniform. More...
 
- Public Member Functions inherited from SurgSim::Graphics::Uniform< T >
 Uniform ()
 
- Public Member Functions inherited from SurgSim::Graphics::UniformBase
virtual ~UniformBase ()=0
 Destructor. More...
 
- Public Member Functions inherited from SurgSim::Framework::Accessible
 Accessible ()
 Default Constructor. More...
 
 ~Accessible ()
 Destructor. More...
 
template<class T >
getValue (const std::string &name) const
 Retrieves the value with the name by executing the getter if it is found and tries to convert it to the given type. More...
 
boost::any getValue (const std::string &name) const
 Retrieves the value with the name by executing the getter if it is found. More...
 
template<class T >
bool getValue (const std::string &name, T *value) const
 Retrieves the value with the name by executing the getter if it is found, and converts it to the type of the output parameter. More...
 
void setValue (const std::string &name, const boost::any &value)
 Sets a value of a property that has setter. More...
 
bool isReadable (const std::string &name) const
 Check whether a property is readable. More...
 
bool isWriteable (const std::string &name) const
 Check whether a property is writable. More...
 
void setGetter (const std::string &name, GetterType func)
 Sets a getter for a given property. More...
 
void setSetter (const std::string &name, SetterType func)
 Sets a setter for a given property. More...
 
void setAccessors (const std::string &name, GetterType getter, SetterType setter)
 Sets the accessors getter and setter in one function. More...
 
void removeAccessors (const std::string &name)
 Removes all the accessors (getter and setter) for a given property. More...
 
void forwardProperty (const std::string &name, const Accessible &target, const std::string &targetProperty)
 Adds a property with the given name that uses the targets accessors, in effect forwarding the value to the target. More...
 
void setSerializable (const std::string &name, EncoderType encoder, DecoderType decoder)
 Sets the functions used to convert data from and to a YAML::Node. More...
 
YAML::Node encode () const
 Encode this Accessible to a YAML::Node. More...
 
void decode (const YAML::Node &node)
 Decode this Accessible from a YAML::Node, will throw an exception if the data type cannot be converted. More...
 
template<>
boost::any getValue (const std::string &name) const
 
- Public Member Functions inherited from SurgSim::Graphics::OsgUniformBase
const std::string & getName () const
 Returns the name used in shader code to access this uniform. More...
 
virtual void addToStateSet (osg::StateSet *stateSet)
 Adds this uniform to the OSG state set. More...
 
virtual void removeFromStateSet (osg::StateSet *stateSet)
 Removes this uniform from the OSG state set. More...
 
osg::ref_ptr< osg::Uniform > getOsgUniform () const
 Returns the OSG uniform node. More...
 

Private Attributes

m_value
 Value of the uniform. More...
 

Additional Inherited Members

- Public Types inherited from SurgSim::Framework::Accessible
typedef std::function
< boost::any(void)> 
GetterType
 
typedef std::function< void(boost::any)> SetterType
 
typedef std::function
< YAML::Node(void)> 
EncoderType
 
typedef std::function< void(const
YAML::Node *)> 
DecoderType
 
- Protected Member Functions inherited from SurgSim::Graphics::OsgUniformBase
 OsgUniformBase (const std::string &name)
 Constructor. More...
 
- Protected Attributes inherited from SurgSim::Graphics::OsgUniformBase
osg::ref_ptr< osg::Uniform > m_uniform
 OSG uniform node. More...
 

Detailed Description

template<class T>
class SurgSim::Graphics::OsgUniform< T >

OSG implementation of graphics uniform with a value of type T.

Template Parameters
Valuetype

Constructor & Destructor Documentation

template<class T >
SurgSim::Graphics::OsgUniform< T >::OsgUniform ( const std::string &  name)
explicit

Constructor.

Parameters
nameName used in shader code to access this uniform

Member Function Documentation

template<class T >
const T & SurgSim::Graphics::OsgUniform< T >::get ( ) const
virtual

Returns the value of the uniform.

Implements SurgSim::Graphics::Uniform< T >.

template<class T >
void SurgSim::Graphics::OsgUniform< T >::set ( const T &  value)
virtual

Sets the value of the uniform.

Implements SurgSim::Graphics::Uniform< T >.

Member Data Documentation

template<class T >
T SurgSim::Graphics::OsgUniform< T >::m_value
private

Value of the uniform.


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