OGRE 1.12.10
Object-Oriented Graphics Rendering Engine
Loading...
Searching...
No Matches
Ogre::MetalHardwareBufferManager Class Reference

Implementation of HardwareBufferManager for Metal. More...

#include <OgreMetalHardwareBufferManager.h>

Inheritance diagram for Ogre::MetalHardwareBufferManager:

Public Member Functions

 MetalHardwareBufferManager (MetalDevice *device)
virtual ~MetalHardwareBufferManager ()
MetalDiscardBufferManager_getDiscardBufferManager (void)
void _notifyDeviceStalled (void)
virtual HardwareIndexBufferSharedPtr createIndexBuffer (HardwareIndexBuffer::IndexType itype, size_t numIndexes, HardwareBuffer::Usage usage, bool useShadowBuffer=false)
 Create an index buffer.
virtual HardwareVertexBufferSharedPtr createVertexBuffer (size_t vertexSize, size_t numVerts, HardwareBuffer::Usage usage, bool useShadowBuffer=false)
 Creates a vertex buffer.
Public Member Functions inherited from Ogre::HardwareBufferManager
 HardwareBufferManager ()
 ~HardwareBufferManager ()
Public Member Functions inherited from Ogre::HardwareBufferManagerBase
 HardwareBufferManagerBase ()
virtual ~HardwareBufferManagerBase ()
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 _freeUnusedBufferCopies (void)
 Free all unused vertex buffer copies.
void _notifyCounterBufferDestroyed (HardwareCounterBuffer *buf)
 Notification that at hardware counter buffer has been destroyed.
void _notifyIndexBufferDestroyed (HardwareIndexBuffer *buf)
 Notification that a hardware index buffer has been destroyed.
void _notifyUniformBufferDestroyed (HardwareUniformBuffer *buf)
 Notification that at hardware uniform buffer has been destroyed.
void _notifyVertexBufferDestroyed (HardwareVertexBuffer *buf)
 Notification that a hardware vertex buffer has been destroyed.
void _releaseBufferCopies (bool forceFreeUnused=false)
 Internal method for releasing all temporary buffers which have been allocated using BLT_AUTOMATIC_RELEASE; is called by OGRE.
HardwareVertexBufferSharedPtr allocateVertexBufferCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, BufferLicenseType licenseType, HardwareBufferLicensee *licensee, bool copyData=false)
 Allocates a copy of a given vertex buffer.
virtual HardwareCounterBufferSharedPtr createCounterBuffer (size_t sizeBytes, HardwareBuffer::Usage usage=HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE, bool useShadowBuffer=false, const String &name="")
 Create counter buffer.
virtual RenderToVertexBufferSharedPtr createRenderToVertexBuffer ()
 Create a render to vertex buffer.
virtual HardwareUniformBufferSharedPtr createUniformBuffer (size_t sizeBytes, HardwareBuffer::Usage usage=HardwareBuffer::HBU_DYNAMIC_WRITE_ONLY_DISCARDABLE, bool useShadowBuffer=false, const String &name="")
 Create uniform buffer.
VertexBufferBindingcreateVertexBufferBinding (void)
 Creates a new VertexBufferBinding.
VertexDeclarationcreateVertexDeclaration (void)
 Creates a new vertex declaration.
void destroyVertexBufferBinding (VertexBufferBinding *binding)
 Destroys a VertexBufferBinding.
void destroyVertexDeclaration (VertexDeclaration *decl)
 Destroys a vertex declaration.
virtual void registerVertexBufferSourceAndCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, const HardwareVertexBufferSharedPtr &copy)
 Registers a vertex buffer as a copy of another.
void releaseVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy)
 Manually release a vertex buffer copy for others to subsequently use.
void touchVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy)
 Tell engine that the vertex buffer copy intent to reuse.
Public Member Functions inherited from Ogre::Singleton< HardwareBufferManager >
 ~Singleton (void)

Additional Inherited Members

Public Types inherited from Ogre::HardwareBufferManagerBase
enum  BufferLicenseType { BLT_MANUAL_RELEASE , BLT_AUTOMATIC_RELEASE }
Static Public Member Functions inherited from Ogre::HardwareBufferManager
static HardwareBufferManagergetSingleton (void)
 Get the singleton instance.
static HardwareBufferManagergetSingletonPtr (void)
 Get the singleton instance.
Static Public Member Functions inherited from Ogre::Singleton< HardwareBufferManager >
static HardwareBufferManagergetSingleton (void)
 Get the singleton instance.
static HardwareBufferManagergetSingletonPtr (void)
 Get the singleton instance.

Detailed Description

Implementation of HardwareBufferManager for Metal.

Constructor & Destructor Documentation

◆ MetalHardwareBufferManager()

Ogre::MetalHardwareBufferManager::MetalHardwareBufferManager ( MetalDevice * device)

◆ ~MetalHardwareBufferManager()

virtual Ogre::MetalHardwareBufferManager::~MetalHardwareBufferManager ( )
virtual

Member Function Documentation

◆ _notifyDeviceStalled()

void Ogre::MetalHardwareBufferManager::_notifyDeviceStalled ( void )

◆ _getDiscardBufferManager()

MetalDiscardBufferManager * Ogre::MetalHardwareBufferManager::_getDiscardBufferManager ( void )
inline

◆ createVertexBuffer()

virtual HardwareVertexBufferSharedPtr Ogre::MetalHardwareBufferManager::createVertexBuffer ( size_t vertexSize,
size_t numVerts,
HardwareBuffer::Usage usage,
bool useShadowBuffer = false )
virtual

Creates a vertex buffer.

Implements Ogre::HardwareBufferManagerBase.

◆ createIndexBuffer()

virtual HardwareIndexBufferSharedPtr Ogre::MetalHardwareBufferManager::createIndexBuffer ( HardwareIndexBuffer::IndexType itype,
size_t numIndexes,
HardwareBuffer::Usage usage,
bool useShadowBuffer = false )
virtual

Create an index buffer.

Implements Ogre::HardwareBufferManagerBase.


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