OGRE  1.7
Object-Oriented Graphics Rendering Engine
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Ogre::HighLevelGpuProgramPtr Class Reference

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

#include <OgreHighLevelGpuProgram.h>

+ Inheritance diagram for Ogre::HighLevelGpuProgramPtr:
+ Collaboration diagram for Ogre::HighLevelGpuProgramPtr:

Public Member Functions

 HighLevelGpuProgramPtr ()
 
 HighLevelGpuProgramPtr (HighLevelGpuProgram *rep)
 
 HighLevelGpuProgramPtr (const HighLevelGpuProgramPtr &r)
 
 HighLevelGpuProgramPtr (const ResourcePtr &r)
 
void bind (HighLevelGpuProgram *rep, SharedPtrFreeMethod inFreeMethod=SPFM_DELETE)
 Binds rep to the SharedPtr. More...
 
SharedPtrFreeMethod freeMethod () const
 
HighLevelGpuProgramget () const
 
HighLevelGpuProgramgetPointer () const
 
bool isNull (void) const
 
HighLevelGpuProgramoperator* () const
 
HighLevelGpuProgramoperator-> () const
 
HighLevelGpuProgramPtroperator= (const ResourcePtr &r)
 Operator used to convert a ResourcePtr to a HighLevelGpuProgramPtr. More...
 
HighLevelGpuProgramPtroperator= (const GpuProgramPtr &r)
 Operator used to convert a GpuProgramPtr to a HighLevelGpuProgramPtr. More...
 
void setNull (void)
 
bool unique () const
 
unsigned int useCount () const
 
unsigned int * useCountPointer () const
 

Protected Member Functions

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

Protected Attributes

HighLevelGpuProgrampRep
 
unsigned int * pUseCount
 
SharedPtrFreeMethod useFreeMethod
 

Detailed Description

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

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 139 of file OgreHighLevelGpuProgram.h.

Constructor & Destructor Documentation

Ogre::HighLevelGpuProgramPtr::HighLevelGpuProgramPtr ( )
inline

Definition at line 142 of file OgreHighLevelGpuProgram.h.

Ogre::HighLevelGpuProgramPtr::HighLevelGpuProgramPtr ( HighLevelGpuProgram rep)
inlineexplicit

Definition at line 143 of file OgreHighLevelGpuProgram.h.

Ogre::HighLevelGpuProgramPtr::HighLevelGpuProgramPtr ( const HighLevelGpuProgramPtr r)
inline

Definition at line 144 of file OgreHighLevelGpuProgram.h.

Ogre::HighLevelGpuProgramPtr::HighLevelGpuProgramPtr ( const ResourcePtr r)
inline

Member Function Documentation

void Ogre::SharedPtr< HighLevelGpuProgram >::bind ( HighLevelGpuProgram rep,
SharedPtrFreeMethod  inFreeMethod = SPFM_DELETE 
)
inlineinherited

Binds rep to the SharedPtr.

Remarks
Assumes that the SharedPtr is uninitialised!

Definition at line 167 of file OgreSharedPtr.h.

virtual void Ogre::SharedPtr< HighLevelGpuProgram >::destroy ( void  )
inlineprotectedvirtualinherited

Definition at line 223 of file OgreSharedPtr.h.

SharedPtrFreeMethod Ogre::SharedPtr< HighLevelGpuProgram >::freeMethod ( ) const
inlineinherited

Definition at line 181 of file OgreSharedPtr.h.

HighLevelGpuProgram * Ogre::SharedPtr< HighLevelGpuProgram >::get ( void  ) const
inlineinherited

Definition at line 161 of file OgreSharedPtr.h.

HighLevelGpuProgram * Ogre::SharedPtr< HighLevelGpuProgram >::getPointer ( ) const
inlineinherited

Definition at line 180 of file OgreSharedPtr.h.

bool Ogre::SharedPtr< HighLevelGpuProgram >::isNull ( void  ) const
inlineinherited

Definition at line 183 of file OgreSharedPtr.h.

HighLevelGpuProgram & Ogre::SharedPtr< HighLevelGpuProgram >::operator* ( ) const
inlineinherited

Definition at line 159 of file OgreSharedPtr.h.

HighLevelGpuProgram * Ogre::SharedPtr< HighLevelGpuProgram >::operator-> ( ) const
inlineinherited

Definition at line 160 of file OgreSharedPtr.h.

HighLevelGpuProgramPtr& Ogre::HighLevelGpuProgramPtr::operator= ( const ResourcePtr r)
inline
HighLevelGpuProgramPtr& Ogre::HighLevelGpuProgramPtr::operator= ( const GpuProgramPtr r)

Operator used to convert a GpuProgramPtr to a HighLevelGpuProgramPtr.

void Ogre::SharedPtr< HighLevelGpuProgram >::release ( void  )
inlineprotectedinherited

Definition at line 197 of file OgreSharedPtr.h.

void Ogre::SharedPtr< HighLevelGpuProgram >::setNull ( void  )
inlineinherited

Definition at line 185 of file OgreSharedPtr.h.

virtual void Ogre::SharedPtr< HighLevelGpuProgram >::swap ( SharedPtr< HighLevelGpuProgram > &  other)
inlineprotectedvirtualinherited

Definition at line 247 of file OgreSharedPtr.h.

bool Ogre::SharedPtr< HighLevelGpuProgram >::unique ( ) const
inlineinherited

Definition at line 176 of file OgreSharedPtr.h.

unsigned int Ogre::SharedPtr< HighLevelGpuProgram >::useCount ( ) const
inlineinherited

Definition at line 177 of file OgreSharedPtr.h.

unsigned int* Ogre::SharedPtr< HighLevelGpuProgram >::useCountPointer ( ) const
inlineinherited

Definition at line 178 of file OgreSharedPtr.h.

Member Data Documentation

Definition at line 63 of file OgreSharedPtr.h.

unsigned int* Ogre::SharedPtr< HighLevelGpuProgram >::pUseCount
protectedinherited

Definition at line 64 of file OgreSharedPtr.h.

SharedPtrFreeMethod Ogre::SharedPtr< HighLevelGpuProgram >::useFreeMethod
protectedinherited

Definition at line 65 of file OgreSharedPtr.h.


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