OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Macros
StateAttribute.h File Reference
#include <osg/Export>
#include <osg/Object>
#include <osg/Callback>
#include <osg/Shader>
#include <osg/GL>
#include <typeinfo>
#include <utility>
#include <vector>
Include dependency graph for StateAttribute.h:

Go to the source code of this file.

Classes

class  osg::StateAttribute
 
struct  osg::StateAttribute::ModeUsage
 

Namespaces

 osg
 

Macros

#define GL_COLOR_SUM   0x8458
 
#define META_StateAttribute(library, name, type)
 
#define COMPARE_StateAttribute_Types(TYPE, rhs_attribute)
 
#define COMPARE_StateAttribute_Parameter(parameter)
 

Macro Definition Documentation

#define COMPARE_StateAttribute_Parameter (   parameter)
Value:
if (parameter<rhs.parameter) return -1; \
if (rhs.parameter<parameter) return 1;

COMPARE_StateAttribute_Parameter macro is a helper for implementing the StatateAtribute::compare(..) method. Macro assumes that variable rhs has been correctly defined by preceding code macro.

Definition at line 69 of file StateAttribute.h.

#define COMPARE_StateAttribute_Types (   TYPE,
  rhs_attribute 
)
Value:
if (this==&rhs_attribute) return 0;\
const std::type_info* type_lhs = &typeid(*this);\
const std::type_info* type_rhs = &typeid(rhs_attribute);\
if (type_lhs->before(*type_rhs)) return -1;\
if (*type_lhs != *type_rhs) return 1;\
const TYPE& rhs = static_cast<const TYPE&>(rhs_attribute);

COMPARE_StateAttribute_Types macro is a helper for implementing the StateAtribute::compare(..) method.

Definition at line 57 of file StateAttribute.h.

#define GL_COLOR_SUM   0x8458

Definition at line 30 of file StateAttribute.h.

#define META_StateAttribute (   library,
  name,
  type 
)
Value:
virtual osg::Object* cloneType() const { return new name(); } \
virtual osg::Object* clone(const osg::CopyOp& copyop) const { return new name (*this,copyop); } \
virtual bool isSameKindAs(const osg::Object* obj) const { return dynamic_cast<const name *>(obj)!=NULL; } \
virtual const char* libraryName() const { return #library; } \
virtual const char* className() const { return #name; } \
virtual Type getType() const { return type; }
#define NULL
Definition: Export.h:59
T * clone(const T *t, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
Definition: Object.h:242
T * cloneType(const T *t)
Definition: Object.h:284
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum GLenum type
Definition: GLU.h:71

META_StateAttribute macro define the standard clone, isSameKindAs, className and getType methods. Use when subclassing from Object to make it more convenient to define the standard pure virtual methods which are required for all Object subclasses.

Definition at line 48 of file StateAttribute.h.