@class MTLRenderPassDescriptor, NSString, CAMetalLayer, CADisplayLink, MTKOffscreenDrawable; @protocol MTKViewDelegate, MTLDevice, MTLTexture, CAMetalDrawable; @interface MTKView : UIView <NSCoding, CALayerDelegate> { CAMetalLayer *_metalLayer; BOOL _sizeDirty; struct CGSize { double width; double height; } _drawableScaleFactor; BOOL _pausedOnBackgrounding; CADisplayLink *_displayLink; void /* function */ *_drawRectSubIMP; BOOL _subClassOverridesDrawRect; BOOL _deviceReset; BOOL _doesNotifyOnRecommendedSizeUpdate; id<MTLTexture> _depthStencilTexture; id<MTLTexture> _multisampleColorTexture; BOOL _framebufferOnly; unsigned long long _depthStencilTextureUsage; unsigned long long _multisampleColorTextureUsage; unsigned long long _depthStencilStorageMode; unsigned long long _drawableAttachmentIndex; long long _nominalFramesPerSecond; long long _maxValidAttachmentIndex; unsigned long long _colorPixelFormats[8]; id<MTLTexture> _multisampleColorTextures[8]; id<MTLTexture> _colorTextures[8]; MTKOffscreenDrawable *_offscreenSwapChain[3]; unsigned long long _drawableIdx; int _renderAttachmentDirtyState; unsigned long long _terminateAfterFrame; unsigned long long _terminateAfterSeconds; unsigned long long _measureAfterFrame; unsigned long long _measureAfterSeconds; unsigned long long _dumpFrameAtFrame; unsigned long long _dumpFrameAtSeconds; NSString *_dumpPath; BOOL _dumpFirstFrame; BOOL _drawOffscreen; long long _forceOrientation; double _startTime; unsigned int _frameNum; } @property (weak, nonatomic) id<MTKViewDelegate> delegate; @property (retain, nonatomic) id<MTLDevice> device; @property (readonly, nonatomic) id<CAMetalDrawable> currentDrawable; @property (nonatomic) BOOL framebufferOnly; @property (nonatomic) unsigned long long depthStencilAttachmentTextureUsage; @property (nonatomic) unsigned long long multisampleColorAttachmentTextureUsage; @property (nonatomic) BOOL presentsWithTransaction; @property (nonatomic) unsigned long long colorPixelFormat; @property (nonatomic) unsigned long long depthStencilPixelFormat; @property (nonatomic) unsigned long long depthStencilStorageMode; @property (nonatomic) unsigned long long sampleCount; @property (nonatomic) struct { double red; double green; double blue; double alpha; } clearColor; @property (nonatomic) double clearDepth; @property (nonatomic) unsigned int clearStencil; @property (readonly, nonatomic) id<MTLTexture> depthStencilTexture; @property (readonly, nonatomic) id<MTLTexture> multisampleColorTexture; @property (readonly, nonatomic) MTLRenderPassDescriptor *currentRenderPassDescriptor; @property (nonatomic) long long preferredFramesPerSecond; @property (nonatomic) BOOL enableSetNeedsDisplay; @property (nonatomic) BOOL autoResizeDrawable; @property (nonatomic) struct CGSize { double width; double height; } drawableSize; @property (readonly, nonatomic) struct CGSize { double width; double height; } preferredDrawableSize; @property (readonly) id<MTLDevice> preferredDevice; @property (nonatomic, getter=isPaused) BOOL paused; @property (nonatomic) struct CGColorSpace { } *colorspace; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (Class)layerClass; - (void)draw; - (void)createDepthStencilTexture; - (void)_applicationWillEnterForeground:(id)a0; - (const id *)colorTexturesForceUpdate:(BOOL)a0; - (struct CGSize { double x0; double x1; })_pixelSizeFromPointSize:(struct CGSize { double x0; double x1; })a0; - (void)getEnvironmentSettings; - (void)dealloc; - (void)_applicationDidEnterBackground:(id)a0; - (void)_resizeMetalLayerDrawable; - (void)setColorPixelFormat:(unsigned long long)a0 atIndex:(unsigned long long)a1; - (void)displayLayer:(id)a0; - (void)_dumpFrameImageWithFilename:(id)a0; - (BOOL)_controlsOwnScaleFactor; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 device:(id)a1; - (void)releaseDrawables; - (void)encodeWithCoder:(id)a0; - (const id *)multisampleColorTextures; - (void)_resizeDrawable; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)setDrawableAttachmentIndex:(unsigned long long)a0; - (void)setFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)_createDisplayLinkForScreen:(id)a0; - (void)setNominalFramesPerSecond:(long long)a0; - (void)setNilValueForKey:(id)a0; - (BOOL)exportToTargaAtLocation:(id)a0 width:(unsigned long long)a1 height:(unsigned long long)a2 size:(unsigned long long)a3 bytes:(void *)a4; - (unsigned long long)drawableAttachmentIndex; - (void)setContentScaleFactor:(double)a0; - (void)drawLayer:(id)a0 inContext:(struct CGContext { } *)a1; - (void)_dumpFramerate:(double)a0 withFilename:(id)a1; - (long long)nominalFramesPerSecond; - (void)_updateToNativeScale; - (double)startTime; - (unsigned long long)drawNumber; - (const id *)multisampleColorTexturesForceUpdate:(BOOL)a0; - (void)__initCommon; - (long long)_calculateRefeshesPerSecond; - (const id *)colorTextures; - (BOOL)_canDrawContent; - (void).cxx_destruct; - (void)layoutSubviews; - (id)initWithCoder:(id)a0; - (void)didMoveToWindow; @end