luxlabs header browser preview


@class MTLGPUDebugRenderPipelineState, NSString, MTLToolsDepthStencilState, MTLGPUDebugCommandBuffer;
@protocol MTLGPUDebugResource, MTLBuffer;

@interface MTLGPUDebugRenderCommandEncoder : MTLToolsRenderCommandEncoder <MTLGPUDebugCommandEncoder> {
    unsigned int useResourceIteration;
    BOOL _tileStageActive;
    BOOL _tileStageUsed;
    BOOL _fragmentStageActive;
    BOOL _vertexStageActive;
    BOOL _objectStageActive;
    BOOL _meshStageActive;
    BOOL _enableUseResourceValidation;
    MTLGPUDebugCommandBuffer *_commandBuffer;
    struct MTLGPUDebugStageBufferHandles { unsigned long long handles[31]; id<MTLGPUDebugResource> resources[31]; unsigned long long offsets[31]; unsigned long long strides[31]; unsigned int lengths[31]; unsigned long long gpu_address[31][2]; BOOL needsFlush; } _vertexHandles;
    struct MTLGPUDebugStageBufferHandles { unsigned long long handles[31]; id<MTLGPUDebugResource> resources[31]; unsigned long long offsets[31]; unsigned long long strides[31]; unsigned int lengths[31]; unsigned long long gpu_address[31][2]; BOOL needsFlush; } _fragmentHandles;
    struct MTLGPUDebugStageBufferHandles { unsigned long long handles[31]; id<MTLGPUDebugResource> resources[31]; unsigned long long offsets[31]; unsigned long long strides[31]; unsigned int lengths[31]; unsigned long long gpu_address[31][2]; BOOL needsFlush; } _tileHandles;
    struct MTLGPUDebugTileThreadgroup { struct GPUDebugThreadgroupTableEntry { unsigned int offset; unsigned int length; } entries[32]; BOOL needsFlush; } _tileThreadgroup;
    struct MTLGPUDebugStageBufferHandles { unsigned long long handles[31]; id<MTLGPUDebugResource> resources[31]; unsigned long long offsets[31]; unsigned long long strides[31]; unsigned int lengths[31]; unsigned long long gpu_address[31][2]; BOOL needsFlush; } _objectHandles;
    struct MTLGPUDebugStageBufferHandles { unsigned long long handles[31]; id<MTLGPUDebugResource> resources[31]; unsigned long long offsets[31]; unsigned long long strides[31]; unsigned int lengths[31]; unsigned long long gpu_address[31][2]; BOOL needsFlush; } _meshHandles;
    struct MTLGPUDebugThreadgroupLengths { unsigned int threadgroupSizes[31]; struct GPUDebugThreadgroupTableEntry { unsigned int offset; unsigned int length; } entries[32]; BOOL needsFlush; } _meshThreadgroup;
    struct Options { unsigned int x0; int x1; int x2; int x3; unsigned int x4; struct { unsigned char x0 : 1; unsigned char x1 : 1; unsigned char x2 : 1; unsigned char x3 : 1; unsigned char x4 : 1; unsigned char x5 : 1; unsigned char x6 : 1; unsigned char x7 : 1; unsigned char x8 : 1; unsigned char x9 : 1; unsigned char x10 : 1; unsigned char x11 : 1; unsigned char x12 : 1; unsigned char x13 : 1; unsigned char x14 : 1; unsigned char x15 : 1; unsigned char x16 : 1; unsigned char x17 : 1; unsigned char x18 : 1; unsigned char x19 : 1; unsigned char x20 : 1; unsigned char x21 : 1; unsigned char x22 : 1; unsigned char x23 : 1; unsigned char x24 : 1; unsigned char x25 : 1; unsigned char x26 : 1; unsigned char x27 : 1; unsigned char x28 : 1; unsigned char x29 : 1; unsigned char x30 : 1; unsigned char x31 : 1; unsigned char x32 : 1; unsigned char x33 : 1; unsigned char x34 : 1; } x5; } *_options;
    struct GPUDebugEventUUIDPacket { unsigned long long pipelineStateID; unsigned long long entryPointImageID; unsigned int encoderID; unsigned int eventID; } _drawID;
    unsigned long long _encoderType;
    MTLGPUDebugRenderPipelineState *_currentPipeline;
    MTLToolsDepthStencilState *_currentDepthStencil;
    struct MTLGPUDebugBufferSubAlloc { id<MTLBuffer> buffer; unsigned long long offset; } _vertexReportBuffer;
    struct MTLGPUDebugBufferSubAlloc { id<MTLBuffer> buffer; unsigned long long offset; } _fragmentReportBuffer;
    struct MTLGPUDebugBufferSubAlloc { id<MTLBuffer> buffer; unsigned long long offset; } _tileReportBuffer;
    struct MTLGPUDebugBufferSubAlloc { id<MTLBuffer> buffer; unsigned long long offset; } _objectReportBuffer;
    struct MTLGPUDebugBufferSubAlloc { id<MTLBuffer> buffer; unsigned long long offset; } _meshReportBuffer;
    struct { unsigned char count; BOOL mappingsValid; struct { unsigned int viewportArrayIndexOffset; unsigned int renderTargetArrayIndexOffset; } mappings[2]; } _vertexAmpState;
    id<MTLBuffer> _vertexBufferUsageTable;
    id<MTLBuffer> _vertexTextureUsageTable;
    id<MTLBuffer> _fragmentBufferUsageTable;
    id<MTLBuffer> _fragmentTextureUsageTable;
    id<MTLBuffer> _objectBufferUsageTable;
    id<MTLBuffer> _objectTextureUsageTable;
    id<MTLBuffer> _meshBufferUsageTable;
    id<MTLBuffer> _meshTextureUsageTable;
}

@property (readonly) MTLGPUDebugCommandBuffer *commandBuffer;
@property (readonly) unsigned int encoderID;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (void)setMeshIntersectionFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setTileIntersectionFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setFragmentAccelerationStructure:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setVertexIntersectionFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)executeCommandsInBuffer:(id)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)useResources:(const id *)a0 count:(unsigned long long)a1 usage:(unsigned long long)a2 stages:(unsigned long long)a3;
- (id).cxx_construct;
- (void)useResource:(id)a0 usage:(unsigned long long)a1 stages:(unsigned long long)a2;
- (void)setTileAccelerationStructure:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setVertexAmplificationCount:(unsigned long long)a0 viewMappings:(const struct { unsigned int x0; unsigned int x1; } *)a1;
- (void)setVertexIntersectionFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)useHeaps:(const id *)a0 count:(unsigned long long)a1;
- (void)setTileVisibleFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)useResource:(id)a0 usage:(unsigned long long)a1;
- (void)setMeshAccelerationStructure:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)executeCommandsInBuffer:(id)a0 indirectBuffer:(id)a1 indirectBufferOffset:(unsigned long long)a2;
- (void)setVertexVisibleFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setFragmentVisibleFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setObjectIntersectionFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setObjectIntersectionFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setObjectAccelerationStructure:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)useHeaps:(const id *)a0 count:(unsigned long long)a1 stages:(unsigned long long)a2;
- (void)setTileIntersectionFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setTileVisibleFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setFragmentIntersectionFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setFragmentIntersectionFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setFragmentVisibleFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)useHeap:(id)a0;
- (void)useResources:(const id *)a0 count:(unsigned long long)a1 usage:(unsigned long long)a2;
- (void)useHeap:(id)a0 stages:(unsigned long long)a1;
- (void)setVertexVisibleFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setVertexAccelerationStructure:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setMeshIntersectionFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)endEncoding;
- (void)setVertexBuffer:(id)a0 offset:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)drawIndexedPrimitives:(unsigned long long)a0 indexCount:(unsigned long long)a1 indexType:(unsigned long long)a2 indexBuffer:(id)a3 indexBufferOffset:(unsigned long long)a4 instanceCount:(unsigned long long)a5 baseVertex:(long long)a6 baseInstance:(unsigned long long)a7;
- (void)drawIndexedPrimitives:(unsigned long long)a0 indexType:(unsigned long long)a1 indexBuffer:(id)a2 indexBufferOffset:(unsigned long long)a3 indirectBuffer:(id)a4 indirectBufferOffset:(unsigned long long)a5;
- (void)drawPrimitives:(unsigned long long)a0 indirectBuffer:(id)a1 indirectBufferOffset:(unsigned long long)a2;
- (void)drawPrimitives:(unsigned long long)a0 vertexStart:(unsigned long long)a1 vertexCount:(unsigned long long)a2 instanceCount:(unsigned long long)a3 baseInstance:(unsigned long long)a4;
- (void)setDepthStencilState:(id)a0;
- (void)setFragmentBuffer:(id)a0 offset:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setRenderPipelineState:(id)a0;
- (void)setObjectBuffer:(id)a0 offset:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)drawMeshThreadgroups:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0 threadsPerObjectThreadgroup:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a1 threadsPerMeshThreadgroup:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a2;
- (void)drawMeshThreadgroupsWithIndirectBuffer:(id)a0 indirectBufferOffset:(unsigned long long)a1 threadsPerObjectThreadgroup:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a2 threadsPerMeshThreadgroup:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a3;
- (void)drawMeshThreads:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0 threadsPerObjectThreadgroup:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a1 threadsPerMeshThreadgroup:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a2;
- (void)drawPrimitives:(unsigned long long)a0 vertexStart:(unsigned long long)a1 vertexCount:(unsigned long long)a2;
- (void)setMeshBuffer:(id)a0 offset:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setMeshBufferOffset:(unsigned long long)a0 atIndex:(unsigned long long)a1;
- (void)setMeshBuffers:(const id *)a0 offsets:(const unsigned long long *)a1 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a2;
- (void)setMeshBytes:(const void *)a0 length:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setMeshTexture:(id)a0 atIndex:(unsigned long long)a1;
- (void)setMeshTextures:(const id *)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setMeshVisibleFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setMeshVisibleFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setObjectBufferOffset:(unsigned long long)a0 atIndex:(unsigned long long)a1;
- (void)setObjectBuffers:(const id *)a0 offsets:(const unsigned long long *)a1 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a2;
- (void)setObjectBytes:(const void *)a0 length:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setObjectTexture:(id)a0 atIndex:(unsigned long long)a1;
- (void)setObjectTextures:(const id *)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setObjectVisibleFunctionTable:(id)a0 atBufferIndex:(unsigned long long)a1;
- (void)setObjectVisibleFunctionTables:(const id *)a0 withBufferRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setTileBuffer:(id)a0 offset:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setVertexBuffer:(id)a0 offset:(unsigned long long)a1 attributeStride:(unsigned long long)a2 atIndex:(unsigned long long)a3;
- (void)setVertexBufferOffset:(unsigned long long)a0 attributeStride:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setVertexBuffers:(const id *)a0 offsets:(const unsigned long long *)a1 attributeStrides:(const unsigned long long *)a2 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a3;
- (void)setVertexBytes:(const void *)a0 length:(unsigned long long)a1 attributeStride:(unsigned long long)a2 atIndex:(unsigned long long)a3;
- (void)dispatchThreadsPerTile:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0;
- (void)dispatchThreadsPerTile:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0 inRegion:(struct { struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; } x0; struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; } x1; })a1;
- (void)drawIndexedPrimitives:(unsigned long long)a0 indexCount:(unsigned long long)a1 indexType:(unsigned long long)a2 indexBuffer:(id)a3 indexBufferOffset:(unsigned long long)a4;
- (void)drawPrimitives:(unsigned long long)a0 vertexStart:(unsigned long long)a1 vertexCount:(unsigned long long)a2 instanceCount:(unsigned long long)a3;
- (void)setFragmentBufferOffset:(unsigned long long)a0 atIndex:(unsigned long long)a1;
- (void)setFragmentTexture:(id)a0 atIndex:(unsigned long long)a1;
- (void)setTileBytes:(const void *)a0 length:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setTileTexture:(id)a0 atIndex:(unsigned long long)a1;
- (void)setVertexBufferOffset:(unsigned long long)a0 atIndex:(unsigned long long)a1;
- (void)setFragmentBytes:(const void *)a0 length:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setVertexBytes:(const void *)a0 length:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)drawIndexedPatches:(unsigned long long)a0 patchIndexBuffer:(id)a1 patchIndexBufferOffset:(unsigned long long)a2 controlPointIndexBuffer:(id)a3 controlPointIndexBufferOffset:(unsigned long long)a4 indirectBuffer:(id)a5 indirectBufferOffset:(unsigned long long)a6;
- (void)drawIndexedPatches:(unsigned long long)a0 patchStart:(unsigned long long)a1 patchCount:(unsigned long long)a2 patchIndexBuffer:(id)a3 patchIndexBufferOffset:(unsigned long long)a4 controlPointIndexBuffer:(id)a5 controlPointIndexBufferOffset:(unsigned long long)a6 instanceCount:(unsigned long long)a7 baseInstance:(unsigned long long)a8;
- (void)drawIndexedPrimitives:(unsigned long long)a0 indexCount:(unsigned long long)a1 indexType:(unsigned long long)a2 indexBuffer:(id)a3 indexBufferOffset:(unsigned long long)a4 instanceCount:(unsigned long long)a5;
- (void)drawPatches:(unsigned long long)a0 patchIndexBuffer:(id)a1 patchIndexBufferOffset:(unsigned long long)a2 indirectBuffer:(id)a3 indirectBufferOffset:(unsigned long long)a4;
- (void)drawPatches:(unsigned long long)a0 patchStart:(unsigned long long)a1 patchCount:(unsigned long long)a2 patchIndexBuffer:(id)a3 patchIndexBufferOffset:(unsigned long long)a4 instanceCount:(unsigned long long)a5 baseInstance:(unsigned long long)a6;
- (void)setFragmentBuffers:(const id *)a0 offsets:(const unsigned long long *)a1 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a2;
- (void)setFragmentTextures:(const id *)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setThreadgroupMemoryLength:(unsigned long long)a0 offset:(unsigned long long)a1 atIndex:(unsigned long long)a2;
- (void)setTileBufferOffset:(unsigned long long)a0 atIndex:(unsigned long long)a1;
- (void)setTileBuffers:(const id *)a0 offsets:(const unsigned long long *)a1 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a2;
- (void)setTileTextures:(const id *)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setVertexBuffers:(const id *)a0 offsets:(const unsigned long long *)a1 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a2;
- (void)setVertexTexture:(id)a0 atIndex:(unsigned long long)a1;
- (void)setVertexTextures:(const id *)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1;
- (void)setFragmentReportBuffer:(id)a0 offset:(unsigned long long)a1;
- (void)_initBufferArgumentData:(id)a0;
- (void)_useResourceCommon:(id)a0 usage:(unsigned long long)a1 stages:(struct optional<unsigned long> { union { char x0; unsigned long long x1; } x0; BOOL x1; })a2;
- (void)dispatchThreadsPerTile:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0 inRegion:(struct { struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; } x0; struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; } x1; })a1 withRenderTargetArrayIndex:(unsigned int)a2;
- (void)flushBindings;
- (id)initWithRenderCommandEncoder:(id)a0 commandBuffer:(id)a1 descriptor:(id)a2 encoderID:(unsigned int)a3;
- (id)initWithRenderCommandEncoder:(id)a0 parallelEncoder:(id)a1 encoderID:(unsigned int)a2;
- (void)setBufferUsageTable:(id)a0 textureUsageTable:(id)a1 forStage:(unsigned long long)a2;
- (void)setMeshReportBuffer:(id)a0 offset:(unsigned long long)a1;
- (void)setObjectReportBuffer:(id)a0 offset:(unsigned long long)a1;
- (void)setRenderPipelineStateBuffers:(id)a0;
- (void)setTessellationControlPointIndexBuffer:(id)a0 offset:(unsigned long long)a1;
- (void)setTileReportBuffer:(id)a0 offset:(unsigned long long)a1;
- (void)setVertexReportBuffer:(id)a0 offset:(unsigned long long)a1;
- (id)temporaryBufferWithBytes:(const void *)a0 length:(unsigned long long)a1;
- (id)temporaryBufferWithLength:(unsigned long long)a0;
- (void)useResourceInternal:(id)a0 usage:(unsigned long long)a1 stages:(struct optional<unsigned long> { union { char x0; unsigned long long x1; } x0; BOOL x1; })a2;

@end