@class MTLTelemetryDevice; @interface MTLTelemetryCommandBuffer : MTLToolsCommandBuffer { struct MTLTelemetryEncoderCountRec { unsigned int x0; unsigned int x1; unsigned int x2; unsigned int x3; } *encoderCount; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *attachmentCount; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *textureBindCount; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *parallellRenderEncoderDistribution; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *renderTargetArrayLengthDistribution; struct MTLTelemetryViewportDistributionRec { struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x0; struct MTLTelemetryStatisticFRec { float x0; float x1; float x2; unsigned int x3; } x1; struct MTLTelemetryStatisticFRec { float x0; float x1; float x2; unsigned int x3; } x2; struct MTLTelemetryStatisticFRec { float x0; float x1; float x2; unsigned int x3; } x3; struct MTLTelemetryStatisticFRec { float x0; float x1; float x2; unsigned int x3; } x4; } *viewportDistribution; struct MTLTelemetryScissorRectDistributionRec { struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x0; struct MTLTelemetryStatisticFRec { float x0; float x1; float x2; unsigned int x3; } x1; struct MTLTelemetryStatisticFRec { float x0; float x1; float x2; unsigned int x3; } x2; } *scissorRectDistribution; struct MTLTelemetryDrawDistributionRec { struct MTLTelemetryDrawStatRec { unsigned int x0; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x1; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x2; } x0[5][3][3]; } *drawDistribution; struct MTLTelemetryDispatchDistributionRec { unsigned int x0; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x1; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x2; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x3; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x4; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x5; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x6; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x7; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x8; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x9; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } x10; } *dispatchDistribution; unsigned int cbDraws; unsigned int cbDispatches; unsigned int cbBlits; unsigned int cbMemoryBarriers; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *renderEncoderDrawCallDistribution; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *computeEncoderDispatchDistribution; struct MTLTelemetryStatisticUIRec { unsigned int x0; unsigned int x1; unsigned long long x2; unsigned int x3; } *blitEncoderBlitDistribution; struct unordered_map<MTLPixelFormat, MTLTelemetryRenderTargetDistribution, std::hash<unsigned long long>, std::equal_to<MTLPixelFormat>, std::allocator<std::pair<const MTLPixelFormat, MTLTelemetryRenderTargetDistribution>>> { struct __hash_table<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, std::__unordered_map_hasher<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, std::hash<unsigned long long>, std::equal_to<MTLPixelFormat>>, std::__unordered_map_equal<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, std::equal_to<MTLPixelFormat>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, std::hash<unsigned long long>, std::equal_to<MTLPixelFormat>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryRenderTargetDistribution>, std::equal_to<MTLPixelFormat>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } renderTargetMap; struct unordered_map<MTLPixelFormat, MTLTelemetryBlitDistribution, std::hash<unsigned long long>, std::equal_to<MTLPixelFormat>, std::allocator<std::pair<const MTLPixelFormat, MTLTelemetryBlitDistribution>>> { struct __hash_table<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, std::__unordered_map_hasher<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, std::hash<unsigned long long>, std::equal_to<MTLPixelFormat>>, std::__unordered_map_equal<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, std::equal_to<MTLPixelFormat>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, std::hash<unsigned long long>, std::equal_to<MTLPixelFormat>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<MTLPixelFormat, std::__hash_value_type<MTLPixelFormat, MTLTelemetryBlitDistribution>, std::equal_to<MTLPixelFormat>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } blitMap; struct MTLTelemetryAnisoClippedCountsRec { unsigned int x0[4]; } *anisoClippedCounts; unsigned int depthClipModeClampCount; MTLTelemetryDevice *_telemetryDevice; struct MTLTelemetryKernelStateRec { int pbAlloc; int spmRenderCount; int tiledSceneBytes; int renderCount; } _initKernelState; } - (id)blitCommandEncoderWithDescriptor:(id)a0; - (id)computeCommandEncoderWithDescriptor:(id)a0; - (void)dealloc; - (id).cxx_construct; - (void).cxx_destruct; - (id)computeCommandEncoder; - (id)blitCommandEncoder; - (id)renderCommandEncoderWithDescriptor:(id)a0; - (id)parallelRenderCommandEncoderWithDescriptor:(id)a0; - (void)initDistributions; - (id)initWithCommandBuffer:(id)a0 commandQueue:(id)a1 descriptor:(id)a2; - (void)mergeDistributions; - (void)postCompletionHandlers; @end