Skip to content

Instantly share code, notes, and snippets.

@vs-mobiletools-engineering-service2
Created December 13, 2022 18:53
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vs-mobiletools-engineering-service2/3aab96d7533a74350018568cb44a28ec to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/3aab96d7533a74350018568cb44a28ec to your computer and use it in GitHub Desktop.
stable-api-comparison/tvos-api-diff.md
title description author ms.author ms.date ms.topic ms.assetid ms.prod
Xamarin.TVOS SDK API diff: 16.0.0 vs 16.1.1
List of API changes between Xamarin.TVOS versions 16.0.0 and 16.1.1.
spouliot
sepoulio
12/13/2022
article
e4eaa4a0-0ee6-3e28-670f-6854220c5212
xamarin

Xamarin.TVOS SDK API diff: 16.0.0 vs 16.1.1

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetImageGenerator

Added method:

public void GenerateCGImagesAsynchronously (Foundation.NSValue[] cmTimesRequestedTimes, AVAssetImageGeneratorCompletionHandler2 handler);

Type Changed: AVFoundation.AVAssetWriter

Obsoleted properties:

 [Obsolete ("Use the 'Inputs' property instead.")]
 public virtual AVAssetWriterInput[] inputs { get; }

Added property:

public virtual AVAssetWriterInput[] Inputs { get; }

Type Changed: AVFoundation.AVMetadata

Obsoleted properties:

 [Obsolete ("Use 'AVMetadataFormat' enum values.")]
 public static Foundation.NSString FormatHlsMetadata { get; }
 [Obsolete ("Use 'AVMetadataFormat' enum values.")]
 public static Foundation.NSString FormatID3Metadata { get; }
 [Obsolete ("Use 'AVMetadataFormat' enum values.")]
 public static Foundation.NSString FormatQuickTimeUserData { get; }
 [Obsolete ("Use 'AVMetadataFormat' enum values.")]
 public static Foundation.NSString FormatiTunesMetadata { get; }
 [Obsolete ("Use 'AVMetadataFormat' enum values.")]
 public static Foundation.NSString KFormatISOUserData { get; }

Type Changed: AVFoundation.AVPlayer

Obsoleted properties:

 [Obsolete ("Use 'AVPlayerWaitingReason' enum instead.")]
 public static Foundation.NSString AVPlayerWaitingForCoordinatedPlaybackReason { get; }
 [Obsolete ("Use 'AVPlayerWaitingReason' enum instead.")]
 public static Foundation.NSString WaitingDuringInterstitialEventReason { get; }
 [Obsolete ("Use 'AVPlayerWaitingReason' enum instead.")]
 public static Foundation.NSString WaitingToMinimizeStallsReason { get; }
 [Obsolete ("Use 'AVPlayerWaitingReason' enum instead.")]
 public static Foundation.NSString WaitingWhileEvaluatingBufferingRateReason { get; }
 [Obsolete ("Use 'AVPlayerWaitingReason' enum instead.")]
 public static Foundation.NSString WaitingWithNoItemToPlayReason { get; }

New Type: AVFoundation.AVAssetImageGeneratorCompletionHandler2

public sealed delegate AVAssetImageGeneratorCompletionHandler2 : System.MulticastDelegate {
	// constructors
	public AVAssetImageGeneratorCompletionHandler2 (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CoreMedia.CMTime requestedTime, CoreGraphics.CGImage imageRef, CoreMedia.CMTime actualTime, AVAssetImageGeneratorResult result, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CoreMedia.CMTime requestedTime, CoreGraphics.CGImage imageRef, CoreMedia.CMTime actualTime, AVAssetImageGeneratorResult result, Foundation.NSError error);
}

Namespace AudioUnit

Type Changed: AudioUnit.AudioComponentType

Added value:

SpeechSynthesize = 1635087216,

Namespace CoreAnimation

Type Changed: CoreAnimation.CAAnimation

Obsoleted properties:

 [Obsolete ("The name has been fixed, use 'AnimationDiscrete' instead.")]
 public static Foundation.NSString AnimationDescrete { get; }

Type Changed: CoreAnimation.CAGradientLayer

Obsoleted properties:

 [Obsolete ("Use 'CAGradientLayerType.Axial' enum instead.")]
 public static Foundation.NSString GradientLayerAxial { get; }

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBCentralManager

Obsoleted properties:

 [Obsolete ("Use 'CBConnectPeripheralOptions' instead.")]
 public static Foundation.NSString OptionNotifyOnConnectionKey { get; }
 [Obsolete ("Use 'CBConnectPeripheralOptions' instead.")]
 public static Foundation.NSString OptionNotifyOnDisconnectionKey { get; }
 [Obsolete ("Use 'CBConnectPeripheralOptions' instead.")]
 public static Foundation.NSString OptionNotifyOnNotificationKey { get; }

Namespace CoreFoundation

Type Changed: CoreFoundation.CFSocket

Added properties:

public System.Net.IPEndPoint Address { get; }
public System.Net.IPEndPoint RemoteAddress { get; }

Added method:

public void Invalidate ();

Namespace CoreLocation

Type Changed: CoreLocation.CLError

Added value:

HistoricalLocationError = 19,

Namespace CoreMedia

Type Changed: CoreMedia.CMSampleBufferAttachmentKey

Added value:

Hdr10PlusPerFrameData = 34,

Type Changed: CoreMedia.CMSampleBufferAttachmentSettings

Added property:

public Foundation.NSData Hdr10PlusPerFrameData { get; set; }

Namespace CoreSpotlight

New Type: CoreSpotlight.CSSearchQueryContext

public class CSSearchQueryContext {
	// constructors
	public CSSearchQueryContext ();
	// properties

	[Obsolete ("This property was removed. The getter always returns null and the setter throws and InvalidOperationException.")]
public virtual string[] ProtectionClasses { get; set; }
}

Namespace Foundation

Type Changed: Foundation.NSArray

Added interfaces:

System.Collections.Generic.IEnumerable<NSObject>
System.Collections.IEnumerable

Added methods:

public TKey[] ToArray<TKey> ();
public NSObject[] ToArray ();

Type Changed: Foundation.NSArray`1

Added method:

public TKey[] ToArray ();

Type Changed: Foundation.NSAttributedString

Obsoleted methods:

 [Obsolete ("Use 'GetData' instead.")]
 public NSData GetDataFromRange (NSRange range, NSAttributedStringDocumentAttributes documentAttributes, ref NSError error);
 [Obsolete ("Use 'GetData' instead.")]
 public virtual NSData GetDataFromRange (NSRange range, NSDictionary attributes, ref NSError error);
 [Obsolete ("Use 'GetFileWrapper' instead.")]
 public NSFileWrapper GetFileWrapperFromRange (NSRange range, NSAttributedStringDocumentAttributes documentAttributes, ref NSError error);
 [Obsolete ("Use 'GetFileWrapper' instead.")]
 public virtual NSFileWrapper GetFileWrapperFromRange (NSRange range, NSDictionary attributes, ref NSError error);

Added methods:

public NSData GetData (NSRange range, NSAttributedStringDocumentAttributes options, out NSError error);
public NSData GetData (NSRange range, NSDictionary options, out NSError error);
public NSFileWrapper GetFileWrapper (NSRange range, NSAttributedStringDocumentAttributes options, out NSError error);
public NSFileWrapper GetFileWrapper (NSRange range, NSDictionary options, out NSError error);

Type Changed: Foundation.NSBundle

Obsoleted properties:

 [Obsolete ("Use the 'AllBundles' property instead.")]
 public static NSBundle[] _AllBundles { get; }

Added property:

public static NSBundle[] AllBundles { get; }

Type Changed: Foundation.NSMutableUrlRequest

Added property:

public virtual bool RequiresDnsSecValidation { get; set; }

Type Changed: Foundation.NSOperatingSystemVersion

Added constructors:

public NSOperatingSystemVersion (nint major);
public NSOperatingSystemVersion (nint major, nint minor);

Added interfaces:

System.IComparable
System.IEquatable<NSOperatingSystemVersion>

Added methods:

public int CompareTo (NSOperatingSystemVersion otherVersion);
public virtual int CompareTo (object obj);
public virtual bool Equals (NSOperatingSystemVersion other);
public override bool Equals (object obj);
public override int GetHashCode ();
public static bool op_Equality (NSOperatingSystemVersion os1, NSOperatingSystemVersion os2);
public static bool op_Inequality (NSOperatingSystemVersion os1, NSOperatingSystemVersion os2);

Type Changed: Foundation.NSRunLoop

Obsoleted properties:

 [Obsolete ("Use the 'NSRunLoopMode' enum instead.")]
 public static NSString NSDefaultRunLoopMode { get; }
 [Obsolete ("Use the 'NSRunLoopMode' enum instead.")]
 public static NSString NSRunLoopCommonModes { get; }
 [Obsolete ("Use the 'NSRunLoopMode' enum instead.")]
 public static NSString UITrackingRunLoopMode { get; }

Type Changed: Foundation.NSUrlRequest

Added property:

public virtual bool RequiresDnsSecValidation { get; }

Namespace GameController

New Type: GameController.ElementValueDidChangeHandler

public sealed delegate ElementValueDidChangeHandler : System.MulticastDelegate {
	// constructors
	public ElementValueDidChangeHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IGCDevicePhysicalInput physicalInput, IGCPhysicalInputElement element, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (IGCDevicePhysicalInput physicalInput, IGCPhysicalInputElement element);
}

New Type: GameController.IGCAxisElement

public interface IGCAxisElement : IGCPhysicalInputElement, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IGCAxisInput AbsoluteInput { get; }
	public virtual IGCRelativeInput RelativeInput { get; }
}

New Type: GameController.IGCAxisInput

public interface IGCAxisInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Analog { get; }
	public virtual bool CanWrap { get; }
	public virtual double LastValueLatency { get; }
	public virtual double LastValueTimestamp { get; }
	public virtual float Value { get; }
	public virtual System.Action<IGCPhysicalInputElement,GameController.IGCAxisInput,System.Single> ValueDidChangeHandler { get; set; }
}

New Type: GameController.IGCButtonElement

public interface IGCButtonElement : IGCPhysicalInputElement, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSObject PressedInput { get; }
	public virtual IGCTouchedStateInput TouchedInput { get; }
}

New Type: GameController.IGCDevicePhysicalInput

public interface IGCDevicePhysicalInput : IGCDevicePhysicalInputState, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IGCDevicePhysicalInputState Capture { get; }
	public virtual IGCDevice Device { get; }
	public virtual ElementValueDidChangeHandler ElementValueDidChangeHandler { get; set; }
	public virtual InputStateAvailableHandler InputStateAvailableHandler { get; set; }
	public virtual nint InputStateQueueDepth { get; set; }
	public virtual Foundation.NSObject NextInputState { get; }
}

New Type: GameController.IGCDevicePhysicalInputState

public interface IGCDevicePhysicalInputState : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IGCDevice Device { get; }
	public virtual double LastEventLatency { get; }
	public virtual double LastEventTimestamp { get; }
	// methods
	public virtual IGCPhysicalInputElement GetObject (string key);
}

New Type: GameController.IGCDevicePhysicalInputStateDiff

public interface IGCDevicePhysicalInputStateDiff : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSEnumerator<IGCPhysicalInputElement> ChangedElements { get; }
	// methods
	public virtual GCDevicePhysicalInputElementChange GetChange (IGCPhysicalInputElement element);
}

New Type: GameController.IGCDirectionPadElement

public interface IGCDirectionPadElement : IGCPhysicalInputElement, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSObject Down { get; }
	public virtual Foundation.NSObject Left { get; }
	public virtual Foundation.NSObject Right { get; }
	public virtual Foundation.NSObject Up { get; }
	public virtual IGCAxisInput XAxis { get; }
	public virtual IGCAxisInput YAxis { get; }
}

New Type: GameController.IGCLinearInput

public interface IGCLinearInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Analog { get; }
	public virtual bool CanWrap { get; }
	public virtual double LastValueLatency { get; }
	public virtual double LastValueTimestamp { get; }
	public virtual float Value { get; }
	public virtual System.Action<IGCPhysicalInputElement,GameController.IGCLinearInput,System.Single> ValueDidChangeHandler { get; set; }
}

New Type: GameController.IGCPhysicalInputElement

public interface IGCPhysicalInputElement : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSSet<Foundation.NSString> Aliases { get; }
	public virtual string LocalizedName { get; }
	public virtual string SfSymbolsName { get; }
}

New Type: GameController.IGCPressedStateInput

public interface IGCPressedStateInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual double LastPressedStateLatency { get; }
	public virtual double LastPressedStateTimestamp { get; }
	public virtual bool Pressed { get; }
	public virtual System.Action<IGCPhysicalInputElement,GameController.IGCPressedStateInput,System.Boolean> PressedDidChangeHandler { get; set; }
}

New Type: GameController.IGCRelativeInput

public interface IGCRelativeInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Analog { get; }
	public virtual float Delta { get; }
	public virtual System.Action<IGCPhysicalInputElement,GameController.IGCRelativeInput,System.Single> DeltaDidChangeHandler { get; set; }
	public virtual double LastDeltaLatency { get; }
	public virtual double LastDeltaTimestamp { get; }
}

New Type: GameController.IGCSwitchElement

public interface IGCSwitchElement : IGCPhysicalInputElement, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IGCSwitchPositionInput PositionInput { get; }
}

New Type: GameController.IGCSwitchPositionInput

public interface IGCSwitchPositionInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool CanWrap { get; }
	public virtual double LastPositionLatency { get; }
	public virtual double LastPositionTimestamp { get; }
	public virtual nint Position { get; }
	public virtual System.Action<IGCPhysicalInputElement,GameController.IGCSwitchPositionInput,System.nint> PositionDidChangeHandler { get; set; }
	public virtual Foundation.NSRange PositionRange { get; }
	public virtual bool Sequential { get; }
}

New Type: GameController.IGCTouchedStateInput

public interface IGCTouchedStateInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual double LastTouchedStateLatency { get; }
	public virtual double LastTouchedStateTimestamp { get; }
	public virtual bool Touched { get; }
	public virtual System.Action<IGCPhysicalInputElement,GameController.IGCTouchedStateInput,System.Boolean> TouchedDidChangeHandler { get; set; }
}

New Type: GameController.InputStateAvailableHandler

public sealed delegate InputStateAvailableHandler : System.MulticastDelegate {
	// constructors
	public InputStateAvailableHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IGCDevicePhysicalInput physicalInput, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (IGCDevicePhysicalInput physicalInput);
}

Namespace HomeKit

Type Changed: HomeKit.HMAccessory

Added property:

public virtual Foundation.NSNumber MatterNodeId { get; }

Type Changed: HomeKit.HMAccessorySetupManager

Obsoleted methods:

 [Obsolete ("This API has been removed from the 'HomeKit' framework.")]
 public virtual void AddAndSetUpAccessories (HMChipServiceTopology topology, HMErrorHandler completion);
 [Obsolete ("This API has been removed from the 'HomeKit' framework.")]
 public virtual System.Threading.Tasks.Task AddAndSetUpAccessoriesAsync (HMChipServiceTopology topology);

Type Changed: HomeKit.HMHome

Added properties:

public virtual string MatterControllerId { get; }
public virtual System.Func<Foundation.NSXpcConnection> MatterControllerXPCConnectBlock { get; }

Namespace MapKit

Type Changed: MapKit.MKDirectionsRequest

Added properties:

public virtual MKDirectionsRoutePreference HighwayPreference { get; set; }
public virtual MKDirectionsRoutePreference TollPreference { get; set; }

Type Changed: MapKit.MKMapCamera

Added method:

public static MKMapCamera CameraLookingAt (MKMapItem mapItem, CoreGraphics.CGSize viewSize, bool allowPitch);

Type Changed: MapKit.MKMapView

Added property:

public virtual MKMapConfiguration PreferredConfiguration { get; set; }

Type Changed: MapKit.MKOverlayRenderer

Added property:

public virtual CoreGraphics.CGBlendMode BlendMode { get; set; }

Type Changed: MapKit.MKRoute

Added properties:

public virtual bool HasHighways { get; }
public virtual bool HasTolls { get; }

Type Changed: MapKit.MKUserTrackingMode

Obsoleted fields:

 [Obsolete ("This is only available on iOS and MacCatalyst.")]
 FollowWithHeading = 2,

New Type: MapKit.MKDirectionsRoutePreference

[Serializable]
public enum MKDirectionsRoutePreference {
	Any = 0,
	Avoid = 1,
}

New Type: MapKit.MKHybridMapConfiguration

public class MKHybridMapConfiguration : MapKit.MKMapConfiguration {
	// constructors
	public MKHybridMapConfiguration ();
	public MKHybridMapConfiguration (Foundation.NSCoder coder);
	protected MKHybridMapConfiguration (Foundation.NSObjectFlag t);
	public MKHybridMapConfiguration (MKMapElevationStyle elevationStyle);
	protected MKHybridMapConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }
	public virtual bool ShowsTraffic { get; set; }
}

New Type: MapKit.MKImageryMapConfiguration

public class MKImageryMapConfiguration : MapKit.MKMapConfiguration {
	// constructors
	public MKImageryMapConfiguration ();
	public MKImageryMapConfiguration (Foundation.NSCoder coder);
	protected MKImageryMapConfiguration (Foundation.NSObjectFlag t);
	public MKImageryMapConfiguration (MKMapElevationStyle elevationStyle);
	protected MKImageryMapConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: MapKit.MKMapConfiguration

public class MKMapConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MKMapConfiguration (Foundation.NSCoder coder);
	protected MKMapConfiguration (Foundation.NSObjectFlag t);
	protected MKMapConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKMapElevationStyle ElevationStyle { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: MapKit.MKMapElevationStyle

[Serializable]
public enum MKMapElevationStyle {
	Flat = 0,
	Realistic = 1,
}

New Type: MapKit.MKStandardMapConfiguration

public class MKStandardMapConfiguration : MapKit.MKMapConfiguration {
	// constructors
	public MKStandardMapConfiguration ();
	public MKStandardMapConfiguration (Foundation.NSCoder coder);
	protected MKStandardMapConfiguration (Foundation.NSObjectFlag t);
	public MKStandardMapConfiguration (MKMapElevationStyle elevationStyle);
	public MKStandardMapConfiguration (MKStandardMapEmphasisStyle emphasisStyle);
	protected MKStandardMapConfiguration (IntPtr handle);
	public MKStandardMapConfiguration (MKMapElevationStyle elevationStyle, MKStandardMapEmphasisStyle emphasisStyle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKStandardMapEmphasisStyle EmphasisStyle { get; set; }
	public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }
	public virtual bool ShowsTraffic { get; set; }
}

New Type: MapKit.MKStandardMapEmphasisStyle

[Serializable]
public enum MKStandardMapEmphasisStyle {
	Default = 0,
	Muted = 1,
}

Namespace Network

Type Changed: Network.NWDataTransferReport

Obsoleted methods:

 [Obsolete ("Use the 'GetPathRadioType' property instead.")]
 public NWInterfaceRadioType get_path_radio_type (uint pathIndex);

Added method:

public NWInterfaceRadioType GetPathRadioType (uint pathIndex);

Type Changed: Network.NWPath

Obsoleted methods:

 [Obsolete ("Use the overload that takes a 'Func<NWEndpoint, bool>' instead.")]
 public void EnumerateGateways (System.Action<NWEndpoint> callback);
 [Obsolete ("Use the overload that takes a 'Func<NWInterface, bool>' instead.")]
 public void EnumerateInterfaces (System.Action<NWInterface> callback);

Added methods:

public void EnumerateGateways (System.Func<NWEndpoint,System.Boolean> callback);
public void EnumerateInterfaces (System.Func<NWInterface,System.Boolean> callback);

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "16.0";
+public const string SdkVersion = "16.1";
-public const string Version = "16.0.0";
+public const string Version = "16.1.1";

Added fields:

public static const string SharedWithYouCoreLibrary = "/System/Library/Frameworks/SharedWithYouCore.framework/SharedWithYouCore";
public static const string SharedWithYouLibrary = "/System/Library/Frameworks/SharedWithYou.framework/SharedWithYou";

Namespace Photos

Type Changed: Photos.PHFetchResult

Obsoleted properties:

 [Obsolete ("Use the 'FirstObject' property instead.")]
 public virtual Foundation.NSObject firstObject { get; }

Added property:

public virtual Foundation.NSObject FirstObject { get; }

Namespace SceneKit

Type Changed: SceneKit.SCNHitTest

Obsoleted properties:

 [Obsolete ("Use 'SearchModeKey' instead.")]
 public static Foundation.NSString OptionSearchModeKey { get; }

Namespace UIKit

Type Changed: UIKit.UIConfigurationColorTransformer

Obsoleted properties:

 [Obsolete ("Use the 'MonochromeTint' property instead.")]
 public static IntPtr _MonochromeTint { get; }
 [Obsolete ("Use the 'PreferredTint' property instead.")]
 public static IntPtr _PreferredTint { get; }

Type Changed: UIKit.UIFont

Obsoleted properties:

 [Obsolete ("Use the 'XHeight' property instead.")]
 public virtual nfloat xHeight { get; }

Added property:

public virtual nfloat XHeight { get; }

New Type: UIKit.UIFontWeightConstants

public static class UIFontWeightConstants {
	// properties
	public static nfloat Black { get; }
	public static nfloat Bold { get; }
	public static nfloat Heavy { get; }
	public static nfloat Light { get; }
	public static nfloat Medium { get; }
	public static nfloat Regular { get; }
	public static nfloat Semibold { get; }
	public static nfloat Thin { get; }
	public static nfloat UltraLight { get; }
}

New Type: UIKit.UIFontWeightExtensions

public static class UIFontWeightExtensions {
	// methods
	public static nfloat GetWeight (this UIFontWeight weight);
}

Namespace VideoToolbox

Type Changed: VideoToolbox.VTCompressionProperties

Added properties:

public float? BaseLayerBitRateFraction { get; set; }
public long? ConstantBitRate { get; set; }
public bool? EnableLowLatencyRateControl { get; set; }
public bool? EnableLtr { get; set; }
public long? EstimatedAverageBytesPerFrame { get; }
public uint? MaxAllowedFrameQP { get; set; }
public uint? MinAllowedFrameQP { get; }
public bool? OutputBitDepth { get; set; }
public bool? PreserveAlphaChannel { get; set; }
public long? ReferenceBufferCount { get; }
public bool? SupportsBaseFrameQP { get; }

Type Changed: VideoToolbox.VTCompressionPropertyKey

Added properties:

public static Foundation.NSString ConstantBitRate { get; }
public static Foundation.NSString EstimatedAverageBytesPerFrame { get; }
public static Foundation.NSString MinAllowedFrameQP { get; }
public static Foundation.NSString PreserveAlphaChannel { get; }
public static Foundation.NSString ReferenceBufferCount { get; }

Type Changed: VideoToolbox.VTStatus

Obsoleted fields:

 [Obsolete ("Use PixelRotationNotSupported enum value instead.")]
 ImageRotationNotSupported = -12914,

Added values:

PixelRotationNotSupported = -12914,
VideoDecoderCallbackMessaging = -17695,
VideoDecoderReferenceMissing = -17694,
VideoDecoderUnknownErr = -17696,

New Type: VideoToolbox.VTPixelRotationProperties

public class VTPixelRotationProperties : Foundation.DictionaryContainer {
	// constructors
	public VTPixelRotationProperties ();
	public VTPixelRotationProperties (Foundation.NSDictionary dictionary);
	// properties
	public bool? FlipHorizontalOrientation { get; set; }
	public bool? FlipVerticalOrientation { get; set; }
	public VTRotation Rotation { get; set; }
}

New Type: VideoToolbox.VTPixelRotationPropertyKeys

public static class VTPixelRotationPropertyKeys {
	// properties
	public static Foundation.NSString FlipHorizontalOrientation { get; }
	public static Foundation.NSString FlipVerticalOrientation { get; }
	public static Foundation.NSString Rotation { get; }
}

New Type: VideoToolbox.VTPixelRotationSession

public class VTPixelRotationSession : VideoToolbox.VTSession {
	// constructors
	protected VTPixelRotationSession (IntPtr handle);
	// methods
	public static VTPixelRotationSession Create ();
	public static VTPixelRotationSession Create (CoreFoundation.CFAllocator allocator);
	protected override void Dispose (bool disposing);
	public static nint GetTypeID ();
	public VTStatus RotateImage (CoreVideo.CVPixelBuffer sourceBuffer, CoreVideo.CVPixelBuffer destinationBuffer);
	public VTStatus SetRotationProperties (VTPixelRotationProperties options);
}

New Type: VideoToolbox.VTPixelTransferSession

public class VTPixelTransferSession : VideoToolbox.VTSession {
	// constructors
	protected VTPixelTransferSession (IntPtr handle);
	// methods
	public static VTPixelTransferSession Create ();
	public static VTPixelTransferSession Create (CoreFoundation.CFAllocator allocator);
	protected override void Dispose (bool disposing);
	public static nint GetTypeID ();
	public VTStatus SetTransferProperties (VTPixelTransferProperties options);
	public VTStatus TransferImage (CoreVideo.CVPixelBuffer sourceBuffer, CoreVideo.CVPixelBuffer destinationBuffer);
}

New Type: VideoToolbox.VTRotation

[Serializable]
public enum VTRotation {
	ClockwiseNinety = 1,
	CounterclockwiseNinety = 3,
	OneHundredAndEighty = 2,
	Zero = 0,
}

New Type: VideoToolbox.VTRotationExtensions

public static class VTRotationExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VTRotation self);
	public static VTRotation GetValue (Foundation.NSString constant);
}

New Namespace SharedWithYou

New Type: SharedWithYou.ISWHighlightCenterDelegate

public interface ISWHighlightCenterDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void HighlightsDidChange (SWHighlightCenter highlightCenter);
}

New Type: SharedWithYou.SWAttributionView

public class SWAttributionView : UIKit.UIView {
	// constructors
	public SWAttributionView ();
	public SWAttributionView (CoreGraphics.CGRect frame);
	public SWAttributionView (Foundation.NSCoder coder);
	protected SWAttributionView (Foundation.NSObjectFlag t);
	protected SWAttributionView (IntPtr handle);
	// properties
	public static SWAttributionView.SWAttributionViewAppearance Appearance { get; }
	public virtual SWAttributionViewBackgroundStyle BackgroundStyle { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual SWAttributionViewDisplayContext DisplayContext { get; set; }
	public virtual bool EnablesMarquee { get; set; }
	public virtual SWHighlight Highlight { get; set; }
	public virtual UIKit.UIMenu HighlightMenu { get; }
	public virtual SWAttributionViewHorizontalAlignment HorizontalAlignment { get; set; }
	public virtual string MenuTitleForHideAction { get; set; }
	public virtual nfloat PreferredMaxLayoutWidth { get; set; }
	public virtual UIKit.UIMenu SupplementalMenu { get; set; }
	// methods
	public static SWAttributionView.SWAttributionViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static SWAttributionView.SWAttributionViewAppearance GetAppearance<T> ();
	public static SWAttributionView.SWAttributionViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static SWAttributionView.SWAttributionViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static SWAttributionView.SWAttributionViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static SWAttributionView.SWAttributionViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class SWAttributionViewAppearance : UIKit.UIView+UIViewAppearance {
		// constructors
		protected SWAttributionView.SWAttributionViewAppearance (IntPtr handle);
	}
}

New Type: SharedWithYou.SWAttributionViewBackgroundStyle

[Serializable]
public enum SWAttributionViewBackgroundStyle {
	Color = 1,
	Default = 0,
	Material = 2,
}

New Type: SharedWithYou.SWAttributionViewDisplayContext

[Serializable]
public enum SWAttributionViewDisplayContext {
	Detail = 1,
	Summary = 0,
}

New Type: SharedWithYou.SWAttributionViewHorizontalAlignment

[Serializable]
public enum SWAttributionViewHorizontalAlignment {
	Center = 2,
	Default = 0,
	Leading = 1,
	Trailing = 3,
}

New Type: SharedWithYou.SWHighlight

public class SWHighlight : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SWHighlight (Foundation.NSCoder coder);
	protected SWHighlight (Foundation.NSObjectFlag t);
	protected SWHighlight (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSObject Identifier { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SharedWithYou.SWHighlightCenter

public class SWHighlightCenter : Foundation.NSObject {
	// constructors
	public SWHighlightCenter ();
	protected SWHighlightCenter (Foundation.NSObjectFlag t);
	protected SWHighlightCenter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public ISWHighlightCenterDelegate Delegate { get; set; }
	public static string HighlightCollectionTitle { get; }
	public virtual SWHighlight[] Highlights { get; }
	public static bool SystemCollaborationSupportAvailable { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void GetHighlight (Foundation.NSUrl urL, System.Action<SWHighlight,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<SWHighlight> GetHighlightAsync (Foundation.NSUrl urL);
}

New Type: SharedWithYou.SWHighlightCenterDelegate

public abstract class SWHighlightCenterDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, ISWHighlightCenterDelegate, System.IDisposable {
	// constructors
	protected SWHighlightCenterDelegate ();
	protected SWHighlightCenterDelegate (Foundation.NSObjectFlag t);
	protected SWHighlightCenterDelegate (IntPtr handle);
	// methods
	public virtual void HighlightsDidChange (SWHighlightCenter highlightCenter);
}

New Type: SharedWithYou.SWHighlightCenterErrorCode

[Serializable]
public enum SWHighlightCenterErrorCode {
	AccessDenied = 3,
	InternalError = 1,
	InvalidURL = 2,
	NoError = 0,
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment