OGRE  1.12.12
Object-Oriented Graphics Rendering Engine
Ogre::MetalDevice Struct Reference

#include <OgreMetalDevice.h>

Public Member Functions

 MetalDevice (MetalRenderSystem *renderSystem)
 
 ~MetalDevice ()
 
void commitAndNextCommandBuffer (void)
 
void endAllEncoders (void)
 
void endBlitEncoder (void)
 
void endComputeEncoder (void)
 
void endRenderEncoder (void)
 
id< MTLBlitCommandEncoder > getBlitEncoder (void)
 Gets current blit encoder. More...
 
id< MTLComputeCommandEncoder > getComputeEncoder (void)
 See getBlitEncoder. More...
 
void init (void)
 
void stall (void)
 Waits for the GPU to finish all pending commands. More...
 

Public Attributes

id< MTLBlitCommandEncoder > mBlitEncoder
 
id< MTLComputeCommandEncoder > mComputeEncoder
 
id< MTLCommandBuffer > mCurrentCommandBuffer
 
id< MTLDevice > mDevice
 
bool mFrameAborted
 Once a frame is aborted, MTLRenderCommandEncoder are no longer created (ignored). More...
 
id< MTLCommandQueue > mMainCommandQueue
 
id< MTLRenderCommandEncoder > mRenderEncoder
 
MetalRenderSystemmRenderSystem
 
dispatch_semaphore_t mStallSemaphore
 

Constructor & Destructor Documentation

Ogre::MetalDevice::MetalDevice ( MetalRenderSystem renderSystem)
Ogre::MetalDevice::~MetalDevice ( )

Member Function Documentation

void Ogre::MetalDevice::init ( void  )
void Ogre::MetalDevice::endBlitEncoder ( void  )
void Ogre::MetalDevice::endRenderEncoder ( void  )
void Ogre::MetalDevice::endComputeEncoder ( void  )
void Ogre::MetalDevice::endAllEncoders ( void  )
void Ogre::MetalDevice::commitAndNextCommandBuffer ( void  )
id<MTLBlitCommandEncoder> Ogre::MetalDevice::getBlitEncoder ( void  )

Gets current blit encoder.

If none is current, ends all other encoders and creates a new blit encoder.

Remarks
Use __unsafe_unretained to avoid unnecessary ARC overhead; unless you really need to hold on to the returned variable. i.e. __unsafe_unretained id<MTLBlitCommandEncoder> blitEncoder = mDevice->getBlitEncoder();
id<MTLComputeCommandEncoder> Ogre::MetalDevice::getComputeEncoder ( void  )

See getBlitEncoder.

void Ogre::MetalDevice::stall ( void  )

Waits for the GPU to finish all pending commands.

Member Data Documentation

bool Ogre::MetalDevice::mFrameAborted

Once a frame is aborted, MTLRenderCommandEncoder are no longer created (ignored).

id<MTLDevice> Ogre::MetalDevice::mDevice
id<MTLCommandQueue> Ogre::MetalDevice::mMainCommandQueue
id<MTLCommandBuffer> Ogre::MetalDevice::mCurrentCommandBuffer
id<MTLBlitCommandEncoder> Ogre::MetalDevice::mBlitEncoder
id<MTLComputeCommandEncoder> Ogre::MetalDevice::mComputeEncoder
id<MTLRenderCommandEncoder> Ogre::MetalDevice::mRenderEncoder
MetalRenderSystem* Ogre::MetalDevice::mRenderSystem
dispatch_semaphore_t Ogre::MetalDevice::mStallSemaphore

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