osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT > Struct Template Reference
[Functor1 Helper]

#include <OSGTypedFunctors2.h>

List of all members.

Public Types

typedef StoredObjCallArgT::ObjType ObjType
typedef CallArgT::ArgType ArgType
typedef StoredObjCallArgT::ArgType SetObjectT
typedef ObjTypeStoredObjectT
typedef ArgsT::Arg1T Arg2T
typedef
FunctorBuildObjFuncType2< RetT,
StoredObjCallArgT, CallArgT,
ArgsT >::ObjFuncType 
ObjMethodF

Static Public Member Functions

static void setCalledObject (Char8 *pData, SetObjectT obj)
static void callObjectMethodVoid (UInt8 *pData1, UInt8 *pData2, ArgType arg1, Arg2T arg2)
static RetT callObjectMethod (UInt8 *pData1, UInt8 *pData2, ArgType arg1, Arg2T arg2)


Detailed Description

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
struct osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >

Definition at line 119 of file OSGTypedFunctors2.h.


Member Typedef Documentation

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
typedef StoredObjCallArgT::ObjType osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::ObjType

Definition at line 121 of file OSGTypedFunctors2.h.

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
typedef CallArgT::ArgType osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::ArgType

Definition at line 123 of file OSGTypedFunctors2.h.

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
typedef StoredObjCallArgT::ArgType osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::SetObjectT

Definition at line 125 of file OSGTypedFunctors2.h.

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
typedef ObjType* osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::StoredObjectT

Definition at line 126 of file OSGTypedFunctors2.h.

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
typedef ArgsT::Arg1T osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::Arg2T

Definition at line 128 of file OSGTypedFunctors2.h.

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
typedef FunctorBuildObjFuncType2<RetT, StoredObjCallArgT, CallArgT, ArgsT >::ObjFuncType osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::ObjMethodF

Definition at line 134 of file OSGTypedFunctors2.h.


Member Function Documentation

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
static void osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::setCalledObject ( Char8 pData,
SetObjectT  obj 
) [inline, static]

Definition at line 137 of file OSGTypedFunctors2.h.

00138     {
00139         *((ObjType **) pData) = &(*obj);
00140     }

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
static void osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::callObjectMethodVoid ( UInt8 pData1,
UInt8 pData2,
ArgType  arg1,
Arg2T  arg2 
) [inline, static]

Definition at line 143 of file OSGTypedFunctors2.h.

Referenced by osg::TypedStoredObjectVoidFunctor2< StoredObjectT, ArgObjectT, ArgsT, SizeTraitsT >::call().

00147     {
00148         StoredObjectT pObj  = *((StoredObjectT *) pData1);
00149 
00150         ObjMethodF    pFunc = *((ObjMethodF     *) pData2);
00151         
00152         (pObj->*pFunc)(arg1, arg2);
00153     }

template<class RetT, class StoredObjCallArgT, class CallArgT, class ArgsT>
static RetT osg::TypedSOTraits2< RetT, StoredObjCallArgT, CallArgT, ArgsT >::callObjectMethod ( UInt8 pData1,
UInt8 pData2,
ArgType  arg1,
Arg2T  arg2 
) [inline, static]

Definition at line 155 of file OSGTypedFunctors2.h.

Referenced by osg::TypedStoredObjectFunctor2< RetT, StoredObjectT, ArgObjectT, ArgsT, SizeTraitsT >::call().

00159     {
00160         StoredObjectT pObj  = *((StoredObjectT *) pData1);
00161 
00162         ObjMethodF    pFunc = *((ObjMethodF     *) pData2);
00163         
00164         return (pObj->*pFunc)(arg1, arg2);
00165     }


The documentation for this struct was generated from the following file:

Generated on Mon Mar 17 12:03:44 2008 for OpenSG by  doxygen 1.5.5