luxlabs header browser preview


@class DYMTLTileMemoryExtractor, NSString, NSArray, DYMTLTextureRenderer, DYMTLPixelHistoryDrawStatsSupport, NSMutableDictionary, NSDictionary, NSMutableArray, DYMTLShaderDebuggerTraceGenerator, MTLRenderPassDescriptor, DYMTLPostVertexDump, DYMTLDebugWireframeRenderer;
@protocol MTLBuffer, MTLFence, MTLRenderPipelineState, MTLFunction;

@interface DYMTLCommonDebugFunctionPlayer : DYMTLCommonFunctionPlayer {
    struct unordered_map<unsigned long long, unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, unsigned long long>>> { struct __hash_table<std::__hash_value_type<unsigned long long, unsigned long long>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, unsigned long long>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _drawableIdToLayerIdMap;
    struct unordered_map<unsigned long long, unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, unsigned long long>>> { struct __hash_table<std::__hash_value_type<unsigned long long, unsigned long long>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, unsigned long long>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _textureToDrawableMap;
    struct unordered_map<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>>> { struct __hash_table<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, GPUTools::MTL::Utils::DYMTLRenderPassDescriptor>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _commandEncoderDescriptorMap;
    NSDictionary *_counterInfos;
    struct vector<unsigned long, std::allocator<unsigned long>> { unsigned long long *__begin_; unsigned long long *__end_; struct __compressed_pair<unsigned long *, std::allocator<unsigned long>> { unsigned long long *__value_; } __end_cap_; } _baseCounterIndexForList;
    struct unordered_map<unsigned long long, CommandBufferInfo, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, CommandBufferInfo>>> { struct __hash_table<std::__hash_value_type<unsigned long long, CommandBufferInfo>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, CommandBufferInfo>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, CommandBufferInfo>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, CommandBufferInfo>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CommandBufferInfo>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, CommandBufferInfo>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, CommandBufferInfo>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _commandBufferMap;
    struct unordered_map<unsigned long long, EncoderInfo, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, EncoderInfo>>> { struct __hash_table<std::__hash_value_type<unsigned long long, EncoderInfo>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, EncoderInfo>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _encoderMap;
    struct unordered_map<unsigned long long, EncoderInfo, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, EncoderInfo>>> { struct __hash_table<std::__hash_value_type<unsigned long long, EncoderInfo>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, EncoderInfo>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, EncoderInfo>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, EncoderInfo>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _parallelEncoderMap;
    struct unordered_map<unsigned long long, unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, unsigned long long>>> { struct __hash_table<std::__hash_value_type<unsigned long long, unsigned long long>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, unsigned long long>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _encoderToParallelEncoderMap;
    unsigned long long _lastEncoderID;
    BOOL _disableWireframe;
    struct unordered_set<unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<unsigned long long>> { struct __hash_table<unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<unsigned long long>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<unsigned long long, void *> *>, std::allocator<std::__hash_node<unsigned long long, void *>>> { struct __hash_node_base<std::__hash_node<unsigned long long, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::hash<unsigned long long>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::equal_to<unsigned long long>> { float __value_; } __p3_; } __table_; } _commandQueueSet;
    DYMTLDebugWireframeRenderer *_wireframeRenderer;
    unsigned int _nRemainingCommandsForCurrentEncoder;
    MTLRenderPassDescriptor *_parallelRenderCommandEncoderDescriptor;
    struct DYMTLRenderPassDescriptor { unsigned long long visibilityResultBuffer; unsigned long long renderTargetArrayLength; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long texture; unsigned long long level; unsigned long long slice; unsigned long long depthPlane; unsigned long long resolveTexture; unsigned long long resolveLevel; unsigned long long resolveSlice; unsigned long long resolveDepthPlane; unsigned long long loadAction; unsigned long long storeAction; unsigned long long storeActionOptions; struct DYMTLClearValue { union { struct { double red; double green; double blue; double alpha; } ; double colors[4]; } ; } clearValue; BOOL yInvert; unsigned long long depthResolveFilter; unsigned long long stencilResolveFilter; } colorAttachments[8]; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long texture; unsigned long long level; unsigned long long slice; unsigned long long depthPlane; unsigned long long resolveTexture; unsigned long long resolveLevel; unsigned long long resolveSlice; unsigned long long resolveDepthPlane; unsigned long long loadAction; unsigned long long storeAction; unsigned long long storeActionOptions; struct DYMTLClearValue { union { struct { double red; double green; double blue; double alpha; } ; double colors[4]; } ; } clearValue; BOOL yInvert; unsigned long long depthResolveFilter; unsigned long long stencilResolveFilter; } depthAttachment; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long texture; unsigned long long level; unsigned long long slice; unsigned long long depthPlane; unsigned long long resolveTexture; unsigned long long resolveLevel; unsigned long long resolveSlice; unsigned long long resolveDepthPlane; unsigned long long loadAction; unsigned long long storeAction; unsigned long long storeActionOptions; struct DYMTLClearValue { union { struct { double red; double green; double blue; double alpha; } ; double colors[4]; } ; } clearValue; BOOL yInvert; unsigned long long depthResolveFilter; unsigned long long stencilResolveFilter; } stencilAttachment; unsigned long long imageblockSampleLength; unsigned long long threadgroupMemoryLength; unsigned long long tileWidth; unsigned long long tileHeight; unsigned long long renderTargetWidth; unsigned long long renderTargetHeight; unsigned long long defaultRasterSampleCount; unsigned long long rasterizationRateMap; struct DYMTLSamplePosition { float x; float y; } customSamplePositions[8]; unsigned long long customSampleCount; BOOL openGLModeEnabled; BOOL ditherEnabled; BOOL skipEmptyTilesOnClearEnabled; } _dyParallelRenderCommandEncoderDescriptor;
    unsigned long long _parallelCommandBufferId;
    NSDictionary *_profileInfo;
    NSArray *_batchInfos;
    unsigned long long _currentBatchEncoderIndex;
    unsigned int _currentEncoderBatchIndex;
    struct unordered_map<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>, std::hash<unsigned long>, std::equal_to<unsigned long>, std::allocator<std::pair<const unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>>> { struct __hash_table<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, std::__unordered_map_hasher<unsigned long, std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, std::hash<unsigned long>, std::equal_to<unsigned long>>, std::__unordered_map_equal<unsigned long, std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, std::equal_to<unsigned long>, std::hash<unsigned long>>, std::allocator<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long, std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, std::hash<unsigned long>, std::equal_to<unsigned long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long, std::__hash_value_type<unsigned long, std::vector<std::pair<unsigned int, unsigned int>>>, std::equal_to<unsigned long>, std::hash<unsigned long>>> { float __value_; } __p3_; } __table_; } _encoderIndexToBatchInfo;
    struct vector<std::pair<unsigned int, unsigned int>, std::allocator<std::pair<unsigned int, unsigned int>>> { void *__begin_; void *__end_; struct __compressed_pair<std::pair<unsigned int, unsigned int> *, std::allocator<std::pair<unsigned int, unsigned int>>> { void *__value_; } __end_cap_; } _currentEncoderBatchInfo;
    NSArray *_splitEncoderCommandCount;
    struct { struct { unsigned long long x; unsigned long long y; unsigned long long z; } origin; struct { unsigned long long width; unsigned long long height; unsigned long long depth; } size; } _stageInRegion;
    BOOL _bSetStageInRegion;
    unsigned long long _stageInIndirectBufferId;
    unsigned long long _stageInIndirectBufferOffset;
    BOOL _isTileRenderPassDescriptor;
    id<MTLRenderPipelineState> _renderPipelineState;
    id<MTLFunction> _nopDrawFragFunction;
    id<MTLFunction> _nopDrawVertexFunction;
    id<MTLFunction> _nopTileFunction;
    id<MTLRenderPipelineState> _nopRenderPipelineState;
    struct vector<bool, std::allocator<bool>> { unsigned long long *__begin_; unsigned long long __size_; struct __compressed_pair<unsigned long, std::allocator<unsigned long>> { unsigned long long __value_; } __cap_alloc_; } _isDeltaCounter;
    DYMTLTileMemoryExtractor *_tileMemoryExtractor;
    DYMTLTextureRenderer *_textureRenderer;
    unsigned int _commandBufferIndex;
    unsigned int _encoderIndex;
    unsigned int _drawIndex;
    unsigned int _datamasterIndex;
    unsigned int _sampleLocationIndex;
    unsigned int _gpuCyclesIndex;
    unsigned int _nSecIndex;
    BOOL _supportsTessellation;
    unsigned long long _targetCommandEncoderId;
    struct unordered_map<unsigned long long, CAMetalLayer *, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, CAMetalLayer *>>> { struct __hash_table<std::__hash_value_type<unsigned long long, CAMetalLayer *>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, CAMetalLayer *>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, CAMetalLayer *>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, CAMetalLayer *>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, CAMetalLayer *>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, CAMetalLayer *>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, CAMetalLayer *>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _metalLayers;
    unsigned long long _lastCommandBufferId;
    unsigned long long _lastCommandBufferIndex;
    unsigned long long _lastEncoderIndex;
    struct tuple<unsigned long long, unsigned long long> { struct __tuple_impl<std::__tuple_indices<0, 1>, unsigned long long, unsigned long long> { unsigned long long __value_; unsigned long long __value_; } __base_; } _lastSampleCommandBufferEncoderId;
    struct vector<unsigned long long, std::allocator<unsigned long long>> { unsigned long long *__begin_; unsigned long long *__end_; struct __compressed_pair<unsigned long long *, std::allocator<unsigned long long>> { unsigned long long *__value_; } __end_cap_; } _last;
    MTLRenderPassDescriptor *_currentParallelDescriptor;
    unsigned long long _currentParallelId;
    struct unordered_map<unsigned long long, unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, unsigned long long>>> { struct __hash_table<std::__hash_value_type<unsigned long long, unsigned long long>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, unsigned long long>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _persistantEncoder2ParallelMap;
    NSMutableDictionary *_thumbnailDictionary;
    NSMutableDictionary *_dependencyGraphThumbnails;
    unsigned long long _parallelEncoderCommandBufferID;
    MTLRenderPassDescriptor *_dependencyGraphParallelDescriptor;
    struct DYMTLRenderPassDescriptor { unsigned long long visibilityResultBuffer; unsigned long long renderTargetArrayLength; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long texture; unsigned long long level; unsigned long long slice; unsigned long long depthPlane; unsigned long long resolveTexture; unsigned long long resolveLevel; unsigned long long resolveSlice; unsigned long long resolveDepthPlane; unsigned long long loadAction; unsigned long long storeAction; unsigned long long storeActionOptions; struct DYMTLClearValue { union { struct { double red; double green; double blue; double alpha; } ; double colors[4]; } ; } clearValue; BOOL yInvert; unsigned long long depthResolveFilter; unsigned long long stencilResolveFilter; } colorAttachments[8]; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long texture; unsigned long long level; unsigned long long slice; unsigned long long depthPlane; unsigned long long resolveTexture; unsigned long long resolveLevel; unsigned long long resolveSlice; unsigned long long resolveDepthPlane; unsigned long long loadAction; unsigned long long storeAction; unsigned long long storeActionOptions; struct DYMTLClearValue { union { struct { double red; double green; double blue; double alpha; } ; double colors[4]; } ; } clearValue; BOOL yInvert; unsigned long long depthResolveFilter; unsigned long long stencilResolveFilter; } depthAttachment; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long texture; unsigned long long level; unsigned long long slice; unsigned long long depthPlane; unsigned long long resolveTexture; unsigned long long resolveLevel; unsigned long long resolveSlice; unsigned long long resolveDepthPlane; unsigned long long loadAction; unsigned long long storeAction; unsigned long long storeActionOptions; struct DYMTLClearValue { union { struct { double red; double green; double blue; double alpha; } ; double colors[4]; } ; } clearValue; BOOL yInvert; unsigned long long depthResolveFilter; unsigned long long stencilResolveFilter; } stencilAttachment; unsigned long long imageblockSampleLength; unsigned long long threadgroupMemoryLength; unsigned long long tileWidth; unsigned long long tileHeight; unsigned long long renderTargetWidth; unsigned long long renderTargetHeight; unsigned long long defaultRasterSampleCount; unsigned long long rasterizationRateMap; struct DYMTLSamplePosition { float x; float y; } customSamplePositions[8]; unsigned long long customSampleCount; BOOL openGLModeEnabled; BOOL ditherEnabled; BOOL skipEmptyTilesOnClearEnabled; } _dependencyGraphDYMTLParallelDescriptor;
    id<MTLFence> _sparseTextureFence;
    NSMutableDictionary *_pixelHistory;
    id<MTLBuffer> _pixelHistoryPixelPreviousStencil;
    id<MTLBuffer> _pixelHistoryPixelPreviousDepth;
    struct unordered_map<unsigned long long, unsigned long long, std::hash<unsigned long long>, std::equal_to<unsigned long long>, std::allocator<std::pair<const unsigned long long, unsigned long long>>> { struct __hash_table<std::__hash_value_type<unsigned long long, unsigned long long>, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>, std::allocator<std::__hash_value_type<unsigned long long, unsigned long long>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<unsigned long long, unsigned long long>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::hash<unsigned long long>, std::equal_to<unsigned long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<unsigned long long, std::__hash_value_type<unsigned long long, unsigned long long>, std::equal_to<unsigned long long>, std::hash<unsigned long long>>> { float __value_; } __p3_; } __table_; } _pixelHistoryInverseObjectMap;
    DYMTLPixelHistoryDrawStatsSupport *_pixelHistoryDrawStatsRenderer;
    NSMutableDictionary *_pixelHistoryEncoderStateTrackings;
    BOOL _isAGXDevice;
}

@property (nonatomic) unsigned int currentEncoderIndex;
@property (retain, nonatomic) NSMutableArray *counterListsPerPass;
@property (retain, nonatomic) NSString *statVertices;
@property (retain, nonatomic) NSString *statPixels;
@property (retain, nonatomic) NSMutableArray *frameCounters;
@property (nonatomic) BOOL shouldIgnoreCaptureFile;
@property (nonatomic) long long wireframeRenderMode;
@property (readonly, nonatomic) DYMTLPostVertexDump *postVertexDump;
@property (readonly, nonatomic) BOOL targetFunctionNeedsSeparatedPostVertexDump;
@property (readonly, nonatomic) DYMTLShaderDebuggerTraceGenerator *shaderDebuggerTraceGenerator;

+ (id)harvestableTexture:(id)a0;
+ (id)thumbnailTexture:(unsigned long long)a0;

- (void)setDevice:(id)a0;
- (void)setStatLocations:(unsigned long long)a0;
- (id).cxx_construct;
- (void).cxx_destruct;
- (unsigned long long)getStatLocations;
- (id)thumbnailCache;
- (id)derivedCounterData;
- (void)executeGraphicsFunction;
- (void)executePlatformFunction;
- (id)initWithCaptureStore:(id)a0;
- (BOOL)shouldExecuteGraphicsFunction;
- (void)executeFunctions:(struct CoreFunction { unsigned int x0; unsigned int x1; unsigned short x2; unsigned short x3; union { unsigned long long x0; unsigned long long x1; } x4; struct Argument { void *x0; unsigned int x1; unsigned int x2; unsigned int x3; unsigned short x4; unsigned short x5; } x5; struct Argument { void *x0; unsigned int x1; unsigned int x2; unsigned int x3; unsigned short x4; unsigned short x5; } x6[16]; unsigned int x7; unsigned int x8; void *x9; void *x10; } *)a0 count:(unsigned long long)a1 subCommandIndex:(unsigned int)a2;
- (void)prepareForCaptureExecution;
- (void)commitEncodersAndCommandBuffers;
- (void)_addRenderPassDescriptorToEncoderMapFromRenderPassDescriptor:(struct DYMTLRenderPassDescriptor { unsigned long long x0; unsigned long long x1; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; struct DYMTLClearValue { union { struct { double x0; double x1; double x2; double x3; } x0; double x1[4]; } x0; } x11; BOOL x12; unsigned long long x13; unsigned long long x14; } x2[8]; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; struct DYMTLClearValue { union { struct { double x0; double x1; double x2; double x3; } x0; double x1[4]; } x0; } x11; BOOL x12; unsigned long long x13; unsigned long long x14; } x3; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; struct DYMTLClearValue { union { struct { double x0; double x1; double x2; double x3; } x0; double x1[4]; } x0; } x11; BOOL x12; unsigned long long x13; unsigned long long x14; } x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; unsigned long long x11; unsigned long long x12; struct DYMTLSamplePosition { float x0; float x1; } x13[8]; unsigned long long x14; BOOL x15; BOOL x16; BOOL x17; } *)a0 forEncoder:(unsigned long long)a1;
- (void)presentDrawable;
- (void)_addRenderPassDescriptorToEncoderMapFromArgumentPointer:(void *)a0 forEncoder:(unsigned long long)a1;
- (struct AttachmentInfo { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; })_attachmentInfoForCommandEncoderID:(unsigned long long)a0;
- (void)_createBatchIdFilterMapping:(BOOL)a0 withCommandEncoder:(id)a1;
- (void)_endEncodingForAllRemainingEncoders:(void *)a0;
- (void)_executeGraphicsFunction;
- (unsigned long long)_executeIndirectCommandBufferUpToSubIndex:(unsigned long long)a0 outBuffer:(id *)a1 outDataPointer:(const char **)a2;
- (void)_extractTileMemoryWithRenderPassDescriptor:(struct DYMTLRenderPassDescriptor { unsigned long long x0; unsigned long long x1; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; struct DYMTLClearValue { union { struct { double x0; double x1; double x2; double x3; } x0; double x1[4]; } x0; } x11; BOOL x12; unsigned long long x13; unsigned long long x14; } x2[8]; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; struct DYMTLClearValue { union { struct { double x0; double x1; double x2; double x3; } x0; double x1[4]; } x0; } x11; BOOL x12; unsigned long long x13; unsigned long long x14; } x3; struct DYMTLRenderPassAttachmentDescriptor { unsigned long long x0; unsigned long long x1; unsigned long long x2; unsigned long long x3; unsigned long long x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; struct DYMTLClearValue { union { struct { double x0; double x1; double x2; double x3; } x0; double x1[4]; } x0; } x11; BOOL x12; unsigned long long x13; unsigned long long x14; } x4; unsigned long long x5; unsigned long long x6; unsigned long long x7; unsigned long long x8; unsigned long long x9; unsigned long long x10; unsigned long long x11; unsigned long long x12; struct DYMTLSamplePosition { float x0; float x1; } x13[8]; unsigned long long x14; BOOL x15; BOOL x16; BOOL x17; } *)a0 renderEncoderID:(unsigned long long)a1 isDrawCall:(BOOL)a2;
- (void)_forceAttachmentLoadActionToLoad:(id)a0;
- (void)_forceAttachmentStoreActionToStore:(id)a0;
- (id)_generateDummyPipeline:(id)a0;
- (id)_generateThumbnailAndResourceInfoForRequestedTextures:(id)a0 resolution:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a1 commandBuffer:(id)a2;
- (BOOL)_isFunctionCommandEncoderCreation;
- (BOOL)_isReceiverTypeCommandEncoderRelated;
- (void)_modifyDescriptorForLayering:(id)a0 withBuffer:(id)a1;
- (void)_modifyDescriptorForStore:(id)a0;
- (void)_setupEncodersForBatchIdFiltering;
- (void)_splitBlitEncoder;
- (void)_splitCommandEncoders;
- (void)_splitComputeEncoder;
- (void)_splitRenderEncoders;
- (void)_superExecutePlatformFunction;
- (void)_swizzleAttachmentTextureForLoad:(id)a0 withBuffer:(id)a1;
- (id)_texture2DFromTexture:(id)a0 level:(unsigned long long)a1 slice:(unsigned long long)a2 depthPlane:(unsigned long long)a3 commandBuffer:(id)a4;
- (void)_trackObjects;
- (void)_updateMemorylessTextures:(id)a0;
- (void)_updateRemainingCommandsForEncoder;
- (void)allowOverlap:(BOOL)a0 withPState:(unsigned int)a1;
- (id)collectPixelDrawStats:(id)a0 originalEncoderId:(unsigned long long)a1 originalEncoder:(id)a2 originalPipeline:(id)a3 atX:(unsigned long long)a4 y:(unsigned long long)a5 draw:(id /* block */)a6;
- (id)collectPixelDrawStatsTotal:(id)a0 originalPipeline:(id)a1 atX:(unsigned long long)a2 y:(unsigned long long)a3 draw:(id /* block */)a4;
- (id)counterInfo:(id)a0;
- (id)dependencyGraphThumbnailCache;
- (void)enableConsistentState:(BOOL)a0;
- (void)enableStatsSampling:(BOOL)a0;
- (void)encodeStoreActionForParallelRenderCommandEncoder:(id)a0 withDescriptor:(id)a1;
- (void)encodeStoreActionForRenderCommandEncoder:(id)a0 withDescriptor:(id)a1;
- (void *)encoderMap;
- (void)extractCommandBufferTranslationData;
- (void)extractComputeIndirectArgumentBuffers:(void *)a0;
- (void)extractIndirectArgumentBuffers;
- (void)extractRenderIndirectArgumentBuffers:(void *)a0;
- (id)generatePerPrimitiveHistory:(unsigned long long)a0 commandQueue:(id)a1 currentEncoderId:(unsigned long long)a2 originalEncoder:(id)a3 originalPipeline:(id)a4 atX:(unsigned long long)a5 y:(unsigned long long)a6;
- (id)generatePerPrimitiveHistory_drawPrimitives_vertexStart_vertexCount:(unsigned long long)a0 vertexStart:(unsigned long long)a1 vertexCount:(unsigned long long)a2 total:(unsigned long long)a3 commandQueue:(id)a4 currentEncoderId:(unsigned long long)a5 originalEncoder:(id)a6 originalPipeline:(id)a7 atX:(unsigned long long)a8 y:(unsigned long long)a9;
- (BOOL)isBlitSamplingSupported;
- (BOOL)isCounterAvailable:(id)a0;
- (id)pixelHistoryCache;
- (id)replayerLayerForDrawableId:(unsigned long long)a0;
- (void)resetFunctionPlayerData;
- (void)resetPixelHistoryCache;
- (void)sampleEncoderCounters;
- (void)sampleSplitEncoderCounters;
- (void)setConsistentStateTo:(unsigned int)a0;
- (void)setupAllStatLocationsWithBlitOption:(BOOL)a0;
- (void)setupBatchFilterForEncoders:(id)a0;
- (id)setupCounterConfigurationAndGetFrameProfilerCounters;
- (void)setupFrameTimeProfiling;
- (void)setupProfileInfo:(id)a0;
- (void)setupProfilingForCounterLists;
- (BOOL)setupProfilingForListAtIndex:(unsigned long long)a0;
- (void)stopFrameProfiling;
- (void)updateReplayerLayer:(unsigned long long)a0 withOriginalLayer:(unsigned long long)a1;
- (void)waitForCommmandBuffersCompletion;

@end