OGRE-Next: Ogre::v1::MetalHardwareBufferManagerBase Class Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Public Member Functions | List of all members
Ogre::v1::MetalHardwareBufferManagerBase Class Referencefinal

Implementation of HardwareBufferManager for Metal. More...

`#include <OgreMetalHardwareBufferManager.h>`

Inheritance diagram for Ogre::v1::MetalHardwareBufferManagerBase:
[legend]

## Public Member Functions
| MetalHardwareBufferManagerBase (MetalDevice *device, VaoManager *vaoManager)
| ~MetalHardwareBufferManagerBase () override
MetalDiscardBufferManager * | _getDiscardBufferManager ()
void | _notifyDeviceStalled ()
HardwareIndexBufferSharedPtr | createIndexBuffer (HardwareIndexBuffer::IndexType itype, size_t numIndexes, HardwareBuffer::Usage usage, bool useShadowBuffer=false) override
| Create an index buffer.
HardwareVertexBufferSharedPtr | createVertexBuffer (size_t vertexSize, size_t numVerts, HardwareBuffer::Usage usage, bool useShadowBuffer=false) override
| Creates a vertex buffer.
Public Member Functions inherited from Ogre::v1::HardwareBufferManagerBase
| HardwareBufferManagerBase ()
virtual | ~HardwareBufferManagerBase ()
virtual void | _forceReleaseBufferCopies (const HardwareVertexBufferSharedPtr &sourceBuffer)
| Internal method that forces the release of copies of a given buffer.
virtual void | _forceReleaseBufferCopies (HardwareVertexBuffer *sourceBuffer)
| Internal method that forces the release of copies of a given buffer.
virtual void | _freeUnusedBufferCopies ()
| Free all unused vertex buffer copies.
void | _notifyIndexBufferDestroyed (HardwareIndexBuffer *buf)
| Notification that a hardware index buffer has been destroyed.
void | _notifyVertexBufferDestroyed (HardwareVertexBuffer *buf)
| Notification that a hardware vertex buffer has been destroyed.
virtual void | _releaseBufferCopies (bool forceFreeUnused=false)
| Internal method for releasing all temporary buffers which have been allocated using BLT_AUTOMATIC_RELEASE; is called by OGRE.
virtual HardwareVertexBufferSharedPtr | allocateVertexBufferCopy (const HardwareVertexBufferSharedPtr &sourceBuffer, BufferLicenseType licenseType, HardwareBufferLicensee *licensee, bool copyData=false)
| Allocates a copy of a given vertex buffer.
virtual VertexBufferBinding * | createVertexBufferBinding ()
| Creates a new VertexBufferBinding.
virtual VertexDeclaration * | createVertexDeclaration ()
| Creates a new vertex declaration.
virtual void | destroyVertexBufferBinding (VertexBufferBinding *binding)
| Destroys a VertexBufferBinding.
virtual 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.
virtual void | releaseVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy)
| Manually release a vertex buffer copy for others to subsequently use.
virtual void | touchVertexBufferCopy (const HardwareVertexBufferSharedPtr &bufferCopy)
| Tell engine that the vertex buffer copy intent to reuse.

## Additional Inherited Members
Public Types inherited from Ogre::v1::HardwareBufferManagerBase
enum | BufferLicenseType { BLT_MANUAL_RELEASE , BLT_AUTOMATIC_RELEASE }

## Detailed Description

Implementation of HardwareBufferManager for Metal.

## Constructor & Destructor Documentation

## ◆ MetalHardwareBufferManagerBase()

Ogre::v1::MetalHardwareBufferManagerBase::MetalHardwareBufferManagerBase | ( | MetalDevice * | device,
|  | VaoManager * | vaoManager )

## ◆ ~MetalHardwareBufferManagerBase()

Ogre::v1::MetalHardwareBufferManagerBase::~MetalHardwareBufferManagerBase | ( |  | ) |
| override

## Member Function Documentation

## ◆ _getDiscardBufferManager()

MetalDiscardBufferManager * Ogre::v1::MetalHardwareBufferManagerBase::_getDiscardBufferManager | ( |  | ) |
| inline

## ◆ _notifyDeviceStalled()

void Ogre::v1::MetalHardwareBufferManagerBase::_notifyDeviceStalled | ( |  | ) |

## ◆ createIndexBuffer()

HardwareIndexBufferSharedPtr Ogre::v1::MetalHardwareBufferManagerBase::createIndexBuffer | ( | HardwareIndexBuffer::IndexType | itype,
|  | size_t | numIndexes,
|  | HardwareBuffer::Usage | usage,
|  | bool | useShadowBuffer = false )
| overridevirtual

Create an index buffer.

Implements Ogre::v1::HardwareBufferManagerBase.

References Ogre::v1::HardwareBufferManagerBase::HardwareIndexBufferSharedPtr.

## ◆ createVertexBuffer()

HardwareVertexBufferSharedPtr Ogre::v1::MetalHardwareBufferManagerBase::createVertexBuffer | ( | size_t | vertexSize,
|  | size_t | numVerts,
|  | HardwareBuffer::Usage | usage,
|  | bool | useShadowBuffer = false )
| overridevirtual

Creates a vertex buffer.

Implements Ogre::v1::HardwareBufferManagerBase.

References Ogre::v1::HardwareBufferManagerBase::HardwareVertexBufferSharedPtr.

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

- OgreMetalHardwareBufferManager.h