Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
RefPtr< Type > Class Template Reference

#include <RefPtr.h>

Inherits RefPtrBase.

Public Member Functions

 RefPtr ()
 
template<typename Derived>
 RefPtr (const RefPtr< Derived > &derived)
 
 RefPtr (const RefPtr< Type > &object)
 
virtual ~RefPtr ()
 
template<typename Derived>
const RefPtr< Type > & operator= (const RefPtr< Derived > &derived)
 
const RefPtr< Type > & operator= (const RefPtr< Type > &object)
 
Type & operator* () const
 
Type *const operator-> () const
 
Type *const ReferencedObject (void)
 
const Type *const ReferencedObject (void) const
 
 RefPtr (Type *object)
 
const RefPtr< Type > & operator= (Type *object)
 
- Public Member Functions inherited from RefPtrBase
bool operator== (const RefPtrBase &rhs) const
 
bool operator!= (const RefPtrBase &rhs) const
 
bool IsValid (void) const
 
void Detach (void)
 

Friends

RefPtr< Type > Dynamic_Cast (RefPtrBase &base)
 
RefPtr< Type > Reinterpret_Cast (RefPtrBase &rhs)
 
RefPtr< Type > Const_Cast (RefPtrConst< Type > &rhs)
 

Additional Inherited Members

- Protected Member Functions inherited from RefPtrBase
 RefPtrBase ()
 
 RefPtrBase (RefCounted *object)
 
 RefPtrBase (const RefPtrBase &object)
 
virtual ~RefPtrBase ()
 
const RefPtrBaseoperator= (const RefPtrBase &)
 
RefCounted *const GetRefObject (void)
 
const RefCounted *const GetRefObject (void) const
 
void Attach (RefCounted *object)
 

Detailed Description

template<typename Type>
class RefPtr< Type >

Definition at line 168 of file RefPtr.h.

Constructor & Destructor Documentation

◆ RefPtr() [1/4]

template<typename Type>
RefPtr< Type >::RefPtr ( )
inline

Definition at line 172 of file RefPtr.h.

◆ RefPtr() [2/4]

template<typename Type>
template<typename Derived>
RefPtr< Type >::RefPtr ( const RefPtr< Derived > & derived)
inline

Definition at line 177 of file RefPtr.h.

◆ RefPtr() [3/4]

template<typename Type>
RefPtr< Type >::RefPtr ( const RefPtr< Type > & object)
inline

Definition at line 183 of file RefPtr.h.

◆ ~RefPtr()

template<typename Type>
virtual RefPtr< Type >::~RefPtr ( )
inlinevirtual

Definition at line 189 of file RefPtr.h.

◆ RefPtr() [4/4]

template<typename Type>
RefPtr< Type >::RefPtr ( Type * object)
inline

Definition at line 224 of file RefPtr.h.

Member Function Documentation

◆ operator*()

template<typename Type>
Type & RefPtr< Type >::operator* ( ) const
inline

Definition at line 205 of file RefPtr.h.

◆ operator->()

template<typename Type>
Type *const RefPtr< Type >::operator-> ( ) const
inline

Definition at line 211 of file RefPtr.h.

◆ operator=() [1/3]

template<typename Type>
template<typename Derived>
const RefPtr< Type > & RefPtr< Type >::operator= ( const RefPtr< Derived > & derived)
inline

Definition at line 193 of file RefPtr.h.

◆ operator=() [2/3]

template<typename Type>
const RefPtr< Type > & RefPtr< Type >::operator= ( const RefPtr< Type > & object)
inline

Definition at line 199 of file RefPtr.h.

◆ operator=() [3/3]

template<typename Type>
const RefPtr< Type > & RefPtr< Type >::operator= ( Type * object)
inline

Definition at line 230 of file RefPtr.h.

◆ ReferencedObject() [1/2]

template<typename Type>
Type *const RefPtr< Type >::ReferencedObject ( void )
inline

Definition at line 218 of file RefPtr.h.

◆ ReferencedObject() [2/2]

template<typename Type>
const Type *const RefPtr< Type >::ReferencedObject ( void ) const
inline

Definition at line 221 of file RefPtr.h.

Friends And Related Symbol Documentation

◆ Const_Cast

template<typename Type>
RefPtr< Type > Const_Cast ( RefPtrConst< Type > & rhs)
friend

Definition at line 354 of file RefPtr.h.

◆ Dynamic_Cast

template<typename Type>
RefPtr< Type > Dynamic_Cast ( RefPtrBase & base)
friend

Definition at line 336 of file RefPtr.h.

◆ Reinterpret_Cast

template<typename Type>
RefPtr< Type > Reinterpret_Cast ( RefPtrBase & rhs)
friend

Definition at line 345 of file RefPtr.h.


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