@class NSString, AGXA10FamilyFragmentProgram, AGXA10FamilyObjectProgram, AGXA10FamilyMeshProgram, AGXA10FamilyDevice, MTLDebugInstrumentationData, AGXA10FamilyVertexProgram; @protocol MTLDevice; @interface AGXA10FamilyRenderPipeline : _MTLRenderPipelineState { struct RenderPipeline { struct FragmentProgramVariant *fragment_variant; struct VertexProgramVariant *vertex_variant; struct TileProgramVariant *tile_variant; struct ObjectProgramVariant *object_variant; struct MeshProgramVariant *mesh_variant; struct IOGPUResourceInfo { struct __IOSurface *iosurface; unsigned long resourceSize : 56; unsigned char iosurfaceField : 8; unsigned int resourceID; } resource_info[26]; unsigned int resource_info_count; unsigned int vertex_resource_mask; unsigned int fragment_resource_mask; unsigned int object_resource_mask; unsigned int mesh_resource_mask; BOOL owns_variants; unsigned int max_vertex_amplification_count; float sample_coverage; unsigned int sample_mask; unsigned int sample_count; BOOL rasterization_enabled; BOOL render_tile_pipeline; int tess_winding; int tess_partition_mode; int tess_resource_type; int tess_factor_step_function; int tess_factor_format; unsigned int max_tessellation_factor; BOOL tessellation_factor_scale_enabled; BOOL supports_indirect_command_buffers; BOOL requires_binary_linking_bindings; BOOL descendent_pipeline; struct optional { union { char __null_state_; unsigned int __val_; } ; BOOL __engaged_; } explicit_visibility_group_id; struct AGXA_UnfairLock { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } lock; } visible_function_table_lock; struct AGXA_UnfairLock { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } lock; } intersection_function_table_lock; struct ISPBits { unsigned int header; unsigned int ctl; unsigned int fa; unsigned int fb; unsigned int ba; unsigned int bb; } isp_state; struct CullBits { unsigned int header; float w_clamp; unsigned int ctl; } cull_state; struct ArgumentMask<64UL> { unsigned long long mask; } ei_heap_buffer_resource_mask; struct RenderPipeline *sw_tessellation_pipelines[3]; struct GeometryPipelineState { struct ComputeSize3D { unsigned int x; unsigned int y; unsigned int z; } object_tg_dims; struct ComputeSize3D { unsigned int x; unsigned int y; unsigned int z; } mesh_tg_dims; struct ComputeSize3D { unsigned int x; unsigned int y; unsigned int z; } max_mesh_tgs; unsigned int payload_size; unsigned int object_max_threads_per_tg; unsigned int mesh_max_threads_per_tg; unsigned int vertex_size; unsigned int primitive_size; unsigned int max_vertices; unsigned int max_primitives; unsigned int topology; } geometry_pipeline_state; struct ExecuteIndirectPipelineState { unsigned long long pipeline_state_gpu_address; struct Allocation { struct BufferView { struct AddressView { unsigned long long gpu; char *cpu; } address; unsigned long long size; } buffer_; struct _Resource *resource_; void *heap_; struct tuple<> { } element_; } allocation; struct IOGPUResourceInfo { struct __IOSurface *iosurface; unsigned long resourceSize : 56; unsigned char iosurfaceField : 8; unsigned int resourceID; } pipeline_resource_info; } ei_state; struct Allocation { } resource_indirection_heap_allocation; AGXA10FamilyDevice *device_obj; struct RuntimeState { struct shared_ptr { struct HeapBuffer *__ptr_; struct __shared_weak_count *__cntrl_; } got; struct shared_ptr { struct HeapBuffer *__ptr_; struct __shared_weak_count *__cntrl_; } global_constructors; struct shared_ptr { struct HeapBuffer *__ptr_; struct __shared_weak_count *__cntrl_; } builtin_state_buffer; unsigned int max_temporary_register_count; unsigned int total_spill_buffer_bytes; BOOL has_side_effects; BOOL requires_builtin_state; unsigned int total_ipr_buffer_bytes; unsigned int max_lm_spill_size; unsigned int max_sgpr_lm_size; unsigned int max_tptg_from_dylibs; BOOL allocate_from_ei_heap; } loader_runtime_states[5]; struct PipelineDylibResources { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } dylibs; } dylib_resources[5]; struct unordered_map, RetainedObjCPointer, std::hash>, std::equal_to>, std::allocator, RetainedObjCPointer>>> { struct __hash_table, RetainedObjCPointer>, std::__unordered_map_hasher, std::__hash_value_type, RetainedObjCPointer>, std::hash>, std::equal_to>>, std::__unordered_map_equal, std::__hash_value_type, RetainedObjCPointer>, std::equal_to>, std::hash>>, std::allocator, RetainedObjCPointer>>> { struct unique_ptr, RetainedObjCPointer>, void *> *> *[], std::__bucket_list_deallocator, RetainedObjCPointer>, void *> *> *>>> { struct __compressed_pair, RetainedObjCPointer>, void *> *> **, std::__bucket_list_deallocator, RetainedObjCPointer>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator, RetainedObjCPointer>, void *> *> *>> { struct __compressed_pair, RetainedObjCPointer>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair, RetainedObjCPointer>, void *> *>, std::allocator, RetainedObjCPointer>, void *>>> { struct __hash_node_base, RetainedObjCPointer>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair, std::__hash_value_type, RetainedObjCPointer>, std::hash>, std::equal_to>>> { unsigned long long __value_; } __p2_; struct __compressed_pair, std::__hash_value_type, RetainedObjCPointer>, std::equal_to>, std::hash>>> { float __value_; } __p3_; } __table_; } visible_function_handle_maps[5]; struct unordered_map, std::equal_to, std::allocator>> { struct __hash_table, std::__unordered_map_hasher, std::hash, std::equal_to>, std::__unordered_map_equal, std::equal_to, std::hash>, std::allocator>> { struct unique_ptr, void *> *> *[], std::__bucket_list_deallocator, void *> *> *>>> { struct __compressed_pair, void *> *> **, std::__bucket_list_deallocator, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator, void *> *> *>> { struct __compressed_pair, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair, void *> *>, std::allocator, void *>>> { struct __hash_node_base, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair, std::hash, std::equal_to>> { unsigned long long __value_; } __p2_; struct __compressed_pair, std::equal_to, std::hash>> { float __value_; } __p3_; } __table_; } heap_index_vft_map; struct DummyHeap *clone_visible_function_table_heap; struct unordered_map, std::equal_to, std::allocator>> { struct __hash_table, std::__unordered_map_hasher, std::hash, std::equal_to>, std::__unordered_map_equal, std::equal_to, std::hash>, std::allocator>> { struct unique_ptr, void *> *> *[], std::__bucket_list_deallocator, void *> *> *>>> { struct __compressed_pair, void *> *> **, std::__bucket_list_deallocator, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator, void *> *> *>> { struct __compressed_pair, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair, void *> *>, std::allocator, void *>>> { struct __hash_node_base, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair, std::hash, std::equal_to>> { unsigned long long __value_; } __p2_; struct __compressed_pair, std::equal_to, std::hash>> { float __value_; } __p3_; } __table_; } heap_index_ift_map; struct RayPayloadSizeAlign { unsigned int max_traversal_depth; unsigned int traversal_depth; unsigned int aligned_size; unsigned int driver_size; unsigned int align; unsigned int num_cliques; BOOL has_instancing; } ray_payload_size_align; struct shared_ptr { struct IntersectionPipelineSets *__ptr_; struct __shared_weak_count *__cntrl_; } intersection_pipeline_sets[5]; struct unique_ptr> { struct __compressed_pair> { struct HeapBuffer *__value_; } __ptr_; } scs_per_shader_config_table; } _impl; AGXA10FamilyFragmentProgram *_fp; AGXA10FamilyVertexProgram *_vp; AGXA10FamilyRenderPipeline *_basePipeline; AGXA10FamilyObjectProgram *_op; AGXA10FamilyMeshProgram *_mp; } @property (readonly) unsigned long long maxTileStorageLength; @property (readonly) unsigned long long maxTotalThreadsPerThreadgroup; @property (readonly) unsigned long long maxTotalThreadsPerObjectThreadgroup; @property (readonly) unsigned long long maxTotalThreadsPerMeshThreadgroup; @property (readonly) unsigned long long allocatedSize; @property (readonly, nonatomic) unsigned long long resourceIndex; @property (readonly, nonatomic) unsigned long long gpuAddress; @property (readonly) long long textureWriteRoundingMode; @property (readonly) unsigned long long uniqueIdentifier; @property (readonly, retain, nonatomic) MTLDebugInstrumentationData *vertexDebugInstrumentationData; @property (readonly, retain, nonatomic) MTLDebugInstrumentationData *fragmentDebugInstrumentationData; @property (readonly, retain, nonatomic) MTLDebugInstrumentationData *tileDebugInstrumentationData; @property (readonly, retain, nonatomic) MTLDebugInstrumentationData *objectDebugInstrumentationData; @property (readonly, retain, nonatomic) MTLDebugInstrumentationData *meshDebugInstrumentationData; @property (readonly) unsigned long long objectThreadExecutionWidth; @property (readonly) unsigned long long meshThreadExecutionWidth; @property (readonly, nonatomic) unsigned int explicitVisibilityGroupID; @property (readonly) unsigned long long gpuHandle; @property (readonly) NSString *label; @property (readonly) id device; @property (readonly) BOOL threadgroupSizeMatchesTileSize; @property (readonly) unsigned long long imageblockSampleLength; @property (readonly) BOOL supportIndirectCommandBuffers; @property (readonly) unsigned long long maxTotalThreadgroupsPerMeshGrid; @property (readonly) struct MTLResourceID { unsigned long long x0; } gpuResourceID; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (id)fragmentFunctionHandleWithFunction:(id)a0; - (id)newVisibleFunctionTableWithDescriptor:(id)a0 stage:(unsigned long long)a1; - (void)dealloc; - (id)newVisibleFunctionTableFromVertexStageWithDescriptor:(id)a0; - (unsigned long long)imageblockMemoryLengthForDimensions:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0; - (id)newRenderPipelineStateWithAdditionalBinaryFunctions:(id)a0 fragmentAdditionalBinaryFunctions:(id)a1 error:(id *)a2; - (id).cxx_construct; - (id)newIntersectionFunctionTableWithDescriptor:(id)a0 stage:(unsigned long long)a1; - (id)newRenderPipelineStateWithAdditionalBinaryFunctions:(id)a0 error:(id *)a1; - (id)pipelineBinaries; - (id)objectFunctionHandleWithFunction:(id)a0; - (unsigned int)getVertexShaderTelemetryID; - (id)newVisibleFunctionTableFromFragmentStageWithDescriptor:(id)a0; - (unsigned long long)imageBlockSampleLength; - (id)newVisibleFunctionTableFromTileStageWithDescriptor:(id)a0; - (unsigned int)getFragmentShaderTelemetryID; - (void).cxx_destruct; - (id)initWithDevice:(id)a0 meshRenderPipelineStateDescriptor:(id)a1 objectThreadExecutionWidth:(unsigned long long)a2 meshThreadExecutionWidth:(unsigned long long)a3; - (id)initWithParent:(id)a0; - (id)tileFunctionHandleWithFunction:(id)a0; - (id)meshFunctionHandleWithFunction:(id)a0; - (id)initWithDevice:(id)a0 meshRenderPipelineStateDescriptor:(id)a1 objectThreadExecutionWidth:(unsigned long long)a2 meshThreadExecutionWidth:(unsigned long long)a3 maxTotalThreadgroupsPerMeshGrid:(unsigned long long)a4; - (id)initWithDevice:(id)a0 pipelineStateDescriptor:(id)a1; - (id)vertexFunctionHandleWithFunction:(id)a0; - (unsigned long long)staticThreadgroupMemoryLength; - (id)newFragmentShaderDebugInfo; - (id)newVertexShaderDebugInfo; - (unsigned long long)imageBlockMemoryLengthForDimensions:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a0; - (id)newMeshShaderDebugInfo; - (id)newObjectShaderDebugInfo; @end