JUCE v8.0.9
JUCE API
 
Loading...
Searching...
No Matches
juce::CoreGraphicsMetalLayerRenderer Class Reference

#include <juce_CGMetalLayerRenderer_mac.h>

Collaboration diagram for juce::CoreGraphicsMetalLayerRenderer:

Classes

class  GpuTexturePool
 
class  Resources
 

Public Member Functions

 ~CoreGraphicsMetalLayerRenderer ()
 
template<typename Callback >
RectangleList< floatdrawRectangleList (CAMetalLayer *layer, float scaleFactor, Callback &&drawRectWithContext, RectangleList< float > dirtyRegions, const bool renderSync)
 

Static Public Member Functions

static auto create ()
 

Private Member Functions

 CoreGraphicsMetalLayerRenderer (ObjCObjectHandle< id< MTLDevice > > mtlDevice)
 

Static Private Member Functions

static auto alignTo (size_t n, size_t alignment)
 

Private Attributes

ObjCObjectHandle< id< MTLCommandQueue > > commandQueue
 
ObjCObjectHandle< id< MTLDevice > > device
 
ObjCObjectHandle< id< MTLCommandBuffer > > memoryBlitCommandBuffer
 
std::unique_ptr< Resourcesresources
 
std::atomic< boolstopGpuCommandSubmission { false }
 

Constructor & Destructor Documentation

◆ ~CoreGraphicsMetalLayerRenderer()

juce::CoreGraphicsMetalLayerRenderer::~CoreGraphicsMetalLayerRenderer ( )
inline

◆ CoreGraphicsMetalLayerRenderer()

juce::CoreGraphicsMetalLayerRenderer::CoreGraphicsMetalLayerRenderer ( ObjCObjectHandle< id< MTLDevice > >  mtlDevice)
inlineexplicitprivate

Member Function Documentation

◆ alignTo()

static auto juce::CoreGraphicsMetalLayerRenderer::alignTo ( size_t  n,
size_t  alignment 
)
inlinestaticprivate

◆ create()

static auto juce::CoreGraphicsMetalLayerRenderer::create ( )
inlinestatic

◆ drawRectangleList()

template<typename Callback >
RectangleList< float > juce::CoreGraphicsMetalLayerRenderer::drawRectangleList ( CAMetalLayer *  layer,
float  scaleFactor,
Callback &&  drawRectWithContext,
RectangleList< float dirtyRegions,
const bool  renderSync 
)
inline

Member Data Documentation

◆ commandQueue

ObjCObjectHandle<id<MTLCommandQueue> > juce::CoreGraphicsMetalLayerRenderer::commandQueue
private

◆ device

ObjCObjectHandle<id<MTLDevice> > juce::CoreGraphicsMetalLayerRenderer::device
private

◆ memoryBlitCommandBuffer

ObjCObjectHandle<id<MTLCommandBuffer> > juce::CoreGraphicsMetalLayerRenderer::memoryBlitCommandBuffer
private

◆ resources

std::unique_ptr<Resources> juce::CoreGraphicsMetalLayerRenderer::resources
private

◆ stopGpuCommandSubmission

std::atomic<bool> juce::CoreGraphicsMetalLayerRenderer::stopGpuCommandSubmission { false }
private

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