OpenSceneGraph 3.6.5
Classes | Namespaces | Macros
ObjectWrapper File Reference
#include <OpenThreads/ReentrantMutex>
#include <osgDB/Serializer>
#include <osg/ScriptEngine>

Go to the source code of this file.

Classes

struct  osgDB::MethodObject
 
class  osgDB::BaseCompressor
 
struct  osgDB::FinishedObjectReadCallback
 
struct  osgDB::ObjectWrapperAssociate
 
class  osgDB::ObjectWrapper
 
struct  osgDB::UpdateWrapperVersionProxy
 
class  osgDB::ObjectWrapperManager
 
class  osgDB::RegisterWrapperProxy
 
class  osgDB::RegisterCustomWrapperProxy
 
class  osgDB::RegisterCompressorProxy
 

Namespaces

namespace  osgDB
 The osgDB library provides support for reading and writing scene graphs, providing a plugin framework and file utility classes.
 

Macros

#define OSGDB_OBJECTWRAPPER
 
#define REGISTER_OBJECT_WRAPPER(NAME, CREATEINSTANCE, CLASS, ASSOCIATES)
 
#define REGISTER_OBJECT_WRAPPER2(NAME, CREATEINSTANCE, CLASS, CLASSNAME, ASSOCIATES)
 
#define REGISTER_CUSTOM_OBJECT_WRAPPER(DOMAIN, NAME, CREATEINSTANCE, CLASS, ASSOCIATES)
 
#define REGISTER_CUSTOM_OBJECT_WRAPPER2(DOMAIN, NAME, CREATEINSTANCE, CLASS, CLASSNAME, ASSOCIATES)
 
#define REGISTER_COMPRESSOR(NAME, CLASS)
 

Macro Definition Documentation

◆ OSGDB_OBJECTWRAPPER

#define OSGDB_OBJECTWRAPPER

◆ REGISTER_COMPRESSOR

#define REGISTER_COMPRESSOR ( NAME,
CLASS )
Value:
extern "C" void wrapper_compressor_##CLASS(void) {} \
static osgDB::RegisterCompressorProxy compressor_proxy_##CLASS(NAME, new CLASS);

◆ REGISTER_CUSTOM_OBJECT_WRAPPER

#define REGISTER_CUSTOM_OBJECT_WRAPPER ( DOMAIN,
NAME,
CREATEINSTANCE,
CLASS,
ASSOCIATES )
Value:
extern "C" void wrapper_serializer_##NAME(void) {} \
extern void wrapper_propfunc_##NAME(const char*, osgDB::ObjectWrapper*); \
static osg::Object* wrapper_createinstancefunc##NAME() { return CREATEINSTANCE; } \
static osgDB::RegisterCustomWrapperProxy wrapper_proxy_##NAME( \
wrapper_createinstancefunc##NAME, #DOMAIN, #CLASS, ASSOCIATES, &wrapper_propfunc_##NAME); \
typedef CLASS MyClass; \
void wrapper_propfunc_##NAME(const char* domain, osgDB::ObjectWrapper* wrapper)

◆ REGISTER_CUSTOM_OBJECT_WRAPPER2

#define REGISTER_CUSTOM_OBJECT_WRAPPER2 ( DOMAIN,
NAME,
CREATEINSTANCE,
CLASS,
CLASSNAME,
ASSOCIATES )
Value:
extern "C" void wrapper_serializer_##NAME(void) {} \
extern void wrapper_propfunc_##NAME(const char*, osgDB::ObjectWrapper*); \
static osg::Object* wrapper_createinstancefunc##NAME() { return CREATEINSTANCE; } \
static osgDB::RegisterCustomWrapperProxy wrapper_proxy_##NAME( \
wrapper_createinstancefunc##NAME, #DOMAIN, CLASSNAME, ASSOCIATES, &wrapper_propfunc_##NAME); \
typedef CLASS MyClass; \
void wrapper_propfunc_##NAME(const char* domain, osgDB::ObjectWrapper* wrapper)

◆ REGISTER_OBJECT_WRAPPER

#define REGISTER_OBJECT_WRAPPER ( NAME,
CREATEINSTANCE,
CLASS,
ASSOCIATES )
Value:
extern "C" void wrapper_serializer_##NAME(void) {} \
extern void wrapper_propfunc_##NAME(osgDB::ObjectWrapper*); \
static osg::Object* wrapper_createinstancefunc##NAME() { return CREATEINSTANCE; } \
static osgDB::RegisterWrapperProxy wrapper_proxy_##NAME( \
wrapper_createinstancefunc##NAME, #CLASS, ASSOCIATES, &wrapper_propfunc_##NAME); \
typedef CLASS MyClass; \
void wrapper_propfunc_##NAME(osgDB::ObjectWrapper* wrapper)

◆ REGISTER_OBJECT_WRAPPER2

#define REGISTER_OBJECT_WRAPPER2 ( NAME,
CREATEINSTANCE,
CLASS,
CLASSNAME,
ASSOCIATES )
Value:
extern "C" void wrapper_serializer_##NAME(void) {} \
extern void wrapper_propfunc_##NAME(osgDB::ObjectWrapper*); \
static osg::Object* wrapper_createinstancefunc##NAME() { return CREATEINSTANCE; } \
static osgDB::RegisterWrapperProxy wrapper_proxy_##NAME( \
wrapper_createinstancefunc##NAME, CLASSNAME, ASSOCIATES, &wrapper_propfunc_##NAME); \
typedef CLASS MyClass; \
void wrapper_propfunc_##NAME(osgDB::ObjectWrapper* wrapper)

osg logo
Generated at Mon Jan 22 2024 00:00:00 for the OpenSceneGraph by doxygen 1.10.0.