[MetalFX] Add the framework (which was added in Xcode 14) and add xcode 15 support. (#19107)

Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
This commit is contained in:
Manuel de la Pena 2023-10-23 10:40:02 -04:00 коммит произвёл GitHub
Родитель 77451313ed
Коммит 61f438656c
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
21 изменённых файлов: 344 добавлений и 196 удалений

Просмотреть файл

@ -85,6 +85,7 @@ partial class Frameworks {
"Messages",
"MessageUI",
"Metal",
"MetalFX",
"MetalKit",
"MetalPerformanceShaders",
"MetalPerformanceShadersGraph",
@ -219,6 +220,7 @@ partial class Frameworks {
"MediaPlayer",
"MediaToolbox",
"Metal",
"MetalFX",
"MetalKit",
"MetalPerformanceShaders",
"MetalPerformanceShadersGraph",
@ -640,6 +642,7 @@ partial class Frameworks {
bool? _Messages;
bool? _MessageUI;
bool? _Metal;
bool? _MetalFX;
bool? _MetalKit;
bool? _MetalPerformanceShaders;
bool? _MetalPerformanceShadersGraph;
@ -805,6 +808,7 @@ partial class Frameworks {
public bool HaveMessages { get { if (!_Messages.HasValue) _Messages = GetValue ("Messages"); return _Messages.Value; } }
public bool HaveMessageUI { get { if (!_MessageUI.HasValue) _MessageUI = GetValue ("MessageUI"); return _MessageUI.Value; } }
public bool HaveMetal { get { if (!_Metal.HasValue) _Metal = GetValue ("Metal"); return _Metal.Value; } }
public bool HaveMetalFX { get { if (!_MetalFX.HasValue) _MetalFX = GetValue ("MetalFX"); return _MetalFX.Value; } }
public bool HaveMetalKit { get { if (!_MetalKit.HasValue) _MetalKit = GetValue ("MetalKit"); return _MetalKit.Value; } }
public bool HaveMetalPerformanceShaders { get { if (!_MetalPerformanceShaders.HasValue) _MetalPerformanceShaders = GetValue ("MetalPerformanceShaders"); return _MetalPerformanceShaders.Value; } }
public bool HaveMetalPerformanceShadersGraph { get { if (!_MetalPerformanceShadersGraph.HasValue) _MetalPerformanceShadersGraph = GetValue ("MetalPerformanceShadersGraph"); return _MetalPerformanceShadersGraph.Value; } }

Просмотреть файл

@ -1188,6 +1188,9 @@ METAL_SOURCES = \
Metal/MTLResourceStatePassSampleBufferAttachmentDescriptorArray.cs \
Metal/MTLVertexDescriptor.cs \
# MetalFX
# MetalKit
METALKIT_SOURCES = \
@ -2084,6 +2087,7 @@ MACOS_FRAMEWORKS = \
MediaPlayer \
MediaToolbox \
Metal \
MetalFX \
MetalKit \
MetalPerformanceShaders \
MetalPerformanceShadersGraph \
@ -2200,6 +2204,7 @@ IOS_FRAMEWORKS = \
Messages \
MessageUI \
Metal \
MetalFX \
MetalKit \
MetalPerformanceShaders \
MetalPerformanceShadersGraph \

309
src/metalfx.cs Normal file
Просмотреть файл

@ -0,0 +1,309 @@
using System;
using System.ComponentModel;
using CoreFoundation;
using Foundation;
using Metal;
using ObjCRuntime;
#if !NET
using NativeHandle = System.IntPtr;
#endif
namespace MetalFX {
[Mac (13, 0), iOS (16, 0), MacCatalyst (16, 0)]
[Native]
public enum MTLFXSpatialScalerColorProcessingMode : long {
Perceptual = 0,
Linear = 1,
Hdr = 2,
}
interface IMTLFXSpatialScaler { }
[Mac (13, 0), iOS (16, 0), MacCatalyst (16, 0)]
[Protocol]
interface MTLFXSpatialScaler {
[Abstract]
[Export ("colorTextureUsage")]
MTLTextureUsage ColorTextureUsage { get; }
[Abstract]
[Export ("outputTextureUsage")]
MTLTextureUsage OutputTextureUsage { get; }
[Abstract]
[Export ("inputContentWidth")]
nuint InputContentWidth { get; set; }
[Abstract]
[Export ("inputContentHeight")]
nuint InputContentHeight { get; set; }
[Abstract]
[NullAllowed, Export ("colorTexture", ArgumentSemantic.Retain)]
IMTLTexture ColorTexture { get; set; }
[Abstract]
[NullAllowed, Export ("outputTexture", ArgumentSemantic.Retain)]
IMTLTexture OutputTexture { get; set; }
[Abstract]
[Export ("colorTextureFormat")]
MTLPixelFormat ColorTextureFormat { get; }
[Abstract]
[Export ("outputTextureFormat")]
MTLPixelFormat OutputTextureFormat { get; }
[Abstract]
[Export ("inputWidth")]
nuint InputWidth { get; }
[Abstract]
[Export ("inputHeight")]
nuint InputHeight { get; }
[Abstract]
[Export ("outputWidth")]
nuint OutputWidth { get; }
[Abstract]
[Export ("outputHeight")]
nuint OutputHeight { get; }
[Abstract]
[Export ("colorProcessingMode")]
MTLFXSpatialScalerColorProcessingMode ColorProcessingMode { get; }
[Abstract]
[NullAllowed, Export ("fence", ArgumentSemantic.Retain)]
IMTLFence Fence { get; set; }
[Abstract]
[Export ("encodeToCommandBuffer:")]
void Encode (IMTLCommandBuffer commandBuffer);
}
interface IMTLFXTemporalScaler { }
[Mac (13, 0), iOS (16, 0)]
[Protocol]
interface MTLFXTemporalScaler {
[Abstract]
[Export ("colorTextureUsage")]
MTLTextureUsage ColorTextureUsage { get; }
[Abstract]
[Export ("depthTextureUsage")]
MTLTextureUsage DepthTextureUsage { get; }
[Abstract]
[Export ("motionTextureUsage")]
MTLTextureUsage MotionTextureUsage { get; }
[Abstract]
[Export ("outputTextureUsage")]
MTLTextureUsage OutputTextureUsage { get; }
[Abstract]
[Export ("inputContentWidth")]
nuint InputContentWidth { get; set; }
[Abstract]
[Export ("inputContentHeight")]
nuint InputContentHeight { get; set; }
[Abstract]
[NullAllowed, Export ("colorTexture", ArgumentSemantic.Retain)]
IMTLTexture ColorTexture { get; set; }
[Abstract]
[NullAllowed, Export ("depthTexture", ArgumentSemantic.Retain)]
IMTLTexture DepthTexture { get; set; }
[Abstract]
[NullAllowed, Export ("motionTexture", ArgumentSemantic.Retain)]
IMTLTexture MotionTexture { get; set; }
[Abstract]
[NullAllowed, Export ("outputTexture", ArgumentSemantic.Retain)]
IMTLTexture OutputTexture { get; set; }
[Abstract]
[NullAllowed, Export ("exposureTexture", ArgumentSemantic.Retain)]
IMTLTexture ExposureTexture { get; set; }
[Abstract]
[Export ("preExposure")]
float PreExposure { get; set; }
[Abstract]
[Export ("jitterOffsetX")]
float JitterOffsetX { get; set; }
[Abstract]
[Export ("jitterOffsetY")]
float JitterOffsetY { get; set; }
[Abstract]
[Export ("motionVectorScaleX")]
float MotionVectorScaleX { get; set; }
[Abstract]
[Export ("motionVectorScaleY")]
float MotionVectorScaleY { get; set; }
[Abstract]
[Export ("reset")]
bool Reset { get; set; }
[Abstract]
[Export ("depthReversed")]
bool DepthReversed { [Bind ("isDepthReversed")] get; set; }
[Abstract]
[Export ("colorTextureFormat")]
MTLPixelFormat ColorTextureFormat { get; }
[Abstract]
[Export ("depthTextureFormat")]
MTLPixelFormat DepthTextureFormat { get; }
[Abstract]
[Export ("motionTextureFormat")]
MTLPixelFormat MotionTextureFormat { get; }
[Abstract]
[Export ("outputTextureFormat")]
MTLPixelFormat OutputTextureFormat { get; }
[Abstract]
[Export ("inputWidth")]
nuint InputWidth { get; }
[Abstract]
[Export ("inputHeight")]
nuint InputHeight { get; }
[Abstract]
[Export ("outputWidth")]
nuint OutputWidth { get; }
[Abstract]
[Export ("outputHeight")]
nuint OutputHeight { get; }
[Abstract]
[Export ("inputContentMinScale")]
float InputContentMinScale { get; }
[Abstract]
[Export ("inputContentMaxScale")]
float InputContentMaxScale { get; }
[Abstract]
[NullAllowed, Export ("fence", ArgumentSemantic.Retain)]
IMTLFence Fence { get; set; }
[Abstract]
[Export ("encodeToCommandBuffer:")]
void Encode (IMTLCommandBuffer commandBuffer);
}
[Mac (13, 0), iOS (16, 0), MacCatalyst (16, 0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface MTLFXSpatialScalerDescriptor {
[Export ("colorTextureFormat", ArgumentSemantic.Assign)]
MTLPixelFormat ColorTextureFormat { get; set; }
[Export ("outputTextureFormat", ArgumentSemantic.Assign)]
MTLPixelFormat OutputTextureFormat { get; set; }
[Export ("inputWidth")]
nuint InputWidth { get; set; }
[Export ("inputHeight")]
nuint InputHeight { get; set; }
[Export ("outputWidth")]
nuint OutputWidth { get; set; }
[Export ("outputHeight")]
nuint OutputHeight { get; set; }
[Export ("colorProcessingMode", ArgumentSemantic.Assign)]
MTLFXSpatialScalerColorProcessingMode ColorProcessingMode { get; set; }
[Export ("newSpatialScalerWithDevice:")]
[return: NullAllowed, Release]
IMTLFXSpatialScaler Create (IMTLDevice device);
[Static]
[Export ("supportsDevice:")]
bool SupportsDevice (IMTLDevice device);
}
[Mac (13, 0), iOS (16, 0), MacCatalyst (16, 0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface MTLFXTemporalScalerDescriptor {
[Export ("colorTextureFormat", ArgumentSemantic.Assign)]
MTLPixelFormat ColorTextureFormat { get; set; }
[Export ("depthTextureFormat", ArgumentSemantic.Assign)]
MTLPixelFormat DepthTextureFormat { get; set; }
[Export ("motionTextureFormat", ArgumentSemantic.Assign)]
MTLPixelFormat MotionTextureFormat { get; set; }
[Export ("outputTextureFormat", ArgumentSemantic.Assign)]
MTLPixelFormat OutputTextureFormat { get; set; }
[Export ("inputWidth")]
nuint InputWidth { get; set; }
[Export ("inputHeight")]
nuint InputHeight { get; set; }
[Export ("outputWidth")]
nuint OutputWidth { get; set; }
[Export ("outputHeight")]
nuint OutputHeight { get; set; }
[Export ("autoExposureEnabled")]
bool AutoExposureEnabled { [Bind ("isAutoExposureEnabled")] get; set; }
[Export ("inputContentPropertiesEnabled")]
bool InputContentPropertiesEnabled { [Bind ("isInputContentPropertiesEnabled")] get; set; }
[Export ("inputContentMinScale")]
float InputContentMinScale { get; set; }
[Export ("inputContentMaxScale")]
float InputContentMaxScale { get; set; }
[Export ("newTemporalScalerWithDevice:")]
[return: NullAllowed, Release]
IMTLFXTemporalScaler Create (IMTLDevice device);
[Mac (14, 0), iOS (17, 0), MacCatalyst (17, 0)]
[Static]
[Export ("supportedInputContentMinScaleForDevice:")]
float GetSupportedInputContentMinScale (IMTLDevice device);
[Mac (14, 0), iOS (17, 0), MacCatalyst (17, 0)]
[Static]
[Export ("supportedInputContentMaxScaleForDevice:")]
float GetSupportedInputContentMaxScale (IMTLDevice device);
[Static]
[Export ("supportsDevice:")]
bool SupportsDevice (IMTLDevice device);
}
}

Просмотреть файл

@ -78,6 +78,7 @@
-d:HAS_MESSAGES
-d:HAS_MESSAGEUI
-d:HAS_METAL
-d:HAS_METALFX
-d:HAS_METALKIT
-d:HAS_METALPERFORMANCESHADERS
-d:HAS_METALPERFORMANCESHADERSGRAPH

Просмотреть файл

@ -71,6 +71,7 @@
-d:HAS_MEDIAPLAYER
-d:HAS_MEDIATOOLBOX
-d:HAS_METAL
-d:HAS_METALFX
-d:HAS_METALKIT
-d:HAS_METALPERFORMANCESHADERS
-d:HAS_METALPERFORMANCESHADERSGRAPH

Просмотреть файл

@ -80,6 +80,7 @@
-d:HAS_MESSAGES
-d:HAS_MESSAGEUI
-d:HAS_METAL
-d:HAS_METALFX
-d:HAS_METALKIT
-d:HAS_METALPERFORMANCESHADERS
-d:HAS_METALPERFORMANCESHADERSGRAPH

Просмотреть файл

@ -72,6 +72,7 @@
-d:HAS_MEDIAPLAYER
-d:HAS_MEDIATOOLBOX
-d:HAS_METAL
-d:HAS_METALFX
-d:HAS_METALKIT
-d:HAS_METALPERFORMANCESHADERS
-d:HAS_METALPERFORMANCESHADERSGRAPH

Просмотреть файл

@ -36,6 +36,7 @@ namespace Introspection {
{
switch (type.Namespace) {
// Xcode 15:
case "MetalFX":
case "Cinematic":
// only present on device :/
if (TestRuntime.IsSimulatorOrDesktop)

Просмотреть файл

@ -1105,6 +1105,14 @@ namespace Introspection {
if (TestRuntime.IsSimulatorOrDesktop)
break;
goto default;
#endif
case "MetalFXLibrary":
#if __TVOS__
goto default;
#else
if (TestRuntime.IsSimulatorOrDesktop)
break;
goto default;
#endif
default:
if (fi.Name.EndsWith ("Library", StringComparison.Ordinal)) {

Просмотреть файл

@ -55,6 +55,7 @@ namespace Introspection {
return true;
break;
case "Chip":
case "MetalFX":
case "MetalKit":
case "MonoTouch.MetalKit":
case "MetalPerformanceShaders":

Просмотреть файл

@ -348,6 +348,7 @@ class MyObjectErr : NSObject, IFoo1, IFoo2
new { Framework = "Chip", Version = "15.0" },
new { Framework = "ThreadNetwork", Version = "15.0" },
new { Framework = "BackgroundAssets", Version = "16.0" },
new { Framework = "MetalFX", Version = "16.0" },
new { Framework = "PushToTalk", Version = "16.0" },
new { Framework = "SharedWithYou", Version = "16.0" },
new { Framework = "SharedWithYouCore", Version = "16.0" },

Просмотреть файл

@ -0,0 +1,2 @@
!missing-protocol-conformance! MTLFXSpatialScalerDescriptor should conform to NSCopying
!missing-protocol-conformance! MTLFXTemporalScalerDescriptor should conform to NSCopying

Просмотреть файл

@ -1,49 +0,0 @@
!missing-enum! MTLFXSpatialScalerColorProcessingMode not bound
!missing-protocol! MTLFXSpatialScaler not bound
!missing-protocol! MTLFXTemporalScaler not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorProcessingMode not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::newSpatialScalerWithDevice: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorProcessingMode: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::depthTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMaxScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMinScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::motionTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::newTemporalScalerWithDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setDepthTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMaxScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMinScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setMotionTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputWidth: not bound
!missing-type! MTLFXSpatialScalerDescriptor not bound
!missing-type! MTLFXTemporalScalerDescriptor not bound
!missing-selector! +MTLFXSpatialScalerDescriptor::supportsDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportsDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isAutoExposureEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isInputContentPropertiesEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setAutoExposureEnabled: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentPropertiesEnabled: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMaxScaleForDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMinScaleForDevice: not bound

Просмотреть файл

@ -0,0 +1,2 @@
!missing-protocol-conformance! MTLFXSpatialScalerDescriptor should conform to NSCopying
!missing-protocol-conformance! MTLFXTemporalScalerDescriptor should conform to NSCopying

Просмотреть файл

@ -1,49 +0,0 @@
!missing-enum! MTLFXSpatialScalerColorProcessingMode not bound
!missing-protocol! MTLFXSpatialScaler not bound
!missing-protocol! MTLFXTemporalScaler not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorProcessingMode not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::newSpatialScalerWithDevice: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorProcessingMode: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::depthTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMaxScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMinScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::motionTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::newTemporalScalerWithDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setDepthTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMaxScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMinScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setMotionTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputWidth: not bound
!missing-type! MTLFXSpatialScalerDescriptor not bound
!missing-type! MTLFXTemporalScalerDescriptor not bound
!missing-selector! +MTLFXSpatialScalerDescriptor::supportsDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportsDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isAutoExposureEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isInputContentPropertiesEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setAutoExposureEnabled: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentPropertiesEnabled: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMaxScaleForDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMinScaleForDevice: not bound

Просмотреть файл

@ -0,0 +1,2 @@
!missing-protocol-conformance! MTLFXSpatialScalerDescriptor should conform to NSCopying
!missing-protocol-conformance! MTLFXTemporalScalerDescriptor should conform to NSCopying

Просмотреть файл

@ -1,49 +0,0 @@
!missing-enum! MTLFXSpatialScalerColorProcessingMode not bound
!missing-protocol! MTLFXSpatialScaler not bound
!missing-protocol! MTLFXTemporalScaler not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorProcessingMode not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::newSpatialScalerWithDevice: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorProcessingMode: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::depthTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMaxScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMinScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::motionTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::newTemporalScalerWithDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setDepthTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMaxScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMinScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setMotionTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputWidth: not bound
!missing-type! MTLFXSpatialScalerDescriptor not bound
!missing-type! MTLFXTemporalScalerDescriptor not bound
!missing-selector! +MTLFXSpatialScalerDescriptor::supportsDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportsDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isAutoExposureEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isInputContentPropertiesEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setAutoExposureEnabled: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentPropertiesEnabled: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMaxScaleForDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMinScaleForDevice: not bound

Просмотреть файл

@ -0,0 +1,2 @@
!missing-protocol-conformance! MTLFXSpatialScalerDescriptor should conform to NSCopying
!missing-protocol-conformance! MTLFXTemporalScalerDescriptor should conform to NSCopying

Просмотреть файл

@ -1,49 +0,0 @@
!missing-enum! MTLFXSpatialScalerColorProcessingMode not bound
!missing-protocol! MTLFXSpatialScaler not bound
!missing-protocol! MTLFXTemporalScaler not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorProcessingMode not bound
!missing-selector! MTLFXSpatialScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::newSpatialScalerWithDevice: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXSpatialScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorProcessingMode: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXSpatialScalerDescriptor::setOutputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::colorTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::depthTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMaxScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputContentMinScale not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::inputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::motionTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::newTemporalScalerWithDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputHeight not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputTextureFormat not bound
!missing-selector! MTLFXTemporalScalerDescriptor::outputWidth not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setColorTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setDepthTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMaxScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentMinScale: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputWidth: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setMotionTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputHeight: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputTextureFormat: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setOutputWidth: not bound
!missing-type! MTLFXSpatialScalerDescriptor not bound
!missing-type! MTLFXTemporalScalerDescriptor not bound
!missing-selector! +MTLFXSpatialScalerDescriptor::supportsDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportsDevice: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isAutoExposureEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::isInputContentPropertiesEnabled not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setAutoExposureEnabled: not bound
!missing-selector! MTLFXTemporalScalerDescriptor::setInputContentPropertiesEnabled: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMaxScaleForDevice: not bound
!missing-selector! +MTLFXTemporalScalerDescriptor::supportedInputContentMinScaleForDevice: not bound

Просмотреть файл

@ -278,6 +278,7 @@ public class Frameworks : Dictionary<string, Framework> {
{ "AVRouting", "AVRouting", 13,0},
{ "BackgroundAssets", "BackgroundAssets", 13,0},
{ "HealthKit", "HealthKit", 13,0 },
{ "MetalFX", "MetalFX", 13, 0 },
{ "SharedWithYou", "SharedWithYou", 13,0 },
{ "SharedWithYouCore", "SharedWithYouCore", 13, 0 },
{ "ExtensionKit", "ExtensionKit", 13,0 },
@ -458,6 +459,7 @@ public class Frameworks : Dictionary<string, Framework> {
{ "AVRouting", "AVRouting", 16,0},
{ "BackgroundAssets", "BackgroundAssets", 16,0},
{ "MetalFX", "MetalFX", new Version (16,0), NotAvailableInSimulator },
{ "PushToTalk", "PushToTalk", new Version (16,0), new Version (16, 2) /* available to build with, although it's unusable */},
{ "SharedWithYou", "SharedWithYou", 16, 0 },
{ "SharedWithYouCore", "SharedWithYouCore", 16, 0 },

Просмотреть файл

@ -55,6 +55,7 @@ namespace Xamarin.Linker {
public const string MediaAccessibility = nameof (MediaAccessibility);
public const string MediaLibrary = nameof (MediaLibrary);
public const string MediaPlayer = nameof (MediaPlayer);
public const string MetalFX = nameof (MetalFX);
public const string MetalKit = nameof (MetalKit);
public const string MetalPerformanceShaders = nameof (MetalPerformanceShaders);
public const string MetalPerformanceShadersGraph = nameof (MetalPerformanceShadersGraph);