Rigs of Rods 2026.01
Soft-body Physics Simulation
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
RefCountingObjectPtr< T > Class Template Reference

Description

template<class T>
class RefCountingObjectPtr< T >

Definition at line 24 of file RefCountingObjectPtr.h.

Public Member Functions

 RefCountingObjectPtr (T *ref)
 
 RefCountingObjectPtr ()
 
 RefCountingObjectPtr (const RefCountingObjectPtr< T > &other)
 
 ~RefCountingObjectPtr ()
 
RefCountingObjectPtr & operator= (const RefCountingObjectPtr< T > &other)
 
bool operator== (const RefCountingObjectPtr< T > &o) const
 
bool operator!= (const RefCountingObjectPtr< T > &o) const
 
bool operator== (const T *o) const
 
bool operator!= (const T *o) const
 
bool operator== (const std::nullptr_t) const
 
bool operator!= (const std::nullptr_t) const
 
T * GetRef ()
 
T * GetRef () const
 
T * operator-> ()
 
T * operator-> () const
 
 operator long long () const
 
void EnumReferences (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine)
 
void ReleaseReferences (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine)
 

Static Public Member Functions

static void RegisterRefCountingObjectPtr (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine, const char *handle_name, const char *obj_name)
 
static void RegisterRefCountingObjectPtrGeneric (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine, const char *handle_name, const char *obj_name)
 

Protected Member Functions

void Set (T *ref)
 
void ReleaseHandle ()
 
void AddRefHandle ()
 

Static Protected Member Functions

static void ConstructDefault (RefCountingObjectPtr< T > *self)
 
static void ConstructCopy (RefCountingObjectPtr< T > *self, const RefCountingObjectPtr &o)
 
static void ConstructRef (RefCountingObjectPtr< T > *self, void **objhandle)
 
static void Destruct (RefCountingObjectPtr< T > *self)
 
static T * OpImplCast (RefCountingObjectPtr< T > *self)
 
static RefCountingObjectPtr & OpAssign (RefCountingObjectPtr< T > *self, void **objhandle)
 
static bool OpEquals (RefCountingObjectPtr< T > *self, void **objhandle)
 
static T * DereferenceHandle (void **objhandle)
 
static void ConstructDefaultGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void ConstructCopyGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void ConstructRefGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void DestructGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void EnumReferencesGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void ReleaseReferencesGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void OpImplCastGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void OpHndlAssignPtrGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void OpHndlAssignRefGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void OpEqualsPtrGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void OpEqualsRefGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 

Protected Attributes

T * m_ref
 

Constructor & Destructor Documentation

◆ RefCountingObjectPtr() [1/3]

template<class T >
RefCountingObjectPtr< T >::RefCountingObjectPtr ( T *  ref)
inline

Definition at line 239 of file RefCountingObjectPtr.h.

◆ RefCountingObjectPtr() [2/3]

template<class T >
RefCountingObjectPtr< T >::RefCountingObjectPtr ( )
inline

Definition at line 247 of file RefCountingObjectPtr.h.

◆ RefCountingObjectPtr() [3/3]

template<class T >
RefCountingObjectPtr< T >::RefCountingObjectPtr ( const RefCountingObjectPtr< T > &  other)
inline

Definition at line 254 of file RefCountingObjectPtr.h.

◆ ~RefCountingObjectPtr()

template<class T >
RefCountingObjectPtr< T >::~RefCountingObjectPtr ( )
inline

Definition at line 262 of file RefCountingObjectPtr.h.

Member Function Documentation

◆ AddRefHandle()

template<class T >
void RefCountingObjectPtr< T >::AddRefHandle ( )
inlineprotected

Definition at line 281 of file RefCountingObjectPtr.h.

◆ ConstructCopy()

template<class T >
static void RefCountingObjectPtr< T >::ConstructCopy ( RefCountingObjectPtr< T > *  self,
const RefCountingObjectPtr< T > &  o 
)
inlinestaticprotected

Definition at line 75 of file RefCountingObjectPtr.h.

◆ ConstructCopyGeneric()

template<class T >
void RefCountingObjectPtr< T >::ConstructCopyGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 336 of file RefCountingObjectPtr.h.

◆ ConstructDefault()

template<class T >
static void RefCountingObjectPtr< T >::ConstructDefault ( RefCountingObjectPtr< T > *  self)
inlinestaticprotected

Definition at line 74 of file RefCountingObjectPtr.h.

◆ ConstructDefaultGeneric()

template<class T >
void RefCountingObjectPtr< T >::ConstructDefaultGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 330 of file RefCountingObjectPtr.h.

◆ ConstructRef()

template<class T >
void RefCountingObjectPtr< T >::ConstructRef ( RefCountingObjectPtr< T > *  self,
void **  objhandle 
)
inlinestaticprotected

Definition at line 204 of file RefCountingObjectPtr.h.

◆ ConstructRefGeneric()

template<class T >
void RefCountingObjectPtr< T >::ConstructRefGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 343 of file RefCountingObjectPtr.h.

◆ DereferenceHandle()

template<class T >
T * RefCountingObjectPtr< T >::DereferenceHandle ( void **  objhandle)
staticprotected

Definition at line 197 of file RefCountingObjectPtr.h.

◆ Destruct()

template<class T >
static void RefCountingObjectPtr< T >::Destruct ( RefCountingObjectPtr< T > *  self)
inlinestaticprotected

Definition at line 77 of file RefCountingObjectPtr.h.

◆ DestructGeneric()

template<class T >
void RefCountingObjectPtr< T >::DestructGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 350 of file RefCountingObjectPtr.h.

◆ EnumReferences()

template<class T >
void RefCountingObjectPtr< T >::EnumReferences ( AS_NAMESPACE_QUALIFIER asIScriptEngine *  engine)
inline

Definition at line 311 of file RefCountingObjectPtr.h.

◆ EnumReferencesGeneric()

template<class T >
void RefCountingObjectPtr< T >::EnumReferencesGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 356 of file RefCountingObjectPtr.h.

◆ GetRef() [1/2]

template<class T >
T * RefCountingObjectPtr< T >::GetRef ( )
inline

Definition at line 50 of file RefCountingObjectPtr.h.

◆ GetRef() [2/2]

template<class T >
T * RefCountingObjectPtr< T >::GetRef ( ) const
inline

Definition at line 51 of file RefCountingObjectPtr.h.

◆ OpAssign()

template<class T >
RefCountingObjectPtr< T > & RefCountingObjectPtr< T >::OpAssign ( RefCountingObjectPtr< T > *  self,
void **  objhandle 
)
inlinestaticprotected

Definition at line 224 of file RefCountingObjectPtr.h.

◆ OpEquals()

template<class T >
bool RefCountingObjectPtr< T >::OpEquals ( RefCountingObjectPtr< T > *  self,
void **  objhandle 
)
inlinestaticprotected

Definition at line 232 of file RefCountingObjectPtr.h.

◆ OpEqualsPtrGeneric()

template<class T >
void RefCountingObjectPtr< T >::OpEqualsPtrGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 396 of file RefCountingObjectPtr.h.

◆ OpEqualsRefGeneric()

template<class T >
void RefCountingObjectPtr< T >::OpEqualsRefGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 403 of file RefCountingObjectPtr.h.

◆ operator long long()

template<class T >
RefCountingObjectPtr< T >::operator long long ( ) const
inline

Definition at line 56 of file RefCountingObjectPtr.h.

◆ operator!=() [1/3]

template<class T >
bool RefCountingObjectPtr< T >::operator!= ( const RefCountingObjectPtr< T > &  o) const
inline

Definition at line 39 of file RefCountingObjectPtr.h.

◆ operator!=() [2/3]

template<class T >
bool RefCountingObjectPtr< T >::operator!= ( const std::nullptr_t  ) const
inline

Definition at line 47 of file RefCountingObjectPtr.h.

◆ operator!=() [3/3]

template<class T >
bool RefCountingObjectPtr< T >::operator!= ( const T *  o) const
inline

Definition at line 43 of file RefCountingObjectPtr.h.

◆ operator->() [1/2]

template<class T >
T * RefCountingObjectPtr< T >::operator-> ( )
inline

Definition at line 52 of file RefCountingObjectPtr.h.

◆ operator->() [2/2]

template<class T >
T * RefCountingObjectPtr< T >::operator-> ( ) const
inline

Definition at line 53 of file RefCountingObjectPtr.h.

◆ operator=()

template<class T >
RefCountingObjectPtr< T > & RefCountingObjectPtr< T >::operator= ( const RefCountingObjectPtr< T > &  other)
inline

Definition at line 292 of file RefCountingObjectPtr.h.

◆ operator==() [1/3]

template<class T >
bool RefCountingObjectPtr< T >::operator== ( const RefCountingObjectPtr< T > &  o) const
inline

Definition at line 38 of file RefCountingObjectPtr.h.

◆ operator==() [2/3]

template<class T >
bool RefCountingObjectPtr< T >::operator== ( const std::nullptr_t  ) const
inline

Definition at line 46 of file RefCountingObjectPtr.h.

◆ operator==() [3/3]

template<class T >
bool RefCountingObjectPtr< T >::operator== ( const T *  o) const
inline

Definition at line 42 of file RefCountingObjectPtr.h.

◆ OpHndlAssignPtrGeneric()

template<class T >
void RefCountingObjectPtr< T >::OpHndlAssignPtrGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 380 of file RefCountingObjectPtr.h.

◆ OpHndlAssignRefGeneric()

template<class T >
void RefCountingObjectPtr< T >::OpHndlAssignRefGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 388 of file RefCountingObjectPtr.h.

◆ OpImplCast()

template<class T >
T * RefCountingObjectPtr< T >::OpImplCast ( RefCountingObjectPtr< T > *  self)
inlinestaticprotected

Definition at line 215 of file RefCountingObjectPtr.h.

◆ OpImplCastGeneric()

template<class T >
void RefCountingObjectPtr< T >::OpImplCastGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 372 of file RefCountingObjectPtr.h.

◆ RegisterRefCountingObjectPtr()

template<class T >
void RefCountingObjectPtr< T >::RegisterRefCountingObjectPtr ( AS_NAMESPACE_QUALIFIER asIScriptEngine *  engine,
const char *  handle_name,
const char *  obj_name 
)
static

Definition at line 100 of file RefCountingObjectPtr.h.

◆ RegisterRefCountingObjectPtrGeneric()

template<class T >
void RefCountingObjectPtr< T >::RegisterRefCountingObjectPtrGeneric ( AS_NAMESPACE_QUALIFIER asIScriptEngine *  engine,
const char *  handle_name,
const char *  obj_name 
)
static

Same as RegisterRefCountingObjectPtr() but uses the generic calling convention (for platforms with AS_MAX_PORTABILITY).

Definition at line 147 of file RefCountingObjectPtr.h.

◆ ReleaseHandle()

template<class T >
void RefCountingObjectPtr< T >::ReleaseHandle ( )
inlineprotected

Definition at line 269 of file RefCountingObjectPtr.h.

◆ ReleaseReferences()

template<class T >
void RefCountingObjectPtr< T >::ReleaseReferences ( AS_NAMESPACE_QUALIFIER asIScriptEngine *  engine)
inline

Definition at line 319 of file RefCountingObjectPtr.h.

◆ ReleaseReferencesGeneric()

template<class T >
void RefCountingObjectPtr< T >::ReleaseReferencesGeneric ( AS_NAMESPACE_QUALIFIER asIScriptGeneric *  gen)
inlinestaticprotected

Definition at line 364 of file RefCountingObjectPtr.h.

◆ Set()

template<class T >
void RefCountingObjectPtr< T >::Set ( T *  ref)
inlineprotected

Definition at line 300 of file RefCountingObjectPtr.h.

Field Documentation

◆ m_ref

template<class T >
T* RefCountingObjectPtr< T >::m_ref
protected

Definition at line 96 of file RefCountingObjectPtr.h.


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