Ogre::MeshPtr Class Reference
[Resources]

Specialisation of SharedPtr to allow SharedPtr to be assigned to MeshPtr. More...

#include <OgreMesh.h>

Inheritance diagram for Ogre::MeshPtr:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 MeshPtr ()
 MeshPtr (Mesh *rep)
 MeshPtr (const MeshPtr &r)
 MeshPtr (const ResourcePtr &r)
MeshPtroperator= (const ResourcePtr &r)
 Operator used to convert a ResourcePtr to a MeshPtr.
Meshoperator* () const
Meshoperator-> () const
Meshget () const
void bind (Mesh *rep, SharedPtrFreeMethod inFreeMethod=SPFM_DELETE)
 Binds rep to the SharedPtr.
bool unique () const
unsigned int useCount () const
unsigned int * useCountPointer () const
MeshgetPointer () const
SharedPtrFreeMethod freeMethod () const
bool isNull (void) const
void setNull (void)

Protected Member Functions

void destroy (void)
 Override destroy since we need to delete Mesh after fully defined.
void release (void)
virtual void swap (SharedPtr< Mesh > &other)

Protected Attributes

MeshpRep
unsigned int * pUseCount
SharedPtrFreeMethod useFreeMethod

Detailed Description

Specialisation of SharedPtr to allow SharedPtr to be assigned to MeshPtr.

Note:
Has to be a subclass since we need operator=. We could templatise this instead of repeating per Resource subclass, except to do so requires a form VC6 does not support i.e. ResourceSubclassPtr<T> : public SharedPtr<T>

Definition at line 874 of file OgreMesh.h.


Constructor & Destructor Documentation

Ogre::MeshPtr::MeshPtr (  ) 

Definition at line 877 of file OgreMesh.h.

Ogre::MeshPtr::MeshPtr ( Mesh rep  )  [explicit]

Definition at line 878 of file OgreMesh.h.

Ogre::MeshPtr::MeshPtr ( const MeshPtr r  ) 

Definition at line 879 of file OgreMesh.h.

Ogre::MeshPtr::MeshPtr ( const ResourcePtr r  ) 

Member Function Documentation

void Ogre::SharedPtr< Mesh >::bind ( Mesh rep,
SharedPtrFreeMethod  inFreeMethod = SPFM_DELETE 
) [inherited]

Binds rep to the SharedPtr.

Remarks:
Assumes that the SharedPtr is uninitialised!

Definition at line 167 of file OgreSharedPtr.h.

void Ogre::MeshPtr::destroy ( void   )  [protected, virtual]

Override destroy since we need to delete Mesh after fully defined.

Reimplemented from Ogre::SharedPtr< Mesh >.

SharedPtrFreeMethod Ogre::SharedPtr< Mesh >::freeMethod (  )  const [inherited]

Definition at line 181 of file OgreSharedPtr.h.

Mesh * Ogre::SharedPtr< Mesh >::get ( void   )  const [inherited]

Definition at line 161 of file OgreSharedPtr.h.

Mesh * Ogre::SharedPtr< Mesh >::getPointer (  )  const [inherited]

Definition at line 180 of file OgreSharedPtr.h.

bool Ogre::SharedPtr< Mesh >::isNull ( void   )  const [inherited]

Definition at line 183 of file OgreSharedPtr.h.

Mesh & Ogre::SharedPtr< Mesh >::operator* (  )  const [inherited]

Definition at line 159 of file OgreSharedPtr.h.

Mesh * Ogre::SharedPtr< Mesh >::operator-> (  )  const [inherited]

Definition at line 160 of file OgreSharedPtr.h.

MeshPtr& Ogre::MeshPtr::operator= ( const ResourcePtr r  ) 

Operator used to convert a ResourcePtr to a MeshPtr.

void Ogre::SharedPtr< Mesh >::release ( void   )  [protected, inherited]

Definition at line 197 of file OgreSharedPtr.h.

void Ogre::SharedPtr< Mesh >::setNull ( void   )  [inherited]

Definition at line 185 of file OgreSharedPtr.h.

virtual void Ogre::SharedPtr< Mesh >::swap ( SharedPtr< Mesh > &  other  )  [protected, virtual, inherited]

Definition at line 247 of file OgreSharedPtr.h.

bool Ogre::SharedPtr< Mesh >::unique (  )  const [inherited]

Definition at line 176 of file OgreSharedPtr.h.

unsigned int Ogre::SharedPtr< Mesh >::useCount (  )  const [inherited]

Definition at line 177 of file OgreSharedPtr.h.

unsigned int* Ogre::SharedPtr< Mesh >::useCountPointer (  )  const [inherited]

Definition at line 178 of file OgreSharedPtr.h.


Member Data Documentation

Mesh * Ogre::SharedPtr< Mesh >::pRep [protected, inherited]

Definition at line 63 of file OgreSharedPtr.h.

unsigned int* Ogre::SharedPtr< Mesh >::pUseCount [protected, inherited]

Definition at line 64 of file OgreSharedPtr.h.

Definition at line 65 of file OgreSharedPtr.h.


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

Copyright © 2012 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Fri May 25 23:38:15 2012