#include <OgreDefaultHardwareBufferManager.h>
Inheritance diagram for Ogre::DefaultHardwareBufferManager:

Public Types | |
| enum | BufferLicenseType { BLT_MANUAL_RELEASE, BLT_AUTOMATIC_RELEASE } |
Public Member Functions | |
| DefaultHardwareBufferManager () | |
| ~DefaultHardwareBufferManager () | |
| HardwareVertexBufferSharedPtr | createVertexBuffer (size_t vertexSize, size_t numVerts, HardwareBuffer::Usage usage, bool useShadowBuffer=false) |
| Creates a vertex buffer. | |
| HardwareIndexBufferSharedPtr | createIndexBuffer (HardwareIndexBuffer::IndexType itype, size_t numIndexes, HardwareBuffer::Usage usage, bool useShadowBuffer=false) |
| Create a hardware vertex buffer. | |
| virtual VertexDeclaration * | createVertexDeclaration (void) |
| Creates a vertex declaration, may be overridden by certain rendering APIs. | |
| virtual void | destroyVertexDeclaration (VertexDeclaration *decl) |
| Destroys a vertex declaration, may be overridden by certain rendering APIs. | |
| virtual VertexBufferBinding * | createVertexBufferBinding (void) |
| Creates a new VertexBufferBinding. | |
| virtual void | destroyVertexBufferBinding (VertexBufferBinding *binding) |
| Destroys a VertexBufferBinding. | |
| virtual void | registerVertexBufferSourceAndCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, const HardwareVertexBufferSharedPtr ©) |
| Registers a vertex buffer as a copy of another. | |
| virtual HardwareVertexBufferSharedPtr | allocateVertexBufferCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, BufferLicenseType licenseType, HardwareBufferLicensee *licensee, bool copyData=false) |
| Allocates a copy of a given vertex buffer. | |
| virtual void | releaseVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy) |
| Manually release a vertex buffer copy for others to subsequently use. | |
| virtual void | _releaseBufferCopies (void) |
| Internal method for releasing all temporary buffers which have been allocated using BLT_AUTOMATIC_RELEASE; is called by OGRE. | |
| virtual void | _forceReleaseBufferCopies (const HardwareVertexBufferSharedPtr &sourceBuffer) |
| Internal method that forces the release of copies of a given buffer. | |
| void | _forceReleaseBufferCopies (HardwareVertexBuffer *sourceBuffer) |
| Internal method that forces the release of copies of a given buffer. | |
| void | _notifyVertexBufferDestroyed (HardwareVertexBuffer *buf) |
| Notification that a hardware vertex buffer has been destroyed. | |
| void | _notifyIndexBufferDestroyed (HardwareIndexBuffer *buf) |
| Notification that a hardware index buffer has been destroyed. | |
Static Public Member Functions | |
| HardwareBufferManager & | getSingleton (void) |
| Override standard Singleton retrieval. | |
| HardwareBufferManager * | getSingletonPtr (void) |
| Override standard Singleton retrieval. | |
Protected Types | |
| typedef std::list< VertexDeclaration * > | VertexDeclarationList |
| typedef std::list< VertexBufferBinding * > | VertexBufferBindingList |
| typedef std::vector< HardwareVertexBufferSharedPtr > | FreeTemporaryVertexBufferList |
| List of free temporary vertex buffers. | |
| typedef std::map< HardwareVertexBuffer *, FreeTemporaryVertexBufferList * > | FreeTemporaryVertexBufferMap |
| Map from original buffer to list of temporary buffers. | |
| typedef std::vector< VertexBufferLicense > | TemporaryVertexBufferLicenseList |
| List of currently licensed temp buffers. | |
| typedef std::set< HardwareVertexBuffer * > | VertexBufferList |
| typedef std::set< HardwareIndexBuffer * > | IndexBufferList |
Protected Member Functions | |
| virtual void | destroyAllDeclarations (void) |
| virtual void | destroyAllBindings (void) |
| HardwareVertexBufferSharedPtr | makeBufferCopy (const HardwareVertexBufferSharedPtr &source, HardwareBuffer::Usage usage, bool useShadowBuffer) |
| Creates a new buffer as a copy of the source, does not copy data. | |
Protected Attributes | |
| VertexDeclarationList | mVertexDeclarations |
| VertexBufferBindingList | mVertexBufferBindings |
| FreeTemporaryVertexBufferMap | mFreeTempVertexBufferMap |
| Map of current available temp buffers. | |
| TemporaryVertexBufferLicenseList | mTempVertexBufferLicenses |
| List of currently licensed temp buffers. | |
| VertexBufferList | mVertexBuffers |
| IndexBufferList | mIndexBuffers |
Static Protected Attributes | |
| HardwareBufferManager * | ms_Singleton |
Definition at line 93 of file OgreDefaultHardwareBufferManager.h.
|
|
List of free temporary vertex buffers.
Definition at line 130 of file OgreHardwareBufferManager.h. |
|
|
Map from original buffer to list of temporary buffers.
Definition at line 132 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 141 of file OgreHardwareBufferManager.h. |
|
|
List of currently licensed temp buffers.
Definition at line 136 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 92 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 140 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 91 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 103 of file OgreHardwareBufferManager.h. |
|
|
|
|
|
|
|
|
Internal method that forces the release of copies of a given buffer.
|
|
|
Internal method that forces the release of copies of a given buffer.
Definition at line 268 of file OgreHardwareBufferManager.h. References Ogre::SharedPtr< HardwareVertexBuffer >::get(). |
|
|
Notification that a hardware index buffer has been destroyed.
|
|
|
Notification that a hardware vertex buffer has been destroyed.
|
|
|
Internal method for releasing all temporary buffers which have been allocated using BLT_AUTOMATIC_RELEASE; is called by OGRE.
|
|
||||||||||||||||||||
|
Allocates a copy of a given vertex buffer.
|
|
||||||||||||||||||||
|
Create a hardware vertex buffer.
Implements Ogre::HardwareBufferManager. Reimplemented in Ogre::D3D7HardwareBufferManager. |
|
||||||||||||||||||||
|
Creates a vertex buffer.
Implements Ogre::HardwareBufferManager. |
|
|
Creates a new VertexBufferBinding.
|
|
|
Creates a vertex declaration, may be overridden by certain rendering APIs.
Reimplemented in Ogre::D3D9HardwareBufferManager, and Ogre::GLHardwareBufferManager. |
|
|
|
|
|
Reimplemented in Ogre::D3D9HardwareBufferManager. |
|
|
Destroys a VertexBufferBinding.
|
|
|
Destroys a vertex declaration, may be overridden by certain rendering APIs.
Reimplemented in Ogre::D3D9HardwareBufferManager, and Ogre::GLHardwareBufferManager. |
|
|
Override standard Singleton retrieval.
Reimplemented from Ogre::Singleton< HardwareBufferManager >. |
|
|
Override standard Singleton retrieval.
Reimplemented from Ogre::Singleton< HardwareBufferManager >. |
|
||||||||||||||||
|
Creates a new buffer as a copy of the source, does not copy data.
|
|
||||||||||||
|
Registers a vertex buffer as a copy of another.
|
|
|
Manually release a vertex buffer copy for others to subsequently use.
|
|
|
Map of current available temp buffers.
Definition at line 134 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 143 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 54 of file OgreSingleton.h. |
|
|
List of currently licensed temp buffers.
Definition at line 138 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 95 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 142 of file OgreHardwareBufferManager.h. |
|
|
Definition at line 94 of file OgreHardwareBufferManager.h. |
Copyright © 2000-2005 by The OGRE Team
Last modified Sun Nov 20 12:36:34 2005