diff --git a/docs/website/generator-errors.md b/docs/website/generator-errors.md
index 3349efe205cd..28e5ba6d41e6 100644
--- a/docs/website/generator-errors.md
+++ b/docs/website/generator-errors.md
@@ -212,6 +212,35 @@ This usually indicates a bug in Xamarin.iOS/Xamarin.Mac; please [file a bug repo
### BI1070: The type '{type}' is trying to inline the property '{property}' from the protocols '{protocol1}' and '{protocol2}', but the inlined properties are of different types ('{property1}' is int, while '{property2}' is int).
+
+
+### BI1072: Missing [CoreImageFilterProperty] attribute on {type} property {name}
+
+This error happens when a binding type, decorated with `[CoreImageFilter]` attribute, has properties that are not decorated with a `[CoreImageFilterProperty]` attribute. E.g.
+
+```csharp
+[CoreImageFilter]
+[BaseType (typeof (CIFilter))]
+interface CICustomFilter {
+
+ CGAffineTransform Transform { get; }
+}
+```
+
+To solve this error you need to tell the `CIFilter` key that you want to map to the property, e.g.
+
+```csharp
+[CoreImageFilter]
+[BaseType (typeof (CIFilter))]
+interface CICustomFilter {
+
+ [CoreImageFilterProperty ("inputTransform")]
+ CGAffineTransform Transform { get; }
+}
+```
+
+If the property is inlined from a protocol then the `[Export]` value, prefixed with `input`, will be used by default. You can override this with by adding the `[CoreImageFilterProperty]` attribute (e.g. for `output*` keys).
+
# BI11xx: warnings
diff --git a/src/CoreImage/CIContext.cs b/src/CoreImage/CIContext.cs
index 38db2e4ecf4f..789ebd740049 100644
--- a/src/CoreImage/CIContext.cs
+++ b/src/CoreImage/CIContext.cs
@@ -119,6 +119,16 @@ public bool? CacheIntermediates {
SetBooleanValue (CIContext.CacheIntermediates, value);
}
}
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ public bool? AllowLowPower {
+ get {
+ return GetBoolValue (CIContext.AllowLowPower);
+ }
+ set {
+ SetBooleanValue (CIContext.AllowLowPower, value);
+ }
+ }
}
public partial class CIContext {
diff --git a/src/CoreImage/CIFilter.cs b/src/CoreImage/CIFilter.cs
index a8694c644ced..255ee556dbf5 100644
--- a/src/CoreImage/CIFilter.cs
+++ b/src/CoreImage/CIFilter.cs
@@ -173,42 +173,61 @@ internal void SetInt (string key, int value)
SetValueForKey (new NSNumber (value), nskey);
}
+ internal void SetNInt (string key, nint value)
+ {
+ using (var nskey = new NSString (key))
+ SetValueForKey (new NSNumber (value), nskey);
+ }
+
internal void SetBool (string key, bool value)
{
using (var nskey = new NSString (key))
SetValueForKey (new NSNumber (value ? 1 : 0), nskey);
}
- internal float GetFloat (string key)
+ internal void SetValue (string key, CGPoint value)
{
- using (var nskey = new NSString (key)){
- var v = ValueForKey (nskey);
- if (v is NSNumber)
- return (v as NSNumber).FloatValue;
- return 0;
+ using (var nskey = new NSString (key))
+ using (var nsv = new CIVector (value.X, value.Y)) {
+ SetValueForKey (nsv, nskey);
}
}
- internal int GetInt (string key)
+ internal void SetValue (string key, CGRect value)
{
- using (var nskey = new NSString (key)){
- var v = ValueForKey (nskey);
- if (v is NSNumber)
- return (v as NSNumber).Int32Value;
- return 0;
+ using (var nskey = new NSString (key))
+ using (var nsv = new CIVector (value.X, value.Y, value.Width, value.Height)) {
+ SetValueForKey (nsv, nskey);
}
}
- internal bool GetBool (string key)
+ internal T Get (string key) where T : class
{
- using (var nskey = new NSString (key)){
- var v = ValueForKey (nskey);
- if (v is NSNumber)
- return (v as NSNumber).BoolValue;
- return false;
+ using (var nskey = new NSString (key)) {
+ return ValueForKey (nskey) as T;
}
}
+ internal float GetFloat (string key)
+ {
+ return Get (key)?.FloatValue ?? default (float);
+ }
+
+ internal int GetInt (string key)
+ {
+ return Get (key)?.Int32Value ?? default (int);
+ }
+
+ internal nint GetNInt (string key)
+ {
+ return Get (key)?.NIntValue ?? default (nint);
+ }
+
+ internal bool GetBool (string key)
+ {
+ return Get (key)?.BoolValue ?? default (bool);
+ }
+
internal void SetHandle (string key, IntPtr handle)
{
var nsname = NSString.CreateNative (key);
@@ -237,31 +256,16 @@ internal IntPtr GetHandle (string key)
return ret;
}
-
- internal CIVector GetVector (string key)
- {
- return ValueForKey (key) as CIVector;
- }
-
- internal CIColor GetColor (string key)
- {
- return ValueForKey (key) as CIColor;
- }
-
- internal CIImage GetInputImage ()
+ internal CGPoint GetPoint (string key)
{
- return ValueForKey (CIFilterInputKey.Image) as CIImage;
+ var v = Get (key);
+ return v != null ? new CGPoint (v.X, v.Y) : default (CGPoint);
}
- internal void SetInputImage (CIImage value)
+ internal CGRect GetRect (string key)
{
- SetValueForKey (value, CIFilterInputKey.Image);
- }
-
- internal CIImage GetImage (string key)
- {
- using (var nsstr = new NSString (key))
- return ValueForKey (nsstr) as CIImage;
+ var v = Get (key);
+ return v != null ? new CGRect (v.X, v.Y, v.Z, v.W) : default (CGRect);
}
#if MONOMAC
@@ -673,29 +677,32 @@ internal static CIFilter FromName (string filterName, IntPtr handle)
}
}
+#if !XAMCORE_4_0
// not every CIFilter supports inputImage, i.e.
// NSUnknownKeyException [ valueForUndefinedKey:]: this class is not key value coding-compliant for the key inputImage.
// and those will crash (on devices) if the property is called - and that includes displaying it in the debugger
+ [Obsolete ("Use 'InputImage' instead. If not available then the filter does not support it.")]
public CIImage Image {
get {
- return SupportsInputImage ? GetInputImage () : null;
+ return SupportsInputImage ? ValueForKey (CIFilterInputKey.Image) as CIImage : null;
}
set {
if (!SupportsInputImage)
throw new ArgumentException ("inputImage is not supported by this filter");
- SetInputImage (value);
+ SetValueForKey (value, CIFilterInputKey.Image);
}
}
+ bool? supportsInputImage;
+
bool SupportsInputImage {
get {
- foreach (var key in InputKeys) {
- if (key == "inputImage")
- return true;
- }
- return false;
+ if (!supportsInputImage.HasValue)
+ supportsInputImage = Array.IndexOf (InputKeys, "inputImage") >= 0;
+ return supportsInputImage.Value;
}
}
+#endif
}
#if MONOMAC && !XAMCORE_3_0
diff --git a/src/ImageIO/CGImageSource.cs b/src/ImageIO/CGImageSource.cs
index eb3cda6fe74b..a97d9a00fc4e 100644
--- a/src/ImageIO/CGImageSource.cs
+++ b/src/ImageIO/CGImageSource.cs
@@ -37,6 +37,7 @@
namespace ImageIO {
+#if !COREBUILD
// untyped enum -> CGImageSource.h
public enum CGImageSourceStatus {
Complete = 0,
@@ -109,9 +110,11 @@ internal override NSMutableDictionary ToDictionary ()
return dict;
}
}
-
+#endif
+
public partial class CGImageSource : INativeObject, IDisposable
{
+#if !COREBUILD
[DllImport (Constants.ImageIOLibrary, EntryPoint="CGImageSourceGetTypeID")]
public extern static nint GetTypeID ();
@@ -126,7 +129,7 @@ public static string [] TypeIdentifiers {
return array;
}
}
-
+#endif
internal IntPtr handle;
// invoked by marshallers
@@ -165,7 +168,8 @@ protected virtual void Dispose (bool disposing)
handle = IntPtr.Zero;
}
}
-
+
+#if !COREBUILD
[DllImport (Constants.ImageIOLibrary)]
extern static /* CGImageSourceRef __nullable */ IntPtr CGImageSourceCreateWithURL (
/* CFURLRef __nonnull */ IntPtr url, /* CFDictionaryRef __nullable */ IntPtr options);
@@ -403,5 +407,6 @@ public nuint GetPrimaryImageIndex ()
{
return CGImageSourceGetPrimaryImageIndex (handle);
}
+#endif
}
}
diff --git a/src/coreimage.cs b/src/coreimage.cs
index d5597a5c01b4..f828bc6e8085 100644
--- a/src/coreimage.cs
+++ b/src/coreimage.cs
@@ -353,6 +353,11 @@ interface CIContext {
[Field ("kCIContextHighQualityDownsample", "+CoreImage")]
NSString HighQualityDownsample { get; }
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Internal]
+ [Field ("kCIContextAllowLowPower")]
+ NSString AllowLowPower { get; }
+
#if MONOMAC
[Mac(10,11)]
@@ -386,6 +391,16 @@ interface CIContext {
[Internal]
[Field ("kCIContextCacheIntermediates", "+CoreImage")]
NSString CacheIntermediates { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("contextWithMTLCommandQueue:")]
+ CIContext Create (IMTLCommandQueue commandQueue);
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("contextWithMTLCommandQueue:options:")]
+ CIContext Create (IMTLCommandQueue commandQueue, [NullAllowed] NSDictionary options);
}
[Category]
@@ -487,6 +502,11 @@ interface CIContext_CIDepthBlurEffect
[Export ("depthBlurEffectFilterForImage:disparityImage:portraitEffectsMatte:orientation:options:")]
[return: NullAllowed]
CIFilter GetDepthBlurEffectFilter (CIImage image, CIImage disparityImage, [NullAllowed] CIImage portraitEffectsMatte, CGImagePropertyOrientation orientation, [NullAllowed] NSDictionary options);
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Export ("depthBlurEffectFilterForImage:disparityImage:portraitEffectsMatte:hairSemanticSegmentation:orientation:options:")]
+ [return: NullAllowed]
+ CIFilter GetDepthBlurEffectFilter (CIImage image, CIImage disparityImage, [NullAllowed] CIImage portraitEffectsMatte, [NullAllowed] CIImage hairSemanticSegmentation, CGImagePropertyOrientation orientation, [NullAllowed] NSDictionary options);
}
[BaseType (typeof (NSObject))]
@@ -736,6 +756,10 @@ interface CIRawFilterKeys {
[Field ("kCIInputLinearSpaceFilter")]
NSString LinearSpaceFilterKey { get; }
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIInputEnableEDRModeKey")]
+ NSString EnableEdrModeKey { get; }
+
[iOS (10,0)]
[Field ("kCIOutputNativeSizeKey")]
NSString OutputNativeSizeKey { get; }
@@ -1141,13 +1165,10 @@ interface CIFilterCategory {
NSString FilterGenerator { get; }
}
- interface ICIFilterConstructor {}
-
[iOS (9,0)]
[Protocol]
interface CIFilterConstructor
{
- // @required -(CIFilter * __nullable)filterWithName:(NSString * __nonnull)name;
[Abstract]
[Export ("filterWithName:")]
[return: NullAllowed]
@@ -1297,7 +1318,16 @@ interface CIImageInitializationOptions {
bool AuxiliaryDisparity { get; set; }
[TV (12, 0), iOS (12, 0), Mac (10, 14)]
- bool AuxiliaryPortraitEffectsMatte { get; }
+ bool AuxiliaryPortraitEffectsMatte { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ bool AuxiliarySemanticSegmentationSkinMatte { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ bool AuxiliarySemanticSegmentationHairMatte { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ bool AuxiliarySemanticSegmentationTeethMatte { get; set; }
}
[Internal]
@@ -1328,6 +1358,18 @@ interface CIImageInitializationOptionsKeys {
[TV (12, 0), iOS (12, 0), Mac (10, 14)]
[Field ("kCIImageAuxiliaryPortraitEffectsMatte")]
NSString AuxiliaryPortraitEffectsMatteKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageAuxiliarySemanticSegmentationSkinMatte")]
+ NSString AuxiliarySemanticSegmentationSkinMatteKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageAuxiliarySemanticSegmentationHairMatte")]
+ NSString AuxiliarySemanticSegmentationHairMatteKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageAuxiliarySemanticSegmentationTeethMatte")]
+ NSString AuxiliarySemanticSegmentationTeethMatteKey { get; }
}
[BaseType (typeof (NSObject))]
@@ -1343,9 +1385,20 @@ interface CIImage : NSSecureCoding, NSCopying {
CIImage FromCGImage (CGImage image, [NullAllowed] NSDictionary d);
[Static]
- [Wrap ("FromCGImage (image, options == null ? null : options.Dictionary)")]
+ [Wrap ("FromCGImage (image, options?.Dictionary)")]
CIImage FromCGImage (CGImage image, [NullAllowed] CIImageInitializationOptionsWithMetadata options);
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [EditorBrowsable (EditorBrowsableState.Advanced)]
+ [Static]
+ [Export ("imageWithCGImageSource:index:options:")]
+ CIImage FromCGImageSource (CGImageSource source, nuint index, [NullAllowed] NSDictionary options);
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Wrap ("FromCGImageSource (source, index, options?.Dictionary)")]
+ CIImage FromCGImageSource (CGImageSource source, nuint index, [NullAllowed] CIImageInitializationOptionsWithMetadata options);
+
#if MONOMAC
[Deprecated (PlatformName.MacOSX, 10, 11)]
[Static]
@@ -1383,7 +1436,7 @@ interface CIImage : NSSecureCoding, NSCopying {
CIImage FromUrl (NSUrl url, [NullAllowed] NSDictionary d);
[Static]
- [Wrap ("FromUrl (url, options == null ? null : options.Dictionary)")]
+ [Wrap ("FromUrl (url, options?.Dictionary)")]
CIImage FromUrl (NSUrl url, [NullAllowed] CIImageInitializationOptions options);
[Static]
@@ -1396,7 +1449,7 @@ interface CIImage : NSSecureCoding, NSCopying {
CIImage FromData (NSData data, [NullAllowed] NSDictionary d);
[Static]
- [Wrap ("FromData (data, options == null ? null : options.Dictionary)")]
+ [Wrap ("FromData (data, options?.Dictionary)")]
CIImage FromData (NSData data, [NullAllowed] CIImageInitializationOptionsWithMetadata options);
[Static]
@@ -1426,7 +1479,7 @@ interface CIImage : NSSecureCoding, NSCopying {
#endif
[Static][iOS(9,0)]
- [Wrap ("FromImageBuffer (imageBuffer, options == null ? null : options.Dictionary)")]
+ [Wrap ("FromImageBuffer (imageBuffer, options?.Dictionary)")]
CIImage FromImageBuffer (CVImageBuffer imageBuffer, CIImageInitializationOptions options);
#if !MONOMAC
@@ -1440,7 +1493,7 @@ interface CIImage : NSSecureCoding, NSCopying {
CIImage FromImageBuffer (CVPixelBuffer buffer, [NullAllowed] NSDictionary dict);
[Static]
- [Wrap ("FromImageBuffer (buffer, options == null ? null : options.Dictionary)")]
+ [Wrap ("FromImageBuffer (buffer, options?.Dictionary)")]
CIImage FromImageBuffer (CVPixelBuffer buffer, [NullAllowed] CIImageInitializationOptions options);
#endif
[iOS (11,0)]
@@ -1462,7 +1515,7 @@ interface CIImage : NSSecureCoding, NSCopying {
[TV (11,0)]
[Mac (10,13)]
[Static]
- [Wrap ("FromSurface (surface, options == null ? null : options.Dictionary)")]
+ [Wrap ("FromSurface (surface, options?.Dictionary)")]
CIImage FromSurface (IOSurface.IOSurface surface, CIImageInitializationOptions options);
[Static]
@@ -1480,9 +1533,18 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("initWithCGImage:options:")]
IntPtr Constructor (CGImage image, [NullAllowed] NSDictionary d);
- [Wrap ("this (image, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (image, options?.Dictionary)")]
IntPtr Constructor (CGImage image, [NullAllowed] CIImageInitializationOptionsWithMetadata options);
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [EditorBrowsable (EditorBrowsableState.Advanced)]
+ [Export ("initWithCGImageSource:index:options:")]
+ IntPtr Constructor (CGImageSource source, nuint index, [NullAllowed] NSDictionary options);
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Wrap ("this (source, index, options?.Dictionary)")]
+ IntPtr Constructor (CGImageSource source, nuint index, CIImageInitializationOptionsWithMetadata options);
+
#if MONOMAC
[Deprecated (PlatformName.MacOSX, 10, 11, message: "Use 'CIImage (CGImage)' instead.")]
[Export ("initWithCGLayer:")]
@@ -1493,7 +1555,7 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("initWithCGLayer:options:")]
IntPtr Constructor (CGLayer layer, [NullAllowed] NSDictionary d);
- [Wrap ("this (layer, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (layer, options?.Dictionary)")]
IntPtr Constructor (CGLayer layer, [NullAllowed] CIImageInitializationOptions options);
#endif
@@ -1503,7 +1565,7 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("initWithData:options:")]
IntPtr Constructor (NSData data, [NullAllowed] NSDictionary d);
- [Wrap ("this (data, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (data, options?.Dictionary)")]
IntPtr Constructor (NSData data, [NullAllowed] CIImageInitializationOptionsWithMetadata options);
[Export ("initWithBitmapData:bytesPerRow:size:format:colorSpace:")]
@@ -1520,7 +1582,7 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("initWithContentsOfURL:options:")]
IntPtr Constructor (NSUrl url, [NullAllowed] NSDictionary d);
- [Wrap ("this (url, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (url, options?.Dictionary)")]
IntPtr Constructor (NSUrl url, [NullAllowed] CIImageInitializationOptions options);
[iOS (11,0)] // IOSurface was not exposed before Xcode 9
@@ -1538,7 +1600,7 @@ interface CIImage : NSSecureCoding, NSCopying {
[iOS (11,0)] // IOSurface was not exposed before Xcode 9
[TV (11,0)]
[Mac (10,13)]
- [Wrap ("this (surface, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (surface, options?.Dictionary)")]
IntPtr Constructor (IOSurface.IOSurface surface, [NullAllowed] CIImageInitializationOptions options);
[iOS(9,0)]
@@ -1563,7 +1625,7 @@ interface CIImage : NSSecureCoding, NSCopying {
#endif
[iOS(9,0)]
- [Wrap ("this (imageBuffer, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (imageBuffer, options?.Dictionary)")]
IntPtr Constructor (CVImageBuffer imageBuffer, [NullAllowed] CIImageInitializationOptions options);
[Mac (10,11)]
@@ -1575,7 +1637,7 @@ interface CIImage : NSSecureCoding, NSCopying {
IntPtr Constructor (CVPixelBuffer buffer, [NullAllowed] NSDictionary dict);
[Mac (10,11)]
- [Wrap ("this (buffer, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (buffer, options?.Dictionary)")]
IntPtr Constructor (CVPixelBuffer buffer, [NullAllowed] CIImageInitializationOptions options);
[Export ("initWithColor:")]
@@ -1601,6 +1663,10 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("imageByApplyingTransform:")]
CIImage ImageByApplyingTransform (CGAffineTransform matrix);
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Export ("imageByApplyingTransform:highQualityDownsample:")]
+ CIImage ImageByApplyingTransform (CGAffineTransform matrix, bool highQualityDownsample);
+
[Export ("imageByCroppingToRect:")]
CIImage ImageByCroppingToRect (CGRect r);
@@ -1729,7 +1795,7 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("initWithImage:options:")]
IntPtr Constructor (UIImage image, [NullAllowed] NSDictionary options);
- [Wrap ("this (image, options == null ? null : options.Dictionary)")]
+ [Wrap ("this (image, options?.Dictionary)")]
IntPtr Constructor (UIImage image, [NullAllowed] CIImageInitializationOptions options);
#endif
@@ -1927,6 +1993,32 @@ interface CIImage : NSSecureCoding, NSCopying {
[return: NullAllowed]
CIImage FromPortraitEffectsMatte (AVPortraitEffectsMatte matte);
+ // CIImage_AVSemanticSegmentationMatte
+
+ [TV (13,0), iOS (13,0), Mac (10,15)]
+ [NullAllowed, Export ("semanticSegmentationMatte")]
+ AVSemanticSegmentationMatte SemanticSegmentationMatte { get; }
+
+ [TV (13,0), iOS (13,0), Mac (10,15)]
+ [Export ("initWithSemanticSegmentationMatte:options:")]
+ IntPtr Constructor (AVSemanticSegmentationMatte matte, [NullAllowed] NSDictionary options);
+
+ [TV (13,0), iOS (13,0), Mac (10,15)]
+ [Export ("initWithSemanticSegmentationMatte:")]
+ IntPtr Constructor (AVSemanticSegmentationMatte matte);
+
+ [TV (13,0), iOS (13,0), Mac (10,15)]
+ [Static]
+ [Export ("imageWithSemanticSegmentationMatte:options:")]
+ [return: NullAllowed]
+ CIImage FromSemanticSegmentationMatte (AVSemanticSegmentationMatte matte, [NullAllowed] NSDictionary options);
+
+ [TV (13,0), iOS (13,0), Mac (10,15)]
+ [Static]
+ [Export ("imageWithSemanticSegmentationMatte:")]
+ [return: NullAllowed]
+ CIImage FromSemanticSegmentationMatte (AVSemanticSegmentationMatte matte);
+
// CIImage_AVDepthData category
[TV (11, 0), iOS (11, 0), Mac (10,13)]
@@ -1948,6 +2040,58 @@ interface CIImage : NSSecureCoding, NSCopying {
[Export ("imageWithDepthData:")]
[return: NullAllowed]
CIImage FromDepthData (AVDepthData data);
+
+ // colors
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("blackImage", ArgumentSemantic.Strong)]
+ CIImage BlackImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("whiteImage", ArgumentSemantic.Strong)]
+ CIImage WhiteImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("grayImage", ArgumentSemantic.Strong)]
+ CIImage GrayImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("redImage", ArgumentSemantic.Strong)]
+ CIImage RedImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("greenImage", ArgumentSemantic.Strong)]
+ CIImage GreenImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("blueImage", ArgumentSemantic.Strong)]
+ CIImage BlueImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("cyanImage", ArgumentSemantic.Strong)]
+ CIImage CyanImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("magentaImage", ArgumentSemantic.Strong)]
+ CIImage MagentaImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("yellowImage", ArgumentSemantic.Strong)]
+ CIImage YellowImage { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Static]
+ [Export ("clearImage", ArgumentSemantic.Strong)]
+ CIImage ClearImage { get; }
}
interface ICIImageProcessorInput {}
@@ -2205,6 +2349,7 @@ interface CIImageAccumulator {
#if MONOMAC
[BaseType (typeof (NSObject))]
interface CIPlugIn {
+ [Deprecated (PlatformName.MacOSX, 10,15, message: "Use 'LoadNonExecutablePlugIns' for non-executable plugins instead.")]
[Static]
[Export ("loadAllPlugIns")]
void LoadAllPlugIns ();
@@ -2213,6 +2358,11 @@ interface CIPlugIn {
[Export ("loadNonExecutablePlugIns")]
void LoadNonExecutablePlugIns ();
+ [Mac (10,15)]
+ [Static]
+ [Export ("loadNonExecutablePlugIn:")]
+ void LoadNonExecutablePlugIn (NSUrl url);
+
[Deprecated (PlatformName.MacOSX, 10, 7)]
[Static]
[Export ("loadPlugIn:allowNonExecutable:")]
@@ -2645,22 +2795,13 @@ interface CIImageProcessorKernel {
[iOS (8,0)]
[Mac (10,10)]
[BaseType (typeof (CIFilter))]
- interface CIAccordionFoldTransition {
+ interface CIAccordionFoldTransition : CIAccordionFoldTransitionProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'FoldCount' instead.")]
[CoreImageFilterProperty ("inputNumberOfFolds")]
int NumberOfFolds { get; set; }
-
- [CoreImageFilterProperty ("inputTime")]
- float Time { get; set; }
-
- [CoreImageFilterProperty ("inputFoldShadowAmount")]
- float FoldShadowAmount { get; set; }
-
- [CoreImageFilterProperty ("inputBottomHeight")]
- float BottomHeight { get; set; }
-
- [CoreImageFilterProperty ("inputTargetImage")]
- CIImage TargetImage { get; set; }
+#endif
}
[CoreImageFilter (IntPtrCtorVisibility = MethodAttributes.Family)] // was already protected in classic
@@ -2668,6 +2809,9 @@ interface CIAccordionFoldTransition {
[BaseType (typeof (CIFilter))]
interface CICompositingFilter {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputBackgroundImage")]
CIImage BackgroundImage { get; set; }
}
@@ -2680,32 +2824,49 @@ interface CIAdditionCompositing {
[CoreImageFilter (IntPtrCtorVisibility = MethodAttributes.Family)] // was already protected in classic
[Abstract]
[BaseType (typeof (CIFilter))]
- interface CIAffineFilter {
+ interface CIAffineFilter : CIFilterProtocol {
+#if !XAMCORE_4_0
[NoMac]
+ [Obsolete ("Not every subclass expose this property.")]
[CoreImageFilterProperty ("inputTransform")]
CGAffineTransform Transform { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIAffineFilter))]
- interface CIAffineClamp {
+ interface CIAffineClamp : CIAffineClampProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIAffineFilter))]
- interface CIAffineTile {
+ interface CIAffineTile : CIAffineTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIAffineFilter))]
interface CIAffineTransform {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
+ [CoreImageFilterProperty ("inputTransform")]
+ CGAffineTransform Transform { get; set; }
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIReductionFilter))]
interface CIAreaAverage {
+
+ [CoreImageFilterProperty ("outputImageNonMPS")]
+ CIImage OutputImageNonMps { get; }
+
+#if MONOMAC
+ [CoreImageFilterProperty ("outputImageMPS")]
+ CIImage OutputImageMps { get; }
+#endif
}
[CoreImageFilter]
@@ -2713,6 +2874,9 @@ interface CIAreaAverage {
[BaseType (typeof (CIFilter))]
interface CIAreaHistogram {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputCount")]
float Count { get; set; }
@@ -2721,6 +2885,17 @@ interface CIAreaHistogram {
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
+
+ [CoreImageFilterProperty ("outputImageNonMPS")]
+ CIImage OutputImageNonMps { get; }
+
+#if MONOMAC
+ [CoreImageFilterProperty ("outputImageMPS")]
+ CIImage OutputImageMps { get; }
+#endif
+
+ [CoreImageFilterProperty ("outputData")]
+ NSData OutputData { get; }
}
[CoreImageFilter]
@@ -2728,6 +2903,10 @@ interface CIAreaHistogram {
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
interface CIReductionFilter {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
}
@@ -2768,28 +2947,26 @@ interface CICodeGenerator {
[iOS (8,0)]
[Mac (10,10)]
[BaseType (typeof (CICodeGenerator))]
- interface CIAztecCodeGenerator {
+ interface CIAztecCodeGenerator : CIAztecCodeGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCompactStyle' instead.")]
[CoreImageFilterProperty ("inputCompactStyle")]
bool CompactStyle { get; set; }
+ [Obsolete ("Use 'InputLayers' instead.")]
[CoreImageFilterProperty ("inputLayers")]
int Layers { get; set; }
+#endif
- [CoreImageFilterProperty ("inputCorrectionLevel")]
- float CorrectionLevel { get; set; }
+ [CoreImageFilterProperty ("outputCGImage")]
+ CGImage OutputCGImage { get; }
}
[CoreImageFilter (IntPtrCtorVisibility = MethodAttributes.Family)] // was already protected in classic
[Abstract]
[BaseType (typeof (CIFilter))]
- interface CITransitionFilter {
-
- [CoreImageFilterProperty ("inputTime")]
- float Time { get; set; }
-
- [CoreImageFilterProperty ("inputTargetImage")]
- CIImage TargetImage { get; set; }
+ interface CITransitionFilter : CITransitionFilterProtocol {
}
[CoreImageFilter]
@@ -2815,31 +2992,25 @@ interface CIBlendWithAlphaMask {
[CoreImageFilter (DefaultCtorVisibility = MethodAttributes.Public, StringCtorVisibility = MethodAttributes.Public)]
[BaseType (typeof (CIBlendFilter))]
- interface CIBlendWithMask {
+ interface CIBlendWithMask : CIBlendWithMaskProtocol {
+#if !XAMCORE_4_0
// renamed for API compatibility
+ [Obsolete ("Use 'MaskImage' instead.")]
[CoreImageFilterProperty ("inputMaskImage")]
CIImage Mask { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIBloom {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIBloom : CIBloomProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIBoxBlur {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIBoxBlur : CIBoxBlurProtocol {
}
[CoreImageFilter (IntPtrCtorVisibility = MethodAttributes.Family)] // was already protected in classic
@@ -2847,6 +3018,9 @@ interface CIBoxBlur {
[BaseType (typeof (CIFilter))]
interface CIDistortionFilter {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputRadius")]
float Radius { get; set; }
@@ -2875,22 +3049,13 @@ interface CIBumpDistortionLinear {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CICheckerboardGenerator {
-
- [CoreImageFilterProperty ("inputWidth")]
- float Width { get; set; }
-
- [CoreImageFilterProperty ("inputSharpness")]
- float Sharpness { get; set; }
+ interface CICheckerboardGenerator : CICheckerboardGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+#endif
}
[CoreImageFilter]
@@ -2906,8 +3071,14 @@ interface CIScreenFilter {
[CoreImageFilterProperty ("inputSharpness")]
float Sharpness { get; set; }
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
+
+ [CoreImageFilterProperty ("inputCenter")]
+ CGPoint InputCenter { get; set; }
[CoreImageFilterProperty ("inputWidth")]
float Width { get; set; }
@@ -2915,7 +3086,7 @@ interface CIScreenFilter {
[CoreImageFilter]
[BaseType (typeof (CIScreenFilter))]
- interface CICircularScreen {
+ interface CICircularScreen : CICircularScreenProtocol {
}
[CoreImageFilter]
@@ -2923,6 +3094,9 @@ interface CICircularScreen {
[BaseType (typeof (CIFilter))]
interface CICircularWrap {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputRadius")]
float Radius { get; set; }
@@ -2936,37 +3110,28 @@ interface CICircularWrap {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter), Name="CICMYKHalftone")]
- interface CICmykHalftone {
- [CoreImageFilterProperty ("inputWidth")]
- float Width { get; set; }
-
- // renamed for API compatibility
- [CoreImageFilterProperty ("inputUCR")]
- float UnderColorRemoval { get; set; }
-
- // renamed for API compatibility
- [CoreImageFilterProperty ("inputGCR")]
- float GrayComponentReplacement { get; set; }
+ interface CICmykHalftone : CICmykHalftoneProtocol {
+#if !XAMCORE_4_0
// renamed for API compatibility
+ [Obsolete ("Use 'Sharpness' instead.")]
[CoreImageFilterProperty ("inputSharpness")]
float InputSharpness { get; set; }
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
-
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (8,0)]
[Mac (10,10)]
[BaseType (typeof (CICodeGenerator))]
- interface CICode128BarcodeGenerator {
+ interface CICode128BarcodeGenerator : CICode128BarcodeGeneratorProtocol {
- [CoreImageFilterProperty ("inputQuietSpace")]
- float QuietSpace { get; set; }
+ [CoreImageFilterProperty ("outputCGImage")]
+ CIImage OutputCGImage { get; }
}
[CoreImageFilter (IntPtrCtorVisibility = MethodAttributes.Family)] // was already protected in classic
@@ -2974,6 +3139,9 @@ interface CICode128BarcodeGenerator {
[BaseType (typeof (CIFilter))]
interface CIBlendFilter {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputBackgroundImage")]
CIImage BackgroundImage { get; set; }
}
@@ -2992,66 +3160,43 @@ interface CIColorBurnBlendMode {
[iOS (7,0)]
[Mac (10,9)]
[BaseType (typeof (CIFilter))]
- interface CIColorClamp {
+ interface CIColorClamp : CIColorClampProtocol {
+#if !XAMCORE_4_0
// here the prefix was not removed, edited to keep API compatibility
+ [Obsolete ("Use 'MinComponents' instead.")]
[CoreImageFilterProperty ("inputMinComponents")]
CIVector InputMinComponents { get; set; }
// here the prefix was not removed, edited to keep API compatibility
+ [Obsolete ("Use 'MaxComponents' instead.")]
[CoreImageFilterProperty ("inputMaxComponents")]
CIVector InputMaxComponents { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIColorControls {
-
- [CoreImageFilterProperty ("inputContrast")]
- float Contrast { get; set; }
-
- [CoreImageFilterProperty ("inputBrightness")]
- float Brightness { get; set; }
-
- [CoreImageFilterProperty ("inputSaturation")]
- float Saturation { get; set; }
+ interface CIColorControls : CIColorControlsProtocol {
}
[CoreImageFilter (DefaultCtorVisibility = MethodAttributes.Public, StringCtorVisibility = MethodAttributes.Public)]
[iOS (7,0)] // not part of the attributes dictionary -> [NoiOS] is generated
[Mac (10,9)] // not part of the attributes dictionary -> [NoMac] is generated
[BaseType (typeof (CIFilter))]
- interface CIColorCrossPolynomial {
-
- [CoreImageFilterProperty ("inputRedCoefficients")]
- CIVector RedCoefficients { get; set; }
-
- [CoreImageFilterProperty ("inputBlueCoefficients")]
- CIVector BlueCoefficients { get; set; }
-
- [CoreImageFilterProperty ("inputGreenCoefficients")]
- CIVector GreenCoefficients { get; set; }
+ interface CIColorCrossPolynomial : CIColorCrossPolynomialProtocol {
}
[CoreImageFilter (DefaultCtorVisibility = MethodAttributes.Public, StringCtorVisibility = MethodAttributes.Public)]
[BaseType (typeof (CIFilter))]
- interface CIColorCube {
-
- [CoreImageFilterProperty ("inputCubeDimension")]
- float CubeDimension { get; set; }
-
- [CoreImageFilterProperty ("inputCubeData")]
- NSData CubeData { get; set; }
+ interface CIColorCube : CIColorCubeProtocol {
}
[CoreImageFilter]
[iOS (7,0)]
[Mac (10,9)]
[BaseType (typeof (CIColorCube))]
- interface CIColorCubeWithColorSpace {
-
- [CoreImageFilterProperty ("inputColorSpace")]
- CGColorSpace ColorSpace { get; set; }
+ interface CIColorCubeWithColorSpace : CIColorCubeWithColorSpaceProtocol {
}
[CoreImageFilter]
@@ -3061,64 +3206,34 @@ interface CIColorDodgeBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIColorInvert {
+ interface CIColorInvert : CIColorInvertProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIColorMap {
-
- [CoreImageFilterProperty ("inputGradientImage")]
- CIImage GradientImage { get; set; }
+ interface CIColorMap : CIColorMapProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIColorMatrix {
-
- [CoreImageFilterProperty ("inputAVector")]
- CIVector AVector { get; set; }
-
- [CoreImageFilterProperty ("inputBiasVector")]
- CIVector BiasVector { get; set; }
-
- [CoreImageFilterProperty ("inputBVector")]
- CIVector BVector { get; set; }
-
- [CoreImageFilterProperty ("inputGVector")]
- CIVector GVector { get; set; }
-
- [CoreImageFilterProperty ("inputRVector")]
- CIVector RVector { get; set; }
+ interface CIColorMatrix : CIColorMatrixProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIColorMonochrome {
-
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIColorMonochrome : CIColorMonochromeProtocol {
}
[CoreImageFilter]
[iOS (7,0)]
[Mac (10,9)]
[BaseType (typeof (CIColorCrossPolynomial))]
- interface CIColorPolynomial {
-
- [CoreImageFilterProperty ("inputAlphaCoefficients")]
- CIVector AlphaCoefficients { get; set; }
+ interface CIColorPolynomial : CIColorPolynomialProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIColorPosterize {
-
- [CoreImageFilterProperty ("inputLevels")]
- float Levels { get; set; }
+ interface CIColorPosterize : CIColorPosterizeProtocol {
}
[CoreImageFilter]
@@ -3131,7 +3246,7 @@ interface CIColumnAverage {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIComicEffect {
+ interface CIComicEffect : CIComicEffectProtocol {
}
[CoreImageFilter]
@@ -3147,6 +3262,9 @@ interface CIConstantColorGenerator {
[BaseType (typeof (CIFilter))]
interface CIConvolutionCore {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputWeights")]
CIVector Weights { get; set; }
@@ -3213,6 +3331,9 @@ interface CICopyMachineTransition {
[BaseType (typeof (CIFilter))]
interface CICrop {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputRectangle")]
CIVector Rectangle { get; set; }
}
@@ -3220,13 +3341,13 @@ interface CICrop {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CICrystallize {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CICrystallize : CICrystallizeProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
}
[CoreImageFilter]
@@ -3242,28 +3363,22 @@ interface CIDifferenceBlendMode {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIDiscBlur {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIDiscBlur : CIDiscBlurProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITransitionFilter))]
- interface CIDisintegrateWithMaskTransition {
-
- [CoreImageFilterProperty ("inputShadowDensity")]
- float ShadowDensity { get; set; }
+ interface CIDisintegrateWithMaskTransition : CIDisintegrateWithMaskTransitionProtocol {
- // renamed for API compatibility
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'MaskImage' instead.")]
[CoreImageFilterProperty ("inputMaskImage")]
CIImage Mask { get; set; }
- [CoreImageFilterProperty ("inputShadowRadius")]
- float ShadowRadius { get; set; }
-
+ [Obsolete ("Use 'InputShadowOffset' instead.")]
[CoreImageFilterProperty ("inputShadowOffset")]
CIVector ShadowOffset { get; set; }
+#endif
}
[CoreImageFilter]
@@ -3271,6 +3386,9 @@ interface CIDisintegrateWithMaskTransition {
[BaseType (typeof (CIFilter))]
interface CIDisplacementDistortion {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputDisplacementImage")]
CIImage DisplacementImage { get; set; }
@@ -3292,9 +3410,7 @@ interface CIDivideBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIScreenFilter))]
- interface CIDotScreen {
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIDotScreen : CIDotScreenProtocol {
}
[CoreImageFilter]
@@ -3302,6 +3418,9 @@ interface CIDotScreen {
[BaseType (typeof (CIFilter))]
interface CIDroste {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputStrands")]
float Strands { get; set; }
@@ -3324,19 +3443,13 @@ interface CIDroste {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIEdges {
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIEdges : CIEdgesProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIEdgeWork {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIEdgeWork : CIEdgeWorkProtocol {
}
[CoreImageFilter (IntPtrCtorVisibility = MethodAttributes.Family)] // was already protected in classic
@@ -3347,8 +3460,14 @@ interface CITileFilter {
[CoreImageFilterProperty ("inputAngle")]
float Angle { get; set; }
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
+
+ [CoreImageFilterProperty ("inputCenter")]
+ CGPoint InputCenter { get; set; }
[CoreImageFilterProperty ("inputWidth")]
float Width { get; set; }
@@ -3356,7 +3475,7 @@ interface CITileFilter {
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CIEightfoldReflectedTile {
+ interface CIEightfoldReflectedTile : CIEightfoldReflectedTileProtocol {
}
[CoreImageFilter]
@@ -3366,103 +3485,73 @@ interface CIExclusionBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIExposureAdjust {
-
- [CoreImageFilterProperty ("inputEV")]
- float EV { get; set; }
+ interface CIExposureAdjust : CIExposureAdjustProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIFalseColor {
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+ interface CIFalseColor : CIFalseColorProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITransitionFilter))]
- interface CIFlashTransition {
+ interface CIFlashTransition : CIFlashTransitionProtocol {
+#if !XAMCORE_4_0
// for some reason we prefixed all Striation* with Max - API compatibility
+ [Obsolete ("Use 'StriationContrast' instead.")]
[CoreImageFilterProperty ("inputStriationContrast")]
float MaxStriationContrast { get; set; }
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
-
- [CoreImageFilterProperty ("inputFadeThreshold")]
- float FadeThreshold { get; set; }
-
- [CoreImageFilterProperty ("inputMaxStriationRadius")]
- float MaxStriationRadius { get; set; }
-
+ [Obsolete ("Use 'InputExtent' instead.")]
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
// for some reason we prefixed all Striation* with Max - API compatibility
+ [Obsolete ("Use 'StriationStrength' instead.")]
[CoreImageFilterProperty ("inputStriationStrength")]
float MaxStriationStrength { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CIFourfoldReflectedTile {
-
- [CoreImageFilterProperty ("inputAcuteAngle")]
- float AcuteAngle { get; set; }
+ interface CIFourfoldReflectedTile : CIFourfoldReflectedTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CIFourfoldRotatedTile {
+ interface CIFourfoldRotatedTile : CIFourfoldRotatedTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CIFourfoldTranslatedTile {
-
- [CoreImageFilterProperty ("inputAcuteAngle")]
- float AcuteAngle { get; set; }
+ interface CIFourfoldTranslatedTile : CIFourfoldTranslatedTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIGammaAdjust {
-
- [CoreImageFilterProperty ("inputPower")]
- float Power { get; set; }
+ interface CIGammaAdjust : CIGammaAdjustProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIGaussianBlur {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIGaussianBlur : CIGaussianBlurProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIGaussianGradient {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIGaussianGradient : CIGaussianGradientProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+#endif
}
[CoreImageFilter]
@@ -3470,6 +3559,9 @@ interface CIGaussianGradient {
[BaseType (typeof (CIFilter))]
interface CIGlassDistortion {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
@@ -3485,6 +3577,9 @@ interface CIGlassDistortion {
[BaseType (typeof (CIFilter))]
interface CIGlassLozenge {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputPoint1")]
CIVector Point1 { get; set; }
@@ -3500,18 +3595,12 @@ interface CIGlassLozenge {
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CIGlideReflectedTile {
+ interface CIGlideReflectedTile : CIGlideReflectedTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIGloom {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIGloom : CIGloomProtocol {
}
[CoreImageFilter]
@@ -3521,44 +3610,30 @@ interface CIHardLightBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIScreenFilter))]
- interface CIHatchedScreen {
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIHatchedScreen : CIHatchedScreenProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIHeightFieldFromMask {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
- }
+ interface CIHeightFieldFromMask : CIHeightFieldFromMaskProtocol {
+ }
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIHexagonalPixellate {
+ interface CIHexagonalPixellate : CIHexagonalPixellateProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIHighlightShadowAdjust {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputHighlightAmount")]
- float HighlightAmount { get; set; }
-
- [CoreImageFilterProperty ("inputShadowAmount")]
- float ShadowAmount { get; set; }
+ interface CIHighlightShadowAdjust : CIHighlightShadowAdjustProtocol {
}
[CoreImageFilter]
@@ -3567,6 +3642,9 @@ interface CIHighlightShadowAdjust {
[BaseType (typeof (CIFilter))]
interface CIHistogramDisplayFilter {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputHeight")]
float Height { get; set; }
@@ -3584,10 +3662,7 @@ interface CIHoleDistortion {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIHueAdjust {
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIHueAdjust : CIHueAdjustProtocol {
}
[CoreImageFilter]
@@ -3598,57 +3673,34 @@ interface CIHueBlendMode {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIKaleidoscope {
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIKaleidoscope : CIKaleidoscopeProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCount' instead.")]
[CoreImageFilterProperty ("inputCount")]
float Count { get; set; }
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CILanczosScaleTransform {
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
-
- [CoreImageFilterProperty ("inputAspectRatio")]
- float AspectRatio { get; set; }
+ interface CILanczosScaleTransform : CILanczosScaleTransformProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CILenticularHaloGenerator {
-
- [CoreImageFilterProperty ("inputStriationContrast")]
- float StriationContrast { get; set; }
-
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
-
- [CoreImageFilterProperty ("inputTime")]
- float Time { get; set; }
-
- [CoreImageFilterProperty ("inputHaloRadius")]
- float HaloRadius { get; set; }
+ interface CILenticularHaloGenerator : CILenticularHaloGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputHaloOverlap")]
- float HaloOverlap { get; set; }
-
- [CoreImageFilterProperty ("inputStriationStrength")]
- float StriationStrength { get; set; }
-
- [CoreImageFilterProperty ("inputHaloWidth")]
- float HaloWidth { get; set; }
+#endif
}
[CoreImageFilter]
@@ -3661,6 +3713,9 @@ interface CILightenBlendMode {
[BaseType (typeof (CIFilter))]
interface CILightTunnel {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputRotation")]
float Rotation { get; set; }
@@ -3687,54 +3742,35 @@ interface CILinearDodgeBlendMode {
[CoreImageFilter (DefaultCtorVisibility = MethodAttributes.Public, StringCtorVisibility = MethodAttributes.Public)]
[BaseType (typeof (CIFilter))]
- interface CILinearGradient {
+ interface CILinearGradient : CILinearGradientProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputPoint1' instead.")]
[CoreImageFilterProperty ("inputPoint1")]
CIVector Point1 { get; set; }
+ [Obsolete ("Use 'InputPoint0' instead.")]
[CoreImageFilterProperty ("inputPoint0")]
CIVector Point0 { get; set; }
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (7,0)]
[Mac (10,10)]
[BaseType (typeof (CIFilter))]
- interface CILinearToSRGBToneCurve {
+ interface CILinearToSRGBToneCurve : CILinearToSrgbToneCurveProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CILineOverlay {
-
- [CoreImageFilterProperty ("inputNRNoiseLevel")]
- float NRNoiseLevel { get; set; }
-
- [CoreImageFilterProperty ("inputNRSharpness")]
- float NRSharpness { get; set; }
-
- [CoreImageFilterProperty ("inputEdgeIntensity")]
- float EdgeIntensity { get; set; }
-
- [CoreImageFilterProperty ("inputContrast")]
- float Contrast { get; set; }
-
- [CoreImageFilterProperty ("inputThreshold")]
- float Threshold { get; set; }
+ interface CILineOverlay : CILineOverlayProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIScreenFilter))]
- interface CILineScreen {
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CILineScreen : CILineScreenProtocol {
}
[CoreImageFilter]
@@ -3744,12 +3780,12 @@ interface CILuminosityBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIMaskToAlpha {
+ interface CIMaskToAlpha : CIMaskToAlphaProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIMaximumComponent {
+ interface CIMaximumComponent : CIMaximumComponentProtocol {
}
[CoreImageFilter]
@@ -3760,12 +3796,12 @@ interface CIMaximumCompositing {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIMedianFilter {
+ interface CIMedianFilter : CIMedianProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIMinimumComponent {
+ interface CIMinimumComponent : CIMinimumComponentProtocol {
}
[CoreImageFilter]
@@ -3775,28 +3811,18 @@ interface CIMinimumCompositing {
[CoreImageFilter]
[BaseType (typeof (CITransitionFilter))]
- interface CIModTransition {
-
- [CoreImageFilterProperty ("inputCompression")]
- float Compression { get; set; }
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIModTransition : CIModTransitionProtocol {
+#if !XAMCORE_4_0
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (8,3)]
[BaseType (typeof (CILinearBlur))]
- interface CIMotionBlur {
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIMotionBlur : CIMotionBlurProtocol {
}
[CoreImageFilter]
@@ -3812,22 +3838,13 @@ interface CIMultiplyCompositing {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CINoiseReduction {
-
- [CoreImageFilterProperty ("inputSharpness")]
- float Sharpness { get; set; }
-
- [CoreImageFilterProperty ("inputNoiseLevel")]
- float NoiseLevel { get; set; }
+ interface CINoiseReduction : CINoiseReductionProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CITileFilter))]
- interface CIOpTile {
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
+ interface CIOpTile : CIOpTileProtocol {
}
[CoreImageFilter]
@@ -3838,155 +3855,139 @@ interface CIOverlayBlendMode {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CITransitionFilter))]
- interface CIPageCurlTransition {
-
- [CoreImageFilterProperty ("inputShadingImage")]
- CIImage ShadingImage { get; set; }
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIPageCurlTransition : CIPageCurlTransitionProtocol {
+#if !XAMCORE_4_0
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
-
- [CoreImageFilterProperty ("inputBacksideImage")]
- CIImage BacksideImage { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIPageCurlWithShadowTransition {
-
- [CoreImageFilterProperty ("inputShadowSize")]
- float ShadowSize { get; set; }
+ interface CIPageCurlWithShadowTransition : CIPageCurlWithShadowTransitionProtocol {
+#if !XAMCORE_4_0
// prefixed for API compatibility
+ [Obsolete ("Use 'Time' instead.")]
[CoreImageFilterProperty ("inputTime")]
float InputTime { get; set; }
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
+ [Obsolete ("Use 'InputShadowExtent' instead.")]
[CoreImageFilterProperty ("inputShadowExtent")]
CIVector ShadowExtent { get; set; }
- [CoreImageFilterProperty ("inputShadowAmount")]
- float ShadowAmount { get; set; }
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
-
+ [Obsolete ("Use 'InputExtent' instead.")]
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
-
- [CoreImageFilterProperty ("inputTargetImage")]
- CIImage TargetImage { get; set; }
-
- [CoreImageFilterProperty ("inputBacksideImage")]
- CIImage BacksideImage { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CITileFilter))]
- interface CIParallelogramTile {
-
- [CoreImageFilterProperty ("inputAcuteAngle")]
- float AcuteAngle { get; set; }
+ interface CIParallelogramTile : CIParallelogramTileProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[Mac (10,11)]
[BaseType (typeof (CICodeGenerator), Name="CIPDF417BarcodeGenerator")]
- interface CIPdf417BarcodeGenerator {
-
+ interface CIPdf417BarcodeGenerator : CIPdf417BarcodeGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCorrectionLevel' instead.")]
[CoreImageFilterProperty ("inputCorrectionLevel")]
int CorrectionLevel { get; set; }
- [CoreImageFilterProperty ("inputMinHeight")]
- float MinHeight { get; set; }
-
+ [Obsolete ("Use 'InputAlwaysSpecifyCompaction' instead.")]
[CoreImageFilterProperty ("inputAlwaysSpecifyCompaction")]
bool AlwaysSpecifyCompaction { get; set; }
- [CoreImageFilterProperty ("inputPreferredAspectRatio")]
- float PreferredAspectRatio { get; set; }
-
+ [Obsolete ("Use 'InputCompactStyle' instead.")]
[CoreImageFilterProperty ("inputCompactStyle")]
bool CompactStyle { get; set; }
- [CoreImageFilterProperty ("inputMaxWidth")]
- float MaxWidth { get; set; }
-
+ [Obsolete ("Use 'InputCompactStyle' instead.")]
[CoreImageFilterProperty ("inputDataColumns")]
int DataColumns { get; set; }
+ [Obsolete ("Use 'InputCompactionMode' instead.")]
[CoreImageFilterProperty ("inputCompactionMode")]
int CompactionMode { get; set; }
- [CoreImageFilterProperty ("inputMinWidth")]
- float MinWidth { get; set; }
-
- [CoreImageFilterProperty ("inputMaxHeight")]
- float MaxHeight { get; set; }
-
+ [Obsolete ("Use 'InputRows' instead.")]
[CoreImageFilterProperty ("inputRows")]
int Rows { get; set; }
+#endif
+
+ [CoreImageFilterProperty ("outputCGImage")]
+ CGImage OutputCGImage { get; }
}
[CoreImageFilter]
[iOS (8,0)]
[Mac (10,10)]
[BaseType (typeof (CIPerspectiveTransform))]
- interface CIPerspectiveCorrection {
+ interface CIPerspectiveCorrection : CIPerspectiveCorrectionProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIPerspectiveTile {
-
+ interface CIPerspectiveTile : CIPerspectiveTileProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputBottomLeft' instead.")]
[CoreImageFilterProperty ("inputBottomLeft")]
CIVector BottomLeft { get; set; }
+ [Obsolete ("Use 'InputTopRight' instead.")]
[CoreImageFilterProperty ("inputTopRight")]
CIVector TopRight { get; set; }
+ [Obsolete ("Use 'InputTopLeft' instead.")]
[CoreImageFilterProperty ("inputTopLeft")]
CIVector TopLeft { get; set; }
+ [Obsolete ("Use 'InputBottomRight' instead.")]
[CoreImageFilterProperty ("inputBottomRight")]
CIVector BottomRight { get; set; }
+#endif
}
[CoreImageFilter (DefaultCtorVisibility = MethodAttributes.Public, StringCtorVisibility = MethodAttributes.Public)]
[BaseType (typeof (CIFilter))]
- interface CIPerspectiveTransform {
-
+ interface CIPerspectiveTransform : CIPerspectiveTransformProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputBottomLeft' instead.")]
[CoreImageFilterProperty ("inputBottomLeft")]
CIVector BottomLeft { get; set; }
+ [Obsolete ("Use 'InputTopRight' instead.")]
[CoreImageFilterProperty ("inputTopRight")]
CIVector TopRight { get; set; }
+ [Obsolete ("Use 'InputTopLeft' instead.")]
[CoreImageFilterProperty ("inputTopLeft")]
CIVector TopLeft { get; set; }
+ [Obsolete ("Use 'InputBottomRight' instead.")]
[CoreImageFilterProperty ("inputBottomRight")]
CIVector BottomRight { get; set; }
+#endif
+
+ [CoreImageFilterProperty ("outputTransform")]
+ CGAffineTransform OutputTransform { get; }
}
[CoreImageFilter]
[Mac (10,11)]
[BaseType (typeof (CIPerspectiveTransform))]
- interface CIPerspectiveTransformWithExtent {
-
+ interface CIPerspectiveTransformWithExtent : CIPerspectiveTransformWithExtentProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputExtent' instead.")]
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
+#endif
}
[CoreImageFilter (StringCtorVisibility = MethodAttributes.Public)]
@@ -3994,7 +3995,7 @@ interface CIPerspectiveTransformWithExtent {
[Mac (10,9)]
[Abstract]
[BaseType (typeof (CIFilter))]
- interface CIPhotoEffect {
+ interface CIPhotoEffect : CIPhotoEffectProtocol {
}
[CoreImageFilter]
@@ -4070,81 +4071,64 @@ interface CIPinLightBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIPixellate {
-
+ interface CIPixellate : CIPixellateProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIPointillize {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
+ interface CIPointillize : CIPointillizeProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (7,0)]
[Mac (10,9)]
[BaseType (typeof (CICodeGenerator))]
- interface CIQRCodeGenerator {
+ interface CIQRCodeGenerator : CIQRCodeGeneratorProtocol {
- [CoreImageFilterProperty ("inputCorrectionLevel")]
- string CorrectionLevel { get; set; }
+ [CoreImageFilterProperty ("outputCGImage")]
+ CGImage OutputCGImage { get; }
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIRadialGradient {
-
- [CoreImageFilterProperty ("inputRadius0")]
- float Radius0 { get; set; }
-
- [CoreImageFilterProperty ("inputRadius1")]
- float Radius1 { get; set; }
+ interface CIRadialGradient : CIRadialGradientProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIRandomGenerator {
+ interface CIRandomGenerator : CIRandomGeneratorProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CITransitionFilter))]
- interface CIRippleTransition {
-
- [CoreImageFilterProperty ("inputWidth")]
- float Width { get; set; }
-
- [CoreImageFilterProperty ("inputShadingImage")]
- CIImage ShadingImage { get; set; }
-
+ interface CIRippleTransition : CIRippleTransitionProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputExtent' instead.")]
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
+#endif
}
[CoreImageFilter]
@@ -4152,6 +4136,9 @@ interface CIRippleTransition {
[BaseType (typeof (CIFilter))]
interface CIRowAverage {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
}
@@ -4168,58 +4155,43 @@ interface CIScreenBlendMode {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CISepiaTone {
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CISepiaTone : CISepiaToneProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIShadedMaterial {
-
- [CoreImageFilterProperty ("inputShadingImage")]
- CIImage ShadingImage { get; set; }
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
+ interface CIShadedMaterial : CIShadedMaterialProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CISharpenLuminance {
-
- [CoreImageFilterProperty ("inputSharpness")]
- float Sharpness { get; set; }
+ interface CISharpenLuminance : CISharpenLuminanceProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CISixfoldReflectedTile {
+ interface CISixfoldReflectedTile : CISixfoldReflectedTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CISixfoldRotatedTile {
+ interface CISixfoldRotatedTile : CISixfoldRotatedTileProtocol {
}
[CoreImageFilter]
[Mac (10,11)]
[BaseType (typeof (CILinearGradient))]
- interface CISmoothLinearGradient {
-
+ interface CISmoothLinearGradient : CISmoothLinearGradientProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputPoint1' instead.")]
[CoreImageFilterProperty ("inputPoint1")]
CIVector Point1 { get; set; }
+ [Obsolete ("Use 'InputPoint0' instead.")]
[CoreImageFilterProperty ("inputPoint0")]
CIVector Point0 { get; set; }
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+#endif
}
[CoreImageFilter]
@@ -4250,108 +4222,35 @@ interface CISourceOverCompositing {
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CISpotColor {
-
- [CoreImageFilterProperty ("inputReplacementColor3")]
- CIColor ReplacementColor3 { get; set; }
-
- [CoreImageFilterProperty ("inputCloseness2")]
- float Closeness2 { get; set; }
-
- [CoreImageFilterProperty ("inputCloseness3")]
- float Closeness3 { get; set; }
-
- [CoreImageFilterProperty ("inputContrast1")]
- float Contrast1 { get; set; }
-
- [CoreImageFilterProperty ("inputContrast3")]
- float Contrast3 { get; set; }
-
- [CoreImageFilterProperty ("inputCloseness1")]
- float Closeness1 { get; set; }
-
- [CoreImageFilterProperty ("inputContrast2")]
- float Contrast2 { get; set; }
-
- [CoreImageFilterProperty ("inputCenterColor3")]
- CIColor CenterColor3 { get; set; }
-
- [CoreImageFilterProperty ("inputReplacementColor1")]
- CIColor ReplacementColor1 { get; set; }
-
- [CoreImageFilterProperty ("inputCenterColor2")]
- CIColor CenterColor2 { get; set; }
-
- [CoreImageFilterProperty ("inputReplacementColor2")]
- CIColor ReplacementColor2 { get; set; }
-
- [CoreImageFilterProperty ("inputCenterColor1")]
- CIColor CenterColor1 { get; set; }
+ interface CISpotColor : CISpotColorProtocol {
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CISpotLight {
-
- [CoreImageFilterProperty ("inputBrightness")]
- float Brightness { get; set; }
-
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
-
- [CoreImageFilterProperty ("inputLightPosition")]
- CIVector LightPosition { get; set; }
-
- [CoreImageFilterProperty ("inputConcentration")]
- float Concentration { get; set; }
-
- [CoreImageFilterProperty ("inputLightPointsAt")]
- CIVector LightPointsAt { get; set; }
+ interface CISpotLight : CISpotLightProtocol {
}
[CoreImageFilter]
[iOS (7,0)]
[Mac (10,10)]
[BaseType (typeof (CIFilter))]
- interface CISRGBToneCurveToLinear {
+ interface CISRGBToneCurveToLinear : CISrgbToneCurveToLinearProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIStarShineGenerator {
-
- [CoreImageFilterProperty ("inputCrossScale")]
- float CrossScale { get; set; }
-
- [CoreImageFilterProperty ("inputCrossAngle")]
- float CrossAngle { get; set; }
-
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputCrossOpacity")]
- float CrossOpacity { get; set; }
-
- [CoreImageFilterProperty ("inputCrossWidth")]
- float CrossWidth { get; set; }
-
+ interface CIStarShineGenerator : CIStarShineGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputEpsilon")]
- float Epsilon { get; set; }
+#endif
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIStraightenFilter {
-
- [CoreImageFilterProperty ("inputAngle")]
- float Angle { get; set; }
+ interface CIStraightenFilter : CIStraightenProtocol {
}
[CoreImageFilter]
@@ -4359,6 +4258,9 @@ interface CIStraightenFilter {
[BaseType (typeof (CIFilter))]
interface CIStretchCrop {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputCropAmount")]
float CropAmount { get; set; }
@@ -4371,22 +4273,12 @@ interface CIStretchCrop {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIStripesGenerator {
-
- [CoreImageFilterProperty ("inputWidth")]
- float Width { get; set; }
-
- [CoreImageFilterProperty ("inputSharpness")]
- float Sharpness { get; set; }
-
+ interface CIStripesGenerator : CIStripesGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputColor1")]
- CIColor Color1 { get; set; }
-
- [CoreImageFilterProperty ("inputColor0")]
- CIColor Color0 { get; set; }
+#endif
}
[CoreImageFilter]
@@ -4418,33 +4310,33 @@ interface CISwipeTransition {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CITemperatureAndTint {
-
- [CoreImageFilterProperty ("inputTargetNeutral")]
- CIVector TargetNeutral { get; set; }
-
- [CoreImageFilterProperty ("inputNeutral")]
- CIVector Neutral { get; set; }
+ interface CITemperatureAndTint : CITemperatureAndTintProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIToneCurve {
-
+ interface CIToneCurve : CIToneCurveProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputPoint0' instead.")]
[CoreImageFilterProperty ("inputPoint0")]
CIVector Point0 { get; set; }
+ [Obsolete ("Use 'InputPoint1' instead.")]
[CoreImageFilterProperty ("inputPoint1")]
CIVector Point1 { get; set; }
+ [Obsolete ("Use 'InputPoint2' instead.")]
[CoreImageFilterProperty ("inputPoint2")]
CIVector Point2 { get; set; }
+ [Obsolete ("Use 'InputPoint3' instead.")]
[CoreImageFilterProperty ("inputPoint3")]
CIVector Point3 { get; set; }
+ [Obsolete ("Use 'InputPoint4' instead.")]
[CoreImageFilterProperty ("inputPoint4")]
CIVector Point4 { get; set; }
+#endif
}
[CoreImageFilter]
@@ -4452,6 +4344,9 @@ interface CIToneCurve {
[BaseType (typeof (CIFilter))]
interface CITorusLensDistortion {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputRefraction")]
float Refraction { get; set; }
@@ -4468,30 +4363,23 @@ interface CITorusLensDistortion {
[CoreImageFilter]
[Mac (10,11)]
[BaseType (typeof (CIFilter))]
- interface CITriangleKaleidoscope {
-
- [CoreImageFilterProperty ("inputRotation")]
- float Rotation { get; set; }
-
- [CoreImageFilterProperty ("inputSize")]
- float Size { get; set; }
-
+ interface CITriangleKaleidoscope : CITriangleKaleidoscopeProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputPoint' instead.")]
[CoreImageFilterProperty ("inputPoint")]
CIVector Point { get; set; }
-
- [CoreImageFilterProperty ("inputDecay")]
- float Decay { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CITileFilter))]
- interface CITriangleTile {
+ interface CITriangleTile : CITriangleTileProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CITileFilter))]
- interface CITwelvefoldReflectedTile {
+ interface CITwelvefoldReflectedTile : CITwelvefoldReflectedTileProtocol {
}
[CoreImageFilter]
@@ -4504,52 +4392,31 @@ interface CITwirlDistortion {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIUnsharpMask {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIUnsharpMask : CIUnsharpMaskProtocol {
}
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIVibrance {
-
- [CoreImageFilterProperty ("inputAmount")]
- float Amount { get; set; }
+ interface CIVibrance : CIVibranceProtocol {
}
[CoreImageFilter]
[Mac (10,9)]
[BaseType (typeof (CIFilter))]
- interface CIVignette {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIVignette : CIVignetteProtocol {
}
[CoreImageFilter]
[iOS (7,0)]
[Mac (10,9)]
[BaseType (typeof (CIFilter))]
- interface CIVignetteEffect {
-
- [CoreImageFilterProperty ("inputFalloff")]
- float Falloff { get; set; }
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIVignetteEffect : CIVignetteEffectProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+#endif
}
[CoreImageFilter]
@@ -4562,75 +4429,47 @@ interface CIVortexDistortion {
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIWhitePointAdjust {
-
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
+ interface CIWhitePointAdjust : CIWhitePointAdjustProtocol {
}
[CoreImageFilter]
[iOS (8,3)]
[BaseType (typeof (CIFilter))]
- interface CIZoomBlur {
-
- [CoreImageFilterProperty ("inputAmount")]
- float Amount { get; set; }
-
+ interface CIZoomBlur : CIZoomBlurProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CIDepthOfField {
-
- [CoreImageFilterProperty ("inputUnsharpMaskIntensity")]
- float UnsharpMaskIntensity { get; set; }
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIDepthOfField : CIDepthOfFieldProtocol {
+#if !XAMCORE_4_0
// renamed 1 vs 0 for API compatibility
+ [Obsolete ("Use 'InputPoint0' instead.")]
[CoreImageFilterProperty ("inputPoint0")]
CIVector Point1 { get; set; }
// renamed 2 vs 1 for API compatibility
+ [Obsolete ("Use 'InputPoint1' instead.")]
[CoreImageFilterProperty ("inputPoint1")]
CIVector Point2 { get; set; }
-
- [CoreImageFilterProperty ("inputUnsharpMaskRadius")]
- float UnsharpMaskRadius { get; set; }
-
- [CoreImageFilterProperty ("inputSaturation")]
- float Saturation { get; set; }
+#endif
}
[CoreImageFilter]
[iOS (9,0)]
[BaseType (typeof (CIFilter))]
- interface CISunbeamsGenerator {
-
- [CoreImageFilterProperty ("inputStriationContrast")]
- float StriationContrast { get; set; }
-
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
-
- [CoreImageFilterProperty ("inputTime")]
- float Time { get; set; }
-
- [CoreImageFilterProperty ("inputMaxStriationRadius")]
- float MaxStriationRadius { get; set; }
-
+ interface CISunbeamsGenerator : CISunbeamsGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputCenter' instead.")]
[CoreImageFilterProperty ("inputCenter")]
CIVector Center { get; set; }
-
- [CoreImageFilterProperty ("inputSunRadius")]
- float SunRadius { get; set; }
-
- [CoreImageFilterProperty ("inputStriationStrength")]
- float StriationStrength { get; set; }
+#endif
#if !XAMCORE_3_0
// binding mistake - it should never been added
@@ -4646,13 +4485,9 @@ interface CIFaceBalance {
[iOS (9,3)]
[TV (9,2)]
- [Availability (Introduced = Platform.Mac_10_10, Obsoleted = Platform.Mac_10_11)] // FIXME: Is htis actually deprecated? Seems to be missing in El Capitan
[CoreImageFilter]
[BaseType (typeof (CIFilter))]
- interface CIMaskedVariableBlur {
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+ interface CIMaskedVariableBlur : CIMaskedVariableBlurProtocol {
}
[CoreImageFilter]
@@ -4662,6 +4497,9 @@ interface CIMaskedVariableBlur {
[BaseType (typeof (CIFilter))]
interface CIClamp {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
}
@@ -4671,22 +4509,7 @@ interface CIClamp {
[Mac (10,12)]
[TV (10,0)]
[BaseType (typeof (CIFilter))]
- interface CIHueSaturationValueGradient {
-
- [CoreImageFilterProperty ("inputColorSpace")]
- CGColorSpace ColorSpace { get; set; }
-
- [CoreImageFilterProperty ("inputDither")]
- float Dither { get; set; }
-
- [CoreImageFilterProperty ("inputValue")]
- float Value { get; set; }
-
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
-
- [CoreImageFilterProperty ("inputSoftness")]
- float Softness { get; set; }
+ interface CIHueSaturationValueGradient : CIHueSaturationValueGradientProtocol {
}
[CoreImageFilter]
@@ -4696,6 +4519,9 @@ interface CIHueSaturationValueGradient {
[BaseType (typeof (CIFilter))]
interface CINinePartStretched {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputGrowAmount")]
CIVector GrowAmount { get; set; }
@@ -4713,6 +4539,9 @@ interface CINinePartStretched {
[BaseType (typeof (CIFilter))]
interface CINinePartTiled {
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputGrowAmount")]
CIVector GrowAmount { get; set; }
@@ -4731,7 +4560,7 @@ interface CINinePartTiled {
[Mac (10,12)] // filter says 10.11 but it fails when I run it on El Capitan
[TV (10,0)]
[BaseType (typeof (CIFilter))]
- interface CIThermal {
+ interface CIThermal : CIThermalProtocol {
}
[CoreImageFilter]
@@ -4739,7 +4568,7 @@ interface CIThermal {
[Mac (10,12)] // filter says 10.11 but it fails when I run it on El Capitan
[TV (10,0)]
[BaseType (typeof (CIFilter))]
- interface CIXRay {
+ interface CIXRay : CIXRayProtocol {
}
[CoreImageFilter]
@@ -4768,9 +4597,7 @@ interface CIImageGenerator {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIImageGenerator))]
- interface CIAttributedTextImageGenerator {
- [CoreImageFilterProperty ("inputText")]
- NSAttributedString Text { get; set; }
+ interface CIAttributedTextImageGenerator : CIAttributedTextImageGeneratorProtocol {
}
[CoreImageFilter]
@@ -4778,9 +4605,22 @@ interface CIAttributedTextImageGenerator {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIFilter))]
- interface CIBarcodeGenerator {
- [CoreImageFilterProperty ("inputBarcodeDescriptor")]
- CIBarcodeDescriptor BarcodeDescriptor { get; set; }
+ interface CIBarcodeGenerator : CIBarcodeGeneratorProtocol {
+
+ [CoreImageFilterProperty ("outputCGImageForQRCodeDescriptor")]
+ CGImage OutputCGImageForQRCodeDescriptor { get; }
+
+ [CoreImageFilterProperty ("outputCGImageForPDF417CodeDescriptor")]
+ CGImage OutputCGImageForPdf417CodeDescriptor { get; }
+
+ [CoreImageFilterProperty ("outputCGImageForDataMatrixCodeDescriptor")]
+ CGImage OutputCGImageForDataMatrixCodeDescriptor { get; }
+
+ [CoreImageFilterProperty ("outputCGImageForAztecCodeDescriptor")]
+ CGImage OutputCGImageForAztecCodeDescriptor { get; }
+
+ [CoreImageFilterProperty ("outputCGImage")]
+ CGImage OutputCGImage { get; }
}
[CoreImageFilter]
@@ -4790,18 +4630,17 @@ interface CIBarcodeGenerator {
// Maybe 'typeof (CIScaleTransform)' (shared 'Scale' and 'AspectRatio' property).
// It's possible to add ours but it can bite us back in the future if Apple introduce the same with different properties.
[BaseType (typeof (CIFilter))]
- interface CIBicubicScaleTransform {
+ interface CIBicubicScaleTransform : CIBicubicScaleTransformProtocol {
+
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'ParameterB' instead.")]
[CoreImageFilterProperty ("inputB")]
float B { get; set; }
+ [Obsolete ("Use 'ParameterC' instead.")]
[CoreImageFilterProperty ("inputC")]
float C { get; set; }
-
- [CoreImageFilterProperty ("inputScale")]
- float Scale { get; set; }
-
- [CoreImageFilterProperty ("inputAspectRatio")]
- float AspectRatio { get; set; }
+#endif
}
[CoreImageFilter]
@@ -4817,15 +4656,7 @@ interface CILinearBlur {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CILinearBlur))]
- interface CIBokehBlur {
- [CoreImageFilterProperty ("inputSoftness")]
- float Softness { get; set; }
-
- [CoreImageFilterProperty ("inputRingSize")]
- float RingSize { get; set; }
-
- [CoreImageFilterProperty ("inputRingAmount")]
- float RingAmount { get; set; }
+ interface CIBokehBlur : CIBokehBlurProtocol {
}
[CoreImageFilter]
@@ -4833,21 +4664,7 @@ interface CIBokehBlur {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIFilter))] // Could almost be typeof 'CIColorCube' but property is 'inputCube0Data' not 'inputCubeData'
- interface CIColorCubesMixedWithMask {
- [CoreImageFilterProperty ("inputCubeDimension")]
- float CubeDimension { get; set; }
-
- [CoreImageFilterProperty ("inputMaskImage")]
- CIImage MaskImage { get; set; }
-
- [CoreImageFilterProperty ("inputCube0Data")]
- NSData Cube0Data { get; set; }
-
- [CoreImageFilterProperty ("inputCube1Data")]
- NSData Cube1Data { get; set; }
-
- [CoreImageFilterProperty ("inputColorSpace")]
- CGColorSpace ColorSpace { get; set; }
+ interface CIColorCubesMixedWithMask : CIColorCubesMixedWithMaskProtocol {
}
[CoreImageFilter]
@@ -4855,15 +4672,7 @@ interface CIColorCubesMixedWithMask {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIFilter))]
- interface CIColorCurves {
- [CoreImageFilterProperty ("inputColorSpace")]
- CGColorSpace ColorSpace { get; set; }
-
- [CoreImageFilterProperty ("inputCurvesDomain")]
- CIVector CurvesDomain { get; set; }
-
- [CoreImageFilterProperty ("inputCurvesData")]
- NSData CurvesData { get; set; }
+ interface CIColorCurves : CIColorCurvesProtocol {
}
[CoreImageFilter]
@@ -4872,6 +4681,10 @@ interface CIColorCurves {
[TV (11,0)]
[BaseType (typeof (CIFilter))]
interface CIDepthBlurEffect {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputAperture")]
float Aperture { get; set; }
@@ -4906,6 +4719,18 @@ interface CIDepthBlurEffect {
[CoreImageFilterProperty ("inputFocusRect")]
CIVector FocusRect { get; set; }
+
+ [CoreImageFilterProperty ("inputMatteImage")]
+ CIImage MatteImage { get; set; }
+
+ [CoreImageFilterProperty ("inputHairImage")]
+ CIImage HairImage { get; set; }
+
+ [CoreImageFilterProperty ("inputShape")]
+ string Shape { get; set; }
+
+ [CoreImageFilterProperty ("inputAuxDataMetadata")]
+ CGImageMetadata AuxDataMetadata { get; set; }
}
[CoreImageFilter]
@@ -4921,29 +4746,23 @@ interface CIDepthDisparityConverter {}
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIDepthDisparityConverter))]
- interface CIDepthToDisparity {}
+ interface CIDepthToDisparity : CIDepthToDisparityProtocol {
+ }
[CoreImageFilter]
[iOS (11,0)]
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIDepthDisparityConverter))]
- interface CIDisparityToDepth {}
+ interface CIDisparityToDepth : CIDisparityToDepthProtocol {
+ }
[CoreImageFilter]
[iOS (11,0)]
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIFilter))]
- interface CIEdgePreserveUpsampleFilter {
- [CoreImageFilterProperty ("inputLumaSigma")]
- float LumaSigma { get; set; }
-
- [CoreImageFilterProperty ("inputSmallImage")]
- CIImage SmallImage { get; set; }
-
- [CoreImageFilterProperty ("inputSpatialSigma")]
- float SpatialSigma { get; set; }
+ interface CIEdgePreserveUpsampleFilter : CIEdgePreserveUpsampleProtocol {
}
[CoreImageFilter]
@@ -4951,9 +4770,7 @@ interface CIEdgePreserveUpsampleFilter {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIFilter))]
- interface CILabDeltaE {
- [CoreImageFilterProperty ("inputImage2")]
- CIImage Image2 { get; set; }
+ interface CILabDeltaE : CILabDeltaEProtocol {
}
[CoreImageFilter]
@@ -4961,15 +4778,7 @@ interface CILabDeltaE {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIImageGenerator))]
- interface CITextImageGenerator {
- [CoreImageFilterProperty ("inputText")]
- string Text { get; set; }
-
- [CoreImageFilterProperty ("inputFontName")]
- string FontName { get; set; }
-
- [CoreImageFilterProperty ("inputFontSize")]
- float FontSize { get; set; }
+ interface CITextImageGenerator : CITextImageGeneratorProtocol {
}
[CoreImageFilter]
@@ -4988,21 +4797,24 @@ interface CIMorphology {
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIMorphology))]
- interface CIMorphologyGradient {}
+ interface CIMorphologyGradient : CIMorphologyGradientProtocol {
+ }
[CoreImageFilter]
[iOS (11,0)]
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIMorphology))]
- interface CIMorphologyMaximum {}
+ interface CIMorphologyMaximum : CIMorphologyMaximumProtocol {
+ }
[CoreImageFilter]
[iOS (11,0)]
[Mac (10,13)]
[TV (11,0)]
[BaseType (typeof (CIMorphology))]
- interface CIMorphologyMinimum {}
+ interface CIMorphologyMinimum : CIMorphologyMinimumProtocol {
+ }
[CoreImageFilter]
[iOS (11,0)]
@@ -5153,6 +4965,11 @@ interface CIBlendKernel {
[return: NullAllowed]
CIImage Apply (CIImage foreground, CIImage background);
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Export ("applyWithForeground:background:colorSpace:")]
+ [return: NullAllowed]
+ CIImage Apply (CIImage foreground, CIImage background, CGColorSpace colorSpace);
+
// @interface BuiltIn (CIBlendKernel)
[Static]
@@ -5452,6 +5269,22 @@ partial interface CIImageRepresentationKeys {
[TV (12, 0), iOS (12, 0), Mac (10, 14)]
[Field ("kCIImageRepresentationPortraitEffectsMatteImage")]
NSString PortraitEffectsMatteImageKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageRepresentationAVSemanticSegmentationMattes")]
+ NSString SemanticSegmentationMattesKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageRepresentationSemanticSegmentationSkinMatteImage")]
+ NSString SemanticSegmentationSkinMatteImageKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageRepresentationSemanticSegmentationHairMatteImage")]
+ NSString SemanticSegmentationHairMatteImageKey { get; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ [Field ("kCIImageRepresentationSemanticSegmentationTeethMatteImage")]
+ NSString SemanticSegmentationTeethMatteImageKey { get; }
}
[iOS (11,0)]
@@ -5462,17 +5295,29 @@ interface CIImageRepresentationOptions {
float LossyCompressionQuality { get; set; }
-#if false // keys lack documentation (or sample) to expose properly - https://bugzilla.xamarin.com/show_bug.cgi?id=59296
- bool AVDepthData { get; set; }
+ AVDepthData AVDepthData { get; set; }
+
+ CIImage DepthImage { get; set; }
- bool DepthImage { get; set; }
+ CIImage DisparityImage { get; set; }
- bool DisparityImage { get; set; }
+ [TV (12, 0), iOS (12, 0), Mac (10, 14)]
+ CIImage PortraitEffectsMatteImage { get; set; }
- bool PortraitEffectsMatteImage { get; set; }
-#endif
[TV (12, 0), iOS (12, 0), Mac (10, 14)]
AVPortraitEffectsMatte AVPortraitEffectsMatte { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ AVSemanticSegmentationMatte[] SemanticSegmentationMattes { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ CIImage SemanticSegmentationSkinMatteImage { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ CIImage SemanticSegmentationHairMatteImage { get; set; }
+
+ [iOS (13,0)][TV (13,0)][Mac (10,15)]
+ CIImage SemanticSegmentationTeethMatteImage { get; set; }
}
[CoreImageFilter]
@@ -5481,6 +5326,14 @@ interface CIImageRepresentationOptions {
[Mac (10,14)]
[BaseType (typeof (CIReductionFilter))]
interface CIAreaMinMax {
+
+ [CoreImageFilterProperty ("outputImageNonMPS")]
+ CIImage OutputImageNonMps { get; }
+
+#if MONOMAC
+ [CoreImageFilterProperty ("outputImageMPS")]
+ CIImage OutputImageMps { get; }
+#endif
}
[CoreImageFilter]
@@ -5488,9 +5341,7 @@ interface CIAreaMinMax {
[TV (12,0)]
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
- interface CIDither {
- [CoreImageFilterProperty ("inputIntensity")]
- float Intensity { get; set; }
+ interface CIDither : CIDitherProtocol {
}
[CoreImageFilter]
@@ -5499,10 +5350,16 @@ interface CIDither {
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
interface CIGuidedFilter {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputGuideImage")]
CIImage GuideImage { get; set; }
+
[CoreImageFilterProperty ("inputEpsilon")]
float Epsilon { get; set; }
+
[CoreImageFilterProperty ("inputRadius")]
float Radius { get; set; }
}
@@ -5512,13 +5369,7 @@ interface CIGuidedFilter {
[TV (12,0)]
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
- interface CIMeshGenerator {
- [CoreImageFilterProperty ("inputMesh")]
- CIVector [] Mesh { get; set; }
- [CoreImageFilterProperty ("inputWidth")]
- float Width { get; set; }
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
+ interface CIMeshGenerator : CIMeshGeneratorProtocol {
}
[CoreImageFilter]
@@ -5526,11 +5377,7 @@ interface CIMeshGenerator {
[TV (12,0)]
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
- interface CIMix {
- [CoreImageFilterProperty ("inputBackgroundImage")]
- CIImage BackgroundImage { get; set; }
- [CoreImageFilterProperty ("inputAmount")]
- float Amount { get; set; }
+ interface CIMix : CIMixProtocol {
}
[CoreImageFilter]
@@ -5539,6 +5386,9 @@ interface CIMix {
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
interface CISampleNearest {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
}
[CoreImageFilter]
@@ -5547,6 +5397,10 @@ interface CISampleNearest {
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
interface CICameraCalibrationLensCorrection {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputAVCameraCalibrationData")]
AVCameraCalibrationData AVCameraCalibrationData { get; set; }
@@ -5560,8 +5414,18 @@ interface CICameraCalibrationLensCorrection {
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
interface CICoreMLModelFilter {
+
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+
[CoreImageFilterProperty ("inputModel")]
MLModel Model { get; set; }
+
+ [CoreImageFilterProperty ("inputHeadIndex")]
+ int HeadIndex { get; set; }
+
+ [CoreImageFilterProperty ("inputSoftmaxNormalization")]
+ bool SoftmaxNormalization { get; set; }
}
[CoreImageFilter]
@@ -5569,7 +5433,7 @@ interface CICoreMLModelFilter {
[TV (12,0)]
[Mac (10,14)]
[BaseType (typeof (CIFilter))]
- interface CISaliencyMapFilter {
+ interface CISaliencyMapFilter : CISaliencyMapProtocol {
}
[CoreImageFilter]
@@ -5577,10 +5441,7 @@ interface CISaliencyMapFilter {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIFilter))]
- interface CIDocumentEnhancer {
-
- [CoreImageFilterProperty ("inputAmount")]
- float Amount { get; set; }
+ interface CIDocumentEnhancer : CIDocumentEnhancerProtocol {
}
[CoreImageFilter]
@@ -5611,11 +5472,21 @@ interface CIKMeans {
[Abstract]
interface CIMorphologyRectangle {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputHeight' instead.")]
[CoreImageFilterProperty ("inputHeight")]
int Height { get; set; }
+ [Obsolete ("Use 'InputWidth' instead.")]
[CoreImageFilterProperty ("inputWidth")]
int Width { get; set; }
+#endif
+
+ [CoreImageFilterProperty ("inputHeight")]
+ float InputHeight { get; set; }
+
+ [CoreImageFilterProperty ("inputWidth")]
+ float InputWidth { get; set; }
}
[CoreImageFilter]
@@ -5623,7 +5494,7 @@ interface CIMorphologyRectangle {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIMorphologyRectangle))]
- interface CIMorphologyRectangleMaximum {
+ interface CIMorphologyRectangleMaximum : CIMorphologyRectangleMaximumProtocol {
}
[CoreImageFilter]
@@ -5631,7 +5502,7 @@ interface CIMorphologyRectangleMaximum {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIMorphologyRectangle))]
- interface CIMorphologyRectangleMinimum {
+ interface CIMorphologyRectangleMinimum : CIMorphologyRectangleMinimumProtocol {
}
[CoreImageFilter]
@@ -5639,13 +5510,7 @@ interface CIMorphologyRectangleMinimum {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIFilter))]
- interface CIPaletteCentroid {
-
- [CoreImageFilterProperty ("inputPaletteImage")]
- CIImage PaletteImage { get; set; }
-
- [CoreImageFilterProperty ("inputPerceptual")]
- bool Perceptual { get; set; }
+ interface CIPaletteCentroid : CIPaletteCentroidProtocol {
}
[CoreImageFilter]
@@ -5653,13 +5518,7 @@ interface CIPaletteCentroid {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIFilter))]
- interface CIPalettize {
-
- [CoreImageFilterProperty ("inputPaletteImage")]
- CIImage PaletteImage { get; set; }
-
- [CoreImageFilterProperty ("inputPerceptual")]
- bool Perceptual { get; set; }
+ interface CIPalettize : CIPalettizeProtocol {
}
[CoreImageFilter]
@@ -5673,17 +5532,35 @@ interface CIKeystoneCorrection {
[CoreImageFilterProperty ("inputFocalLength")]
float FocalLength { get; set; }
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputTopRight' instead.")]
[CoreImageFilterProperty ("inputTopRight")]
CIVector TopRight { get; set; }
+ [Obsolete ("Use 'InputBottomRight' instead.")]
[CoreImageFilterProperty ("inputBottomRight")]
CIVector BottomRight { get; set; }
+ [Obsolete ("Use 'InputTopLeft' instead.")]
[CoreImageFilterProperty ("inputTopLeft")]
CIVector TopLeft { get; set; }
+ [Obsolete ("Use 'InputBottomLeft' instead.")]
[CoreImageFilterProperty ("inputBottomLeft")]
CIVector BottomLeft { get; set; }
+#endif
+
+ [CoreImageFilterProperty ("inputTopRight")]
+ CGPoint InputTopRight { get; set; }
+
+ [CoreImageFilterProperty ("inputBottomRight")]
+ CGPoint InputBottomRight { get; set; }
+
+ [CoreImageFilterProperty ("inputTopLeft")]
+ CGPoint InputTopLeft { get; set; }
+
+ [CoreImageFilterProperty ("inputBottomLeft")]
+ CGPoint InputBottomLeft { get; set; }
}
[CoreImageFilter]
@@ -5691,7 +5568,10 @@ interface CIKeystoneCorrection {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIKeystoneCorrection))]
- interface CIKeystoneCorrectionCombined {
+ interface CIKeystoneCorrectionCombined : CIKeystoneCorrectionCombinedProtocol {
+
+ [CoreImageFilterProperty ("outputTransform")]
+ CGAffineTransform OutputTransform { get; }
}
[CoreImageFilter]
@@ -5699,7 +5579,15 @@ interface CIKeystoneCorrectionCombined {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIKeystoneCorrection))]
- interface CIKeystoneCorrectionHorizontal {
+ interface CIKeystoneCorrectionHorizontal : CIKeystoneCorrectionHorizontalProtocol {
+
+#if false // no documentation about the type
+ [CoreImageFilterProperty ("outputRotationFilter")]
+ NSObject OutputRotationFilter { get; }
+#endif
+
+ [CoreImageFilterProperty ("outputTransform")]
+ CGAffineTransform OutputTransform { get; }
}
[CoreImageFilter]
@@ -5707,7 +5595,15 @@ interface CIKeystoneCorrectionHorizontal {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIKeystoneCorrection))]
- interface CIKeystoneCorrectionVertical {
+ interface CIKeystoneCorrectionVertical : CIKeystoneCorrectionVerticalProtocol {
+
+#if false // no documentation about the type
+ [CoreImageFilterProperty ("outputRotationFilter")]
+ CGAffineTransform OutputRotationFilter { get; }
+#endif
+
+ [CoreImageFilterProperty ("outputTransform")]
+ CGAffineTransform OutputTransform { get; }
}
[CoreImageFilter]
@@ -5715,19 +5611,10 @@ interface CIKeystoneCorrectionVertical {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIFilter))]
- interface CIPerspectiveRotate {
-
- [CoreImageFilterProperty ("inputFocalLength")]
- float FocalLength { get; set; }
+ interface CIPerspectiveRotate : CIPerspectiveRotateProtocol {
- [CoreImageFilterProperty ("inputRoll")]
- float Roll { get; set; }
-
- [CoreImageFilterProperty ("inputPitch")]
- float Pitch { get; set; }
-
- [CoreImageFilterProperty ("inputYaw")]
- float Yaw { get; set; }
+ [CoreImageFilterProperty ("outputTransform")]
+ CGAffineTransform OutputTransform { get; }
}
[CoreImageFilter]
@@ -5735,7 +5622,7 @@ interface CIPerspectiveRotate {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIFilter))]
- interface CIGaborGradients {
+ interface CIGaborGradients : CIGaborGradientsProtocol {
}
[CoreImageFilter]
@@ -5743,15 +5630,2980 @@ interface CIGaborGradients {
[TV (13,0)]
[Mac (10,15)]
[BaseType (typeof (CIFilter))]
- interface CIRoundedRectangleGenerator {
+ interface CIRoundedRectangleGenerator : CIRoundedRectangleGeneratorProtocol {
+#if !XAMCORE_4_0
+ [Obsolete ("Use 'InputExtent' instead.")]
[CoreImageFilterProperty ("inputExtent")]
CIVector Extent { get; set; }
+#endif
+ }
- [CoreImageFilterProperty ("inputRadius")]
- float Radius { get; set; }
+#region Protocols
- [CoreImageFilterProperty ("inputColor")]
- CIColor Color { get; set; }
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFilter")]
+ // CIFilter already exists so we're using the Swift name
+ interface CIFilterProtocol {
+
+ [Abstract]
+ [CoreImageFilterProperty ("outputImage")]
+ [NullAllowed, Export ("outputImage")]
+ CIImage OutputImage { get; }
+
+ [Static]
+ [NullAllowed, Export ("customAttributes")]
+ NSDictionary CustomAttributes { get; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CITransitionFilter")]
+ interface CITransitionFilterProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("targetImage", ArgumentSemantic.Retain)]
+ CIImage TargetImage { get; set; }
+
+ [Abstract]
+ [Export ("time")]
+ float Time { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIAccordionFoldTransition")]
+ interface CIAccordionFoldTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [Export ("bottomHeight")]
+ float BottomHeight { get; set; }
+
+ [Abstract]
+ [Export ("numberOfFolds")]
+ // renamed for compatibility (originally bound as an integer)
+ float FoldCount { get; set; }
+
+ [Abstract]
+ [Export ("foldShadowAmount")]
+ float FoldShadowAmount { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIAffineClamp")]
+ interface CIAffineClampProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("transform", ArgumentSemantic.Assign)]
+ CGAffineTransform Transform { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIAffineTile")]
+ interface CIAffineTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("transform", ArgumentSemantic.Assign)]
+ CGAffineTransform Transform { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIAttributedTextImageGenerator")]
+ interface CIAttributedTextImageGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("text", ArgumentSemantic.Retain)]
+ NSAttributedString Text { get; set; }
+
+ [Abstract]
+ [Export ("scaleFactor")]
+ float ScaleFactor { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIAztecCodeGenerator")]
+ interface CIAztecCodeGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("message", ArgumentSemantic.Retain)]
+ NSData Message { get; set; }
+
+ [Abstract]
+ [Export ("correctionLevel")]
+ float CorrectionLevel { get; set; }
+
+ [Abstract]
+ [Export ("layers")]
+ float InputLayers { get; set; }
+
+ [Abstract]
+ [Export ("compactStyle")]
+ float InputCompactStyle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBarcodeGenerator")]
+ interface CIBarcodeGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("barcodeDescriptor", ArgumentSemantic.Retain)]
+ CIBarcodeDescriptor BarcodeDescriptor { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBarsSwipeTransition")]
+ interface CIBarsSwipeTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("barOffset")]
+ float BarOffset { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBicubicScaleTransform")]
+ interface CIBicubicScaleTransformProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+
+ [Abstract]
+ [Export ("aspectRatio")]
+ float AspectRatio { get; set; }
+
+ [Abstract]
+ [CoreImageFilterProperty ("inputB")] // name differs from the export
+ [Export ("parameterB")]
+ float ParameterB { get; set; }
+
+ [Abstract]
+ [CoreImageFilterProperty ("inputC")] // name differs from the export
+ [Export ("parameterC")]
+ float ParameterC { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBlendWithMask")]
+ interface CIBlendWithMaskProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("backgroundImage", ArgumentSemantic.Retain)]
+ CIImage BackgroundImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("maskImage", ArgumentSemantic.Retain)]
+ CIImage MaskImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBloom")]
+ interface CIBloomProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBokehBlur")]
+ interface CIBokehBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("ringAmount")]
+ float RingAmount { get; set; }
+
+ [Abstract]
+ [Export ("ringSize")]
+ float RingSize { get; set; }
+
+ [Abstract]
+ [Export ("softness")]
+ float Softness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIBoxBlur")]
+ interface CIBoxBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICheckerboardGenerator")]
+ interface CICheckerboardGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICircularScreen")]
+ interface CICircularScreenProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICMYKHalftone")]
+ interface CICmykHalftoneProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+
+ [Abstract]
+ [CoreImageFilterProperty ("inputGCR")]
+ [Export ("grayComponentReplacement")]
+ float GrayComponentReplacement { get; set; }
+
+ [Abstract]
+ [CoreImageFilterProperty ("inputUCR")]
+ [Export ("underColorRemoval")]
+ float UnderColorRemoval { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICode128BarcodeGenerator")]
+ interface CICode128BarcodeGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("message", ArgumentSemantic.Retain)]
+ NSData Message { get; set; }
+
+ [Abstract]
+ [Export ("quietSpace")]
+ float QuietSpace { get; set; }
+
+ [Abstract]
+ [Export ("barcodeHeight")]
+ float BarcodeHeight { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorClamp")]
+ interface CIColorClampProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("minComponents", ArgumentSemantic.Retain)]
+ CIVector MinComponents { get; set; }
+
+ [Abstract]
+ [Export ("maxComponents", ArgumentSemantic.Retain)]
+ CIVector MaxComponents { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorControls")]
+ interface CIColorControlsProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("saturation")]
+ float Saturation { get; set; }
+
+ [Abstract]
+ [Export ("brightness")]
+ float Brightness { get; set; }
+
+ [Abstract]
+ [Export ("contrast")]
+ float Contrast { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorCrossPolynomial")]
+ interface CIColorCrossPolynomialProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("redCoefficients", ArgumentSemantic.Retain)]
+ CIVector RedCoefficients { get; set; }
+
+ [Abstract]
+ [Export ("greenCoefficients", ArgumentSemantic.Retain)]
+ CIVector GreenCoefficients { get; set; }
+
+ [Abstract]
+ [Export ("blueCoefficients", ArgumentSemantic.Retain)]
+ CIVector BlueCoefficients { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorCube")]
+ interface CIColorCubeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("cubeDimension")]
+ float CubeDimension { get; set; }
+
+ [Abstract]
+ [Export ("cubeData", ArgumentSemantic.Retain)]
+ NSData CubeData { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorCubesMixedWithMask")]
+ interface CIColorCubesMixedWithMaskProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("maskImage", ArgumentSemantic.Retain)]
+ CIImage MaskImage { get; set; }
+
+ [Abstract]
+ [Export ("cubeDimension")]
+ float CubeDimension { get; set; }
+
+ [Abstract]
+ [Export ("cube0Data", ArgumentSemantic.Retain)]
+ NSData Cube0Data { get; set; }
+
+ [Abstract]
+ [Export ("cube1Data", ArgumentSemantic.Retain)]
+ NSData Cube1Data { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("colorSpace", ArgumentSemantic.Assign)]
+ CGColorSpace ColorSpace { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorCubeWithColorSpace")]
+ interface CIColorCubeWithColorSpaceProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("cubeDimension")]
+ float CubeDimension { get; set; }
+
+ [Abstract]
+ [Export ("cubeData", ArgumentSemantic.Retain)]
+ NSData CubeData { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("colorSpace", ArgumentSemantic.Assign)]
+ CGColorSpace ColorSpace { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorCurves")]
+ interface CIColorCurvesProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("curvesData", ArgumentSemantic.Retain)]
+ NSData CurvesData { get; set; }
+
+ [Abstract]
+ [Export ("curvesDomain", ArgumentSemantic.Retain)]
+ CIVector CurvesDomain { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("colorSpace", ArgumentSemantic.Assign)]
+ CGColorSpace ColorSpace { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorInvert")]
+ interface CIColorInvertProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorMap")]
+ interface CIColorMapProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("gradientImage", ArgumentSemantic.Retain)]
+ CIImage GradientImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorMatrix")]
+ interface CIColorMatrixProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("RVector", ArgumentSemantic.Retain)]
+ CIVector RVector { get; set; }
+
+ [Abstract]
+ [Export ("GVector", ArgumentSemantic.Retain)]
+ CIVector GVector { get; set; }
+
+ [Abstract]
+ [Export ("BVector", ArgumentSemantic.Retain)]
+ CIVector BVector { get; set; }
+
+ [Abstract]
+ [Export ("AVector", ArgumentSemantic.Retain)]
+ CIVector AVector { get; set; }
+
+ [Abstract]
+ [Export ("biasVector", ArgumentSemantic.Retain)]
+ CIVector BiasVector { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorMonochrome")]
+ interface CIColorMonochromeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorPolynomial")]
+ interface CIColorPolynomialProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("redCoefficients", ArgumentSemantic.Retain)]
+ CIVector RedCoefficients { get; set; }
+
+ [Abstract]
+ [Export ("greenCoefficients", ArgumentSemantic.Retain)]
+ CIVector GreenCoefficients { get; set; }
+
+ [Abstract]
+ [Export ("blueCoefficients", ArgumentSemantic.Retain)]
+ CIVector BlueCoefficients { get; set; }
+
+ [Abstract]
+ [Export ("alphaCoefficients", ArgumentSemantic.Retain)]
+ CIVector AlphaCoefficients { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIColorPosterize")]
+ interface CIColorPosterizeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("levels")]
+ float Levels { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIComicEffect")]
+ interface CIComicEffectProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICompositeOperation")]
+ interface CICompositeOperationProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("backgroundImage", ArgumentSemantic.Retain)]
+ CIImage BackgroundImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIConvolution")]
+ interface CIConvolutionProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("weights", ArgumentSemantic.Retain)]
+ CIVector Weights { get; set; }
+
+ [Abstract]
+ [Export ("bias")]
+ float Bias { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICopyMachineTransition")]
+ interface CICopyMachineTransitionProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect Extent { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("opacity")]
+ float Opacity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICoreMLModel")]
+ interface CICoreMLModelProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("model", ArgumentSemantic.Retain)]
+ MLModel Model { get; set; }
+
+ [Abstract]
+ [Export ("headIndex")]
+ float HeadIndex { get; set; }
+
+ [Abstract]
+ [Export ("softmaxNormalization")]
+ bool SoftmaxNormalization { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CICrystallize")]
+ interface CICrystallizeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDepthOfField")]
+ interface CIDepthOfFieldProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("point0", ArgumentSemantic.Assign)]
+ CGPoint InputPoint0 { get; set; }
+
+ [Abstract]
+ [Export ("point1", ArgumentSemantic.Assign)]
+ CGPoint InputPoint1 { get; set; }
+
+ [Abstract]
+ [Export ("saturation")]
+ float Saturation { get; set; }
+
+ [Abstract]
+ [Export ("unsharpMaskRadius")]
+ float UnsharpMaskRadius { get; set; }
+
+ [Abstract]
+ [Export ("unsharpMaskIntensity")]
+ float UnsharpMaskIntensity { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDepthToDisparity")]
+ interface CIDepthToDisparityProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDiscBlur")]
+ interface CIDiscBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDisintegrateWithMaskTransition")]
+ interface CIDisintegrateWithMaskTransitionProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("maskImage", ArgumentSemantic.Retain)]
+ CIImage MaskImage { get; set; }
+
+ [Abstract]
+ [Export ("shadowRadius")]
+ float ShadowRadius { get; set; }
+
+ [Abstract]
+ [Export ("shadowDensity")]
+ float ShadowDensity { get; set; }
+
+ [Abstract]
+ [Export ("shadowOffset", ArgumentSemantic.Assign)]
+ CGPoint InputShadowOffset { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDisparityToDepth")]
+ interface CIDisparityToDepthProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDissolveTransition")]
+ interface CIDissolveTransitionProtocol : CIFilterProtocol {
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDither")]
+ interface CIDitherProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDocumentEnhancer")]
+ interface CIDocumentEnhancerProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("amount")]
+ float Amount { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIDotScreen")]
+ interface CIDotScreenProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIEdgePreserveUpsample")]
+ interface CIEdgePreserveUpsampleProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("smallImage", ArgumentSemantic.Retain)]
+ CIImage SmallImage { get; set; }
+
+ [Abstract]
+ [Export ("spatialSigma")]
+ float SpatialSigma { get; set; }
+
+ [Abstract]
+ [Export ("lumaSigma")]
+ float LumaSigma { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIEdges")]
+ interface CIEdgesProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIEdgeWork")]
+ interface CIEdgeWorkProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIEightfoldReflectedTile")]
+ interface CIEightfoldReflectedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIExposureAdjust")]
+ interface CIExposureAdjustProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("EV")]
+ float EV { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFalseColor")]
+ interface CIFalseColorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFlashTransition")]
+ interface CIFlashTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("maxStriationRadius")]
+ float MaxStriationRadius { get; set; }
+
+ [Abstract]
+ [Export ("striationStrength")]
+ float StriationStrength { get; set; }
+
+ [Abstract]
+ [Export ("striationContrast")]
+ float StriationContrast { get; set; }
+
+ [Abstract]
+ [Export ("fadeThreshold")]
+ float FadeThreshold { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFourCoordinateGeometryFilter")]
+ interface CIFourCoordinateGeometryFilterProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("topLeft", ArgumentSemantic.Assign)]
+ CGPoint InputTopLeft { get; set; }
+
+ [Abstract]
+ [Export ("topRight", ArgumentSemantic.Assign)]
+ CGPoint InputTopRight { get; set; }
+
+ [Abstract]
+ [Export ("bottomRight", ArgumentSemantic.Assign)]
+ CGPoint InputBottomRight { get; set; }
+
+ [Abstract]
+ [Export ("bottomLeft", ArgumentSemantic.Assign)]
+ CGPoint InputBottomLeft { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFourfoldReflectedTile")]
+ interface CIFourfoldReflectedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("acuteAngle")]
+ float AcuteAngle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFourfoldRotatedTile")]
+ interface CIFourfoldRotatedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIFourfoldTranslatedTile")]
+ interface CIFourfoldTranslatedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("acuteAngle")]
+ float AcuteAngle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIGaborGradients")]
+ interface CIGaborGradientsProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIGammaAdjust")]
+ interface CIGammaAdjustProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("power")]
+ float Power { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIGaussianBlur")]
+ interface CIGaussianBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIGaussianGradient")]
+ interface CIGaussianGradientProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIGlideReflectedTile")]
+ interface CIGlideReflectedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIGloom")]
+ interface CIGloomProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIHatchedScreen")]
+ interface CIHatchedScreenProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIHeightFieldFromMask")]
+ interface CIHeightFieldFromMaskProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIHexagonalPixellate")]
+ interface CIHexagonalPixellateProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIHighlightShadowAdjust")]
+ interface CIHighlightShadowAdjustProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("shadowAmount")]
+ float ShadowAmount { get; set; }
+
+ [Abstract]
+ [Export ("highlightAmount")]
+ float HighlightAmount { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIHueAdjust")]
+ interface CIHueAdjustProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIHueSaturationValueGradient")]
+ interface CIHueSaturationValueGradientProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("value")]
+ float Value { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("softness")]
+ float Softness { get; set; }
+
+ [Abstract]
+ [Export ("dither")]
+ float Dither { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("colorSpace", ArgumentSemantic.Assign)]
+ CGColorSpace ColorSpace { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIKaleidoscope")]
+ interface CIKaleidoscopeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("count")]
+ nint InputCount { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIKeystoneCorrectionCombined")]
+ interface CIKeystoneCorrectionCombinedProtocol : CIFourCoordinateGeometryFilterProtocol {
+
+ [Abstract]
+ [Export ("focalLength")]
+ float FocalLength { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIKeystoneCorrectionHorizontal")]
+ interface CIKeystoneCorrectionHorizontalProtocol : CIFourCoordinateGeometryFilterProtocol {
+
+ [Abstract]
+ [Export ("focalLength")]
+ float FocalLength { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIKeystoneCorrectionVertical")]
+ interface CIKeystoneCorrectionVerticalProtocol : CIFourCoordinateGeometryFilterProtocol {
+
+ [Abstract]
+ [Export ("focalLength")]
+ float FocalLength { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILabDeltaE")]
+ interface CILabDeltaEProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("image2", ArgumentSemantic.Retain)]
+ CIImage Image2 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILanczosScaleTransform")]
+ interface CILanczosScaleTransformProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+
+ [Abstract]
+ [Export ("aspectRatio")]
+ float AspectRatio { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILenticularHaloGenerator")]
+ interface CILenticularHaloGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("haloRadius")]
+ float HaloRadius { get; set; }
+
+ [Abstract]
+ [Export ("haloWidth")]
+ float HaloWidth { get; set; }
+
+ [Abstract]
+ [Export ("haloOverlap")]
+ float HaloOverlap { get; set; }
+
+ [Abstract]
+ [Export ("striationStrength")]
+ float StriationStrength { get; set; }
+
+ [Abstract]
+ [Export ("striationContrast")]
+ float StriationContrast { get; set; }
+
+ [Abstract]
+ [Export ("time")]
+ float Time { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILinearGradient")]
+ interface CILinearGradientProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("point0", ArgumentSemantic.Assign)]
+ CGPoint InputPoint0 { get; set; }
+
+ [Abstract]
+ [Export ("point1", ArgumentSemantic.Assign)]
+ CGPoint InputPoint1 { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILinearToSRGBToneCurve")]
+ interface CILinearToSrgbToneCurveProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILineOverlay")]
+ interface CILineOverlayProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("NRNoiseLevel")]
+ float NRNoiseLevel { get; set; }
+
+ [Abstract]
+ [Export ("NRSharpness")]
+ float NRSharpness { get; set; }
+
+ [Abstract]
+ [Export ("edgeIntensity")]
+ float EdgeIntensity { get; set; }
+
+ [Abstract]
+ [Export ("threshold")]
+ float Threshold { get; set; }
+
+ [Abstract]
+ [Export ("contrast")]
+ float Contrast { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CILineScreen")]
+ interface CILineScreenProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMaskedVariableBlur")]
+ interface CIMaskedVariableBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("mask", ArgumentSemantic.Retain)]
+ CIImage Mask { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMaskToAlpha")]
+ interface CIMaskToAlphaProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMaximumComponent")]
+ interface CIMaximumComponentProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMedian")]
+ interface CIMedianProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMeshGenerator")]
+ interface CIMeshGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("mesh", ArgumentSemantic.Retain)]
+ CIVector[] Mesh { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMinimumComponent")]
+ interface CIMinimumComponentProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMix")]
+ interface CIMixProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("backgroundImage", ArgumentSemantic.Retain)]
+ CIImage BackgroundImage { get; set; }
+
+ [Abstract]
+ [Export ("amount")]
+ float Amount { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIModTransition")]
+ interface CIModTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("compression")]
+ float Compression { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMorphologyGradient")]
+ interface CIMorphologyGradientProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMorphologyMaximum")]
+ interface CIMorphologyMaximumProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMorphologyMinimum")]
+ interface CIMorphologyMinimumProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMorphologyRectangleMaximum")]
+ interface CIMorphologyRectangleMaximumProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float InputWidth { get; set; }
+
+ [Abstract]
+ [Export ("height")]
+ float InputHeight { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMorphologyRectangleMinimum")]
+ interface CIMorphologyRectangleMinimumProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float InputWidth { get; set; }
+
+ [Abstract]
+ [Export ("height")]
+ float InputHeight { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIMotionBlur")]
+ interface CIMotionBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CINoiseReduction")]
+ interface CINoiseReductionProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("noiseLevel")]
+ float NoiseLevel { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIOpTile")]
+ interface CIOpTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPageCurlTransition")]
+ interface CIPageCurlTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("backsideImage", ArgumentSemantic.Retain)]
+ CIImage BacksideImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("shadingImage", ArgumentSemantic.Retain)]
+ CIImage ShadingImage { get; set; }
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPageCurlWithShadowTransition")]
+ interface CIPageCurlWithShadowTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("backsideImage", ArgumentSemantic.Retain)]
+ CIImage BacksideImage { get; set; }
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("shadowSize")]
+ float ShadowSize { get; set; }
+
+ [Abstract]
+ [Export ("shadowAmount")]
+ float ShadowAmount { get; set; }
+
+ [Abstract]
+ [Export ("shadowExtent", ArgumentSemantic.Assign)]
+ CGRect InputShadowExtent { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPaletteCentroid")]
+ interface CIPaletteCentroidProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("paletteImage", ArgumentSemantic.Retain)]
+ CIImage PaletteImage { get; set; }
+
+ [Abstract]
+ [Export ("perceptual")]
+ bool Perceptual { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPalettize")]
+ interface CIPalettizeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("paletteImage", ArgumentSemantic.Retain)]
+ CIImage PaletteImage { get; set; }
+
+ [Abstract]
+ [Export ("perceptual")]
+ bool Perceptual { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIParallelogramTile")]
+ interface CIParallelogramTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("acuteAngle")]
+ float AcuteAngle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPDF417BarcodeGenerator")]
+ interface CIPdf417BarcodeGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("message", ArgumentSemantic.Retain)]
+ NSData Message { get; set; }
+
+ [Abstract]
+ [Export ("minWidth")]
+ float MinWidth { get; set; }
+
+ [Abstract]
+ [Export ("maxWidth")]
+ float MaxWidth { get; set; }
+
+ [Abstract]
+ [Export ("minHeight")]
+ float MinHeight { get; set; }
+
+ [Abstract]
+ [Export ("maxHeight")]
+ float MaxHeight { get; set; }
+
+ [Abstract]
+ [Export ("dataColumns")]
+ float InputDataColumns { get; set; }
+
+ [Abstract]
+ [Export ("rows")]
+ float InputRows { get; set; }
+
+ [Abstract]
+ [Export ("preferredAspectRatio")]
+ float PreferredAspectRatio { get; set; }
+
+ [Abstract]
+ [Export ("compactionMode")]
+ float InputCompactionMode { get; set; }
+
+ [Abstract]
+ [Export ("compactStyle")]
+ float InputCompactStyle { get; set; }
+
+ [Abstract]
+ [Export ("correctionLevel")]
+ float InputCorrectionLevel { get; set; }
+
+ [Abstract]
+ [Export ("alwaysSpecifyCompaction")]
+ float InputAlwaysSpecifyCompaction { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPerspectiveCorrection")]
+ interface CIPerspectiveCorrectionProtocol : CIFourCoordinateGeometryFilterProtocol {
+
+ [Abstract]
+ [Export ("crop")]
+ [iOS (13,0)][TV (13,0)][Mac (10,15)] // repeated so it's inlined (new property in existing filter)
+ bool Crop { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPerspectiveRotate")]
+ interface CIPerspectiveRotateProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("focalLength")]
+ float FocalLength { get; set; }
+
+ [Abstract]
+ [Export ("pitch")]
+ float Pitch { get; set; }
+
+ [Abstract]
+ [Export ("yaw")]
+ float Yaw { get; set; }
+
+ [Abstract]
+ [Export ("roll")]
+ float Roll { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPerspectiveTile")]
+ interface CIPerspectiveTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("topLeft", ArgumentSemantic.Assign)]
+ CGPoint InputTopLeft { get; set; }
+
+ [Abstract]
+ [Export ("topRight", ArgumentSemantic.Assign)]
+ CGPoint InputTopRight { get; set; }
+
+ [Abstract]
+ [Export ("bottomRight", ArgumentSemantic.Assign)]
+ CGPoint InputBottomRight { get; set; }
+
+ [Abstract]
+ [Export ("bottomLeft", ArgumentSemantic.Assign)]
+ CGPoint InputBottomLeft { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPerspectiveTransform")]
+ interface CIPerspectiveTransformProtocol : CIFourCoordinateGeometryFilterProtocol {
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPerspectiveTransformWithExtent")]
+ interface CIPerspectiveTransformWithExtentProtocol : CIFourCoordinateGeometryFilterProtocol {
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPhotoEffect")]
+ interface CIPhotoEffectProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPixellate")]
+ interface CIPixellateProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIPointillize")]
+ interface CIPointillizeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIQRCodeGenerator")]
+ interface CIQRCodeGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("message", ArgumentSemantic.Retain)]
+ NSData Message { get; set; }
+
+ [Abstract]
+ [Export ("correctionLevel", ArgumentSemantic.Retain)]
+ string CorrectionLevel { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIRadialGradient")]
+ interface CIRadialGradientProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("radius0")]
+ float Radius0 { get; set; }
+
+ [Abstract]
+ [Export ("radius1")]
+ float Radius1 { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIRandomGenerator")]
+ interface CIRandomGeneratorProtocol : CIFilterProtocol {
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIRippleTransition")]
+ interface CIRippleTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("shadingImage", ArgumentSemantic.Retain)]
+ CIImage ShadingImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIRoundedRectangleGenerator")]
+ interface CIRoundedRectangleGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISaliencyMap")]
+ interface CISaliencyMapProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ [CoreImageFilterProperty ("inputImage")]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISepiaTone")]
+ interface CISepiaToneProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIShadedMaterial")]
+ interface CIShadedMaterialProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [NullAllowed, Export ("shadingImage", ArgumentSemantic.Retain)]
+ CIImage ShadingImage { get; set; }
+
+ [Abstract]
+ [Export ("scale")]
+ float Scale { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISharpenLuminance")]
+ interface CISharpenLuminanceProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ [iOS (13,0)][TV (13,0)][Mac (10,15)] // repeated so it's inlined (new property in existing filter)
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISixfoldReflectedTile")]
+ interface CISixfoldReflectedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISixfoldRotatedTile")]
+ interface CISixfoldRotatedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISmoothLinearGradient")]
+ interface CISmoothLinearGradientProtocol : CIFilterProtocol {
+ [Abstract]
+ [Export ("point0", ArgumentSemantic.Assign)]
+ CGPoint InputPoint0 { get; set; }
+
+ [Abstract]
+ [Export ("point1", ArgumentSemantic.Assign)]
+ CGPoint InputPoint1 { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISpotColor")]
+ interface CISpotColorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("centerColor1", ArgumentSemantic.Retain)]
+ CIColor CenterColor1 { get; set; }
+
+ [Abstract]
+ [Export ("replacementColor1", ArgumentSemantic.Retain)]
+ CIColor ReplacementColor1 { get; set; }
+
+ [Abstract]
+ [Export ("closeness1")]
+ float Closeness1 { get; set; }
+
+ [Abstract]
+ [Export ("contrast1")]
+ float Contrast1 { get; set; }
+
+ [Abstract]
+ [Export ("centerColor2", ArgumentSemantic.Retain)]
+ CIColor CenterColor2 { get; set; }
+
+ [Abstract]
+ [Export ("replacementColor2", ArgumentSemantic.Retain)]
+ CIColor ReplacementColor2 { get; set; }
+
+ [Abstract]
+ [Export ("closeness2")]
+ float Closeness2 { get; set; }
+
+ [Abstract]
+ [Export ("contrast2")]
+ float Contrast2 { get; set; }
+
+ [Abstract]
+ [Export ("centerColor3", ArgumentSemantic.Retain)]
+ CIColor CenterColor3 { get; set; }
+
+ [Abstract]
+ [Export ("replacementColor3", ArgumentSemantic.Retain)]
+ CIColor ReplacementColor3 { get; set; }
+
+ [Abstract]
+ [Export ("closeness3")]
+ float Closeness3 { get; set; }
+
+ [Abstract]
+ [Export ("contrast3")]
+ float Contrast3 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISpotLight")]
+ interface CISpotLightProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("lightPosition", ArgumentSemantic.Retain)]
+ CIVector LightPosition { get; set; }
+
+ [Abstract]
+ [Export ("lightPointsAt", ArgumentSemantic.Retain)]
+ CIVector LightPointsAt { get; set; }
+
+ [Abstract]
+ [Export ("brightness")]
+ float Brightness { get; set; }
+
+ [Abstract]
+ [Export ("concentration")]
+ float Concentration { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISRGBToneCurveToLinear")]
+ interface CISrgbToneCurveToLinearProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIStarShineGenerator")]
+ interface CIStarShineGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("crossScale")]
+ float CrossScale { get; set; }
+
+ [Abstract]
+ [Export ("crossAngle")]
+ float CrossAngle { get; set; }
+
+ [Abstract]
+ [Export ("crossOpacity")]
+ float CrossOpacity { get; set; }
+
+ [Abstract]
+ [Export ("crossWidth")]
+ float CrossWidth { get; set; }
+
+ [Abstract]
+ [Export ("epsilon")]
+ float Epsilon { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIStraighten")]
+ interface CIStraightenProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIStripesGenerator")]
+ interface CIStripesGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("color0", ArgumentSemantic.Retain)]
+ CIColor Color0 { get; set; }
+
+ [Abstract]
+ [Export ("color1", ArgumentSemantic.Retain)]
+ CIColor Color1 { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("sharpness")]
+ float Sharpness { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISunbeamsGenerator")]
+ interface CISunbeamsGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("sunRadius")]
+ float SunRadius { get; set; }
+
+ [Abstract]
+ [Export ("maxStriationRadius")]
+ float MaxStriationRadius { get; set; }
+
+ [Abstract]
+ [Export ("striationStrength")]
+ float StriationStrength { get; set; }
+
+ [Abstract]
+ [Export ("striationContrast")]
+ float StriationContrast { get; set; }
+
+ [Abstract]
+ [Export ("time")]
+ float Time { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CISwipeTransition")]
+ interface CISwipeTransitionProtocol : CITransitionFilterProtocol {
+
+ [Abstract]
+ [Export ("extent", ArgumentSemantic.Assign)]
+ CGRect InputExtent { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+
+ [Abstract]
+ [Export ("opacity")]
+ float Opacity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CITemperatureAndTint")]
+ interface CITemperatureAndTintProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("neutral", ArgumentSemantic.Retain)]
+ CIVector Neutral { get; set; }
+
+ [Abstract]
+ [Export ("targetNeutral", ArgumentSemantic.Retain)]
+ CIVector TargetNeutral { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CITextImageGenerator")]
+ interface CITextImageGeneratorProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [Export ("text", ArgumentSemantic.Retain)]
+ string Text { get; set; }
+
+ [Abstract]
+ [Export ("fontName", ArgumentSemantic.Retain)]
+ string FontName { get; set; }
+
+ [Abstract]
+ [Export ("fontSize")]
+ float FontSize { get; set; }
+
+ [Abstract]
+ [Export ("scaleFactor")]
+ float ScaleFactor { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIThermal")]
+ interface CIThermalProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIToneCurve")]
+ interface CIToneCurveProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("point0", ArgumentSemantic.Assign)]
+ CGPoint InputPoint0 { get; set; }
+
+ [Abstract]
+ [Export ("point1", ArgumentSemantic.Assign)]
+ CGPoint InputPoint1 { get; set; }
+
+ [Abstract]
+ [Export ("point2", ArgumentSemantic.Assign)]
+ CGPoint InputPoint2 { get; set; }
+
+ [Abstract]
+ [Export ("point3", ArgumentSemantic.Assign)]
+ CGPoint InputPoint3 { get; set; }
+
+ [Abstract]
+ [Export ("point4", ArgumentSemantic.Assign)]
+ CGPoint InputPoint4 { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CITriangleKaleidoscope")]
+ interface CITriangleKaleidoscopeProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("point", ArgumentSemantic.Assign)]
+ CGPoint InputPoint { get; set; }
+
+ [Abstract]
+ [Export ("size")]
+ float Size { get; set; }
+
+ [Abstract]
+ [Export ("rotation")]
+ float Rotation { get; set; }
+
+ [Abstract]
+ [Export ("decay")]
+ float Decay { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CITriangleTile")]
+ interface CITriangleTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CITwelvefoldReflectedTile")]
+ interface CITwelvefoldReflectedTileProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("angle")]
+ float Angle { get; set; }
+
+ [Abstract]
+ [Export ("width")]
+ float Width { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIUnsharpMask")]
+ interface CIUnsharpMaskProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIVibrance")]
+ interface CIVibranceProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("amount")]
+ float Amount { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIVignette")]
+ interface CIVignetteProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIVignetteEffect")]
+ interface CIVignetteEffectProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("radius")]
+ float Radius { get; set; }
+
+ [Abstract]
+ [Export ("intensity")]
+ float Intensity { get; set; }
+
+ [Abstract]
+ [Export ("falloff")]
+ float Falloff { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIWhitePointAdjust")]
+ interface CIWhitePointAdjustProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("color", ArgumentSemantic.Retain)]
+ CIColor Color { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIXRay")]
+ interface CIXRayProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+ }
+
+ [iOS (13,0)]
+ [TV (13,0)]
+ [Mac (10,15)]
+ [Protocol (Name = "CIZoomBlur")]
+ interface CIZoomBlurProtocol : CIFilterProtocol {
+
+ [Abstract]
+ [NullAllowed, Export ("inputImage", ArgumentSemantic.Retain)]
+ CIImage InputImage { get; set; }
+
+ [Abstract]
+ [Export ("center", ArgumentSemantic.Assign)]
+ CGPoint InputCenter { get; set; }
+
+ [Abstract]
+ [Export ("amount")]
+ float Amount { get; set; }
}
+#endregion
}
diff --git a/src/frameworks.sources b/src/frameworks.sources
index 4ef363205768..3dfa1bacd1f6 100644
--- a/src/frameworks.sources
+++ b/src/frameworks.sources
@@ -916,11 +916,13 @@ IMAGECAPTURECORE_API_SOURCES = \
IMAGEIO_API_SOURCES = \
ImageIO/Enums.cs \
+IMAGEIO_CORE_SOURCES = \
+ ImageIO/CGImageSource.cs \
+
IMAGEIO_SOURCES = \
ImageIO/CGImageDestination.cs \
ImageIO/CGImageMetadata.cs \
ImageIO/CGImageMetadataTag.cs \
- ImageIO/CGImageSource.cs \
ImageIO/CGImageSource.iOS.cs \
ImageIO/CGMutableImageMetadata.cs \
diff --git a/src/generator-filters.cs b/src/generator-filters.cs
index c2338c7104ae..bf9898e1228e 100644
--- a/src/generator-filters.cs
+++ b/src/generator-filters.cs
@@ -1,10 +1,12 @@
// Copyright 2015 Xamarin Inc. All rights reserved.
+// Copyright Microsoft Corp.
using System;
using System.Collections.Generic;
using IKVM.Reflection;
using Type = IKVM.Reflection.Type;
using Foundation;
+using ObjCRuntime;
public partial class Generator {
@@ -33,10 +35,16 @@ public void GenerateFilter (Type type)
// internal static CIFilter FromName (string filterName, IntPtr handle)
filters.Add (type_name);
+ // filters are now exposed as protocols so we need to conform to them
+ var interfaces = String.Empty;
+ foreach (var i in type.GetInterfaces ()) {
+ interfaces += $", I{i.Name}";
+ }
+
// type declaration
- print ("public{0} partial class {1} : {2} {{",
+ print ("public{0} partial class {1} : {2}{3} {{",
is_abstract ? " abstract" : String.Empty,
- type_name, base_name);
+ type_name, base_name, interfaces);
print ("");
indent++;
@@ -105,12 +113,54 @@ public void GenerateFilter (Type type)
}
// properties
+ GenerateProperties (type);
+
+ // protocols
+ GenerateProtocolProperties (type, new HashSet ());
+
+ indent--;
+ print ("}");
+
+ // namespace closing (it's optional to use namespaces even if it's a bad practice, ref #35283)
+ if (indent > 0) {
+ indent--;
+ print ("}");
+ }
+ }
+
+ void GenerateProtocolProperties (Type type, HashSet processed)
+ {
+ foreach (var i in type.GetInterfaces ()) {
+ if (!IsProtocolInterface (i, false, out var protocol))
+ continue;
+
+ // the same protocol can be included more than once (interfaces) - but we must generate only once
+ var pname = i.Name;
+ if (processed.Contains (pname))
+ continue;
+ processed.Add (pname);
+
+ print ("");
+ print ($"// {pname} protocol members ");
+ GenerateProperties (i);
+
+ // also include base interfaces/protocols
+ GenerateProtocolProperties (i, processed);
+ }
+ }
+
+ void GenerateProperties (Type type)
+ {
foreach (var p in type.GetProperties (BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance)) {
if (p.IsUnavailable (this))
continue;
+ if (AttributeManager.HasAttribute (p))
+ continue;
print ("");
+ PrintPropertyAttributes (p);
print_generated_code ();
+
var ptype = p.PropertyType.Name;
// keep C# names as they are reserved keywords (e.g. Boolean also exists in OpenGL for Mac)
switch (ptype) {
@@ -126,28 +176,57 @@ public void GenerateFilter (Type type)
case "String":
ptype = "string";
break;
+ // adding `using ImageIO;` would lead to `error CS0104: 'CGImageProperties' is an ambiguous reference between 'CoreGraphics.CGImageProperties' and 'ImageIO.CGImageProperties'`
+ case "CGImageMetadata":
+ ptype = "ImageIO.CGImageMetadata";
+ break;
}
print ("public {0} {1} {{", ptype, p.Name);
indent++;
+ // an export will be present (only) if it's defined in a protocol
+ var export = AttributeManager.GetCustomAttribute (p);
+
var name = AttributeManager.GetCustomAttribute (p)?.Name;
- if (p.GetGetMethod () != null)
+ // we can skip the name when it's identical to a protocol selector
+ if (name == null) {
+ if (export == null)
+ throw new BindingException (1072, true, $"Missing [CoreImageFilterProperty] attribute on {0} property {1}", type.Name, p.Name);
+
+ var sel = export.Selector;
+ if (sel.StartsWith ("input", StringComparison.Ordinal))
+ name = sel;
+ else
+ name = "input" + Capitalize (sel);
+ }
+
+ if (p.GetGetMethod () != null) {
+ PrintFilterExport (p, export, setter: false);
GenerateFilterGetter (ptype, name);
- if (p.GetSetMethod () != null)
+ }
+ if (p.GetSetMethod () != null) {
+ PrintFilterExport (p, export, setter: true);
GenerateFilterSetter (ptype, name);
+ }
indent--;
print ("}");
}
+ }
- indent--;
- print ("}");
+ void PrintFilterExport (PropertyInfo p, ExportAttribute export, bool setter)
+ {
+ if (export == null)
+ return;
- // namespace closing (it's optional to use namespaces even if it's a bad practice, ref #35283)
- if (indent > 0) {
- indent--;
- print ("}");
- }
+ var selector = export.Selector;
+ if (setter)
+ selector = "set" + Capitalize (selector) + ":";
+
+ if (export.ArgumentSemantic != ArgumentSemantic.None && !p.PropertyType.IsPrimitive)
+ print ($"[Export (\"{selector}\", ArgumentSemantic.{export.ArgumentSemantic})]");
+ else
+ print ($"[Export (\"{selector}\")]");
}
void GenerateFilterGetter (string propertyType, string propertyName)
@@ -166,22 +245,30 @@ void GenerateFilterGetter (string propertyType, string propertyName)
indent++;
print ("return nsv.CGAffineTransformValue;");
indent--;
- print ("return new CGAffineTransform (1, 0, 0, 1, 0, 0);");
+ print ("return CGAffineTransform.MakeIdentity ();");
break;
// NSObject should not be added
+ // NSNumber should not be added - it should be bound as a float (common), int32 or bool
case "AVCameraCalibrationData":
case "CGColorSpace":
+ case "CGImage":
+ case "ImageIO.CGImageMetadata":
case "CIBarcodeDescriptor":
+ case "MLModel":
+ case "NSAttributedString":
+ case "NSData":
print ("return Runtime.GetINativeObject <{0}> (GetHandle (\"{1}\"), false);", propertyType, propertyName);
break;
case "CIColor":
- print ("return GetColor (\"{0}\");", propertyName);
- break;
case "CIImage":
- print ("return GetImage (\"{0}\");", propertyName);
- break;
case "CIVector":
- print ("return GetVector (\"{0}\");", propertyName);
+ print ($"return ValueForKey (\"{propertyName}\") as {propertyType};");
+ break;
+ case "CGPoint":
+ print ("return GetPoint (\"{0}\");", propertyName);
+ break;
+ case "CGRect":
+ print ("return GetRect (\"{0}\");", propertyName);
break;
case "float":
print ("return GetFloat (\"{0}\");", propertyName);
@@ -189,11 +276,8 @@ void GenerateFilterGetter (string propertyType, string propertyName)
case "int":
print ("return GetInt (\"{0}\");", propertyName);
break;
- case "MLModel":
- case "NSAttributedString":
- case "NSData":
- // NSNumber should not be added - it should be bound as a float (common), int32 or bool
- print ("return ValueForKey (\"{0}\") as {1};", propertyName, propertyType);
+ case "nint":
+ print ("return GetNInt (\"{0}\");", propertyName);
break;
case "string":
// NSString should not be added - it should be bound as a string
@@ -229,12 +313,19 @@ void GenerateFilterSetter (string propertyType, string propertyName)
case "int":
print ("SetInt (\"{0}\", value);", propertyName);
break;
+ case "nint":
+ print ("SetNInt (\"{0}\", value);", propertyName);
+ break;
// NSObject should not be added
case "AVCameraCalibrationData":
case "CGColorSpace":
case "CIBarcodeDescriptor":
- print ("SetHandle (\"{0}\", value == null ? IntPtr.Zero : value.Handle);", propertyName);
+ case "CGImage":
+ case "ImageIO.CGImageMetadata":
+ print ($"SetHandle (\"{propertyName}\", value.GetHandle ());");
break;
+ case "CGPoint":
+ case "CGRect":
case "CIColor":
case "CIImage":
case "CIVector":
diff --git a/src/generator-typemanager.cs b/src/generator-typemanager.cs
index 57f693d589f0..f98cdd245ccc 100644
--- a/src/generator-typemanager.cs
+++ b/src/generator-typemanager.cs
@@ -64,6 +64,7 @@ public class TypeManager {
public Type CGPDFPage;
public Type CGGradient;
public Type CGImage;
+ public Type CGImageSource;
public Type CGLayer;
public Type CGLContext;
public Type CGLPixelFormat;
@@ -256,6 +257,7 @@ public void Initialize (BindingTouch binding_touch, Assembly api, Assembly corli
CGPDFPage = Lookup (platform_assembly, "CoreGraphics", "CGPDFPage");
CGGradient = Lookup (platform_assembly, "CoreGraphics", "CGGradient");
CGImage = Lookup (platform_assembly, "CoreGraphics", "CGImage");
+ CGImageSource = Lookup (platform_assembly, "ImageIO", "CGImageSource");
CGLayer = Lookup (platform_assembly, "CoreGraphics", "CGLayer");
if (Frameworks.HaveOpenGL) {
CGLContext = Lookup (platform_assembly, "OpenGL", "CGLContext");
diff --git a/src/generator.cs b/src/generator.cs
index 1956ce62ca50..dfcf3eef16c8 100644
--- a/src/generator.cs
+++ b/src/generator.cs
@@ -1214,14 +1214,21 @@ string ParameterGetMarshalType (MarshalInfo mai, bool formatted = false)
bool IsProtocolInterface (Type type, bool checkPrefix = true)
{
+ return IsProtocolInterface (type, checkPrefix, out var _);
+ }
+
+ bool IsProtocolInterface (Type type, bool checkPrefix, out Type protocol)
+ {
+ protocol = null;
// for subclassing the type (from the binding files) is not yet prefixed by an `I`
if (checkPrefix && type.Name [0] != 'I')
return false;
+ protocol = type;
if (AttributeManager.HasAttribute (type))
return true;
- var protocol = type.Assembly.GetType (type.Namespace + "." + type.Name.Substring (1), false);
+ protocol = type.Assembly.GetType (type.Namespace + "." + type.Name.Substring (1), false);
if (protocol == null)
return false;
@@ -2200,6 +2207,7 @@ public void Go ()
marshal_types.Add (TypeManager.Class);
marshal_types.Add (TypeManager.CFRunLoop);
marshal_types.Add (TypeManager.CGColorSpace);
+ marshal_types.Add (TypeManager.CGImageSource);
marshal_types.Add (TypeManager.DispatchData);
marshal_types.Add (TypeManager.DispatchQueue);
marshal_types.Add (TypeManager.Protocol);
@@ -2885,6 +2893,9 @@ void GenerateStrongDictionaryTypes ()
} else if (pi.PropertyType.Name == "CGColorSpace") {
getter = "GetNativeValue<" + pi.PropertyType +"> ({0})";
setter = "SetNativeValue ({0}, value)";
+ } else if (pi.PropertyType.Name == "CGImageSource") {
+ getter = "GetNativeValue<" + pi.PropertyType +"> ({0})";
+ setter = "SetNativeValue ({0}, value)";
} else {
throw new BindingException (1031, true,
"Limitation: can not automatically create strongly typed dictionary for " +
diff --git a/tests/introspection/ApiCoreImageFiltersTest.cs b/tests/introspection/ApiCoreImageFiltersTest.cs
index 26f5cbdb3dda..d243613a603b 100644
--- a/tests/introspection/ApiCoreImageFiltersTest.cs
+++ b/tests/introspection/ApiCoreImageFiltersTest.cs
@@ -25,6 +25,7 @@
using System.Collections.Generic;
using System.IO;
using System.Reflection;
+using System.Text;
using NUnit.Framework;
@@ -215,6 +216,313 @@ static void GenerateBinding (NSObject filter, TextWriter writer)
writer.WriteLine ();
writer.Flush ();
}
+
+ [Test]
+ public void Protocols ()
+ {
+ var to_confirm_manually = new StringBuilder ();
+ ContinueOnFailure = true;
+ var nspace = CIFilterType.Namespace;
+ var types = CIFilterType.Assembly.GetTypes ();
+ foreach (Type t in types) {
+ if (t.Namespace != nspace)
+ continue;
+
+ // e.g. FooProtocolWrapper
+ if (!t.IsPublic)
+ continue;
+
+ switch (t.Name) {
+ // we are interested in subclasses (real) filters
+ case "CIFilter":
+ continue;
+ // no protocol has been added (yet?) you can confirm with `grep` that it does not report anything in the terminal
+ case "CIAdditionCompositing":
+ case "CIAreaAverage":
+ case "CIAreaHistogram":
+ case "CIAreaMaximum":
+ case "CIAreaMaximumAlpha":
+ case "CIAreaMinimum":
+ case "CIAreaMinimumAlpha":
+ case "CIAreaMinMax":
+ case "CIAreaMinMaxRed":
+ case "CIBlendFilter":
+ case "CIBumpDistortion":
+ case "CIBumpDistortionLinear":
+ case "CICameraCalibrationLensCorrection":
+ case "CICircleSplashDistortion":
+ case "CICircularWrap":
+ case "CIClamp":
+ case "CICodeGenerator":
+ case "CIColorBlendMode":
+ case "CIColorBurnBlendMode":
+ case "CIColorDodgeBlendMode":
+ case "CIColumnAverage":
+ case "CICompositingFilter":
+ case "CIConstantColorGenerator":
+ case "CIConvolution3X3":
+ case "CIConvolution5X5":
+ case "CIConvolution7X7":
+ case "CIConvolution9Horizontal":
+ case "CIConvolution9Vertical":
+ case "CIConvolutionCore":
+ case "CICoreMLModelFilter":
+ case "CICrop":
+ case "CIDarkenBlendMode":
+ case "CIDepthBlurEffect":
+ case "CIDepthDisparityConverter":
+ case "CIDifferenceBlendMode":
+ case "CIDisplacementDistortion":
+ case "CIDistortionFilter":
+ case "CIDivideBlendMode":
+ case "CIDroste":
+ case "CIExclusionBlendMode":
+ case "CIFaceBalance":
+ case "CIGlassDistortion":
+ case "CIGlassLozenge":
+ case "CIGuidedFilter":
+ case "CIHardLightBlendMode":
+ case "CIHistogramDisplayFilter":
+ case "CIHoleDistortion":
+ case "CIHueBlendMode":
+ case "CIImageGenerator":
+ case "CIKeystoneCorrection":
+ case "CIKMeans":
+ case "CILightenBlendMode":
+ case "CILightTunnel":
+ case "CILinearBlur":
+ case "CILinearBurnBlendMode":
+ case "CILinearDodgeBlendMode":
+ case "CILuminosityBlendMode":
+ case "CIMaximumCompositing":
+ case "CIMinimumCompositing":
+ case "CIMorphology":
+ case "CIMorphologyRectangle":
+ case "CIMultiplyBlendMode":
+ case "CIMultiplyCompositing":
+ case "CINinePartStretched":
+ case "CINinePartTiled":
+ case "CIOverlayBlendMode":
+ case "CIPinchDistortion":
+ case "CIPinLightBlendMode":
+ case "CIReductionFilter":
+ case "CIRowAverage":
+ case "CISampleNearest":
+ case "CISaturationBlendMode":
+ case "CIScreenBlendMode":
+ case "CIScreenFilter":
+ case "CISoftLightBlendMode":
+ case "CISourceAtopCompositing":
+ case "CISourceInCompositing":
+ case "CISourceOutCompositing":
+ case "CISourceOverCompositing":
+ case "CIStretchCrop":
+ case "CISubtractBlendMode":
+ case "CITileFilter":
+ case "CITorusLensDistortion":
+ case "CITwirlDistortion":
+ case "CIVortexDistortion":
+ // this list is likely to change with newer Xcode - uncomment if you want to the script to check the list
+ //to_confirm_manually.AppendLine ($"grep {t.Name} `xcode-select -p`/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreImage.framework/Headers/*.h");
+ // since xtro will report the missing protocols this is a 2nd layer of safety :)
+ continue;
+ }
+
+ bool assign = typeof (ICIFilterProtocol).IsAssignableFrom (t);
+ bool suffix = t.Name.EndsWith ("Protocol", StringComparison.Ordinal);
+
+ if (t.IsInterface) {
+ if (assign) {
+ // check that `IFooProtocol` has a [Protocol (Name = "Foo")] attribute
+ var ca = t.GetCustomAttribute (false);
+ if (ca == null) {
+ ReportError ($"Managed {t.Name} should have a '[Protocol (Name=\"{t.Name.Replace ("Protocol", "")}\")]' attribute");
+ }
+ // check that the managed name ends with Protocol, so we can have the _normal_ name to be a concrete type (like our historic, strongly typed filters)
+ if (!suffix) {
+ ReportError ($"Managed {t.Name} should have a 'Protocol' suffix");
+ }
+ } else if (suffix) {
+ ReportError ($"Managed {t.Name} should implement 'ICIFilterProtocol' interface.");
+ }
+ } else if (suffix) {
+ ReportError ($"Managed {t.Name} should be an interface since it represent a protocol");
+ } else if (assign) {
+ // all CIFilter should map to a `ICI*Protocol` interface / protocol
+ bool found = false;
+ foreach (var inft in t.GetInterfaces ()) {
+ if (inft.Namespace == nspace && inft.Name.EndsWith ("Protocol", StringComparison.Ordinal)) {
+ found = true;
+ break;
+ }
+ }
+ if (!found)
+ ReportError ($"Managed CIFilter '{t.Name}' does not conform to any CoreImage filter protocol.");
+ } else if (CIFilterType.IsAssignableFrom (t)) {
+ // missing ICIFilterProtocol
+ to_confirm_manually.AppendLine ($"grep \"protocol {t.Name} \" `xcode-select -p`/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CoreImage.framework/Headers/*.h");
+ ReportError ($"Managed CIFilter '{t.Name}' does not conform to 'ICIFilterProtocol' protocol. Confirm with generated `grep` script on console.");
+ }
+ }
+ if (to_confirm_manually.Length > 0) {
+ Console.WriteLine (to_confirm_manually);
+ }
+ Assert.AreEqual (0, Errors, "{0} potential errors found{1}", Errors, Errors == 0 ? string.Empty : ":\n" + ErrorData.ToString () + "\n");
+ }
+
+ [Test]
+ public void Keys ()
+ {
+ ContinueOnFailure = true;
+ var nspace = CIFilterType.Namespace;
+ var types = CIFilterType.Assembly.GetTypes ();
+ foreach (Type t in types) {
+ if (t.Namespace != nspace)
+ continue;
+
+ if (t.IsAbstract || !CIFilterType.IsAssignableFrom (t))
+ continue;
+
+ // we need to skip the filters that are not supported by the executing version of iOS
+ if (Skip (t))
+ continue;
+
+ var ctor = t.GetConstructor (Type.EmptyTypes);
+ if ((ctor == null) || ctor.IsAbstract)
+ continue;
+
+ CIFilter f = ctor.Invoke (null) as CIFilter;
+
+ // first check that every property can be mapped to an input key - except if it starts with "Output"
+ foreach (var p in t.GetProperties (BindingFlags.Public | BindingFlags.Instance)) {
+ var pt = p.DeclaringType;
+ if (!CIFilterType.IsAssignableFrom (pt) || (pt == CIFilterType))
+ continue;
+
+ if (SkipDueToAttribute (p))
+ continue;
+
+ var getter = p.GetGetMethod ();
+ var ea = getter.GetCustomAttribute (false);
+ // only properties coming (inlined) from protocols have an [Export] attribute
+ if (ea == null)
+ continue;
+ var key = ea.Selector;
+ // 'output' is always explicit
+ if (key.StartsWith ("output", StringComparison.Ordinal)) {
+ if (Array.IndexOf (f.OutputKeys, key) < 0) {
+ ReportError ($"{t.Name}: Property `{p.Name}` mapped to key `{key}` is not part of `OutputKeys`.");
+ //GenerateBinding (f, Console.Out);
+ }
+ } else {
+ // special cases (protocol names are better)
+ switch (t.Name) {
+ case "CIBicubicScaleTransform":
+ switch (key) {
+ case "parameterB":
+ key = "inputB";
+ break;
+ case "parameterC":
+ key = "inputC";
+ break;
+ }
+ break;
+ case "CICmykHalftone":
+ switch (key) {
+ case "grayComponentReplacement":
+ key = "inputGCR";
+ break;
+ case "underColorRemoval":
+ key = "inputUCR";
+ break;
+ }
+ break;
+ }
+ // 'input' is implied (generally) and explicit (in a few cases)
+ if (!key.StartsWith ("input", StringComparison.Ordinal))
+ key = "input" + Char.ToUpperInvariant (key [0]) + key.Substring (1);
+
+ if (Array.IndexOf (f.InputKeys, key) < 0) {
+ ReportError ($"{t.Name}: Property `{p.Name}` mapped to key `{key}` is not part of `InputKeys`.");
+ //GenerateBinding (f, Console.Out);
+ }
+ }
+ }
+
+ // second check that every input key is mapped to an property
+ foreach (var key in f.InputKeys) {
+ string cap = Char.ToUpperInvariant (key [0]) + key.Substring (1);
+ // special cases (protocol names are better)
+ switch (t.Name) {
+ case "CICmykHalftone":
+ switch (key) {
+ case "inputGCR":
+ cap = "GrayComponentReplacement";
+ break;
+ case "inputUCR":
+ cap = "UnderColorRemoval";
+ break;
+ }
+ break;
+ }
+ // IgnoreCase because there are acronyms (more than 2 letters) that naming convention force us to change
+ var pi = t.GetProperty (cap, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance | BindingFlags.FlattenHierarchy);
+ if (pi == null) {
+ // 2nd chance: some, but not all, property are prefixed by `Input`
+ if (key.StartsWith ("input", StringComparison.Ordinal)) {
+ cap = Char.ToUpperInvariant (key [5]) + key.Substring (6);
+ pi = t.GetProperty (cap, BindingFlags.Public | BindingFlags.Instance | BindingFlags.FlattenHierarchy);
+ }
+ }
+ if (pi == null) {
+ ReportError ($"{t.Name}: Input Key `{key}` is NOT mapped to a `{cap}` property.");
+ //GenerateBinding (f, Console.Out);
+ } else if (pi.GetSetMethod () == null)
+ ReportError ($"{t.Name}: Property `{pi.Name}` MUST have a setter.");
+ }
+
+ // third check that every output key is mapped to an property
+ foreach (var key in f.OutputKeys) {
+ // special cases
+ switch (t.Name) {
+ case "CIKeystoneCorrectionCombined":
+ case "CIKeystoneCorrectionHorizontal":
+ case "CIKeystoneCorrectionVertical":
+ switch (key) {
+ case "outputRotationFilter":
+ continue; // lack of documentation about the returned type
+ }
+ break;
+ case "CILanczosScaleTransform":
+ switch (key) {
+ // ref: https://github.com/xamarin/xamarin-macios/issues/7209
+ case "outputImageNewScaleX:scaleY:":
+ case "outputImageOldScaleX:scaleY:":
+ continue;
+ }
+ break;
+ case "CIDiscBlur":
+ switch (key) {
+ // existed in iOS 10.3 but not in iOS 13 - we're not adding them
+ case "outputImageOriginal":
+ case "outputImageEnhanced":
+ continue;
+ }
+ break;
+ }
+
+ var cap = Char.ToUpperInvariant (key [0]) + key.Substring (1);
+ // IgnoreCase because there are acronyms (more than 2 letters) that naming convention force us to change
+ var po = t.GetProperty (cap, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance | BindingFlags.FlattenHierarchy);
+ if (po == null) {
+ ReportError ($"{t.Name}: Output Key `{key}` is NOT mapped to a `{cap}` property.");
+ //GenerateBinding (f, Console.Out);
+ } else if (po.GetSetMethod () != null)
+ ReportError ($"{t.Name}: Property `{po.Name}` should NOT have a setter.");
+ }
+ }
+ Assert.AreEqual (0, Errors, "{0} potential errors found{1}", Errors, Errors == 0 ? string.Empty : ":\n" + ErrorData.ToString () + "\n");
+ }
}
}
diff --git a/tests/introspection/ApiTypoTest.cs b/tests/introspection/ApiTypoTest.cs
index aad09889cd98..ed37f401bec9 100644
--- a/tests/introspection/ApiTypoTest.cs
+++ b/tests/introspection/ApiTypoTest.cs
@@ -489,6 +489,7 @@ public virtual bool Skip (MemberInfo methodName, string typo) {
"Snapshotter",
"Snorm",
"Sobel",
+ "Softmax", // get_SoftmaxNormalization
"Spacei",
"Sqrt",
"Srgb",
diff --git a/tests/xtro-sharpie/common-CoreImage.ignore b/tests/xtro-sharpie/common-CoreImage.ignore
index 098187f91977..f67e10b63bea 100644
--- a/tests/xtro-sharpie/common-CoreImage.ignore
+++ b/tests/xtro-sharpie/common-CoreImage.ignore
@@ -15,3 +15,188 @@
## at some point in time (iOS11/macOS 10.11) this API was removed/deprecated and we added a compatibility
## stub using 'autoAdjustmentFiltersWithOptions:'. Now it's back (in headers but can be ignored)
!missing-selector! CIImage::autoAdjustmentFilters not bound
+
+## we already provide alternative API to create the filters
+!missing-selector! +CIFilter::accordionFoldTransitionFilter not bound
+!missing-selector! +CIFilter::additionCompositingFilter not bound
+!missing-selector! +CIFilter::affineClampFilter not bound
+!missing-selector! +CIFilter::affineTileFilter not bound
+!missing-selector! +CIFilter::attributedTextImageGeneratorFilter not bound
+!missing-selector! +CIFilter::aztecCodeGeneratorFilter not bound
+!missing-selector! +CIFilter::barcodeGeneratorFilter not bound
+!missing-selector! +CIFilter::barsSwipeTransitionFilter not bound
+!missing-selector! +CIFilter::bicubicScaleTransformFilter not bound
+!missing-selector! +CIFilter::blendWithAlphaMaskFilter not bound
+!missing-selector! +CIFilter::blendWithBlueMaskFilter not bound
+!missing-selector! +CIFilter::blendWithMaskFilter not bound
+!missing-selector! +CIFilter::blendWithRedMaskFilter not bound
+!missing-selector! +CIFilter::bloomFilter not bound
+!missing-selector! +CIFilter::bokehBlurFilter not bound
+!missing-selector! +CIFilter::boxBlurFilter not bound
+!missing-selector! +CIFilter::checkerboardGeneratorFilter not bound
+!missing-selector! +CIFilter::circularScreenFilter not bound
+!missing-selector! +CIFilter::CMYKHalftone not bound
+!missing-selector! +CIFilter::code128BarcodeGeneratorFilter not bound
+!missing-selector! +CIFilter::colorBlendModeFilter not bound
+!missing-selector! +CIFilter::colorBurnBlendModeFilter not bound
+!missing-selector! +CIFilter::colorClampFilter not bound
+!missing-selector! +CIFilter::colorControlsFilter not bound
+!missing-selector! +CIFilter::colorCrossPolynomialFilter not bound
+!missing-selector! +CIFilter::colorCubeFilter not bound
+!missing-selector! +CIFilter::colorCubesMixedWithMaskFilter not bound
+!missing-selector! +CIFilter::colorCubeWithColorSpaceFilter not bound
+!missing-selector! +CIFilter::colorCurvesFilter not bound
+!missing-selector! +CIFilter::colorDodgeBlendModeFilter not bound
+!missing-selector! +CIFilter::colorInvertFilter not bound
+!missing-selector! +CIFilter::colorMapFilter not bound
+!missing-selector! +CIFilter::colorMatrixFilter not bound
+!missing-selector! +CIFilter::colorMonochromeFilter not bound
+!missing-selector! +CIFilter::colorPolynomialFilter not bound
+!missing-selector! +CIFilter::colorPosterizeFilter not bound
+!missing-selector! +CIFilter::comicEffectFilter not bound
+!missing-selector! +CIFilter::convolution3X3Filter not bound
+!missing-selector! +CIFilter::convolution5X5Filter not bound
+!missing-selector! +CIFilter::convolution7X7Filter not bound
+!missing-selector! +CIFilter::convolution9HorizontalFilter not bound
+!missing-selector! +CIFilter::convolution9VerticalFilter not bound
+!missing-selector! +CIFilter::copyMachineTransitionFilter not bound
+!missing-selector! +CIFilter::coreMLModelFilter not bound
+!missing-selector! +CIFilter::crystallizeFilter not bound
+!missing-selector! +CIFilter::darkenBlendModeFilter not bound
+!missing-selector! +CIFilter::depthOfFieldFilter not bound
+!missing-selector! +CIFilter::depthToDisparityFilter not bound
+!missing-selector! +CIFilter::differenceBlendModeFilter not bound
+!missing-selector! +CIFilter::discBlurFilter not bound
+!missing-selector! +CIFilter::disintegrateWithMaskTransitionFilter not bound
+!missing-selector! +CIFilter::disparityToDepthFilter not bound
+!missing-selector! +CIFilter::dissolveTransitionFilter not bound
+!missing-selector! +CIFilter::ditherFilter not bound
+!missing-selector! +CIFilter::divideBlendModeFilter not bound
+!missing-selector! +CIFilter::documentEnhancerFilter not bound
+!missing-selector! +CIFilter::dotScreenFilter not bound
+!missing-selector! +CIFilter::edgePreserveUpsampleFilter not bound
+!missing-selector! +CIFilter::edgesFilter not bound
+!missing-selector! +CIFilter::edgeWorkFilter not bound
+!missing-selector! +CIFilter::eightfoldReflectedTileFilter not bound
+!missing-selector! +CIFilter::exclusionBlendModeFilter not bound
+!missing-selector! +CIFilter::exposureAdjustFilter not bound
+!missing-selector! +CIFilter::falseColorFilter not bound
+!missing-selector! +CIFilter::flashTransitionFilter not bound
+!missing-selector! +CIFilter::fourfoldReflectedTileFilter not bound
+!missing-selector! +CIFilter::fourfoldRotatedTileFilter not bound
+!missing-selector! +CIFilter::fourfoldTranslatedTileFilter not bound
+!missing-selector! +CIFilter::gaborGradientsFilter not bound
+!missing-selector! +CIFilter::gammaAdjustFilter not bound
+!missing-selector! +CIFilter::gaussianBlurFilter not bound
+!missing-selector! +CIFilter::gaussianGradientFilter not bound
+!missing-selector! +CIFilter::glideReflectedTileFilter not bound
+!missing-selector! +CIFilter::gloomFilter not bound
+!missing-selector! +CIFilter::hardLightBlendModeFilter not bound
+!missing-selector! +CIFilter::hatchedScreenFilter not bound
+!missing-selector! +CIFilter::heightFieldFromMaskFilter not bound
+!missing-selector! +CIFilter::hexagonalPixellateFilter not bound
+!missing-selector! +CIFilter::highlightShadowAdjustFilter not bound
+!missing-selector! +CIFilter::hueAdjustFilter not bound
+!missing-selector! +CIFilter::hueBlendModeFilter not bound
+!missing-selector! +CIFilter::hueSaturationValueGradientFilter not bound
+!missing-selector! +CIFilter::kaleidoscopeFilter not bound
+!missing-selector! +CIFilter::keystoneCorrectionCombinedFilter not bound
+!missing-selector! +CIFilter::keystoneCorrectionHorizontalFilter not bound
+!missing-selector! +CIFilter::keystoneCorrectionVerticalFilter not bound
+!missing-selector! +CIFilter::LabDeltaE not bound
+!missing-selector! +CIFilter::lanczosScaleTransformFilter not bound
+!missing-selector! +CIFilter::lenticularHaloGeneratorFilter not bound
+!missing-selector! +CIFilter::lightenBlendModeFilter not bound
+!missing-selector! +CIFilter::linearBurnBlendModeFilter not bound
+!missing-selector! +CIFilter::linearDodgeBlendModeFilter not bound
+!missing-selector! +CIFilter::linearGradientFilter not bound
+!missing-selector! +CIFilter::linearToSRGBToneCurveFilter not bound
+!missing-selector! +CIFilter::lineOverlayFilter not bound
+!missing-selector! +CIFilter::lineScreenFilter not bound
+!missing-selector! +CIFilter::luminosityBlendModeFilter not bound
+!missing-selector! +CIFilter::maskedVariableBlurFilter not bound
+!missing-selector! +CIFilter::maskToAlphaFilter not bound
+!missing-selector! +CIFilter::maximumComponentFilter not bound
+!missing-selector! +CIFilter::maximumCompositingFilter not bound
+!missing-selector! +CIFilter::medianFilter not bound
+!missing-selector! +CIFilter::meshGeneratorFilter not bound
+!missing-selector! +CIFilter::minimumComponentFilter not bound
+!missing-selector! +CIFilter::minimumCompositingFilter not bound
+!missing-selector! +CIFilter::mixFilter not bound
+!missing-selector! +CIFilter::modTransitionFilter not bound
+!missing-selector! +CIFilter::morphologyGradientFilter not bound
+!missing-selector! +CIFilter::morphologyMaximumFilter not bound
+!missing-selector! +CIFilter::morphologyMinimumFilter not bound
+!missing-selector! +CIFilter::morphologyRectangleMaximumFilter not bound
+!missing-selector! +CIFilter::morphologyRectangleMinimumFilter not bound
+!missing-selector! +CIFilter::motionBlurFilter not bound
+!missing-selector! +CIFilter::multiplyBlendModeFilter not bound
+!missing-selector! +CIFilter::multiplyCompositingFilter not bound
+!missing-selector! +CIFilter::noiseReductionFilter not bound
+!missing-selector! +CIFilter::opTileFilter not bound
+!missing-selector! +CIFilter::overlayBlendModeFilter not bound
+!missing-selector! +CIFilter::pageCurlTransitionFilter not bound
+!missing-selector! +CIFilter::pageCurlWithShadowTransitionFilter not bound
+!missing-selector! +CIFilter::paletteCentroidFilter not bound
+!missing-selector! +CIFilter::palettizeFilter not bound
+!missing-selector! +CIFilter::parallelogramTileFilter not bound
+!missing-selector! +CIFilter::PDF417BarcodeGenerator not bound
+!missing-selector! +CIFilter::perspectiveCorrectionFilter not bound
+!missing-selector! +CIFilter::perspectiveRotateFilter not bound
+!missing-selector! +CIFilter::perspectiveTileFilter not bound
+!missing-selector! +CIFilter::perspectiveTransformFilter not bound
+!missing-selector! +CIFilter::perspectiveTransformWithExtentFilter not bound
+!missing-selector! +CIFilter::photoEffectChromeFilter not bound
+!missing-selector! +CIFilter::photoEffectFadeFilter not bound
+!missing-selector! +CIFilter::photoEffectInstantFilter not bound
+!missing-selector! +CIFilter::photoEffectMonoFilter not bound
+!missing-selector! +CIFilter::photoEffectNoirFilter not bound
+!missing-selector! +CIFilter::photoEffectProcessFilter not bound
+!missing-selector! +CIFilter::photoEffectTonalFilter not bound
+!missing-selector! +CIFilter::photoEffectTransferFilter not bound
+!missing-selector! +CIFilter::pinLightBlendModeFilter not bound
+!missing-selector! +CIFilter::pixellateFilter not bound
+!missing-selector! +CIFilter::pointillizeFilter not bound
+!missing-selector! +CIFilter::QRCodeGenerator not bound
+!missing-selector! +CIFilter::radialGradientFilter not bound
+!missing-selector! +CIFilter::randomGeneratorFilter not bound
+!missing-selector! +CIFilter::rippleTransitionFilter not bound
+!missing-selector! +CIFilter::roundedRectangleGeneratorFilter not bound
+!missing-selector! +CIFilter::saliencyMapFilter not bound
+!missing-selector! +CIFilter::saturationBlendModeFilter not bound
+!missing-selector! +CIFilter::screenBlendModeFilter not bound
+!missing-selector! +CIFilter::sepiaToneFilter not bound
+!missing-selector! +CIFilter::shadedMaterialFilter not bound
+!missing-selector! +CIFilter::sharpenLuminanceFilter not bound
+!missing-selector! +CIFilter::sixfoldReflectedTileFilter not bound
+!missing-selector! +CIFilter::sixfoldRotatedTileFilter not bound
+!missing-selector! +CIFilter::smoothLinearGradientFilter not bound
+!missing-selector! +CIFilter::softLightBlendModeFilter not bound
+!missing-selector! +CIFilter::sourceAtopCompositingFilter not bound
+!missing-selector! +CIFilter::sourceInCompositingFilter not bound
+!missing-selector! +CIFilter::sourceOutCompositingFilter not bound
+!missing-selector! +CIFilter::sourceOverCompositingFilter not bound
+!missing-selector! +CIFilter::spotColorFilter not bound
+!missing-selector! +CIFilter::spotLightFilter not bound
+!missing-selector! +CIFilter::sRGBToneCurveToLinearFilter not bound
+!missing-selector! +CIFilter::starShineGeneratorFilter not bound
+!missing-selector! +CIFilter::straightenFilter not bound
+!missing-selector! +CIFilter::stripesGeneratorFilter not bound
+!missing-selector! +CIFilter::subtractBlendModeFilter not bound
+!missing-selector! +CIFilter::sunbeamsGeneratorFilter not bound
+!missing-selector! +CIFilter::supportedRawCameraModels not bound
+!missing-selector! +CIFilter::swipeTransitionFilter not bound
+!missing-selector! +CIFilter::temperatureAndTintFilter not bound
+!missing-selector! +CIFilter::textImageGeneratorFilter not bound
+!missing-selector! +CIFilter::thermalFilter not bound
+!missing-selector! +CIFilter::toneCurveFilter not bound
+!missing-selector! +CIFilter::triangleKaleidoscopeFilter not bound
+!missing-selector! +CIFilter::triangleTileFilter not bound
+!missing-selector! +CIFilter::twelvefoldReflectedTileFilter not bound
+!missing-selector! +CIFilter::unsharpMaskFilter not bound
+!missing-selector! +CIFilter::vibranceFilter not bound
+!missing-selector! +CIFilter::vignetteEffectFilter not bound
+!missing-selector! +CIFilter::vignetteFilter not bound
+!missing-selector! +CIFilter::whitePointAdjustFilter not bound
+!missing-selector! +CIFilter::xRayFilter not bound
+!missing-selector! +CIFilter::zoomBlurFilter not bound
diff --git a/tests/xtro-sharpie/iOS-CoreImage.todo b/tests/xtro-sharpie/iOS-CoreImage.todo
deleted file mode 100644
index 009771440a13..000000000000
--- a/tests/xtro-sharpie/iOS-CoreImage.todo
+++ /dev/null
@@ -1,358 +0,0 @@
-!missing-field! kCIContextAllowLowPower not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationHairMatte not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationSkinMatte not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationTeethMatte not bound
-!missing-field! kCIImageRepresentationAVSemanticSegmentationMattes not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationHairMatteImage not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationSkinMatteImage not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationTeethMatteImage not bound
-!missing-field! kCIInputEnableEDRModeKey not bound
-!missing-protocol! CIAccordionFoldTransition not bound
-!missing-protocol! CIAffineClamp not bound
-!missing-protocol! CIAffineTile not bound
-!missing-protocol! CIAttributedTextImageGenerator not bound
-!missing-protocol! CIAztecCodeGenerator not bound
-!missing-protocol! CIBarcodeGenerator not bound
-!missing-protocol! CIBarsSwipeTransition not bound
-!missing-protocol! CIBicubicScaleTransform not bound
-!missing-protocol! CIBlendWithMask not bound
-!missing-protocol! CIBloom not bound
-!missing-protocol! CIBokehBlur not bound
-!missing-protocol! CIBoxBlur not bound
-!missing-protocol! CICheckerboardGenerator not bound
-!missing-protocol! CICircularScreen not bound
-!missing-protocol! CICMYKHalftone not bound
-!missing-protocol! CICode128BarcodeGenerator not bound
-!missing-protocol! CIColorClamp not bound
-!missing-protocol! CIColorControls not bound
-!missing-protocol! CIColorCrossPolynomial not bound
-!missing-protocol! CIColorCube not bound
-!missing-protocol! CIColorCubesMixedWithMask not bound
-!missing-protocol! CIColorCubeWithColorSpace not bound
-!missing-protocol! CIColorCurves not bound
-!missing-protocol! CIColorInvert not bound
-!missing-protocol! CIColorMap not bound
-!missing-protocol! CIColorMatrix not bound
-!missing-protocol! CIColorMonochrome not bound
-!missing-protocol! CIColorPolynomial not bound
-!missing-protocol! CIColorPosterize not bound
-!missing-protocol! CIComicEffect not bound
-!missing-protocol! CICompositeOperation not bound
-!missing-protocol! CIConvolution not bound
-!missing-protocol! CICopyMachineTransition not bound
-!missing-protocol! CICoreMLModel not bound
-!missing-protocol! CICrystallize not bound
-!missing-protocol! CIDepthOfField not bound
-!missing-protocol! CIDepthToDisparity not bound
-!missing-protocol! CIDiscBlur not bound
-!missing-protocol! CIDisintegrateWithMaskTransition not bound
-!missing-protocol! CIDisparityToDepth not bound
-!missing-protocol! CIDissolveTransition not bound
-!missing-protocol! CIDither not bound
-!missing-protocol! CIDocumentEnhancer not bound
-!missing-protocol! CIDotScreen not bound
-!missing-protocol! CIEdgePreserveUpsample not bound
-!missing-protocol! CIEdges not bound
-!missing-protocol! CIEdgeWork not bound
-!missing-protocol! CIEightfoldReflectedTile not bound
-!missing-protocol! CIExposureAdjust not bound
-!missing-protocol! CIFalseColor not bound
-!missing-protocol! CIFilter not bound
-!missing-protocol! CIFlashTransition not bound
-!missing-protocol! CIFourCoordinateGeometryFilter not bound
-!missing-protocol! CIFourfoldReflectedTile not bound
-!missing-protocol! CIFourfoldRotatedTile not bound
-!missing-protocol! CIFourfoldTranslatedTile not bound
-!missing-protocol! CIGaborGradients not bound
-!missing-protocol! CIGammaAdjust not bound
-!missing-protocol! CIGaussianBlur not bound
-!missing-protocol! CIGaussianGradient not bound
-!missing-protocol! CIGlideReflectedTile not bound
-!missing-protocol! CIGloom not bound
-!missing-protocol! CIHatchedScreen not bound
-!missing-protocol! CIHeightFieldFromMask not bound
-!missing-protocol! CIHexagonalPixellate not bound
-!missing-protocol! CIHighlightShadowAdjust not bound
-!missing-protocol! CIHueAdjust not bound
-!missing-protocol! CIHueSaturationValueGradient not bound
-!missing-protocol! CIKaleidoscope not bound
-!missing-protocol! CIKeystoneCorrectionCombined not bound
-!missing-protocol! CIKeystoneCorrectionHorizontal not bound
-!missing-protocol! CIKeystoneCorrectionVertical not bound
-!missing-protocol! CILabDeltaE not bound
-!missing-protocol! CILanczosScaleTransform not bound
-!missing-protocol! CILenticularHaloGenerator not bound
-!missing-protocol! CILinearGradient not bound
-!missing-protocol! CILinearToSRGBToneCurve not bound
-!missing-protocol! CILineOverlay not bound
-!missing-protocol! CILineScreen not bound
-!missing-protocol! CIMaskedVariableBlur not bound
-!missing-protocol! CIMaskToAlpha not bound
-!missing-protocol! CIMaximumComponent not bound
-!missing-protocol! CIMedian not bound
-!missing-protocol! CIMeshGenerator not bound
-!missing-protocol! CIMinimumComponent not bound
-!missing-protocol! CIMix not bound
-!missing-protocol! CIModTransition not bound
-!missing-protocol! CIMorphologyGradient not bound
-!missing-protocol! CIMorphologyMaximum not bound
-!missing-protocol! CIMorphologyMinimum not bound
-!missing-protocol! CIMorphologyRectangleMaximum not bound
-!missing-protocol! CIMorphologyRectangleMinimum not bound
-!missing-protocol! CIMotionBlur not bound
-!missing-protocol! CINoiseReduction not bound
-!missing-protocol! CIOpTile not bound
-!missing-protocol! CIPageCurlTransition not bound
-!missing-protocol! CIPageCurlWithShadowTransition not bound
-!missing-protocol! CIPaletteCentroid not bound
-!missing-protocol! CIPalettize not bound
-!missing-protocol! CIParallelogramTile not bound
-!missing-protocol! CIPDF417BarcodeGenerator not bound
-!missing-protocol! CIPerspectiveCorrection not bound
-!missing-protocol! CIPerspectiveRotate not bound
-!missing-protocol! CIPerspectiveTile not bound
-!missing-protocol! CIPerspectiveTransform not bound
-!missing-protocol! CIPerspectiveTransformWithExtent not bound
-!missing-protocol! CIPhotoEffect not bound
-!missing-protocol! CIPixellate not bound
-!missing-protocol! CIPointillize not bound
-!missing-protocol! CIQRCodeGenerator not bound
-!missing-protocol! CIRadialGradient not bound
-!missing-protocol! CIRandomGenerator not bound
-!missing-protocol! CIRippleTransition not bound
-!missing-protocol! CIRoundedRectangleGenerator not bound
-!missing-protocol! CISaliencyMap not bound
-!missing-protocol! CISepiaTone not bound
-!missing-protocol! CIShadedMaterial not bound
-!missing-protocol! CISharpenLuminance not bound
-!missing-protocol! CISixfoldReflectedTile not bound
-!missing-protocol! CISixfoldRotatedTile not bound
-!missing-protocol! CISmoothLinearGradient not bound
-!missing-protocol! CISpotColor not bound
-!missing-protocol! CISpotLight not bound
-!missing-protocol! CISRGBToneCurveToLinear not bound
-!missing-protocol! CIStarShineGenerator not bound
-!missing-protocol! CIStraighten not bound
-!missing-protocol! CIStripesGenerator not bound
-!missing-protocol! CISunbeamsGenerator not bound
-!missing-protocol! CISwipeTransition not bound
-!missing-protocol! CITemperatureAndTint not bound
-!missing-protocol! CITextImageGenerator not bound
-!missing-protocol! CIThermal not bound
-!missing-protocol! CIToneCurve not bound
-!missing-protocol! CITransitionFilter not bound
-!missing-protocol! CITriangleKaleidoscope not bound
-!missing-protocol! CITriangleTile not bound
-!missing-protocol! CITwelvefoldReflectedTile not bound
-!missing-protocol! CIUnsharpMask not bound
-!missing-protocol! CIVibrance not bound
-!missing-protocol! CIVignette not bound
-!missing-protocol! CIVignetteEffect not bound
-!missing-protocol! CIWhitePointAdjust not bound
-!missing-protocol! CIXRay not bound
-!missing-protocol! CIZoomBlur not bound
-!missing-selector! +CIFilter::accordionFoldTransitionFilter not bound
-!missing-selector! +CIFilter::additionCompositingFilter not bound
-!missing-selector! +CIFilter::affineClampFilter not bound
-!missing-selector! +CIFilter::affineTileFilter not bound
-!missing-selector! +CIFilter::attributedTextImageGeneratorFilter not bound
-!missing-selector! +CIFilter::aztecCodeGeneratorFilter not bound
-!missing-selector! +CIFilter::barcodeGeneratorFilter not bound
-!missing-selector! +CIFilter::barsSwipeTransitionFilter not bound
-!missing-selector! +CIFilter::bicubicScaleTransformFilter not bound
-!missing-selector! +CIFilter::blendWithAlphaMaskFilter not bound
-!missing-selector! +CIFilter::blendWithBlueMaskFilter not bound
-!missing-selector! +CIFilter::blendWithMaskFilter not bound
-!missing-selector! +CIFilter::blendWithRedMaskFilter not bound
-!missing-selector! +CIFilter::bloomFilter not bound
-!missing-selector! +CIFilter::bokehBlurFilter not bound
-!missing-selector! +CIFilter::boxBlurFilter not bound
-!missing-selector! +CIFilter::checkerboardGeneratorFilter not bound
-!missing-selector! +CIFilter::circularScreenFilter not bound
-!missing-selector! +CIFilter::CMYKHalftone not bound
-!missing-selector! +CIFilter::code128BarcodeGeneratorFilter not bound
-!missing-selector! +CIFilter::colorBlendModeFilter not bound
-!missing-selector! +CIFilter::colorBurnBlendModeFilter not bound
-!missing-selector! +CIFilter::colorClampFilter not bound
-!missing-selector! +CIFilter::colorControlsFilter not bound
-!missing-selector! +CIFilter::colorCrossPolynomialFilter not bound
-!missing-selector! +CIFilter::colorCubeFilter not bound
-!missing-selector! +CIFilter::colorCubesMixedWithMaskFilter not bound
-!missing-selector! +CIFilter::colorCubeWithColorSpaceFilter not bound
-!missing-selector! +CIFilter::colorCurvesFilter not bound
-!missing-selector! +CIFilter::colorDodgeBlendModeFilter not bound
-!missing-selector! +CIFilter::colorInvertFilter not bound
-!missing-selector! +CIFilter::colorMapFilter not bound
-!missing-selector! +CIFilter::colorMatrixFilter not bound
-!missing-selector! +CIFilter::colorMonochromeFilter not bound
-!missing-selector! +CIFilter::colorPolynomialFilter not bound
-!missing-selector! +CIFilter::colorPosterizeFilter not bound
-!missing-selector! +CIFilter::comicEffectFilter not bound
-!missing-selector! +CIFilter::convolution3X3Filter not bound
-!missing-selector! +CIFilter::convolution5X5Filter not bound
-!missing-selector! +CIFilter::convolution7X7Filter not bound
-!missing-selector! +CIFilter::convolution9HorizontalFilter not bound
-!missing-selector! +CIFilter::convolution9VerticalFilter not bound
-!missing-selector! +CIFilter::copyMachineTransitionFilter not bound
-!missing-selector! +CIFilter::coreMLModelFilter not bound
-!missing-selector! +CIFilter::crystallizeFilter not bound
-!missing-selector! +CIFilter::darkenBlendModeFilter not bound
-!missing-selector! +CIFilter::depthOfFieldFilter not bound
-!missing-selector! +CIFilter::depthToDisparityFilter not bound
-!missing-selector! +CIFilter::differenceBlendModeFilter not bound
-!missing-selector! +CIFilter::discBlurFilter not bound
-!missing-selector! +CIFilter::disintegrateWithMaskTransitionFilter not bound
-!missing-selector! +CIFilter::disparityToDepthFilter not bound
-!missing-selector! +CIFilter::dissolveTransitionFilter not bound
-!missing-selector! +CIFilter::ditherFilter not bound
-!missing-selector! +CIFilter::divideBlendModeFilter not bound
-!missing-selector! +CIFilter::documentEnhancerFilter not bound
-!missing-selector! +CIFilter::dotScreenFilter not bound
-!missing-selector! +CIFilter::edgePreserveUpsampleFilter not bound
-!missing-selector! +CIFilter::edgesFilter not bound
-!missing-selector! +CIFilter::edgeWorkFilter not bound
-!missing-selector! +CIFilter::eightfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::exclusionBlendModeFilter not bound
-!missing-selector! +CIFilter::exposureAdjustFilter not bound
-!missing-selector! +CIFilter::falseColorFilter not bound
-!missing-selector! +CIFilter::flashTransitionFilter not bound
-!missing-selector! +CIFilter::fourfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::fourfoldRotatedTileFilter not bound
-!missing-selector! +CIFilter::fourfoldTranslatedTileFilter not bound
-!missing-selector! +CIFilter::gaborGradientsFilter not bound
-!missing-selector! +CIFilter::gammaAdjustFilter not bound
-!missing-selector! +CIFilter::gaussianBlurFilter not bound
-!missing-selector! +CIFilter::gaussianGradientFilter not bound
-!missing-selector! +CIFilter::glideReflectedTileFilter not bound
-!missing-selector! +CIFilter::gloomFilter not bound
-!missing-selector! +CIFilter::hardLightBlendModeFilter not bound
-!missing-selector! +CIFilter::hatchedScreenFilter not bound
-!missing-selector! +CIFilter::heightFieldFromMaskFilter not bound
-!missing-selector! +CIFilter::hexagonalPixellateFilter not bound
-!missing-selector! +CIFilter::highlightShadowAdjustFilter not bound
-!missing-selector! +CIFilter::hueAdjustFilter not bound
-!missing-selector! +CIFilter::hueBlendModeFilter not bound
-!missing-selector! +CIFilter::hueSaturationValueGradientFilter not bound
-!missing-selector! +CIFilter::kaleidoscopeFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionCombinedFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionHorizontalFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionVerticalFilter not bound
-!missing-selector! +CIFilter::LabDeltaE not bound
-!missing-selector! +CIFilter::lanczosScaleTransformFilter not bound
-!missing-selector! +CIFilter::lenticularHaloGeneratorFilter not bound
-!missing-selector! +CIFilter::lightenBlendModeFilter not bound
-!missing-selector! +CIFilter::linearBurnBlendModeFilter not bound
-!missing-selector! +CIFilter::linearDodgeBlendModeFilter not bound
-!missing-selector! +CIFilter::linearGradientFilter not bound
-!missing-selector! +CIFilter::linearToSRGBToneCurveFilter not bound
-!missing-selector! +CIFilter::lineOverlayFilter not bound
-!missing-selector! +CIFilter::lineScreenFilter not bound
-!missing-selector! +CIFilter::luminosityBlendModeFilter not bound
-!missing-selector! +CIFilter::maskedVariableBlurFilter not bound
-!missing-selector! +CIFilter::maskToAlphaFilter not bound
-!missing-selector! +CIFilter::maximumComponentFilter not bound
-!missing-selector! +CIFilter::maximumCompositingFilter not bound
-!missing-selector! +CIFilter::medianFilter not bound
-!missing-selector! +CIFilter::meshGeneratorFilter not bound
-!missing-selector! +CIFilter::minimumComponentFilter not bound
-!missing-selector! +CIFilter::minimumCompositingFilter not bound
-!missing-selector! +CIFilter::mixFilter not bound
-!missing-selector! +CIFilter::modTransitionFilter not bound
-!missing-selector! +CIFilter::morphologyGradientFilter not bound
-!missing-selector! +CIFilter::morphologyMaximumFilter not bound
-!missing-selector! +CIFilter::morphologyMinimumFilter not bound
-!missing-selector! +CIFilter::morphologyRectangleMaximumFilter not bound
-!missing-selector! +CIFilter::morphologyRectangleMinimumFilter not bound
-!missing-selector! +CIFilter::motionBlurFilter not bound
-!missing-selector! +CIFilter::multiplyBlendModeFilter not bound
-!missing-selector! +CIFilter::multiplyCompositingFilter not bound
-!missing-selector! +CIFilter::noiseReductionFilter not bound
-!missing-selector! +CIFilter::opTileFilter not bound
-!missing-selector! +CIFilter::overlayBlendModeFilter not bound
-!missing-selector! +CIFilter::pageCurlTransitionFilter not bound
-!missing-selector! +CIFilter::pageCurlWithShadowTransitionFilter not bound
-!missing-selector! +CIFilter::paletteCentroidFilter not bound
-!missing-selector! +CIFilter::palettizeFilter not bound
-!missing-selector! +CIFilter::parallelogramTileFilter not bound
-!missing-selector! +CIFilter::PDF417BarcodeGenerator not bound
-!missing-selector! +CIFilter::perspectiveCorrectionFilter not bound
-!missing-selector! +CIFilter::perspectiveRotateFilter not bound
-!missing-selector! +CIFilter::perspectiveTileFilter not bound
-!missing-selector! +CIFilter::perspectiveTransformFilter not bound
-!missing-selector! +CIFilter::perspectiveTransformWithExtentFilter not bound
-!missing-selector! +CIFilter::photoEffectChromeFilter not bound
-!missing-selector! +CIFilter::photoEffectFadeFilter not bound
-!missing-selector! +CIFilter::photoEffectInstantFilter not bound
-!missing-selector! +CIFilter::photoEffectMonoFilter not bound
-!missing-selector! +CIFilter::photoEffectNoirFilter not bound
-!missing-selector! +CIFilter::photoEffectProcessFilter not bound
-!missing-selector! +CIFilter::photoEffectTonalFilter not bound
-!missing-selector! +CIFilter::photoEffectTransferFilter not bound
-!missing-selector! +CIFilter::pinLightBlendModeFilter not bound
-!missing-selector! +CIFilter::pixellateFilter not bound
-!missing-selector! +CIFilter::pointillizeFilter not bound
-!missing-selector! +CIFilter::QRCodeGenerator not bound
-!missing-selector! +CIFilter::radialGradientFilter not bound
-!missing-selector! +CIFilter::randomGeneratorFilter not bound
-!missing-selector! +CIFilter::rippleTransitionFilter not bound
-!missing-selector! +CIFilter::roundedRectangleGeneratorFilter not bound
-!missing-selector! +CIFilter::saliencyMapFilter not bound
-!missing-selector! +CIFilter::saturationBlendModeFilter not bound
-!missing-selector! +CIFilter::screenBlendModeFilter not bound
-!missing-selector! +CIFilter::sepiaToneFilter not bound
-!missing-selector! +CIFilter::shadedMaterialFilter not bound
-!missing-selector! +CIFilter::sharpenLuminanceFilter not bound
-!missing-selector! +CIFilter::sixfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::sixfoldRotatedTileFilter not bound
-!missing-selector! +CIFilter::smoothLinearGradientFilter not bound
-!missing-selector! +CIFilter::softLightBlendModeFilter not bound
-!missing-selector! +CIFilter::sourceAtopCompositingFilter not bound
-!missing-selector! +CIFilter::sourceInCompositingFilter not bound
-!missing-selector! +CIFilter::sourceOutCompositingFilter not bound
-!missing-selector! +CIFilter::sourceOverCompositingFilter not bound
-!missing-selector! +CIFilter::spotColorFilter not bound
-!missing-selector! +CIFilter::spotLightFilter not bound
-!missing-selector! +CIFilter::sRGBToneCurveToLinearFilter not bound
-!missing-selector! +CIFilter::starShineGeneratorFilter not bound
-!missing-selector! +CIFilter::straightenFilter not bound
-!missing-selector! +CIFilter::stripesGeneratorFilter not bound
-!missing-selector! +CIFilter::subtractBlendModeFilter not bound
-!missing-selector! +CIFilter::sunbeamsGeneratorFilter not bound
-!missing-selector! +CIFilter::supportedRawCameraModels not bound
-!missing-selector! +CIFilter::swipeTransitionFilter not bound
-!missing-selector! +CIFilter::temperatureAndTintFilter not bound
-!missing-selector! +CIFilter::textImageGeneratorFilter not bound
-!missing-selector! +CIFilter::thermalFilter not bound
-!missing-selector! +CIFilter::toneCurveFilter not bound
-!missing-selector! +CIFilter::triangleKaleidoscopeFilter not bound
-!missing-selector! +CIFilter::triangleTileFilter not bound
-!missing-selector! +CIFilter::twelvefoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::unsharpMaskFilter not bound
-!missing-selector! +CIFilter::vibranceFilter not bound
-!missing-selector! +CIFilter::vignetteEffectFilter not bound
-!missing-selector! +CIFilter::vignetteFilter not bound
-!missing-selector! +CIFilter::whitePointAdjustFilter not bound
-!missing-selector! +CIFilter::xRayFilter not bound
-!missing-selector! +CIFilter::zoomBlurFilter not bound
-!missing-selector! +CIImage::blackImage not bound
-!missing-selector! +CIImage::blueImage not bound
-!missing-selector! +CIImage::clearImage not bound
-!missing-selector! +CIImage::cyanImage not bound
-!missing-selector! +CIImage::grayImage not bound
-!missing-selector! +CIImage::greenImage not bound
-!missing-selector! +CIImage::imageWithCGImageSource:index:options: not bound
-!missing-selector! +CIImage::imageWithSemanticSegmentationMatte: not bound
-!missing-selector! +CIImage::imageWithSemanticSegmentationMatte:options: not bound
-!missing-selector! +CIImage::magentaImage not bound
-!missing-selector! +CIImage::redImage not bound
-!missing-selector! +CIImage::whiteImage not bound
-!missing-selector! +CIImage::yellowImage not bound
-!missing-selector! CIBlendKernel::applyWithForeground:background:colorSpace: not bound
-!missing-selector! CIContext::depthBlurEffectFilterForImage:disparityImage:portraitEffectsMatte:hairSemanticSegmentation:orientation:options: not bound
-!missing-selector! CIImage::imageByApplyingTransform:highQualityDownsample: not bound
-!missing-selector! CIImage::initWithCGImageSource:index:options: not bound
-!missing-selector! CIImage::initWithSemanticSegmentationMatte: not bound
-!missing-selector! CIImage::initWithSemanticSegmentationMatte:options: not bound
-!missing-selector! CIImage::semanticSegmentationMatte not bound
-!missing-selector! +CIContext::contextWithMTLCommandQueue: not bound
-!missing-selector! +CIContext::contextWithMTLCommandQueue:options: not bound
diff --git a/tests/xtro-sharpie/macOS-CoreImage.todo b/tests/xtro-sharpie/macOS-CoreImage.todo
deleted file mode 100644
index 95a2645580dc..000000000000
--- a/tests/xtro-sharpie/macOS-CoreImage.todo
+++ /dev/null
@@ -1,360 +0,0 @@
-!deprecated-attribute-missing! CIPlugIn::loadAllPlugIns missing a [Deprecated] attribute
-!missing-field! kCIContextAllowLowPower not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationHairMatte not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationSkinMatte not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationTeethMatte not bound
-!missing-field! kCIImageRepresentationAVSemanticSegmentationMattes not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationHairMatteImage not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationSkinMatteImage not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationTeethMatteImage not bound
-!missing-field! kCIInputEnableEDRModeKey not bound
-!missing-protocol! CIAccordionFoldTransition not bound
-!missing-protocol! CIAffineClamp not bound
-!missing-protocol! CIAffineTile not bound
-!missing-protocol! CIAttributedTextImageGenerator not bound
-!missing-protocol! CIAztecCodeGenerator not bound
-!missing-protocol! CIBarcodeGenerator not bound
-!missing-protocol! CIBarsSwipeTransition not bound
-!missing-protocol! CIBicubicScaleTransform not bound
-!missing-protocol! CIBlendWithMask not bound
-!missing-protocol! CIBloom not bound
-!missing-protocol! CIBokehBlur not bound
-!missing-protocol! CIBoxBlur not bound
-!missing-protocol! CICheckerboardGenerator not bound
-!missing-protocol! CICircularScreen not bound
-!missing-protocol! CICMYKHalftone not bound
-!missing-protocol! CICode128BarcodeGenerator not bound
-!missing-protocol! CIColorClamp not bound
-!missing-protocol! CIColorControls not bound
-!missing-protocol! CIColorCrossPolynomial not bound
-!missing-protocol! CIColorCube not bound
-!missing-protocol! CIColorCubesMixedWithMask not bound
-!missing-protocol! CIColorCubeWithColorSpace not bound
-!missing-protocol! CIColorCurves not bound
-!missing-protocol! CIColorInvert not bound
-!missing-protocol! CIColorMap not bound
-!missing-protocol! CIColorMatrix not bound
-!missing-protocol! CIColorMonochrome not bound
-!missing-protocol! CIColorPolynomial not bound
-!missing-protocol! CIColorPosterize not bound
-!missing-protocol! CIComicEffect not bound
-!missing-protocol! CICompositeOperation not bound
-!missing-protocol! CIConvolution not bound
-!missing-protocol! CICopyMachineTransition not bound
-!missing-protocol! CICoreMLModel not bound
-!missing-protocol! CICrystallize not bound
-!missing-protocol! CIDepthOfField not bound
-!missing-protocol! CIDepthToDisparity not bound
-!missing-protocol! CIDiscBlur not bound
-!missing-protocol! CIDisintegrateWithMaskTransition not bound
-!missing-protocol! CIDisparityToDepth not bound
-!missing-protocol! CIDissolveTransition not bound
-!missing-protocol! CIDither not bound
-!missing-protocol! CIDocumentEnhancer not bound
-!missing-protocol! CIDotScreen not bound
-!missing-protocol! CIEdgePreserveUpsample not bound
-!missing-protocol! CIEdges not bound
-!missing-protocol! CIEdgeWork not bound
-!missing-protocol! CIEightfoldReflectedTile not bound
-!missing-protocol! CIExposureAdjust not bound
-!missing-protocol! CIFalseColor not bound
-!missing-protocol! CIFilter not bound
-!missing-protocol! CIFlashTransition not bound
-!missing-protocol! CIFourCoordinateGeometryFilter not bound
-!missing-protocol! CIFourfoldReflectedTile not bound
-!missing-protocol! CIFourfoldRotatedTile not bound
-!missing-protocol! CIFourfoldTranslatedTile not bound
-!missing-protocol! CIGaborGradients not bound
-!missing-protocol! CIGammaAdjust not bound
-!missing-protocol! CIGaussianBlur not bound
-!missing-protocol! CIGaussianGradient not bound
-!missing-protocol! CIGlideReflectedTile not bound
-!missing-protocol! CIGloom not bound
-!missing-protocol! CIHatchedScreen not bound
-!missing-protocol! CIHeightFieldFromMask not bound
-!missing-protocol! CIHexagonalPixellate not bound
-!missing-protocol! CIHighlightShadowAdjust not bound
-!missing-protocol! CIHueAdjust not bound
-!missing-protocol! CIHueSaturationValueGradient not bound
-!missing-protocol! CIKaleidoscope not bound
-!missing-protocol! CIKeystoneCorrectionCombined not bound
-!missing-protocol! CIKeystoneCorrectionHorizontal not bound
-!missing-protocol! CIKeystoneCorrectionVertical not bound
-!missing-protocol! CILabDeltaE not bound
-!missing-protocol! CILanczosScaleTransform not bound
-!missing-protocol! CILenticularHaloGenerator not bound
-!missing-protocol! CILinearGradient not bound
-!missing-protocol! CILinearToSRGBToneCurve not bound
-!missing-protocol! CILineOverlay not bound
-!missing-protocol! CILineScreen not bound
-!missing-protocol! CIMaskedVariableBlur not bound
-!missing-protocol! CIMaskToAlpha not bound
-!missing-protocol! CIMaximumComponent not bound
-!missing-protocol! CIMedian not bound
-!missing-protocol! CIMeshGenerator not bound
-!missing-protocol! CIMinimumComponent not bound
-!missing-protocol! CIMix not bound
-!missing-protocol! CIModTransition not bound
-!missing-protocol! CIMorphologyGradient not bound
-!missing-protocol! CIMorphologyMaximum not bound
-!missing-protocol! CIMorphologyMinimum not bound
-!missing-protocol! CIMorphologyRectangleMaximum not bound
-!missing-protocol! CIMorphologyRectangleMinimum not bound
-!missing-protocol! CIMotionBlur not bound
-!missing-protocol! CINoiseReduction not bound
-!missing-protocol! CIOpTile not bound
-!missing-protocol! CIPageCurlTransition not bound
-!missing-protocol! CIPageCurlWithShadowTransition not bound
-!missing-protocol! CIPaletteCentroid not bound
-!missing-protocol! CIPalettize not bound
-!missing-protocol! CIParallelogramTile not bound
-!missing-protocol! CIPDF417BarcodeGenerator not bound
-!missing-protocol! CIPerspectiveCorrection not bound
-!missing-protocol! CIPerspectiveRotate not bound
-!missing-protocol! CIPerspectiveTile not bound
-!missing-protocol! CIPerspectiveTransform not bound
-!missing-protocol! CIPerspectiveTransformWithExtent not bound
-!missing-protocol! CIPhotoEffect not bound
-!missing-protocol! CIPixellate not bound
-!missing-protocol! CIPointillize not bound
-!missing-protocol! CIQRCodeGenerator not bound
-!missing-protocol! CIRadialGradient not bound
-!missing-protocol! CIRandomGenerator not bound
-!missing-protocol! CIRippleTransition not bound
-!missing-protocol! CIRoundedRectangleGenerator not bound
-!missing-protocol! CISaliencyMap not bound
-!missing-protocol! CISepiaTone not bound
-!missing-protocol! CIShadedMaterial not bound
-!missing-protocol! CISharpenLuminance not bound
-!missing-protocol! CISixfoldReflectedTile not bound
-!missing-protocol! CISixfoldRotatedTile not bound
-!missing-protocol! CISmoothLinearGradient not bound
-!missing-protocol! CISpotColor not bound
-!missing-protocol! CISpotLight not bound
-!missing-protocol! CISRGBToneCurveToLinear not bound
-!missing-protocol! CIStarShineGenerator not bound
-!missing-protocol! CIStraighten not bound
-!missing-protocol! CIStripesGenerator not bound
-!missing-protocol! CISunbeamsGenerator not bound
-!missing-protocol! CISwipeTransition not bound
-!missing-protocol! CITemperatureAndTint not bound
-!missing-protocol! CITextImageGenerator not bound
-!missing-protocol! CIThermal not bound
-!missing-protocol! CIToneCurve not bound
-!missing-protocol! CITransitionFilter not bound
-!missing-protocol! CITriangleKaleidoscope not bound
-!missing-protocol! CITriangleTile not bound
-!missing-protocol! CITwelvefoldReflectedTile not bound
-!missing-protocol! CIUnsharpMask not bound
-!missing-protocol! CIVibrance not bound
-!missing-protocol! CIVignette not bound
-!missing-protocol! CIVignetteEffect not bound
-!missing-protocol! CIWhitePointAdjust not bound
-!missing-protocol! CIXRay not bound
-!missing-protocol! CIZoomBlur not bound
-!missing-selector! +CIFilter::accordionFoldTransitionFilter not bound
-!missing-selector! +CIFilter::additionCompositingFilter not bound
-!missing-selector! +CIFilter::affineClampFilter not bound
-!missing-selector! +CIFilter::affineTileFilter not bound
-!missing-selector! +CIFilter::attributedTextImageGeneratorFilter not bound
-!missing-selector! +CIFilter::aztecCodeGeneratorFilter not bound
-!missing-selector! +CIFilter::barcodeGeneratorFilter not bound
-!missing-selector! +CIFilter::barsSwipeTransitionFilter not bound
-!missing-selector! +CIFilter::bicubicScaleTransformFilter not bound
-!missing-selector! +CIFilter::blendWithAlphaMaskFilter not bound
-!missing-selector! +CIFilter::blendWithBlueMaskFilter not bound
-!missing-selector! +CIFilter::blendWithMaskFilter not bound
-!missing-selector! +CIFilter::blendWithRedMaskFilter not bound
-!missing-selector! +CIFilter::bloomFilter not bound
-!missing-selector! +CIFilter::bokehBlurFilter not bound
-!missing-selector! +CIFilter::boxBlurFilter not bound
-!missing-selector! +CIFilter::checkerboardGeneratorFilter not bound
-!missing-selector! +CIFilter::circularScreenFilter not bound
-!missing-selector! +CIFilter::CMYKHalftone not bound
-!missing-selector! +CIFilter::code128BarcodeGeneratorFilter not bound
-!missing-selector! +CIFilter::colorBlendModeFilter not bound
-!missing-selector! +CIFilter::colorBurnBlendModeFilter not bound
-!missing-selector! +CIFilter::colorClampFilter not bound
-!missing-selector! +CIFilter::colorControlsFilter not bound
-!missing-selector! +CIFilter::colorCrossPolynomialFilter not bound
-!missing-selector! +CIFilter::colorCubeFilter not bound
-!missing-selector! +CIFilter::colorCubesMixedWithMaskFilter not bound
-!missing-selector! +CIFilter::colorCubeWithColorSpaceFilter not bound
-!missing-selector! +CIFilter::colorCurvesFilter not bound
-!missing-selector! +CIFilter::colorDodgeBlendModeFilter not bound
-!missing-selector! +CIFilter::colorInvertFilter not bound
-!missing-selector! +CIFilter::colorMapFilter not bound
-!missing-selector! +CIFilter::colorMatrixFilter not bound
-!missing-selector! +CIFilter::colorMonochromeFilter not bound
-!missing-selector! +CIFilter::colorPolynomialFilter not bound
-!missing-selector! +CIFilter::colorPosterizeFilter not bound
-!missing-selector! +CIFilter::comicEffectFilter not bound
-!missing-selector! +CIFilter::convolution3X3Filter not bound
-!missing-selector! +CIFilter::convolution5X5Filter not bound
-!missing-selector! +CIFilter::convolution7X7Filter not bound
-!missing-selector! +CIFilter::convolution9HorizontalFilter not bound
-!missing-selector! +CIFilter::convolution9VerticalFilter not bound
-!missing-selector! +CIFilter::copyMachineTransitionFilter not bound
-!missing-selector! +CIFilter::coreMLModelFilter not bound
-!missing-selector! +CIFilter::crystallizeFilter not bound
-!missing-selector! +CIFilter::darkenBlendModeFilter not bound
-!missing-selector! +CIFilter::depthOfFieldFilter not bound
-!missing-selector! +CIFilter::depthToDisparityFilter not bound
-!missing-selector! +CIFilter::differenceBlendModeFilter not bound
-!missing-selector! +CIFilter::discBlurFilter not bound
-!missing-selector! +CIFilter::disintegrateWithMaskTransitionFilter not bound
-!missing-selector! +CIFilter::disparityToDepthFilter not bound
-!missing-selector! +CIFilter::dissolveTransitionFilter not bound
-!missing-selector! +CIFilter::ditherFilter not bound
-!missing-selector! +CIFilter::divideBlendModeFilter not bound
-!missing-selector! +CIFilter::documentEnhancerFilter not bound
-!missing-selector! +CIFilter::dotScreenFilter not bound
-!missing-selector! +CIFilter::edgePreserveUpsampleFilter not bound
-!missing-selector! +CIFilter::edgesFilter not bound
-!missing-selector! +CIFilter::edgeWorkFilter not bound
-!missing-selector! +CIFilter::eightfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::exclusionBlendModeFilter not bound
-!missing-selector! +CIFilter::exposureAdjustFilter not bound
-!missing-selector! +CIFilter::falseColorFilter not bound
-!missing-selector! +CIFilter::flashTransitionFilter not bound
-!missing-selector! +CIFilter::fourfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::fourfoldRotatedTileFilter not bound
-!missing-selector! +CIFilter::fourfoldTranslatedTileFilter not bound
-!missing-selector! +CIFilter::gaborGradientsFilter not bound
-!missing-selector! +CIFilter::gammaAdjustFilter not bound
-!missing-selector! +CIFilter::gaussianBlurFilter not bound
-!missing-selector! +CIFilter::gaussianGradientFilter not bound
-!missing-selector! +CIFilter::glideReflectedTileFilter not bound
-!missing-selector! +CIFilter::gloomFilter not bound
-!missing-selector! +CIFilter::hardLightBlendModeFilter not bound
-!missing-selector! +CIFilter::hatchedScreenFilter not bound
-!missing-selector! +CIFilter::heightFieldFromMaskFilter not bound
-!missing-selector! +CIFilter::hexagonalPixellateFilter not bound
-!missing-selector! +CIFilter::highlightShadowAdjustFilter not bound
-!missing-selector! +CIFilter::hueAdjustFilter not bound
-!missing-selector! +CIFilter::hueBlendModeFilter not bound
-!missing-selector! +CIFilter::hueSaturationValueGradientFilter not bound
-!missing-selector! +CIFilter::kaleidoscopeFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionCombinedFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionHorizontalFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionVerticalFilter not bound
-!missing-selector! +CIFilter::LabDeltaE not bound
-!missing-selector! +CIFilter::lanczosScaleTransformFilter not bound
-!missing-selector! +CIFilter::lenticularHaloGeneratorFilter not bound
-!missing-selector! +CIFilter::lightenBlendModeFilter not bound
-!missing-selector! +CIFilter::linearBurnBlendModeFilter not bound
-!missing-selector! +CIFilter::linearDodgeBlendModeFilter not bound
-!missing-selector! +CIFilter::linearGradientFilter not bound
-!missing-selector! +CIFilter::linearToSRGBToneCurveFilter not bound
-!missing-selector! +CIFilter::lineOverlayFilter not bound
-!missing-selector! +CIFilter::lineScreenFilter not bound
-!missing-selector! +CIFilter::luminosityBlendModeFilter not bound
-!missing-selector! +CIFilter::maskedVariableBlurFilter not bound
-!missing-selector! +CIFilter::maskToAlphaFilter not bound
-!missing-selector! +CIFilter::maximumComponentFilter not bound
-!missing-selector! +CIFilter::maximumCompositingFilter not bound
-!missing-selector! +CIFilter::medianFilter not bound
-!missing-selector! +CIFilter::meshGeneratorFilter not bound
-!missing-selector! +CIFilter::minimumComponentFilter not bound
-!missing-selector! +CIFilter::minimumCompositingFilter not bound
-!missing-selector! +CIFilter::mixFilter not bound
-!missing-selector! +CIFilter::modTransitionFilter not bound
-!missing-selector! +CIFilter::morphologyGradientFilter not bound
-!missing-selector! +CIFilter::morphologyMaximumFilter not bound
-!missing-selector! +CIFilter::morphologyMinimumFilter not bound
-!missing-selector! +CIFilter::morphologyRectangleMaximumFilter not bound
-!missing-selector! +CIFilter::morphologyRectangleMinimumFilter not bound
-!missing-selector! +CIFilter::motionBlurFilter not bound
-!missing-selector! +CIFilter::multiplyBlendModeFilter not bound
-!missing-selector! +CIFilter::multiplyCompositingFilter not bound
-!missing-selector! +CIFilter::noiseReductionFilter not bound
-!missing-selector! +CIFilter::opTileFilter not bound
-!missing-selector! +CIFilter::overlayBlendModeFilter not bound
-!missing-selector! +CIFilter::pageCurlTransitionFilter not bound
-!missing-selector! +CIFilter::pageCurlWithShadowTransitionFilter not bound
-!missing-selector! +CIFilter::paletteCentroidFilter not bound
-!missing-selector! +CIFilter::palettizeFilter not bound
-!missing-selector! +CIFilter::parallelogramTileFilter not bound
-!missing-selector! +CIFilter::PDF417BarcodeGenerator not bound
-!missing-selector! +CIFilter::perspectiveCorrectionFilter not bound
-!missing-selector! +CIFilter::perspectiveRotateFilter not bound
-!missing-selector! +CIFilter::perspectiveTileFilter not bound
-!missing-selector! +CIFilter::perspectiveTransformFilter not bound
-!missing-selector! +CIFilter::perspectiveTransformWithExtentFilter not bound
-!missing-selector! +CIFilter::photoEffectChromeFilter not bound
-!missing-selector! +CIFilter::photoEffectFadeFilter not bound
-!missing-selector! +CIFilter::photoEffectInstantFilter not bound
-!missing-selector! +CIFilter::photoEffectMonoFilter not bound
-!missing-selector! +CIFilter::photoEffectNoirFilter not bound
-!missing-selector! +CIFilter::photoEffectProcessFilter not bound
-!missing-selector! +CIFilter::photoEffectTonalFilter not bound
-!missing-selector! +CIFilter::photoEffectTransferFilter not bound
-!missing-selector! +CIFilter::pinLightBlendModeFilter not bound
-!missing-selector! +CIFilter::pixellateFilter not bound
-!missing-selector! +CIFilter::pointillizeFilter not bound
-!missing-selector! +CIFilter::QRCodeGenerator not bound
-!missing-selector! +CIFilter::radialGradientFilter not bound
-!missing-selector! +CIFilter::randomGeneratorFilter not bound
-!missing-selector! +CIFilter::rippleTransitionFilter not bound
-!missing-selector! +CIFilter::roundedRectangleGeneratorFilter not bound
-!missing-selector! +CIFilter::saliencyMapFilter not bound
-!missing-selector! +CIFilter::saturationBlendModeFilter not bound
-!missing-selector! +CIFilter::screenBlendModeFilter not bound
-!missing-selector! +CIFilter::sepiaToneFilter not bound
-!missing-selector! +CIFilter::shadedMaterialFilter not bound
-!missing-selector! +CIFilter::sharpenLuminanceFilter not bound
-!missing-selector! +CIFilter::sixfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::sixfoldRotatedTileFilter not bound
-!missing-selector! +CIFilter::smoothLinearGradientFilter not bound
-!missing-selector! +CIFilter::softLightBlendModeFilter not bound
-!missing-selector! +CIFilter::sourceAtopCompositingFilter not bound
-!missing-selector! +CIFilter::sourceInCompositingFilter not bound
-!missing-selector! +CIFilter::sourceOutCompositingFilter not bound
-!missing-selector! +CIFilter::sourceOverCompositingFilter not bound
-!missing-selector! +CIFilter::spotColorFilter not bound
-!missing-selector! +CIFilter::spotLightFilter not bound
-!missing-selector! +CIFilter::sRGBToneCurveToLinearFilter not bound
-!missing-selector! +CIFilter::starShineGeneratorFilter not bound
-!missing-selector! +CIFilter::straightenFilter not bound
-!missing-selector! +CIFilter::stripesGeneratorFilter not bound
-!missing-selector! +CIFilter::subtractBlendModeFilter not bound
-!missing-selector! +CIFilter::sunbeamsGeneratorFilter not bound
-!missing-selector! +CIFilter::supportedRawCameraModels not bound
-!missing-selector! +CIFilter::swipeTransitionFilter not bound
-!missing-selector! +CIFilter::temperatureAndTintFilter not bound
-!missing-selector! +CIFilter::textImageGeneratorFilter not bound
-!missing-selector! +CIFilter::thermalFilter not bound
-!missing-selector! +CIFilter::toneCurveFilter not bound
-!missing-selector! +CIFilter::triangleKaleidoscopeFilter not bound
-!missing-selector! +CIFilter::triangleTileFilter not bound
-!missing-selector! +CIFilter::twelvefoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::unsharpMaskFilter not bound
-!missing-selector! +CIFilter::vibranceFilter not bound
-!missing-selector! +CIFilter::vignetteEffectFilter not bound
-!missing-selector! +CIFilter::vignetteFilter not bound
-!missing-selector! +CIFilter::whitePointAdjustFilter not bound
-!missing-selector! +CIFilter::xRayFilter not bound
-!missing-selector! +CIFilter::zoomBlurFilter not bound
-!missing-selector! +CIImage::blackImage not bound
-!missing-selector! +CIImage::blueImage not bound
-!missing-selector! +CIImage::clearImage not bound
-!missing-selector! +CIImage::cyanImage not bound
-!missing-selector! +CIImage::grayImage not bound
-!missing-selector! +CIImage::greenImage not bound
-!missing-selector! +CIImage::imageWithCGImageSource:index:options: not bound
-!missing-selector! +CIImage::imageWithSemanticSegmentationMatte: not bound
-!missing-selector! +CIImage::imageWithSemanticSegmentationMatte:options: not bound
-!missing-selector! +CIImage::magentaImage not bound
-!missing-selector! +CIImage::redImage not bound
-!missing-selector! +CIImage::whiteImage not bound
-!missing-selector! +CIImage::yellowImage not bound
-!missing-selector! +CIPlugIn::loadNonExecutablePlugIn: not bound
-!missing-selector! CIBlendKernel::applyWithForeground:background:colorSpace: not bound
-!missing-selector! CIContext::depthBlurEffectFilterForImage:disparityImage:portraitEffectsMatte:hairSemanticSegmentation:orientation:options: not bound
-!missing-selector! CIImage::imageByApplyingTransform:highQualityDownsample: not bound
-!missing-selector! CIImage::initWithCGImageSource:index:options: not bound
-!missing-selector! CIImage::initWithSemanticSegmentationMatte: not bound
-!missing-selector! CIImage::initWithSemanticSegmentationMatte:options: not bound
-!missing-selector! CIImage::semanticSegmentationMatte not bound
-!missing-selector! +CIContext::contextWithMTLCommandQueue: not bound
-!missing-selector! +CIContext::contextWithMTLCommandQueue:options: not bound
diff --git a/tests/xtro-sharpie/tvOS-CoreImage.todo b/tests/xtro-sharpie/tvOS-CoreImage.todo
deleted file mode 100644
index 009771440a13..000000000000
--- a/tests/xtro-sharpie/tvOS-CoreImage.todo
+++ /dev/null
@@ -1,358 +0,0 @@
-!missing-field! kCIContextAllowLowPower not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationHairMatte not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationSkinMatte not bound
-!missing-field! kCIImageAuxiliarySemanticSegmentationTeethMatte not bound
-!missing-field! kCIImageRepresentationAVSemanticSegmentationMattes not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationHairMatteImage not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationSkinMatteImage not bound
-!missing-field! kCIImageRepresentationSemanticSegmentationTeethMatteImage not bound
-!missing-field! kCIInputEnableEDRModeKey not bound
-!missing-protocol! CIAccordionFoldTransition not bound
-!missing-protocol! CIAffineClamp not bound
-!missing-protocol! CIAffineTile not bound
-!missing-protocol! CIAttributedTextImageGenerator not bound
-!missing-protocol! CIAztecCodeGenerator not bound
-!missing-protocol! CIBarcodeGenerator not bound
-!missing-protocol! CIBarsSwipeTransition not bound
-!missing-protocol! CIBicubicScaleTransform not bound
-!missing-protocol! CIBlendWithMask not bound
-!missing-protocol! CIBloom not bound
-!missing-protocol! CIBokehBlur not bound
-!missing-protocol! CIBoxBlur not bound
-!missing-protocol! CICheckerboardGenerator not bound
-!missing-protocol! CICircularScreen not bound
-!missing-protocol! CICMYKHalftone not bound
-!missing-protocol! CICode128BarcodeGenerator not bound
-!missing-protocol! CIColorClamp not bound
-!missing-protocol! CIColorControls not bound
-!missing-protocol! CIColorCrossPolynomial not bound
-!missing-protocol! CIColorCube not bound
-!missing-protocol! CIColorCubesMixedWithMask not bound
-!missing-protocol! CIColorCubeWithColorSpace not bound
-!missing-protocol! CIColorCurves not bound
-!missing-protocol! CIColorInvert not bound
-!missing-protocol! CIColorMap not bound
-!missing-protocol! CIColorMatrix not bound
-!missing-protocol! CIColorMonochrome not bound
-!missing-protocol! CIColorPolynomial not bound
-!missing-protocol! CIColorPosterize not bound
-!missing-protocol! CIComicEffect not bound
-!missing-protocol! CICompositeOperation not bound
-!missing-protocol! CIConvolution not bound
-!missing-protocol! CICopyMachineTransition not bound
-!missing-protocol! CICoreMLModel not bound
-!missing-protocol! CICrystallize not bound
-!missing-protocol! CIDepthOfField not bound
-!missing-protocol! CIDepthToDisparity not bound
-!missing-protocol! CIDiscBlur not bound
-!missing-protocol! CIDisintegrateWithMaskTransition not bound
-!missing-protocol! CIDisparityToDepth not bound
-!missing-protocol! CIDissolveTransition not bound
-!missing-protocol! CIDither not bound
-!missing-protocol! CIDocumentEnhancer not bound
-!missing-protocol! CIDotScreen not bound
-!missing-protocol! CIEdgePreserveUpsample not bound
-!missing-protocol! CIEdges not bound
-!missing-protocol! CIEdgeWork not bound
-!missing-protocol! CIEightfoldReflectedTile not bound
-!missing-protocol! CIExposureAdjust not bound
-!missing-protocol! CIFalseColor not bound
-!missing-protocol! CIFilter not bound
-!missing-protocol! CIFlashTransition not bound
-!missing-protocol! CIFourCoordinateGeometryFilter not bound
-!missing-protocol! CIFourfoldReflectedTile not bound
-!missing-protocol! CIFourfoldRotatedTile not bound
-!missing-protocol! CIFourfoldTranslatedTile not bound
-!missing-protocol! CIGaborGradients not bound
-!missing-protocol! CIGammaAdjust not bound
-!missing-protocol! CIGaussianBlur not bound
-!missing-protocol! CIGaussianGradient not bound
-!missing-protocol! CIGlideReflectedTile not bound
-!missing-protocol! CIGloom not bound
-!missing-protocol! CIHatchedScreen not bound
-!missing-protocol! CIHeightFieldFromMask not bound
-!missing-protocol! CIHexagonalPixellate not bound
-!missing-protocol! CIHighlightShadowAdjust not bound
-!missing-protocol! CIHueAdjust not bound
-!missing-protocol! CIHueSaturationValueGradient not bound
-!missing-protocol! CIKaleidoscope not bound
-!missing-protocol! CIKeystoneCorrectionCombined not bound
-!missing-protocol! CIKeystoneCorrectionHorizontal not bound
-!missing-protocol! CIKeystoneCorrectionVertical not bound
-!missing-protocol! CILabDeltaE not bound
-!missing-protocol! CILanczosScaleTransform not bound
-!missing-protocol! CILenticularHaloGenerator not bound
-!missing-protocol! CILinearGradient not bound
-!missing-protocol! CILinearToSRGBToneCurve not bound
-!missing-protocol! CILineOverlay not bound
-!missing-protocol! CILineScreen not bound
-!missing-protocol! CIMaskedVariableBlur not bound
-!missing-protocol! CIMaskToAlpha not bound
-!missing-protocol! CIMaximumComponent not bound
-!missing-protocol! CIMedian not bound
-!missing-protocol! CIMeshGenerator not bound
-!missing-protocol! CIMinimumComponent not bound
-!missing-protocol! CIMix not bound
-!missing-protocol! CIModTransition not bound
-!missing-protocol! CIMorphologyGradient not bound
-!missing-protocol! CIMorphologyMaximum not bound
-!missing-protocol! CIMorphologyMinimum not bound
-!missing-protocol! CIMorphologyRectangleMaximum not bound
-!missing-protocol! CIMorphologyRectangleMinimum not bound
-!missing-protocol! CIMotionBlur not bound
-!missing-protocol! CINoiseReduction not bound
-!missing-protocol! CIOpTile not bound
-!missing-protocol! CIPageCurlTransition not bound
-!missing-protocol! CIPageCurlWithShadowTransition not bound
-!missing-protocol! CIPaletteCentroid not bound
-!missing-protocol! CIPalettize not bound
-!missing-protocol! CIParallelogramTile not bound
-!missing-protocol! CIPDF417BarcodeGenerator not bound
-!missing-protocol! CIPerspectiveCorrection not bound
-!missing-protocol! CIPerspectiveRotate not bound
-!missing-protocol! CIPerspectiveTile not bound
-!missing-protocol! CIPerspectiveTransform not bound
-!missing-protocol! CIPerspectiveTransformWithExtent not bound
-!missing-protocol! CIPhotoEffect not bound
-!missing-protocol! CIPixellate not bound
-!missing-protocol! CIPointillize not bound
-!missing-protocol! CIQRCodeGenerator not bound
-!missing-protocol! CIRadialGradient not bound
-!missing-protocol! CIRandomGenerator not bound
-!missing-protocol! CIRippleTransition not bound
-!missing-protocol! CIRoundedRectangleGenerator not bound
-!missing-protocol! CISaliencyMap not bound
-!missing-protocol! CISepiaTone not bound
-!missing-protocol! CIShadedMaterial not bound
-!missing-protocol! CISharpenLuminance not bound
-!missing-protocol! CISixfoldReflectedTile not bound
-!missing-protocol! CISixfoldRotatedTile not bound
-!missing-protocol! CISmoothLinearGradient not bound
-!missing-protocol! CISpotColor not bound
-!missing-protocol! CISpotLight not bound
-!missing-protocol! CISRGBToneCurveToLinear not bound
-!missing-protocol! CIStarShineGenerator not bound
-!missing-protocol! CIStraighten not bound
-!missing-protocol! CIStripesGenerator not bound
-!missing-protocol! CISunbeamsGenerator not bound
-!missing-protocol! CISwipeTransition not bound
-!missing-protocol! CITemperatureAndTint not bound
-!missing-protocol! CITextImageGenerator not bound
-!missing-protocol! CIThermal not bound
-!missing-protocol! CIToneCurve not bound
-!missing-protocol! CITransitionFilter not bound
-!missing-protocol! CITriangleKaleidoscope not bound
-!missing-protocol! CITriangleTile not bound
-!missing-protocol! CITwelvefoldReflectedTile not bound
-!missing-protocol! CIUnsharpMask not bound
-!missing-protocol! CIVibrance not bound
-!missing-protocol! CIVignette not bound
-!missing-protocol! CIVignetteEffect not bound
-!missing-protocol! CIWhitePointAdjust not bound
-!missing-protocol! CIXRay not bound
-!missing-protocol! CIZoomBlur not bound
-!missing-selector! +CIFilter::accordionFoldTransitionFilter not bound
-!missing-selector! +CIFilter::additionCompositingFilter not bound
-!missing-selector! +CIFilter::affineClampFilter not bound
-!missing-selector! +CIFilter::affineTileFilter not bound
-!missing-selector! +CIFilter::attributedTextImageGeneratorFilter not bound
-!missing-selector! +CIFilter::aztecCodeGeneratorFilter not bound
-!missing-selector! +CIFilter::barcodeGeneratorFilter not bound
-!missing-selector! +CIFilter::barsSwipeTransitionFilter not bound
-!missing-selector! +CIFilter::bicubicScaleTransformFilter not bound
-!missing-selector! +CIFilter::blendWithAlphaMaskFilter not bound
-!missing-selector! +CIFilter::blendWithBlueMaskFilter not bound
-!missing-selector! +CIFilter::blendWithMaskFilter not bound
-!missing-selector! +CIFilter::blendWithRedMaskFilter not bound
-!missing-selector! +CIFilter::bloomFilter not bound
-!missing-selector! +CIFilter::bokehBlurFilter not bound
-!missing-selector! +CIFilter::boxBlurFilter not bound
-!missing-selector! +CIFilter::checkerboardGeneratorFilter not bound
-!missing-selector! +CIFilter::circularScreenFilter not bound
-!missing-selector! +CIFilter::CMYKHalftone not bound
-!missing-selector! +CIFilter::code128BarcodeGeneratorFilter not bound
-!missing-selector! +CIFilter::colorBlendModeFilter not bound
-!missing-selector! +CIFilter::colorBurnBlendModeFilter not bound
-!missing-selector! +CIFilter::colorClampFilter not bound
-!missing-selector! +CIFilter::colorControlsFilter not bound
-!missing-selector! +CIFilter::colorCrossPolynomialFilter not bound
-!missing-selector! +CIFilter::colorCubeFilter not bound
-!missing-selector! +CIFilter::colorCubesMixedWithMaskFilter not bound
-!missing-selector! +CIFilter::colorCubeWithColorSpaceFilter not bound
-!missing-selector! +CIFilter::colorCurvesFilter not bound
-!missing-selector! +CIFilter::colorDodgeBlendModeFilter not bound
-!missing-selector! +CIFilter::colorInvertFilter not bound
-!missing-selector! +CIFilter::colorMapFilter not bound
-!missing-selector! +CIFilter::colorMatrixFilter not bound
-!missing-selector! +CIFilter::colorMonochromeFilter not bound
-!missing-selector! +CIFilter::colorPolynomialFilter not bound
-!missing-selector! +CIFilter::colorPosterizeFilter not bound
-!missing-selector! +CIFilter::comicEffectFilter not bound
-!missing-selector! +CIFilter::convolution3X3Filter not bound
-!missing-selector! +CIFilter::convolution5X5Filter not bound
-!missing-selector! +CIFilter::convolution7X7Filter not bound
-!missing-selector! +CIFilter::convolution9HorizontalFilter not bound
-!missing-selector! +CIFilter::convolution9VerticalFilter not bound
-!missing-selector! +CIFilter::copyMachineTransitionFilter not bound
-!missing-selector! +CIFilter::coreMLModelFilter not bound
-!missing-selector! +CIFilter::crystallizeFilter not bound
-!missing-selector! +CIFilter::darkenBlendModeFilter not bound
-!missing-selector! +CIFilter::depthOfFieldFilter not bound
-!missing-selector! +CIFilter::depthToDisparityFilter not bound
-!missing-selector! +CIFilter::differenceBlendModeFilter not bound
-!missing-selector! +CIFilter::discBlurFilter not bound
-!missing-selector! +CIFilter::disintegrateWithMaskTransitionFilter not bound
-!missing-selector! +CIFilter::disparityToDepthFilter not bound
-!missing-selector! +CIFilter::dissolveTransitionFilter not bound
-!missing-selector! +CIFilter::ditherFilter not bound
-!missing-selector! +CIFilter::divideBlendModeFilter not bound
-!missing-selector! +CIFilter::documentEnhancerFilter not bound
-!missing-selector! +CIFilter::dotScreenFilter not bound
-!missing-selector! +CIFilter::edgePreserveUpsampleFilter not bound
-!missing-selector! +CIFilter::edgesFilter not bound
-!missing-selector! +CIFilter::edgeWorkFilter not bound
-!missing-selector! +CIFilter::eightfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::exclusionBlendModeFilter not bound
-!missing-selector! +CIFilter::exposureAdjustFilter not bound
-!missing-selector! +CIFilter::falseColorFilter not bound
-!missing-selector! +CIFilter::flashTransitionFilter not bound
-!missing-selector! +CIFilter::fourfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::fourfoldRotatedTileFilter not bound
-!missing-selector! +CIFilter::fourfoldTranslatedTileFilter not bound
-!missing-selector! +CIFilter::gaborGradientsFilter not bound
-!missing-selector! +CIFilter::gammaAdjustFilter not bound
-!missing-selector! +CIFilter::gaussianBlurFilter not bound
-!missing-selector! +CIFilter::gaussianGradientFilter not bound
-!missing-selector! +CIFilter::glideReflectedTileFilter not bound
-!missing-selector! +CIFilter::gloomFilter not bound
-!missing-selector! +CIFilter::hardLightBlendModeFilter not bound
-!missing-selector! +CIFilter::hatchedScreenFilter not bound
-!missing-selector! +CIFilter::heightFieldFromMaskFilter not bound
-!missing-selector! +CIFilter::hexagonalPixellateFilter not bound
-!missing-selector! +CIFilter::highlightShadowAdjustFilter not bound
-!missing-selector! +CIFilter::hueAdjustFilter not bound
-!missing-selector! +CIFilter::hueBlendModeFilter not bound
-!missing-selector! +CIFilter::hueSaturationValueGradientFilter not bound
-!missing-selector! +CIFilter::kaleidoscopeFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionCombinedFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionHorizontalFilter not bound
-!missing-selector! +CIFilter::keystoneCorrectionVerticalFilter not bound
-!missing-selector! +CIFilter::LabDeltaE not bound
-!missing-selector! +CIFilter::lanczosScaleTransformFilter not bound
-!missing-selector! +CIFilter::lenticularHaloGeneratorFilter not bound
-!missing-selector! +CIFilter::lightenBlendModeFilter not bound
-!missing-selector! +CIFilter::linearBurnBlendModeFilter not bound
-!missing-selector! +CIFilter::linearDodgeBlendModeFilter not bound
-!missing-selector! +CIFilter::linearGradientFilter not bound
-!missing-selector! +CIFilter::linearToSRGBToneCurveFilter not bound
-!missing-selector! +CIFilter::lineOverlayFilter not bound
-!missing-selector! +CIFilter::lineScreenFilter not bound
-!missing-selector! +CIFilter::luminosityBlendModeFilter not bound
-!missing-selector! +CIFilter::maskedVariableBlurFilter not bound
-!missing-selector! +CIFilter::maskToAlphaFilter not bound
-!missing-selector! +CIFilter::maximumComponentFilter not bound
-!missing-selector! +CIFilter::maximumCompositingFilter not bound
-!missing-selector! +CIFilter::medianFilter not bound
-!missing-selector! +CIFilter::meshGeneratorFilter not bound
-!missing-selector! +CIFilter::minimumComponentFilter not bound
-!missing-selector! +CIFilter::minimumCompositingFilter not bound
-!missing-selector! +CIFilter::mixFilter not bound
-!missing-selector! +CIFilter::modTransitionFilter not bound
-!missing-selector! +CIFilter::morphologyGradientFilter not bound
-!missing-selector! +CIFilter::morphologyMaximumFilter not bound
-!missing-selector! +CIFilter::morphologyMinimumFilter not bound
-!missing-selector! +CIFilter::morphologyRectangleMaximumFilter not bound
-!missing-selector! +CIFilter::morphologyRectangleMinimumFilter not bound
-!missing-selector! +CIFilter::motionBlurFilter not bound
-!missing-selector! +CIFilter::multiplyBlendModeFilter not bound
-!missing-selector! +CIFilter::multiplyCompositingFilter not bound
-!missing-selector! +CIFilter::noiseReductionFilter not bound
-!missing-selector! +CIFilter::opTileFilter not bound
-!missing-selector! +CIFilter::overlayBlendModeFilter not bound
-!missing-selector! +CIFilter::pageCurlTransitionFilter not bound
-!missing-selector! +CIFilter::pageCurlWithShadowTransitionFilter not bound
-!missing-selector! +CIFilter::paletteCentroidFilter not bound
-!missing-selector! +CIFilter::palettizeFilter not bound
-!missing-selector! +CIFilter::parallelogramTileFilter not bound
-!missing-selector! +CIFilter::PDF417BarcodeGenerator not bound
-!missing-selector! +CIFilter::perspectiveCorrectionFilter not bound
-!missing-selector! +CIFilter::perspectiveRotateFilter not bound
-!missing-selector! +CIFilter::perspectiveTileFilter not bound
-!missing-selector! +CIFilter::perspectiveTransformFilter not bound
-!missing-selector! +CIFilter::perspectiveTransformWithExtentFilter not bound
-!missing-selector! +CIFilter::photoEffectChromeFilter not bound
-!missing-selector! +CIFilter::photoEffectFadeFilter not bound
-!missing-selector! +CIFilter::photoEffectInstantFilter not bound
-!missing-selector! +CIFilter::photoEffectMonoFilter not bound
-!missing-selector! +CIFilter::photoEffectNoirFilter not bound
-!missing-selector! +CIFilter::photoEffectProcessFilter not bound
-!missing-selector! +CIFilter::photoEffectTonalFilter not bound
-!missing-selector! +CIFilter::photoEffectTransferFilter not bound
-!missing-selector! +CIFilter::pinLightBlendModeFilter not bound
-!missing-selector! +CIFilter::pixellateFilter not bound
-!missing-selector! +CIFilter::pointillizeFilter not bound
-!missing-selector! +CIFilter::QRCodeGenerator not bound
-!missing-selector! +CIFilter::radialGradientFilter not bound
-!missing-selector! +CIFilter::randomGeneratorFilter not bound
-!missing-selector! +CIFilter::rippleTransitionFilter not bound
-!missing-selector! +CIFilter::roundedRectangleGeneratorFilter not bound
-!missing-selector! +CIFilter::saliencyMapFilter not bound
-!missing-selector! +CIFilter::saturationBlendModeFilter not bound
-!missing-selector! +CIFilter::screenBlendModeFilter not bound
-!missing-selector! +CIFilter::sepiaToneFilter not bound
-!missing-selector! +CIFilter::shadedMaterialFilter not bound
-!missing-selector! +CIFilter::sharpenLuminanceFilter not bound
-!missing-selector! +CIFilter::sixfoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::sixfoldRotatedTileFilter not bound
-!missing-selector! +CIFilter::smoothLinearGradientFilter not bound
-!missing-selector! +CIFilter::softLightBlendModeFilter not bound
-!missing-selector! +CIFilter::sourceAtopCompositingFilter not bound
-!missing-selector! +CIFilter::sourceInCompositingFilter not bound
-!missing-selector! +CIFilter::sourceOutCompositingFilter not bound
-!missing-selector! +CIFilter::sourceOverCompositingFilter not bound
-!missing-selector! +CIFilter::spotColorFilter not bound
-!missing-selector! +CIFilter::spotLightFilter not bound
-!missing-selector! +CIFilter::sRGBToneCurveToLinearFilter not bound
-!missing-selector! +CIFilter::starShineGeneratorFilter not bound
-!missing-selector! +CIFilter::straightenFilter not bound
-!missing-selector! +CIFilter::stripesGeneratorFilter not bound
-!missing-selector! +CIFilter::subtractBlendModeFilter not bound
-!missing-selector! +CIFilter::sunbeamsGeneratorFilter not bound
-!missing-selector! +CIFilter::supportedRawCameraModels not bound
-!missing-selector! +CIFilter::swipeTransitionFilter not bound
-!missing-selector! +CIFilter::temperatureAndTintFilter not bound
-!missing-selector! +CIFilter::textImageGeneratorFilter not bound
-!missing-selector! +CIFilter::thermalFilter not bound
-!missing-selector! +CIFilter::toneCurveFilter not bound
-!missing-selector! +CIFilter::triangleKaleidoscopeFilter not bound
-!missing-selector! +CIFilter::triangleTileFilter not bound
-!missing-selector! +CIFilter::twelvefoldReflectedTileFilter not bound
-!missing-selector! +CIFilter::unsharpMaskFilter not bound
-!missing-selector! +CIFilter::vibranceFilter not bound
-!missing-selector! +CIFilter::vignetteEffectFilter not bound
-!missing-selector! +CIFilter::vignetteFilter not bound
-!missing-selector! +CIFilter::whitePointAdjustFilter not bound
-!missing-selector! +CIFilter::xRayFilter not bound
-!missing-selector! +CIFilter::zoomBlurFilter not bound
-!missing-selector! +CIImage::blackImage not bound
-!missing-selector! +CIImage::blueImage not bound
-!missing-selector! +CIImage::clearImage not bound
-!missing-selector! +CIImage::cyanImage not bound
-!missing-selector! +CIImage::grayImage not bound
-!missing-selector! +CIImage::greenImage not bound
-!missing-selector! +CIImage::imageWithCGImageSource:index:options: not bound
-!missing-selector! +CIImage::imageWithSemanticSegmentationMatte: not bound
-!missing-selector! +CIImage::imageWithSemanticSegmentationMatte:options: not bound
-!missing-selector! +CIImage::magentaImage not bound
-!missing-selector! +CIImage::redImage not bound
-!missing-selector! +CIImage::whiteImage not bound
-!missing-selector! +CIImage::yellowImage not bound
-!missing-selector! CIBlendKernel::applyWithForeground:background:colorSpace: not bound
-!missing-selector! CIContext::depthBlurEffectFilterForImage:disparityImage:portraitEffectsMatte:hairSemanticSegmentation:orientation:options: not bound
-!missing-selector! CIImage::imageByApplyingTransform:highQualityDownsample: not bound
-!missing-selector! CIImage::initWithCGImageSource:index:options: not bound
-!missing-selector! CIImage::initWithSemanticSegmentationMatte: not bound
-!missing-selector! CIImage::initWithSemanticSegmentationMatte:options: not bound
-!missing-selector! CIImage::semanticSegmentationMatte not bound
-!missing-selector! +CIContext::contextWithMTLCommandQueue: not bound
-!missing-selector! +CIContext::contextWithMTLCommandQueue:options: not bound
diff --git a/tools/common/StaticRegistrar.cs b/tools/common/StaticRegistrar.cs
index e52cff0847a4..5d02eccaebd0 100644
--- a/tools/common/StaticRegistrar.cs
+++ b/tools/common/StaticRegistrar.cs
@@ -2129,9 +2129,6 @@ void CheckNamespace (string ns, List exceptions)
header.WriteLine ("#import ");
header.WriteLine ("#import ");
return;
- case "CoreImage":
- h = "";
- break;
case "PdfKit":
case "ImageKit":
case "QuartzComposer":
@@ -2192,6 +2189,10 @@ void CheckNamespace (string ns, List exceptions)
case "IOSurface": // There is no IOSurface.h
h = "";
break;
+ case "CoreImage":
+ header.WriteLine ("#import ");
+ header.WriteLine ("#import ");
+ return;
default:
h = string.Format ("<{0}/{0}.h>", ns);
break;