OGRE: Ogre::HighLevelGpuProgramPtr Class Reference - OGRE Documentation

Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related 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:

[legend]
List of all members.

## Public Member Functions

| HighLevelGpuProgramPtr ()
| HighLevelGpuProgramPtr (HighLevelGpuProgram *rep)
| HighLevelGpuProgramPtr (const HighLevelGpuProgramPtr &r)
| HighLevelGpuProgramPtr (const ResourcePtr &r)
HighLevelGpuProgramPtr & | operator= (const ResourcePtr &r)
| Operator used to convert a ResourcePtr to a HighLevelGpuProgramPtr.
HighLevelGpuProgramPtr & | operator= (const GpuProgramPtr &r)
| Operator used to convert a GpuProgramPtr to a HighLevelGpuProgramPtr.
HighLevelGpuProgram & | operator * () const
HighLevelGpuProgram * | operator-> () const
HighLevelGpuProgram * | get () const
void | bind (HighLevelGpuProgram *rep)
| Binds rep to the SharedPtr.
bool | unique () const
unsigned int | useCount () const
unsigned int * | useCountPointer () const
HighLevelGpuProgram * | getPointer () const
bool | isNull (void) const
void | setNull (void)

## Protected Member Functions

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

## Protected Attributes

HighLevelGpuProgram * | pRep
unsigned int * | pUseCount

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

## Constructor & Destructor Documentation

Ogre::HighLevelGpuProgramPtr::HighLevelGpuProgramPtr | ( |  | ) |

| Definition at line 135 of file OgreHighLevelGpuProgram.h.

Ogre::HighLevelGpuProgramPtr::HighLevelGpuProgramPtr | ( | HighLevelGpuProgram * | rep | ) | `[explicit]`

| Definition at line 136 of file OgreHighLevelGpuProgram.h.

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

| Definition at line 137 of file OgreHighLevelGpuProgram.h.

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

| Definition at line 138 of file OgreHighLevelGpuProgram.h. References OGRE_COPY_AUTO_SHARED_MUTEX, OGRE_LOCK_MUTEX, and OGRE_MUTEX_CONDITIONAL.

## Member Function Documentation

void Ogre::SharedPtr< HighLevelGpuProgram >::bind | ( | HighLevelGpuProgram * | rep | ) | `[inherited]`

Binds rep to the SharedPtr.

Remarks:
  Assumes that the SharedPtr is uninitialised!

Definition at line 137 of file OgreSharedPtr.h.

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

| Definition at line 191 of file OgreSharedPtr.h.

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

| Definition at line 131 of file OgreSharedPtr.h.

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

| Definition at line 149 of file OgreSharedPtr.h.

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

| Definition at line 151 of file OgreSharedPtr.h.

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

| Definition at line 129 of file OgreSharedPtr.h.

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

| Definition at line 130 of file OgreSharedPtr.h.

HighLevelGpuProgramPtr& Ogre::HighLevelGpuProgramPtr::operator= | ( | const GpuProgramPtr & | r | ) |

| Operator used to convert a GpuProgramPtr to a HighLevelGpuProgramPtr.

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

| Operator used to convert a ResourcePtr to a HighLevelGpuProgramPtr. Definition at line 155 of file OgreHighLevelGpuProgram.h. References OGRE_COPY_AUTO_SHARED_MUTEX, OGRE_LOCK_MUTEX, and OGRE_MUTEX_CONDITIONAL.

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

| Definition at line 165 of file OgreSharedPtr.h.

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

| Definition at line 153 of file OgreSharedPtr.h.

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

| Definition at line 202 of file OgreSharedPtr.h.

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

| Definition at line 145 of file OgreSharedPtr.h.

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

| Definition at line 146 of file OgreSharedPtr.h.

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

| Definition at line 147 of file OgreSharedPtr.h.

## Member Data Documentation

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

| Definition at line 46 of file OgreSharedPtr.h.

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

| Definition at line 47 of file OgreSharedPtr.h.

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

- OgreHighLevelGpuProgram.h

Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Thu Mar 6 09:46:53 2008