Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT > Class Template Reference
[Functors]

#include <OSGTypedFunctors1.h>

Inheritance diagram for osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >:

osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT >, TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > > osg::TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > osg::TypedFunctorBase< SizeTraitsT > osg::FunctorBase< SizeTraitsT > List of all members.

Types

typedef TypedStoredObjectFunctorBase<
TypedFunctor1Base< RetT,
ArgsT, SizeTraitsT >, TypedSOTraits1<
RetT, StoredObjectT, typename
ArgsT::ArgsC > > 
Inherited
typedef TypedStoredObjectFunctor1<
RetT, StoredObjectT, ArgsT,
SizeTraitsT > 
Self
*typedef TypedSOTraits1< RetT,
StoredObjectT, typename ArgsT::ArgsC > 
TypeTraits

Public Types

typedef TypedSOTraits1< RetT,
StoredObjectT, ArgsT::ArgsC
>::SetObjectT 
SetObjectT

Public Member Functions

TypedStoredObjectFunctorBase (void)
 TypedStoredObjectFunctorBase (const TypedStoredObjectFunctorBase &source)
*void setMethod (ObjMethodF pFunc)
void setCalledObject (SetObjectT pObj)
void setObjectAndMethod (SetObjectT pObj, ObjMethodF pFunc)
TypedFunctor1Base (void)
 TypedFunctor1Base (const TypedFunctor1Base &source)
Constructors
TypedStoredObjectFunctor1 (void)
 TypedStoredObjectFunctor1 (const TypedStoredObjectFunctor1 &source)
Destructor
*virtual ~TypedStoredObjectFunctor1 (void)
Call
*virtual RetT call (CallArgType obj)

Public Attributes

*typedef TypedSOTraits1< RetT,
StoredObjectT, ArgsT::ArgsC
>::ObjMethodF 
ObjMethodF
Types
*typedef ArgsT::ArgType CallArgType

Protected Member Functions

Helper
*void postCopyConstruct (const TypedFunctorBase &source)

Protected Attributes

Members
*UInt8 _data1 [SizeTraitsT::_uiObjectSize]
UInt8 _data2 [SizeTraitsT::_uiFuncPointerSize]
UInt8 _flags

Static Protected Attributes

Constants
*static const UInt8 ObjectValid = 0x01
static const UInt8 FuncPtrValid = 0x02
static const UInt8 FunctorActive = 0x80

Private Member Functions

Operators
*void operator= (const TypedStoredObjectFunctor1 &source)
 prohibit default function (move to 'public' if needed)

Detailed Description

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT = DefaultFunctorSizeTraits>
class osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >

Definition at line 684 of file OSGTypedFunctors1.h.


Member Typedef Documentation

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT = DefaultFunctorSizeTraits>
typedef TypedStoredObjectFunctorBase< TypedFunctor1Base<RetT, ArgsT, SizeTraitsT>, TypedSOTraits1 <RetT, StoredObjectT, typename ArgsT::ArgsC> > osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::Inherited [private]
 

Reimplemented from osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT >, TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >.

Definition at line 749 of file OSGTypedFunctors1.h.

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT = DefaultFunctorSizeTraits>
typedef TypedStoredObjectFunctor1<RetT, StoredObjectT, ArgsT, SizeTraitsT > osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::Self [private]
 

Reimplemented from osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT >, TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >.

Definition at line 755 of file OSGTypedFunctors1.h.

typedef TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > ::SetObjectT osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::SetObjectT [inherited]
 

Definition at line 297 of file OSGTypedFunctorBase.h.


Constructor & Destructor Documentation

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT>
osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::TypedStoredObjectFunctor1 void   )  [inline]
 

Definition at line 441 of file OSGTypedFunctors1.inl.

00441                                                                       :
00442     Inherited()
00443 {
00444 }

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT>
osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::TypedStoredObjectFunctor1 const TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT > &  source  )  [inline]
 

Definition at line 454 of file OSGTypedFunctors1.inl.

00455                                              : 
00456 
00457     Inherited(source) 
00458 {
00459 }

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT>
osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::~TypedStoredObjectFunctor1 void   )  [inline, virtual]
 

Definition at line 469 of file OSGTypedFunctors1.inl.

00470 {
00471 }


Member Function Documentation

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT>
RetT osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::call CallArgType  obj  )  [inline, virtual]
 

Reimplemented from osg::TypedFunctor1Base< RetT, ArgsT, SizeTraitsT >.

Definition at line 485 of file OSGTypedFunctors1.inl.

00486 { 
00487     if(Self::_flags & Self::FuncPtrValid &&
00488        Self::_flags & Self::ObjectValid)
00489     {
00490         return TypeTraits::callObjectMethod(Self::_data1, Self::_data2, obj);
00491     }
00492     else
00493     {
00494         return RetT();
00495     }
00496 }

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT = DefaultFunctorSizeTraits>
* void osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::operator= const TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT > &  source  )  [private]
 

* osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::TypedStoredObjectFunctorBase void   )  [inherited]
 

osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::TypedStoredObjectFunctorBase const TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT >, TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > > &  source  )  [inherited]
 

* void osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::setMethod ObjMethodF  pFunc  )  [inherited]
 

void osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::setCalledObject SetObjectT  pObj  )  [inherited]
 

void osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::setObjectAndMethod SetObjectT  pObj,
ObjMethodF  pFunc
[inherited]
 

* osg::TypedFunctor1Base< RetT , ArgsT , SizeTraitsT >::TypedFunctor1Base void   )  [inherited]
 

osg::TypedFunctor1Base< RetT , ArgsT , SizeTraitsT >::TypedFunctor1Base const TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > &  source  )  [inherited]
 

template<class SizeTraitsT>
void osg::TypedFunctorBase< SizeTraitsT >::postCopyConstruct const TypedFunctorBase< SizeTraitsT > &  source  )  [inline, protected, inherited]
 

Definition at line 93 of file OSGTypedFunctorBase.inl.

Referenced by osg::TypedVoidFunctor1Base< CallArgT, SizeTraitsT >::TypedVoidFunctor1Base().

00095 {
00096     memcpy(this, &source, 
00097            sizeof(TypedFunctorBase<SizeTraitsT>)); 
00098 }


Member Data Documentation

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT = DefaultFunctorSizeTraits>
* typedef ArgsT::ArgType osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::CallArgType
 

Reimplemented from osg::TypedFunctor1Base< RetT, ArgsT, SizeTraitsT >.

Definition at line 701 of file OSGTypedFunctors1.h.

template<class RetT, class StoredObjectT, class ArgsT, class SizeTraitsT = DefaultFunctorSizeTraits>
* typedef TypedSOTraits1<RetT, StoredObjectT, typename ArgsT::ArgsC> osg::TypedStoredObjectFunctor1< RetT, StoredObjectT, ArgsT, SizeTraitsT >::TypeTraits [private]
 

Definition at line 740 of file OSGTypedFunctors1.h.

* typedef TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > ::ObjMethodF osg::TypedStoredObjectFunctorBase< TypedFunctor1Base< RetT, ArgsT, SizeTraitsT > , TypedSOTraits1< RetT, StoredObjectT, ArgsT::ArgsC > >::ObjMethodF [inherited]
 

Definition at line 295 of file OSGTypedFunctorBase.h.

template<class SizeTraitsT = DefaultFunctorSizeTraits>
* static const UInt8 osg::FunctorBase< SizeTraitsT >::ObjectValid = 0x01 [static, protected, inherited]
 

Definition at line 327 of file OSGFunctorBase.h.

template<class SizeTraitsT = DefaultFunctorSizeTraits>
const UInt8 osg::FunctorBase< SizeTraitsT >::FuncPtrValid = 0x02 [static, protected, inherited]
 

Definition at line 328 of file OSGFunctorBase.h.

template<class SizeTraitsT = DefaultFunctorSizeTraits>
const UInt8 osg::FunctorBase< SizeTraitsT >::FunctorActive = 0x80 [static, protected, inherited]
 

Definition at line 330 of file OSGFunctorBase.h.

template<class SizeTraitsT = DefaultFunctorSizeTraits>
* UInt8 osg::FunctorBase< SizeTraitsT >::_data1[SizeTraitsT::_uiObjectSize] [protected, inherited]
 

Definition at line 337 of file OSGFunctorBase.h.

template<class SizeTraitsT = DefaultFunctorSizeTraits>
UInt8 osg::FunctorBase< SizeTraitsT >::_data2[SizeTraitsT::_uiFuncPointerSize] [protected, inherited]
 

Definition at line 338 of file OSGFunctorBase.h.

template<class SizeTraitsT = DefaultFunctorSizeTraits>
UInt8 osg::FunctorBase< SizeTraitsT >::_flags [protected, inherited]
 

Definition at line 339 of file OSGFunctorBase.h.


The documentation for this class was generated from the following files:
Generated on Thu Aug 25 04:12:49 2005 for OpenSG by  doxygen 1.4.3