#include <osg/Export>
#include <osg/Object>
#include <osg/GL>
#include <typeinfo>
#include <utility>
#include <vector>
Namespaces | |
namespace | osg |
Defines | |
#define | OSG_STATEATTRIBUTE 1 |
#define | GL_COLOR_SUM 0x8458 |
#define | META_StateAttribute(library, name, type) |
META_StateAttribute macro define the standard clone, isSameKindAs, className and getType methods. | |
#define | COMPARE_StateAttribute_Types(TYPE, rhs_attribute) |
COMPARE_StateAttribute_Types macro is a helper for implementing the StateAtribute::compare(..) method. | |
#define | COMPARE_StateAttribute_Parameter(parameter) |
COMPARE_StateAttribute_Parameter macro is a helper for implementing the StatateAtribute::compare(..) method. |
|
Value: if (parameter<rhs.parameter) return -1; \ if (rhs.parameter<parameter) return 1; Macro assumes that variable rhs has been correctly defined by preceding code macro. |
|
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);
|
|
|
|
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; } Use when subclassing from Object to make it more convenient to define the standard pure virtual methods which are required for all Object subclasses. |
|
|