# Ogre::PatchMeshPtr Class Reference
LOD

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

`#include <OgrePatchMesh.h>`

Inheritance diagram for Ogre::PatchMeshPtr:
[legend]

List of all members.

## Public Member Functions

| PatchMeshPtr ()
| PatchMeshPtr (PatchMesh *rep)
| PatchMeshPtr (const PatchMeshPtr &r)
| PatchMeshPtr (const ResourcePtr &r)
PatchMeshPtr & | operator= (const ResourcePtr &r)
| Operator used to convert a ResourcePtr to a PatchMeshPtr.
PatchMeshPtr & | operator= (const MeshPtr &r)
| Operator used to convert a MeshPtr to a PatchMeshPtr.
PatchMesh & | operator* () const
PatchMesh * | operator-> () const
PatchMesh * | get () const
void | bind (PatchMesh *rep, SharedPtrFreeMethod inFreeMethod=SPFM_DELETE)
| Binds rep to the SharedPtr.
bool | unique () const
unsigned int | useCount () const
unsigned int * | useCountPointer () const
PatchMesh * | getPointer () const
SharedPtrFreeMethod | freeMethod () const
bool | isNull (void) const
void | setNull (void)

## Protected Member Functions

void | release (void)
virtual void | destroy (void)
virtual void | swap (SharedPtr< PatchMesh > &other)

## Protected Attributes

PatchMesh * | pRep
unsigned int * | pUseCount
SharedPtrFreeMethod | useFreeMethod

## Detailed Description

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

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 86 of file OgrePatchMesh.h.

## Constructor & Destructor Documentation

Ogre::PatchMeshPtr::PatchMeshPtr | ( |  | ) |

Definition at line 89 of file OgrePatchMesh.h.

Ogre::PatchMeshPtr::PatchMeshPtr | ( | PatchMesh * | rep | ) | `[explicit]`

Definition at line 90 of file OgrePatchMesh.h.

Ogre::PatchMeshPtr::PatchMeshPtr | ( | const PatchMeshPtr & | r | ) |

Definition at line 91 of file OgrePatchMesh.h.

Ogre::PatchMeshPtr::PatchMeshPtr | ( | const ResourcePtr & | r | ) |

Definition at line 92 of file OgrePatchMesh.h.

References Ogre::SharedPtr< T >::getPointer(), OGRE_COPY_AUTO_SHARED_MUTEX, OGRE_LOCK_MUTEX, OGRE_MUTEX_CONDITIONAL, and Ogre::SharedPtr< T >::useCountPointer().

## Member Function Documentation

void Ogre::SharedPtr< PatchMesh >::bind | ( | PatchMesh * | 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.

virtual void Ogre::SharedPtr< PatchMesh >::destroy | ( | void |  | ) | `[protected, virtual, inherited]`

Definition at line 223 of file OgreSharedPtr.h.

SharedPtrFreeMethod Ogre::SharedPtr< PatchMesh >::freeMethod | ( |  | ) | const`[inherited]`

Definition at line 181 of file OgreSharedPtr.h.

PatchMesh * Ogre::SharedPtr< PatchMesh >::get | ( | void |  | ) | const`[inherited]`

Definition at line 161 of file OgreSharedPtr.h.

PatchMesh * Ogre::SharedPtr< PatchMesh >::getPointer | ( |  | ) | const`[inherited]`

Definition at line 180 of file OgreSharedPtr.h.

bool Ogre::SharedPtr< PatchMesh >::isNull | ( | void |  | ) | const`[inherited]`

Definition at line 183 of file OgreSharedPtr.h.

PatchMesh & Ogre::SharedPtr< PatchMesh >::operator* | ( |  | ) | const`[inherited]`

Definition at line 159 of file OgreSharedPtr.h.

PatchMesh * Ogre::SharedPtr< PatchMesh >::operator-> | ( |  | ) | const`[inherited]`

Definition at line 160 of file OgreSharedPtr.h.

PatchMeshPtr& Ogre::PatchMeshPtr::operator= | ( | const MeshPtr & | r | ) |

Operator used to convert a MeshPtr to a PatchMeshPtr.

Definition at line 136 of file OgrePatchMesh.h.

References Ogre::SharedPtr< T >::getPointer(), OGRE_COPY_AUTO_SHARED_MUTEX, OGRE_LOCK_MUTEX, OGRE_MUTEX_CONDITIONAL, and Ogre::SharedPtr< T >::useCountPointer().

PatchMeshPtr& Ogre::PatchMeshPtr::operator= | ( | const ResourcePtr & | r | ) |

Operator used to convert a ResourcePtr to a PatchMeshPtr.

Definition at line 109 of file OgrePatchMesh.h.

References Ogre::SharedPtr< T >::getPointer(), Ogre::SharedPtr< T >::isNull(), OGRE_COPY_AUTO_SHARED_MUTEX, OGRE_LOCK_MUTEX, OGRE_MUTEX_CONDITIONAL, and Ogre::SharedPtr< T >::useCountPointer().

void Ogre::SharedPtr< PatchMesh >::release | ( | void |  | ) | `[protected, inherited]`

Definition at line 197 of file OgreSharedPtr.h.

void Ogre::SharedPtr< PatchMesh >::setNull | ( | void |  | ) | `[inherited]`

Definition at line 185 of file OgreSharedPtr.h.

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

Definition at line 247 of file OgreSharedPtr.h.

bool Ogre::SharedPtr< PatchMesh >::unique | ( |  | ) | const`[inherited]`

Definition at line 176 of file OgreSharedPtr.h.

unsigned int Ogre::SharedPtr< PatchMesh >::useCount | ( |  | ) | const`[inherited]`

Definition at line 177 of file OgreSharedPtr.h.

unsigned int* Ogre::SharedPtr< PatchMesh >::useCountPointer | ( |  | ) | const`[inherited]`

Definition at line 178 of file OgreSharedPtr.h.

## Member Data Documentation

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

Definition at line 63 of file OgreSharedPtr.h.

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

Definition at line 64 of file OgreSharedPtr.h.

SharedPtrFreeMethod Ogre::SharedPtr< PatchMesh >::useFreeMethod`[protected, inherited]`

Definition at line 65 of file OgreSharedPtr.h.

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

- OgrePatchMesh.h

Copyright © 2008 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Last modified Sun May 8 2011 20:28:15