TrinityCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod > Class Template Reference

Public Member Functions

 Accessor (T *object, GetMethod getMethod, SetMethod setMethod)
 
virtual void set (ValueType v)
 
virtual ValueType get () const
 
virtual Interfaceclone () const
 
virtual bool isNull () const
 
- Public Member Functions inherited from G3D::Pointer< ValueType >::Interface
virtual ~Interface ()
 

Private Attributes

T * object
 
GetMethod getMethod
 
SetMethod setMethod
 

Constructor & Destructor Documentation

template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::Accessor ( T *  object,
GetMethod  getMethod,
SetMethod  setMethod 
)
inline
143  debugAssert(object != NULL);
144  }
GetMethod getMethod
Definition: Pointer.h:135
SetMethod setMethod
Definition: Pointer.h:136
arena_t NULL
Definition: jemalloc_internal.h:624
#define debugAssert(exp)
Definition: debugAssert.h:160
T * object
Definition: Pointer.h:134

+ Here is the caller graph for this function:

Member Function Documentation

template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
virtual Interface* G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::clone ( ) const
inlinevirtual

Implements G3D::Pointer< ValueType >::Interface.

156  {
157  return new Accessor(object, getMethod, setMethod);
158  }
GetMethod getMethod
Definition: Pointer.h:135
Accessor(T *object, GetMethod getMethod, SetMethod setMethod)
Definition: Pointer.h:140
SetMethod setMethod
Definition: Pointer.h:136

+ Here is the call graph for this function:

template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
virtual ValueType G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::get ( ) const
inlinevirtual

Implements G3D::Pointer< ValueType >::Interface.

152  {
153  return (object->*getMethod)();
154  }
GetMethod getMethod
Definition: Pointer.h:135
T * object
Definition: Pointer.h:134
template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
virtual bool G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::isNull ( ) const
inlinevirtual

Implements G3D::Pointer< ValueType >::Interface.

160  {
161  return object == NULL;
162  }
arena_t NULL
Definition: jemalloc_internal.h:624
template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
virtual void G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::set ( ValueType  v)
inlinevirtual

Implements G3D::Pointer< ValueType >::Interface.

146  {
147  if (setMethod) {
148  (object->*setMethod)(v);
149  }
150  }
SetMethod setMethod
Definition: Pointer.h:136

Member Data Documentation

template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
GetMethod G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::getMethod
private
template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
T* G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::object
private
template<typename ValueType>
template<class T , typename GetMethod , typename SetMethod >
SetMethod G3D::Pointer< ValueType >::Accessor< T, GetMethod, SetMethod >::setMethod
private

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