Reference-counted shared pointer, used for objects where implicit destruction is required. More...
#include <OgrePrerequisites.h>
Public Member Functions | |
SharedPtr () | |
Constructor, does not initialise the SharedPtr. More... | |
template<class Y > | |
SharedPtr (Y *rep, SharedPtrFreeMethod inFreeMethod=SPFM_DELETE) | |
Constructor. More... | |
SharedPtr (const SharedPtr &r) | |
template<class Y > | |
SharedPtr (const SharedPtr< Y > &r) | |
~SharedPtr () | |
void | bind (T *rep, SharedPtrFreeMethod inFreeMethod=SPFM_DELETE) |
Binds rep to the SharedPtr. More... | |
template<typename Y > | |
SharedPtr< Y > | dynamicCast () const |
T * | get () const |
T * | getPointer () const |
bool | isNull (void) const |
T & | operator* () const |
T * | operator-> () const |
SharedPtr & | operator= (const SharedPtr &r) |
template<class Y > | |
SharedPtr & | operator= (const SharedPtr< Y > &r) |
void | setNull (void) |
void | setUseCount (unsigned value) |
template<typename Y > | |
SharedPtr< Y > | staticCast () const |
bool | unique () const |
unsigned int | useCount () const |
Protected Member Functions | |
SharedPtr (T *rep, SharedPtrInfo *info) | |
void | destroy (void) |
IF YOU GET A CRASH HERE, YOU FORGOT TO FREE UP POINTERS BEFORE SHUTTING OGRE DOWN Use setNull() before shutdown or make sure your pointer goes out of scope before OGRE shuts down to avoid this. More... | |
void | release (void) |
void | swap (SharedPtr< T > &other) |
Protected Attributes | |
SharedPtrInfo * | pInfo |
T * | pRep |
Static Private Member Functions | |
static SharedPtrInfo * | createInfoForMethod (T *rep, SharedPtrFreeMethod method) |
Friends | |
template<typename Y > | |
class | SharedPtr |
Reference-counted shared pointer, used for objects where implicit destruction is required.
Definition at line 313 of file OgrePrerequisites.h.
|
inlineprotected |
Definition at line 130 of file OgreSharedPtr.h.
|
inline |
Constructor, does not initialise the SharedPtr.
Definition at line 139 of file OgreSharedPtr.h.
|
inlineexplicit |
Constructor.
rep | The pointer to take ownership of |
inFreeMethod | The mechanism to use to free the pointer |
Definition at line 160 of file OgreSharedPtr.h.
|
inline |
Definition at line 166 of file OgreSharedPtr.h.
|
inline |
Definition at line 200 of file OgreSharedPtr.h.
|
inline |
Definition at line 228 of file OgreSharedPtr.h.
|
inline |
Binds rep to the SharedPtr.
Definition at line 263 of file OgreSharedPtr.h.
|
inlinestaticprivate |
Definition at line 143 of file OgreSharedPtr.h.
Referenced by Ogre::SharedPtr< Skeleton >::bind().
|
inlineprotected |
IF YOU GET A CRASH HERE, YOU FORGOT TO FREE UP POINTERS BEFORE SHUTTING OGRE DOWN Use setNull() before shutdown or make sure your pointer goes out of scope before OGRE shuts down to avoid this.
Definition at line 303 of file OgreSharedPtr.h.
Referenced by Ogre::SharedPtr< Skeleton >::release().
|
inline |
Definition at line 243 of file OgreSharedPtr.h.
|
inline |
Definition at line 254 of file OgreSharedPtr.h.
|
inline |
Definition at line 273 of file OgreSharedPtr.h.
|
inline |
Definition at line 275 of file OgreSharedPtr.h.
|
inline |
Definition at line 252 of file OgreSharedPtr.h.
|
inline |
Definition at line 253 of file OgreSharedPtr.h.
|
inline |
Definition at line 176 of file OgreSharedPtr.h.
|
inline |
Definition at line 217 of file OgreSharedPtr.h.
|
inlineprotected |
Definition at line 286 of file OgreSharedPtr.h.
Referenced by Ogre::SharedPtr< Skeleton >::setNull(), and Ogre::SharedPtr< Skeleton >::~SharedPtr().
|
inline |
Definition at line 277 of file OgreSharedPtr.h.
Referenced by Ogre::D3D11HLSLProgram::BufferInfo::BufferInfo().
|
inline |
Definition at line 271 of file OgreSharedPtr.h.
|
inline |
Definition at line 234 of file OgreSharedPtr.h.
|
inlineprotected |
Definition at line 309 of file OgreSharedPtr.h.
Referenced by Ogre::SharedPtr< Skeleton >::operator=().
|
inline |
Definition at line 269 of file OgreSharedPtr.h.
|
inline |
Definition at line 270 of file OgreSharedPtr.h.
Definition at line 113 of file OgreSharedPtr.h.
|
protected |
Definition at line 128 of file OgreSharedPtr.h.
Referenced by Ogre::SharedPtr< Skeleton >::bind(), Ogre::SharedPtr< Skeleton >::destroy(), Ogre::SharedPtr< Skeleton >::dynamicCast(), Ogre::SharedPtr< Skeleton >::operator=(), Ogre::SharedPtr< Skeleton >::release(), Ogre::SharedPtr< Skeleton >::setUseCount(), Ogre::SharedPtr< Skeleton >::SharedPtr(), Ogre::SharedPtr< Skeleton >::staticCast(), Ogre::SharedPtr< Skeleton >::swap(), Ogre::SharedPtr< Skeleton >::unique(), and Ogre::SharedPtr< Skeleton >::useCount().
|
protected |
Definition at line 127 of file OgreSharedPtr.h.
Referenced by Ogre::SharedPtr< Skeleton >::bind(), Ogre::SharedPtr< Skeleton >::destroy(), Ogre::SharedPtr< Skeleton >::dynamicCast(), Ogre::SharedPtr< Skeleton >::get(), Ogre::SharedPtr< Skeleton >::getPointer(), Ogre::SharedPtr< Skeleton >::isNull(), Ogre::SharedPtr< Skeleton >::operator*(), Ogre::SharedPtr< Skeleton >::operator->(), Ogre::SharedPtr< Skeleton >::operator=(), Ogre::SharedPtr< Skeleton >::release(), Ogre::SharedPtr< Skeleton >::setNull(), Ogre::SharedPtr< Skeleton >::SharedPtr(), Ogre::SharedPtr< Skeleton >::staticCast(), and Ogre::SharedPtr< Skeleton >::swap().