@class DYMTLIndirectCommandBufferManager, DYMTLIndirectArgumentBufferManager; @protocol MTLCommandQueueSPI, MTLDevice; @interface DYMTLFunctionPlayer : DYFunctionPlayer { 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_; } _objectMap; id _commandQueue; 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_; } _vertexBytesDataMap; 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_; } _fragmentBytesDataMap; 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_; } _tileBytesDataMap; 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_; } _computeBytesDataMap; } @property (retain, nonatomic) id device; @property (retain, nonatomic) DYMTLIndirectArgumentBufferManager *indirectArgumentManager; @property (retain, nonatomic) DYMTLIndirectCommandBufferManager *indirectCommandManager; + (void *)computeBytesKeyAtIndex:(unsigned long long)a0; + (void *)fragmentBytesKeyAtIndex:(unsigned long long)a0; + (void *)tileBytesKeyAtIndex:(unsigned long long)a0; + (void *)vertexBytesKeyAtIndex:(unsigned long long)a0; - (id)commandQueue; - (void)dealloc; - (void)setObject:(id)a0 forKey:(unsigned long long)a1; - (id).cxx_construct; - (void)removeObjectForKey:(unsigned long long)a0; - (void).cxx_destruct; - (id)objectForKey:(unsigned long long)a0; - (void *)objectMap; - (void)executeGraphicsFunction; - (void)executePlatformFunction; - (id)initWithCaptureStore:(id)a0; - (BOOL)isFrameBoundary; - (id)_createPrivateBufferForFunctionWithDevice:(id)a0 bytes:(char *)a1 length:(unsigned long long)a2 resourceOptions:(unsigned long long)a3; - (id)_getDeviceWithName:(id)a0; - (BOOL)_isCPUAccessibleStorageMode:(unsigned long long)a0; - (BOOL)_isDepthStencilFormat:(unsigned long long)a0; - (void)_restoreTexture:(unsigned long long)a0 commandBuffer:(unsigned long long)a1 argumentOffset:(unsigned long long)a2; - (void)_saveBytes; - (const void *)computeBytesForKey:(unsigned long long)a0; - (id)deviceForID:(unsigned long long)a0 withDeviceName:(id)a1; - (const void *)fragmentBytesForKey:(unsigned long long)a0; - (unsigned long long)keyForOriginalObject:(id)a0; - (unsigned long long)keyForOriginalObject:(id)a0 inverseObjectMap:(void *)a1; - (const void *)tileBytesForKey:(unsigned long long)a0; - (const void *)vertexBytesForKey:(unsigned long long)a0; @end