luxlabs header browser preview


@class MTLToolsObjectCache, NSString, MTLGPUBVHBuilder, NSDictionary, MTLArchitecture, MTLTargetDeviceArchitecture, NSArray;
@protocol MTLDeviceSPI;

@interface MTLToolsDevice : MTLToolsObject <MTLDeviceSPI> {
    id<MTLDeviceSPI> _deviceWrapper;
    MTLToolsObjectCache *functionHandleObjectCache;
    MTLToolsObjectCache *dynamicLibraryObjectCache;
    MTLToolsObjectCache *sourceLibraryObjectCache;
    MTLToolsObjectCache *functionObjectCache;
    MTLToolsObjectCache *depthStencilObjectCache;
    MTLToolsObjectCache *samplerObjectCache;
}

@property (readonly, getter=isLowPower) BOOL lowPower;
@property (readonly, getter=isHeadless) BOOL headless;
@property (readonly, getter=isDepth24Stencil8PixelFormatSupported) BOOL depth24Stencil8PixelFormatSupported;
@property (readonly, getter=isIntegrated) BOOL integrated;
@property (readonly) unsigned long long memorySize;
@property (readonly) unsigned long long recommendedMaxWorkingSetSize;
@property (readonly, getter=isRemovable) BOOL removable;
@property (readonly) unsigned long long registryID;
@property (readonly) BOOL hasUnifiedMemory;
@property (readonly, nonatomic) BOOL supportsBufferlessClientStorageTexture;
@property (readonly, nonatomic) BOOL supportsComputeMemoryBarrier;
@property (readonly, nonatomic) BOOL supportsRenderMemoryBarrier;
@property (readonly, nonatomic) BOOL supportsArgumentBuffersTier2;
@property (readonly, nonatomic) BOOL supportsReadWriteTextureArgumentsTier2;
@property (readonly, nonatomic) BOOL supportsStreamingCodecSignaling;
@property (readonly, nonatomic) BOOL supportsProgrammableSamplePositions;
@property (readonly, nonatomic) BOOL supportsLargeFramebufferConfigs;
@property (readonly, nonatomic) BOOL supportsCustomBorderColor;
@property (readonly, nonatomic) BOOL supportsSamplerAddressModeClampToHalfBorder;
@property (readonly, nonatomic) BOOL supportsBCTextureCompression;
@property (readonly, nonatomic) BOOL supports3DBCTextures;
@property (readonly, nonatomic) BOOL supportsRGBA10A2Gamma;
@property (readonly, nonatomic) BOOL supportsBGR10A2;
@property (readonly, nonatomic) BOOL supportsPrimitiveRestartOverride;
@property (readonly, nonatomic) BOOL supportsGlobalVariableRelocation;
@property (readonly, nonatomic) BOOL supportsGlobalVariableRelocationRender;
@property (readonly, nonatomic) BOOL supportsGlobalVariableRelocationCompute;
@property (readonly, nonatomic) BOOL supportsTLS;
@property (readonly, nonatomic) BOOL supports32bpcMSAATextures;
@property (readonly, nonatomic) BOOL supports32BitMSAA;
@property (readonly, nonatomic) BOOL supports32BitFloatFiltering;
@property (readonly, nonatomic) BOOL supportsQueryTextureLOD;
@property (readonly, nonatomic) BOOL supportsVertexAmplification;
@property (readonly, nonatomic) BOOL supportsPlacementHeaps;
@property (readonly, nonatomic) BOOL supportsOpenCLTextureWriteSwizzles;
@property (readonly, nonatomic) BOOL supportsPullModelInterpolation;
@property (readonly, nonatomic) BOOL supportsInt64;
@property (readonly, nonatomic) BOOL supportsFixedLinePointFillDepthGradient;
@property (readonly, nonatomic) BOOL supportsLateEvalEvent;
@property (readonly, nonatomic) BOOL supportsNonZeroTextureWriteLOD;
@property (readonly, nonatomic) BOOL supportsSharedTextureHandles;
@property (readonly, nonatomic) BOOL supportsBufferPrefetchStatistics;
@property (readonly, nonatomic) BOOL supportsLimitedYUVFormats;
@property (readonly, nonatomic) BOOL supportsNonPrivateDepthStencilTextures;
@property (readonly, nonatomic) BOOL supportsNonPrivateMSAATextures;
@property (readonly, nonatomic) BOOL supportsSharedStorageHeapResources;
@property (readonly, nonatomic) BOOL supportsSharedStorageTextures;
@property (readonly, nonatomic) BOOL supportsLinearTextureFromSharedBuffer;
@property (readonly, nonatomic) BOOL supportsPipelineLibraries;
@property (readonly, nonatomic) BOOL supportsFragmentOnlyEncoders;
@property (readonly, nonatomic) BOOL supportsBufferWithIOSurface;
@property (readonly, nonatomic) BOOL supportsProgrammableBlending;
@property (readonly, nonatomic) BOOL supportsRenderToLinearTextures;
@property (readonly, nonatomic) BOOL supportsMemorylessRenderTargets;
@property (readonly, nonatomic) BOOL supportsFastMathInfNaNPropagation;
@property (readonly, nonatomic) BOOL supportsInvariantVertexPosition;
@property (readonly, nonatomic) BOOL supportsShaderLODAverage;
@property (readonly, nonatomic) BOOL supportsRelaxedTextureViewRequirements;
@property (readonly, nonatomic) BOOL supportsSeparateDepthStencil;
@property (readonly, nonatomic) BOOL supportsGPUStatistics;
@property (readonly, nonatomic) BOOL supportsCompressedTextureViewSPI;
@property (readonly, nonatomic) BOOL supportsRenderTargetTextureRotation;
@property (readonly, nonatomic) BOOL supportsDynamicControlPointCount;
@property (readonly, nonatomic) BOOL supportsIABHashForTools;
@property (readonly, nonatomic) BOOL supportsBinaryArchives;
@property (readonly, nonatomic) BOOL supportsBinaryLibraries;
@property (readonly, nonatomic) BOOL supportsDeadlineProfile;
@property (readonly, nonatomic) BOOL supportsFillTexture;
@property (readonly, nonatomic) BOOL supportsSetThreadgroupPackingDisabled;
@property (readonly, nonatomic) BOOL supportsASTCTextureCompression;
@property (readonly, nonatomic) BOOL supportsExtendedYUVFormats;
@property (readonly, nonatomic) BOOL supportsPublicXR10Formats;
@property (readonly, nonatomic) BOOL supportsSRGBwrites;
@property (readonly, nonatomic) BOOL supportsDepthClipMode;
@property (readonly, nonatomic) BOOL supportsPacked32TextureBufferWrites;
@property (readonly, nonatomic) BOOL supports3DASTCTextures;
@property (readonly, nonatomic) BOOL supportsExtendedXR10Formats;
@property (readonly, nonatomic) BOOL supportsFragmentBufferWrites;
@property (readonly, nonatomic) BOOL supportsCountingOcclusionQuery;
@property (readonly, nonatomic) BOOL supportsBaseVertexInstanceDrawing;
@property (readonly, nonatomic) BOOL supportsIndirectDrawAndDispatch;
@property (readonly, nonatomic) BOOL supportsTessellation;
@property (readonly, nonatomic) BOOL supportsReadWriteBufferArguments;
@property (readonly, nonatomic) BOOL supportsArrayOfTextures;
@property (readonly, nonatomic) BOOL supportsArrayOfSamplers;
@property (readonly, nonatomic) BOOL supportsCombinedMSAAStoreAndResolveAction;
@property (readonly, nonatomic) BOOL supportsMutableTier1ArgumentBuffers;
@property (readonly, nonatomic) BOOL supportsSamplerCompareFunction;
@property (readonly, nonatomic) BOOL supportsMSAADepthResolve;
@property (readonly, nonatomic) BOOL supportsMSAAStencilResolve;
@property (readonly, nonatomic) BOOL supportsMSAADepthResolveFilter;
@property (readonly, nonatomic) BOOL supportsGFXIndirectCommandBuffers;
@property (readonly, nonatomic) BOOL supportsCMPIndirectCommandBuffers;
@property (readonly, nonatomic) BOOL supportsIndirectStageInRegion;
@property (readonly, nonatomic) BOOL supportsIndirectTextures;
@property (readonly, nonatomic) BOOL supportsNorm16BCubicFiltering;
@property (readonly, nonatomic) BOOL supportsTextureOutOfBoundsReads;
@property (readonly, nonatomic) BOOL supportsTextureSwizzle;
@property (readonly, nonatomic) BOOL supportsAlphaYUVFormats;
@property (readonly, nonatomic) BOOL supportsMemoryOrderAtomics;
@property (readonly, nonatomic) BOOL supportsQuadGroup;
@property (readonly, nonatomic) BOOL supportsRenderTextureWrites;
@property (readonly, nonatomic) BOOL supportsImageBlocks;
@property (readonly, nonatomic) BOOL supportsTileShaders;
@property (readonly, nonatomic) BOOL supportsImageBlockSampleCoverageControl;
@property (readonly, nonatomic) BOOL supportsNativeHardwareFP16;
@property (readonly, nonatomic) BOOL supportsPostDepthCoverage;
@property (readonly, nonatomic) BOOL supportsMipLevelsSmallerThanBlockSize;
@property (readonly, nonatomic) BOOL supportsNonUniformThreadgroupSize;
@property (readonly, nonatomic) BOOL supportsReadWriteTextureArguments;
@property (readonly, nonatomic) BOOL supportsReadWriteTextureCubeArguments;
@property (readonly, nonatomic) BOOL supportsTextureCubeArray;
@property (readonly, nonatomic) BOOL supportsQuadShufflesAndBroadcast;
@property (readonly, nonatomic) BOOL supportsConcurrentComputeDispatch;
@property (readonly, nonatomic) BOOL supportsRenderPassWithoutRenderTarget;
@property (readonly, nonatomic) BOOL supportsRasterOrderGroups;
@property (readonly, nonatomic) BOOL supportsRasterOrderGroupsColorAttachment;
@property (readonly, nonatomic) BOOL supportsDynamicAttributeStride;
@property (readonly, nonatomic) BOOL supportsLinearTexture2DArray;
@property (readonly, nonatomic) BOOL supportsNonSquareTileShaders;
@property (readonly, nonatomic) BOOL supportsSeparateVisibilityAndShadingRate;
@property (readonly, nonatomic) BOOL supports2DLinearTexArraySPI;
@property (readonly, nonatomic) BOOL supportsLayeredRendering;
@property (readonly, nonatomic) BOOL supportsViewportAndScissorArray;
@property (readonly, nonatomic) BOOL supportsIndirectTessellation;
@property (readonly, nonatomic) BOOL supportsMSAAStencilResolveFilter;
@property (readonly, nonatomic) BOOL supportsStencilFeedback;
@property (readonly, nonatomic) BOOL supportsFP32TessFactors;
@property (readonly, nonatomic) BOOL supportsUnalignedVertexFetch;
@property (readonly, nonatomic) BOOL supportsExtendedVertexFormats;
@property (readonly, nonatomic) BOOL supportsSIMDGroup;
@property (readonly, nonatomic) BOOL supportsShaderMinLODClamp;
@property (readonly, nonatomic) BOOL supportsSIMDShufflesAndBroadcast;
@property (readonly, nonatomic) BOOL supportsWritableArrayOfTextures;
@property (readonly, nonatomic) BOOL supportsVariableRateRasterization;
@property (readonly, nonatomic) BOOL supportsYCBCRFormats;
@property (readonly, nonatomic) BOOL supportsYCBCRFormatsPQ;
@property (readonly, nonatomic) BOOL supportsYCBCRFormats12;
@property (readonly, nonatomic) BOOL supportsYCBCRFormatsXR;
@property (readonly, nonatomic) BOOL supportsASTCHDRTextureCompression;
@property (readonly, nonatomic) BOOL supportsSparseTextures;
@property (readonly, nonatomic) BOOL supportsSparseHeaps;
@property (readonly, nonatomic) BOOL supportsIndirectWritableTextures;
@property (readonly, nonatomic) BOOL supportsFunctionPointers;
@property (readonly, nonatomic) BOOL supportsDynamicLibraries;
@property (readonly, nonatomic) BOOL supportsStatefulDynamicLibraries;
@property (readonly, nonatomic) BOOL supportsRenderDynamicLibraries;
@property (readonly, nonatomic) BOOL supportsFunctionPointersFromRender;
@property (readonly, nonatomic) BOOL supportsSharedFunctionTables;
@property (readonly, nonatomic) BOOL supportsRaytracingFromRender;
@property (readonly, nonatomic) BOOL supportsPrimitiveMotionBlur;
@property (readonly, nonatomic) BOOL supportsRayTracingExtendedVertexFormats;
@property (readonly, nonatomic) BOOL supportsHeapAccelerationStructureAllocation;
@property (readonly, nonatomic) BOOL supportsRayTracingPerPrimitiveData;
@property (readonly, nonatomic) BOOL supportsRayTracingTraversalMetrics;
@property (readonly, nonatomic) BOOL supportsRayTracingBuffersFromTables;
@property (readonly, nonatomic) BOOL supportsRayTracingAccelerationStructureCPUDeserialization;
@property (readonly, nonatomic) BOOL supportsRayTracingMultiLevelInstancing;
@property (readonly, nonatomic) BOOL supportsRayTracingIndirectInstanceAccelerationStructureBuild;
@property (readonly, nonatomic) BOOL supportsRayTracingGPUTableUpdateBuffers;
@property (readonly, nonatomic) BOOL supportsRayTracingCurves;
@property (readonly, nonatomic) BOOL supportsShaderBarycentricCoordinates;
@property (readonly, nonatomic) BOOL supportsBlackOrWhiteSamplerBorderColors;
@property (readonly, nonatomic) BOOL supportsMirrorClampToEdgeSamplerMode;
@property (readonly, nonatomic) BOOL supportsSIMDReduction;
@property (readonly, nonatomic) BOOL supportsDepthClipModeClampExtended;
@property (readonly, nonatomic) BOOL supportsTexture2DMultisampleArray;
@property (readonly, nonatomic) BOOL supportsForceSeamsOnCubemaps;
@property (readonly, nonatomic) BOOL supportsFloat16BCubicFiltering;
@property (readonly, nonatomic) BOOL supportsFloat16InfNanFiltering;
@property (readonly, nonatomic) BOOL supportsRTZRounding;
@property (readonly, nonatomic) BOOL supportsAnisoSampleFix;
@property (readonly, nonatomic) BOOL supportsYCBCRPackedFormatsPQ;
@property (readonly, nonatomic) BOOL supportsYCBCRPackedFormats12;
@property (readonly, nonatomic) BOOL supportsYCBCRPackedFormatsXR;
@property (readonly, nonatomic) BOOL supportsBufferBoundsChecking;
@property (readonly, nonatomic) BOOL supportsForkJoin;
@property (readonly, nonatomic) BOOL supportsDevicePartitioning;
@property (readonly, nonatomic) BOOL supportsComputeCompressedTextureWrite;
@property (readonly, nonatomic) BOOL supportsSIMDGroupMatrix;
@property (readonly, nonatomic) BOOL supportsInterchangeTiled;
@property (readonly, nonatomic) BOOL supportsQuadReduction;
@property (readonly, nonatomic) BOOL supportsVirtualSubstreams;
@property (readonly, nonatomic) BOOL supportsSIMDShuffleAndFill;
@property (readonly, nonatomic) BOOL supportsBfloat16Format;
@property (readonly, nonatomic) BOOL supportsSparseDepthAttachments;
@property (readonly, nonatomic) BOOL supportsAtomicUlongVoidMinMax;
@property (readonly, nonatomic) BOOL supportsLossyCompression;
@property (readonly, nonatomic) BOOL supportsMeshShaders;
@property (readonly, nonatomic) BOOL supportsFunctionPointersFromMesh;
@property (readonly, nonatomic) BOOL supportsMeshShadersInICB;
@property (readonly, nonatomic) BOOL supportsBfloat16Buffers;
@property (readonly, nonatomic) BOOL supportsCommandBufferJump;
@property (readonly, nonatomic) BOOL supportsColorSpaceConversionMatrixSelection;
@property (readonly, nonatomic) BOOL supportsPerPlaneCompression;
@property (readonly, nonatomic) BOOL supportsAtomicWaitNotify;
@property (readonly, nonatomic) BOOL supportsConditionalLoadStore;
@property (readonly, nonatomic) BOOL supportsStackOverflowErrorCode;
@property (readonly, nonatomic) BOOL supportsRayTracingICBs;
@property (readonly, nonatomic) BOOL supportsPerformanceStateAssertion;
@property (readonly, nonatomic) BOOL supportsExplicitVisibilityGroups;
@property (readonly) unsigned long long bufferRobustnessSupport;
@property (readonly) unsigned long long deviceCreationFlags;
@property (getter=areGPUAssertionsEnabled, setter=setGPUAssertionsEnabled:) BOOL gpuAssertionsEnabled;
@property (nonatomic) unsigned long long commandBufferErrorOptions;
@property (readonly, getter=isBCTextureCompressionSupported) BOOL BCTextureCompressionSupported;
@property (readonly) const struct MTLTargetDeviceArch { unsigned long long x0; unsigned int x1; char *x2; } *targetDeviceInfo;
@property (readonly) MTLTargetDeviceArchitecture *targetDeviceArchitecture;
@property BOOL shaderDebugInfoCaching;
@property (readonly) unsigned long long halfFPConfig;
@property (readonly) unsigned long long singleFPConfig;
@property (readonly) unsigned long long doubleFPConfig;
@property (nonatomic) BOOL metalAssertionsEnabled;
@property (readonly) unsigned long long featureProfile;
@property (readonly) const struct { unsigned int x0; unsigned int x1; unsigned int x2; unsigned int x3; unsigned int x4; unsigned int x5; unsigned int x6; unsigned int x7; unsigned int x8; unsigned int x9; unsigned int x10; unsigned int x11; unsigned int x12; unsigned int x13; unsigned int x14; unsigned int x15; unsigned int x16; unsigned int x17; unsigned int x18; unsigned int x19; unsigned int x20; unsigned int x21; unsigned int x22; unsigned int x23; unsigned int x24; unsigned int x25; float x26; float x27; unsigned int x28; unsigned int x29; unsigned int x30; unsigned int x31; unsigned int x32; unsigned int x33; unsigned int x34; unsigned int x35; unsigned int x36; unsigned int x37; unsigned int x38; unsigned int x39; unsigned int x40; unsigned int x41; unsigned int x42; unsigned int x43; unsigned int x44; unsigned int x45; unsigned int x46; unsigned int x47; unsigned int x48; unsigned int x49; unsigned int x50; unsigned int x51; unsigned int x52; unsigned int x53; unsigned int x54; unsigned int x55; unsigned int x56; unsigned int x57; unsigned int x58; unsigned int x59; unsigned int x60; unsigned int x61; unsigned int x62; unsigned int x63; unsigned long long x64; } *limits;
@property (readonly) unsigned long long maxFramebufferStorageBits;
@property (readonly) unsigned long long linearTextureArrayAlignmentBytes;
@property (readonly) unsigned long long linearTextureArrayAlignmentSlice;
@property (readonly) unsigned long long maxTileBuffers;
@property (readonly) unsigned long long maxTileTextures;
@property (readonly) unsigned long long maxTileSamplers;
@property (readonly) unsigned long long maxTileInlineDataSize;
@property (readonly) unsigned long long minTilePixels;
@property (readonly) unsigned long long maxColorAttachments;
@property (readonly) unsigned long long maxVertexAttributes;
@property (readonly) unsigned long long maxVertexBuffers;
@property (readonly) unsigned long long maxVertexTextures;
@property (readonly) unsigned long long maxVertexSamplers;
@property (readonly) unsigned long long maxVertexInlineDataSize;
@property (readonly) unsigned long long maxInterpolants;
@property (readonly) unsigned long long maxFragmentBuffers;
@property (readonly) unsigned long long maxFragmentTextures;
@property (readonly) unsigned long long maxFragmentSamplers;
@property (readonly) unsigned long long maxFragmentInlineDataSize;
@property (readonly) unsigned long long maxComputeBuffers;
@property (readonly) unsigned long long maxComputeTextures;
@property (readonly) unsigned long long maxComputeSamplers;
@property (readonly) unsigned long long maxComputeInlineDataSize;
@property (readonly) unsigned long long maxComputeLocalMemorySizes;
@property (readonly) unsigned long long maxTotalComputeThreadsPerThreadgroup;
@property (readonly) unsigned long long maxComputeThreadgroupMemory;
@property (readonly) float maxLineWidth;
@property (readonly) float maxPointSize;
@property (readonly) unsigned long long maxVisibilityQueryOffset;
@property (readonly) unsigned long long minConstantBufferAlignmentBytes;
@property (readonly) unsigned long long minBufferNoCopyAlignmentBytes;
@property (readonly) unsigned long long maxTextureWidth1D;
@property (readonly) unsigned long long maxTextureWidth2D;
@property (readonly) unsigned long long maxTextureHeight2D;
@property (readonly) unsigned long long maxTextureWidth3D;
@property (readonly) unsigned long long maxTextureHeight3D;
@property (readonly) unsigned long long maxTextureDepth3D;
@property (readonly) unsigned long long maxTextureDimensionCube;
@property (readonly) unsigned long long maxTextureLayers;
@property (readonly) unsigned long long linearTextureAlignmentBytes;
@property (readonly) unsigned long long iosurfaceTextureAlignmentBytes;
@property (readonly) unsigned long long iosurfaceReadOnlyTextureAlignmentBytes;
@property (readonly) unsigned long long deviceLinearTextureAlignmentBytes;
@property (readonly) unsigned long long deviceLinearReadOnlyTextureAlignmentBytes;
@property (readonly) unsigned long long maxFunctionConstantIndices;
@property (readonly) unsigned long long maxComputeThreadgroupMemoryAlignmentBytes;
@property (readonly) unsigned long long maxInterpolatedComponents;
@property (readonly) unsigned long long maxTessellationFactor;
@property (readonly) unsigned long long maxIndirectBuffers;
@property (readonly) unsigned long long maxIndirectTextures;
@property (readonly) unsigned long long maxIndirectSamplers;
@property (readonly) unsigned long long maxIndirectSamplersPerDevice;
@property (readonly) unsigned long long maxFenceInstances;
@property (readonly) unsigned long long maxViewportCount;
@property (readonly) unsigned long long maxCustomSamplePositions;
@property (readonly) unsigned long long maxVertexAmplificationFactor;
@property (readonly) unsigned long long maxVertexAmplificationCount;
@property (readonly) unsigned long long maxTextureBufferWidth;
@property (readonly) unsigned long long maxComputeAttributes;
@property (readonly) unsigned long long maxIOCommandsInFlight;
@property (readonly) unsigned long long maxPredicatedNestingDepth;
@property (readonly) unsigned long long maxAccelerationStructureLevels;
@property (readonly) unsigned long long maxConstantBufferArguments;
@property (readonly) unsigned int acceleratorPort;
@property (readonly) BOOL supportPriorityBand;
@property (readonly) unsigned long long sharedMemorySize;
@property (readonly) unsigned long long dedicatedMemorySize;
@property (readonly) struct IndirectArgumentBufferCapabilities { unsigned char x0 : 1; unsigned char x1 : 1; unsigned char x2 : 1; unsigned int x3 : 29; } indirectArgumentBufferCapabilities;
@property (readonly, getter=isQuadDataSharingSupported) BOOL quadDataSharingSupported;
@property (readonly) unsigned long long sparseTexturesSupport;
@property (readonly, getter=isFloat32FilteringSupported) BOOL float32FilteringSupported;
@property (readonly, getter=isMsaa32bSupported) BOOL msaa32bSupported;
@property (readonly, getter=isRTZRoundingSupported) BOOL RTZRoundingSupported;
@property (readonly) long long defaultTextureWriteRoundingMode;
@property (readonly, getter=isAnisoSampleFixSupported) BOOL AnisoSampleFixSupported;
@property (readonly, getter=isFixedLinePointFillDepthGradientSupported) BOOL FixedLinePointFillDepthGradientSupported;
@property (readonly, getter=isLargeMRTSupported) BOOL largeMRTSupported;
@property (readonly) unsigned long long maxRasterizationRateLayerCount;
@property (readonly, getter=isRGB10A2GammaSupported) BOOL RGB10A2GammaSupported;
@property (readonly, getter=isCustomBorderColorSupported) BOOL CustomBorderColorSupported;
@property (readonly, getter=isClampToHalfBorderSupported) BOOL ClampToHalfBorderSupported;
@property (readonly, getter=isPlacementHeapSupported) BOOL placementHeapSupported;
@property (readonly) MTLGPUBVHBuilder *GPUBVHBuilder;
@property (readonly) BOOL requiresRaytracingEmulation;
@property (copy, nonatomic) NSDictionary *pluginData;
@property (readonly, nonatomic) long long currentPerformanceState;
@property (readonly) unsigned long long maxAccelerationStructureTraversalDepth;
@property (readonly) BOOL requiresBFloat16Emulation;
@property (readonly) NSString *name;
@property (readonly) MTLArchitecture *architecture;
@property (readonly) struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; } maxThreadsPerThreadgroup;
@property (readonly) unsigned long long readWriteTextureSupport;
@property (readonly) unsigned long long argumentBuffersSupport;
@property (readonly, getter=areRasterOrderGroupsSupported) BOOL rasterOrderGroupsSupported;
@property (readonly, getter=areBarycentricCoordsSupported) BOOL barycentricCoordsSupported;
@property (readonly) unsigned long long currentAllocatedSize;
@property (readonly) unsigned long long maxThreadgroupMemoryLength;
@property (readonly) unsigned long long maxArgumentBufferSamplerCount;
@property (readonly, getter=areProgrammableSamplePositionsSupported) BOOL programmableSamplePositionsSupported;
@property (readonly) unsigned long long sparseTileSizeInBytes;
@property (readonly) unsigned long long maxBufferLength;
@property (readonly) NSArray *counterSets;
@property (readonly) BOOL supportsRaytracing;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)newTextureDescriptorFromIOSurface:(struct __IOSurface { } *)a0;
+ (id)newTextureDescriptorFromIOSurfaceProperties:(id)a0;

- (id)newArgumentEncoderWithLayout:(id)a0;
- (id)newFence;
- (id)endCollectingPipelineDescriptors;
- (id)vendorName;
- (id)productName;
- (void)sampleTimestamps:(unsigned long long *)a0 gpuTimestamp:(unsigned long long *)a1;
- (BOOL)supportsPrimitiveType:(unsigned long long)a0;
- (BOOL)supportsTextureSampleCount:(unsigned long long)a0;
- (id)newCommandQueue;
- (id)newAccelerationStructureWithSize:(unsigned long long)a0 withDescriptor:(id)a1;
- (id)newDynamicLibraryFromURL:(id)a0 error:(id *)a1;
- (id)newUncachedIOFileHandleWithURL:(id)a0 error:(id *)a1;
- (id)newFunctionWithGLCoreIR:(void *)a0 inputsDescription:(id)a1 functionType:(unsigned long long)a2;
- (id)newArgumentEncoderWithArguments:(id)a0 structType:(id *)a1;
- (id)newDefaultLibrary;
- (id)newLibraryWithDAG:(id)a0 functions:(id)a1 error:(id *)a2;
- (void)newComputePipelineStateWithDescriptor:(id)a0 completionHandler:(id /* block */)a1;
- (id)newBinaryArchiveWithDescriptor:(id)a0 error:(id *)a1;
- (id)newDynamicLibraryWithURL:(id)a0 error:(id *)a1;
- (id)newSharedTextureWithDescriptor:(id)a0;
- (id)newUncachedIOHandleWithURL:(id)a0 error:(id *)a1;
- (id)newAccelerationStructureWithDescriptor:(id)a0;
- (id)newLibraryWithFile:(id)a0 error:(id *)a1;
- (void *)getShaderCacheKeys;
- (id)newFunctionWithGLIR:(void *)a0 functionType:(unsigned long long)a1;
- (BOOL)copyShaderCacheToPath:(id)a0;
- (id)newLibraryWithStitchedDescriptor:(id)a0 error:(id *)a1;
- (struct { unsigned int x0; unsigned int x1; })libraryCacheStats;
- (BOOL)validateDynamicLibraryDescriptor:(id)a0 error:(id *)a1;
- (unsigned long long)minimumLinearTextureAlignmentForPixelFormat:(unsigned long long)a0;
- (id)newEvent;
- (id)newSharedEvent;
- (id)newLibraryWithData:(id)a0 error:(id *)a1;
- (id)newEventWithOptions:(long long)a0;
- (void)newRenderPipelineStateWithMeshDescriptor:(id)a0 completionHandler:(id /* block */)a1;
- (struct { unsigned int x0; unsigned int x1; })pipelineCacheStats;
- (id)loadDynamicLibrariesForFunction:(id)a0 insertLibraries:(id)a1 error:(id *)a2;
- (id)newLateEvalEvent;
- (unsigned long long)sparseTileSizeInBytesForSparsePageSize:(long long)a0;
- (id)newComputePipelineStateWithFunction:(id)a0 error:(id *)a1;
- (id)newLibraryWithDescriptor:(id)a0 error:(id *)a1;
- (id)newComputePipelineStateWithDescriptor:(id)a0 options:(unsigned long long)a1 reflection:(id *)a2 error:(id *)a3;
- (id)newIOHandleWithURL:(id)a0 compressionType:(long long)a1 error:(id *)a2;
- (id)newAccelerationStructureWithSize:(unsigned long long)a0 resourceIndex:(unsigned long long)a1;
- (id)newDynamicLibrary:(id)a0 computeDescriptor:(id)a1 error:(id *)a2;
- (id)newRenderPipelineStateWithDescriptor:(id)a0 options:(unsigned long long)a1 reflection:(id *)a2 error:(id *)a3;
- (id)newAccelerationStructureWithSize:(unsigned long long)a0;
- (id)loadDynamicLibrariesForFunction:(id)a0 insertLibraries:(id)a1 options:(unsigned long long)a2 error:(id *)a3;
- (id)newLibraryWithImageFilterFunctionsSPI:(id)a0 imageFilterFunctionInfo:(const struct { BOOL x0; unsigned long long x1; struct *x2; } *)a1 error:(id *)a2;
- (id)newComputePipelineStateWithDescriptor:(id)a0 error:(id *)a1;
- (struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })accelerationStructureSizesWithDescriptor:(id)a0;
- (void)dealloc;
- (id)newRasterizationRateMapWithDescriptor:(id)a0;
- (BOOL)validateDynamicLibraryURL:(id)a0 error:(id *)a1;
- (void)newRenderPipelineStateWithMeshDescriptor:(id)a0 options:(unsigned long long)a1 completionHandler:(id /* block */)a2;
- (void)unloadShaderCaches;
- (id)newArgumentEncoderWithArguments:(id)a0;
- (id)newDagStringWithGraphs:(id)a0;
- (id)newDynamicLibrary:(id)a0 error:(id *)a1;
- (id)newStructTypeWithSerializedData:(id)a0;
- (id)newTextureWithDescriptor:(id)a0;
- (unsigned long long)minLinearTextureAlignmentForPixelFormat:(unsigned long long)a0;
- (BOOL)validateDynamicLibrary:(id)a0 state:(BOOL)a1 error:(id *)a2;
- (BOOL)supportsCounterSampling:(unsigned long long)a0;
- (id)newUncachedIOHandleWithURL:(id)a0 compressionType:(long long)a1 error:(id *)a2;
- (void)convertSparsePixelRegions:(const 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; } *)a0 toTileRegions:(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 withTileSize:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a2 alignmentMode:(unsigned long long)a3 numRegions:(unsigned long long)a4;
- (id)_deviceWrapper;
- (void)newRenderPipelineStateWithDescriptor:(id)a0 completionHandler:(id /* block */)a1;
- (BOOL)supportsRasterizationRateMapWithLayerCount:(unsigned long long)a0;
- (void)newRenderPipelineStateWithTileDescriptor:(id)a0 options:(unsigned long long)a1 completionHandler:(id /* block */)a2;
- (id)newIOHandleWithURL:(id)a0 error:(id *)a1;
- (id)newLibraryWithDescriptorSPI:(id)a0 error:(id *)a1;
- (void)newComputePipelineStateWithFunction:(id)a0 options:(unsigned long long)a1 completionHandler:(id /* block */)a2;
- (void)newLibraryWithStitchedDescriptor:(id)a0 completionHandler:(id /* block */)a1;
- (id)newBinaryLibraryWithOptions:(unsigned long long)a0 url:(id)a1 error:(id *)a2;
- (id)newIOFileHandleWithURL:(id)a0 compressionMethod:(long long)a1 error:(id *)a2;
- (BOOL)supportsFamily:(long long)a0;
- (id)newSharedTextureWithHandle:(id)a0;
- (id)lookupRecompiledBinaryArchive:(id)a0;
- (id)familyName;
- (id)newRenderPipelineStateWithDescriptor:(id)a0 error:(id *)a1;
- (id)newSharedEventWithHandle:(id)a0;
- (BOOL)supportsVertexAmplificationCount:(unsigned long long)a0;
- (BOOL)deviceOrFeatureProfileSupportsFeatureSet:(unsigned long long)a0;
- (void)startCollectingPipelineDescriptors;
- (BOOL)supportsTextureWriteRoundingMode:(long long)a0;
- (id)newRenderPipelineStateWithMeshDescriptor:(id)a0 options:(unsigned long long)a1 reflection:(id *)a2 error:(id *)a3;
- (void)_setDeviceWrapper:(id)a0;
- (id)newRenderPipelineDescriptorWithSerializedData:(id)a0 deserializationContext:(id)a1;
- (id)newComputePipelineStateWithImageFilterFunctionsSPI:(id)a0 imageFilterFunctionInfo:(const struct { BOOL x0; unsigned long long x1; struct *x2; } *)a1 error:(id *)a2;
- (id)newAccelerationStructureWithBuffer:(id)a0 offset:(unsigned long long)a1;
- (id)newPerformanceStateAssertion:(long long)a0 error:(id *)a1;
- (void)newComputePipelineStateWithDescriptor:(id)a0 options:(unsigned long long)a1 completionHandler:(id /* block */)a2;
- (id)newLibraryWithCIFilters:(id)a0 imageFilterFunctionInfo:(const struct { BOOL x0; unsigned long long x1; struct *x2; } *)a1 error:(id *)a2;
- (id)loadDynamicLibrariesForComputeDescriptor:(id)a0 error:(id *)a1;
- (id)newIndirectCommandBufferWithDescriptor:(id)a0 maxCommandCount:(unsigned long long)a1 options:(unsigned long long)a2;
- (id)deserializePrimitiveAccelerationStructureFromBytes:(void *)a0 withDescriptor:(id)a1;
- (id)newLibraryWithStitchedDescriptorSPI:(id)a0 error:(id *)a1;
- (void)getDefaultSamplePositions:(struct { float x0; float x1; } *)a0 count:(unsigned long long)a1;
- (id)newArgumentEncoderWithBufferBinding:(id)a0;
- (id)newCommandQueueWithDescriptor:(id)a0;
- (id)newDefaultLibraryWithBundle:(id)a0 error:(id *)a1;
- (id)newLibraryWithURL:(id)a0 error:(id *)a1;
- (void)newRenderPipelineStateWithDescriptor:(id)a0 options:(unsigned long long)a1 completionHandler:(id /* block */)a2;
- (id)newTextureWithDescriptor:(id)a0 iosurface:(struct __IOSurface { } *)a1 plane:(unsigned long long)a2 slice:(unsigned long long)a3;
- (BOOL)setCompilerProcessesCount:(int)a0;
- (id)newCommandQueueWithMaxCommandBufferCount:(unsigned long long)a0;
- (BOOL)isCompatibleWithAccelerationStructure:(struct { unsigned int x0; unsigned int x1; })a0;
- (id)newIOFileHandleWithURL:(id)a0 error:(id *)a1;
- (void).cxx_destruct;
- (id)serializeStructType:(id)a0;
- (struct MTLCompilerConnectionManager { } *)getCompilerConnectionManager:(int)a0;
- (id)newDynamicLibraryWithURL:(id)a0 options:(unsigned long long)a1 error:(id *)a2;
- (void)newComputePipelineStateWithFunction:(id)a0 completionHandler:(id /* block */)a1;
- (id)deserializeInstanceAccelerationStructureFromBytes:(void *)a0 primitiveAccelerationStructures:(id)a1 withDescriptor:(id)a2;
- (id)newComputePipelineStateWithFunction:(id)a0 options:(unsigned long long)a1 reflection:(id *)a2 error:(id *)a3;
- (struct { unsigned long long x0; unsigned long long x1; })heapAccelerationStructureSizeAndAlignWithSize:(unsigned long long)a0;
- (id)newIOHandleWithURL:(id)a0 compressionMethod:(long long)a1 error:(id *)a2;
- (BOOL)isVendorSliceCompatibleWithDeploymentTarget:(unsigned int)a0 platform:(unsigned int)a1 sdkVersion:(unsigned int)a2 compilerPluginVersion:(unsigned int)a3;
- (id)newIntersectionFunctionTableWithDescriptor:(id)a0;
- (id)newProfileWithExecutionSize:(unsigned long long)a0;
- (void)deserializeInstanceAccelerationStructure:(id)a0 fromBytes:(const void *)a1 primitiveAccelerationStructures:(id)a2 withDescriptor:(id)a3;
- (id)newFunctionWithGLIR:(void *)a0 inputsDescription:(id)a1 functionType:(unsigned long long)a2;
- (id)serializeRenderPipelineDescriptor:(id)a0;
- (id)newFunctionWithGLESIR:(void *)a0 inputsDescription:(id)a1 functionType:(unsigned long long)a2;
- (void)allowLibrariesFromOtherPlatforms;
- (void)compilerPropagatesThreadPriority:(BOOL)a0;
- (id)newAccelerationStructureWithBuffer:(id)a0 offset:(unsigned long long)a1 resourceIndex:(unsigned long long)a2;
- (id)loadDynamicLibrariesForComputeDescriptor:(id)a0 options:(unsigned long long)a1 error:(id *)a2;
- (id)newFunctionWithGLCoreIR:(void *)a0 functionType:(unsigned long long)a1;
- (id)newSharedEventWithOptions:(long long)a0;
- (id)newSharedEventWithMachPort:(unsigned int)a0;
- (void)convertSparseTileRegions:(const 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; } *)a0 toPixelRegions:(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 withTileSize:(struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })a2 numRegions:(unsigned long long)a3;
- (id)newComputePipelineDescriptorWithSerializedData:(id)a0 deserializationContext:(id)a1;
- (id)newPipelineLibraryWithFilePath:(id)a0 error:(id *)a1;
- (BOOL)deviceSupportsFeatureSet:(unsigned long long)a0;
- (id)newIndirectArgumentBufferLayoutWithStructType:(id)a0;
- (id)newRenderPipelineStateWithMeshDescriptor:(id)a0 error:(id *)a1;
- (id)newDynamicLibraryWithDescriptor:(id)a0 error:(id *)a1;
- (id)newIndirectArgumentEncoderWithLayout:(id)a0;
- (unsigned int)maximumComputeSubstreams;
- (struct { unsigned long long x0; unsigned long long x1; })heapAccelerationStructureSizeAndAlignWithDescriptor:(id)a0;
- (id)newUncachedIOFileHandleWithURL:(id)a0 compressionMethod:(long long)a1 error:(id *)a2;
- (id)newFunctionWithGLESIR:(void *)a0 functionType:(unsigned long long)a1;
- (id)newIOCommandQueueWithDescriptor:(id)a0 error:(id *)a1;
- (void)deserializePrimitiveAccelerationStructure:(id)a0 fromBytes:(const void *)a1 withDescriptor:(id)a2;
- (id)newLibraryWithSource:(id)a0 options:(id)a1 error:(id *)a2;
- (void)newLibraryWithSource:(id)a0 options:(id)a1 completionHandler:(id /* block */)a2;
- (unsigned long long)getSupportedCommandBufferErrorOptions;
- (void)newLibraryWithDescriptor:(id)a0 completionHandler:(id /* block */)a1;
- (id)newCounterSampleBufferWithDescriptor:(id)a0 error:(id *)a1;
- (id)getMostCompatibleArchitecture:(id)a0;
- (BOOL)supportsFeatureSet:(unsigned long long)a0;
- (BOOL)respondsToSelector:(SEL)a0;
- (id)newRenderPipelineStateWithTileDescriptor:(id)a0 options:(unsigned long long)a1 reflection:(id *)a2 error:(id *)a3;
- (BOOL)supportsTextureWriteFPRoundingMode:(long long)a0;
- (id)newBufferWithBytesNoCopy:(void *)a0 length:(unsigned long long)a1 options:(unsigned long long)a2 deallocator:(id /* block */)a3;
- (id)newBufferWithIOSurface:(struct __IOSurface { } *)a0;
- (id)newBufferWithLength:(unsigned long long)a0 options:(unsigned long long)a1;
- (id)newBufferWithBytes:(const void *)a0 length:(unsigned long long)a1 options:(unsigned long long)a2;
- (id)newDepthStencilStateWithDescriptor:(id)a0;
- (id)newSamplerStateWithDescriptor:(id)a0;
- (id)newTextureWithDescriptor:(id)a0 iosurface:(struct __IOSurface { } *)a1 plane:(unsigned long long)a2;
- (struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })tileSizeWithSparsePageSize:(long long)a0 textureType:(unsigned long long)a1 pixelFormat:(unsigned long long)a2 sampleCount:(unsigned long long)a3;
- (id)newBufferWithBytesNoCopy:(void *)a0 length:(unsigned long long)a1 options:(unsigned long long)a2 gpuAddress:(unsigned long long)a3 deallocator:(id /* block */)a4;
- (id)copyIOSurfaceSharedTextureProperties:(id)a0;
- (struct { unsigned long long x0; unsigned long long x1; })heapBufferSizeAndAlignWithLength:(unsigned long long)a0 options:(unsigned long long)a1;
- (struct { unsigned long long x0; unsigned long long x1; })heapTextureSizeAndAlignWithDescriptor:(id)a0;
- (id)initWithBaseObject:(id)a0 parent:(id)a1;
- (BOOL)mapShaderSampleBufferWithBuffer:(struct { unsigned int x0; unsigned int x1; unsigned int x2; } *)a0 capacity:(unsigned long long)a1 size:(unsigned long long)a2;
- (unsigned long long)minimumTextureBufferAlignmentForPixelFormat:(unsigned long long)a0;
- (id)newBufferWithBytes:(const void *)a0 length:(unsigned long long)a1 options:(unsigned long long)a2 gpuAddress:(unsigned long long)a3;
- (id)newBufferWithDescriptor:(id)a0;
- (id)newBufferWithLength:(unsigned long long)a0 options:(unsigned long long)a1 gpuAddress:(unsigned long long)a2;
- (id)newHeapWithDescriptor:(id)a0;
- (id)newIndirectCommandBufferWithDescriptor:(id)a0 maxCount:(unsigned long long)a1 options:(unsigned long long)a2;
- (id)newIndirectComputeCommandEncoderWithBuffer:(id)a0;
- (id)newIndirectRenderCommandEncoderWithBuffer:(id)a0;
- (id)newLibraryWithCIFiltersForComputePipeline:(id)a0 imageFilterFunctionInfo:(const struct { BOOL x0; unsigned long long x1; struct *x2; } *)a1 error:(id *)a2;
- (void)newRenderPipelineStateWithTileDescriptor:(id)a0 completionHandler:(id /* block */)a1;
- (id)newRenderPipelineStateWithTileDescriptor:(id)a0 error:(id *)a1;
- (id)newResourceGroupFromResources:(const id *)a0 count:(unsigned long long)a1;
- (id)newTextureLayoutWithDescriptor:(id)a0 isHeapOrBufferBacked:(BOOL)a1;
- (id)newTextureWithBytesNoCopy:(void *)a0 length:(unsigned long long)a1 descriptor:(id)a2 deallocator:(id /* block */)a3;
- (id)newVisibleFunctionTableWithDescriptor:(id)a0;
- (BOOL)reserveGPUAddressRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a0;
- (void)reserveResourceIndicesForResourceType:(unsigned long long)a0 indices:(unsigned long long *)a1 indexCount:(unsigned long long)a2;
- (unsigned long long)resourcePatchingTypeForResourceType:(unsigned long long)a0;
- (void)setupMPSFunctionTable:(struct MPSFunctionTable { } *)a0;
- (struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })sparseTileSizeWithTextureType:(unsigned long long)a0 pixelFormat:(unsigned long long)a1 sampleCount:(unsigned long long)a2;
- (struct { unsigned long long x0; unsigned long long x1; unsigned long long x2; })sparseTileSizeWithTextureType:(unsigned long long)a0 pixelFormat:(unsigned long long)a1 sampleCount:(unsigned long long)a2 sparsePageSize:(long long)a3;
- (BOOL)supportsSampleCount:(unsigned long long)a0;
- (void)unmapShaderSampleBuffer;
- (id)getDynamicLibraryForBaseObject:(id)a0;
- (unsigned long long)debugPipelineOptions:(unsigned long long)a0 includePipelinePerfStats:(BOOL)a1;
- (id)getDepthStencilStateForBaseObject:(id)a0 descriptor:(id)a1;
- (id)getFunctionForBaseObject:(id)a0 library:(id)a1;
- (id)getSamplerStateForBaseObject:(id)a0 descriptor:(id)a1;
- (void)notifyExternalReferencesNonZeroOnDealloc:(id)a0;
- (id)unwrapMTLCommandBufferDescriptor:(id)a0 alwaysCopy:(BOOL)a1;
- (id)unwrapMTLCompileOptions:(id)a0;
- (id)unwrapMTLComputePipelineDescriptor:(id)a0;
- (id)unwrapMTLDynamicLibraryDescriptorSPI:(id)a0;
- (id)unwrapMTLFunctionDescriptor:(id)a0;
- (id)unwrapMTLMeshRenderPipelineDescriptor:(id)a0;
- (id)unwrapMTLRelocations:(id)a0;
- (id)unwrapMTLRenderPipelineDescriptor:(id)a0;
- (id)unwrapMTLStitchedLibraryDescriptor:(id)a0;
- (id)unwrapMTLTileRenderPipelineDescriptor:(id)a0;

@end