diff --git a/src/Cinematic/CNDecision.cs b/src/Cinematic/CNDecision.cs new file mode 100644 index 0000000000..dc7a1d64f4 --- /dev/null +++ b/src/Cinematic/CNDecision.cs @@ -0,0 +1,45 @@ +using System; +using CoreMedia; +using Foundation; +using ObjCRuntime; + +#nullable enable + +#if !WATCH && !__MACCATALYST__ + +namespace Cinematic { + +#if NET + [SupportedOSPlatform ("tvos17.0")] + [SupportedOSPlatform ("macos14.0")] + [SupportedOSPlatform ("ios17.0")] + [SupportedOSPlatform ("maccatalyst17.0")] +#else + [NoWatch, TV (17, 0), Mac (14, 0), iOS (17, 0), MacCatalyst (17, 0)] +#endif + public enum CNDecisionIdentifierType { + Single, + Group, + } + + public partial class CNDecision { + + public CNDecision (CMTime time, long detectionId, bool isStrong, CNDecisionIdentifierType identifierType) + : base (NSObjectFlag.Empty) + { + + switch (identifierType) { + case CNDecisionIdentifierType.Single: + InitializeHandle (_InitWithSingleIdentifier (time, detectionId, isStrong), "initWithTime:detectionID:strong:"); + break; + case CNDecisionIdentifierType.Group: + InitializeHandle (_InitWithGroupIdentifier (time, detectionId, isStrong), "initWithTime:detectionGroupID:strong:"); + break; + default: + ObjCRuntime.ThrowHelper.ThrowArgumentOutOfRangeException (nameof (identifierType), $"Unknown identifier type: {identifierType}"); + break; + } + } + } +} +#endif diff --git a/src/avfoundation.cs b/src/avfoundation.cs index 9d73bf54cb..693d79f50e 100644 --- a/src/avfoundation.cs +++ b/src/avfoundation.cs @@ -51,6 +51,15 @@ using MediaToolbox; // hack: ease compilation without extra defines using CIBarcodeDescriptor = Foundation.NSObject; #endif + +// cinematic is not present in certain platforms +#if WATCH || __MACCATALYST__ +using CNAssetInfo = Foundation.NSObject; +using CNCompositionInfo = Foundation.NSObject; +#else +using Cinematic; +#endif + using AudioToolbox; using CoreMedia; using ObjCRuntime; @@ -8335,6 +8344,7 @@ namespace AVFoundation { [MacCatalyst (13, 1)] [Export ("enabled")] bool Enabled { [Bind ("isEnabled")] get; set; } + } [Watch (6, 0)] @@ -8490,6 +8500,11 @@ namespace AVFoundation { [Export ("naturalSize")] [Override] CGSize NaturalSize { get; set; } + + // from @interface CNComposition (AVMutableComposition) + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [Export ("addTracksForCinematicAssetInfo:preferredStartingTrackID:")] + CNCompositionInfo AddTracks (CNAssetInfo assetInfo, int preferredStartingTrackID); } [Watch (6, 0)] diff --git a/src/cinematic.cs b/src/cinematic.cs new file mode 100644 index 0000000000..c8cb0aab0c --- /dev/null +++ b/src/cinematic.cs @@ -0,0 +1,494 @@ +using AVFoundation; +using CoreFoundation; +using CoreGraphics; +using CoreMedia; +using CoreVideo; +using Foundation; +using Metal; +using ObjCRuntime; + +using System; + +#if !NET +using NativeHandle = System.IntPtr; +#endif + +namespace Cinematic { + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [ErrorDomain ("CNCinematicErrorDomain")] + [Native] + public enum CNCinematicErrorCode : long { + Unknown = 1, + Unreadable = 2, + Incomplete = 3, + Malformed = 4, + Unsupported = 5, + Incompatible = 6, + Cancelled = 7, + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [Native] + public enum CNRenderingQuality : long { + Thumbnail, + Preview, + Export, + ExportHigh, + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0)] + [Native] + public enum CNDetectionType : long { + Unknown = 0, + HumanFace = 1, + HumanHead = 2, + HumanTorso = 3, + CatBody = 4, + DogBody = 5, + CatHead = 9, + DogHead = 10, + SportsBall = 11, + AutoFocus = 100, + FixedFocus = 101, + Custom = 102, + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNAssetInfo { + [Async] + [Static] + [Export ("checkIfCinematic:completionHandler:")] + void CheckIfCinematic (AVAsset asset, Action completionHandler); + + [Async] + [Static] + [Export ("loadFromAsset:completionHandler:")] + void LoadFromAsset (AVAsset asset, Action completionHandler); + + [Export ("asset", ArgumentSemantic.Strong)] + AVAsset Asset { get; } + + [Export ("allCinematicTracks", ArgumentSemantic.Strong)] + AVAssetTrack [] AllCinematicTracks { get; } + + [Export ("cinematicVideoTrack", ArgumentSemantic.Strong)] + AVAssetTrack CinematicVideoTrack { get; } + + [Export ("cinematicDisparityTrack", ArgumentSemantic.Strong)] + AVAssetTrack CinematicDisparityTrack { get; } + + [Export ("cinematicMetadataTrack", ArgumentSemantic.Strong)] + AVAssetTrack CinematicMetadataTrack { get; } + + [Export ("timeRange")] + CMTimeRange TimeRange { get; } + + [Export ("naturalSize")] + CGSize NaturalSize { get; } + + [Export ("preferredSize")] + CGSize PreferredSize { get; } + + [Export ("preferredTransform")] + CGAffineTransform PreferredTransform { get; } + + // from @interface AbstractTracks (CNAssetInfo) + + [Export ("frameTimingTrack", ArgumentSemantic.Strong)] + AVAssetTrack FrameTimingTrack { get; } + + [Export ("videoCompositionTracks", ArgumentSemantic.Strong)] + AVAssetTrack [] VideoCompositionTracks { get; } + + [Export ("videoCompositionTrackIDs", ArgumentSemantic.Strong)] + NSNumber [] VideoCompositionTrackIds { get; } + + [Export ("sampleDataTrackIDs", ArgumentSemantic.Strong)] + NSNumber [] SampleDataTrackIds { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (CNAssetInfo))] + interface CNCompositionInfo { + [Export ("insertTimeRange:ofCinematicAssetInfo:atTime:error:")] + bool InsertTimeRange (CMTimeRange timeRange, CNAssetInfo assetInfo, CMTime startTime, [NullAllowed] out NSError outError); + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNRenderingSessionAttributes { + [Async] + [Static] + [Export ("loadFromAsset:completionHandler:")] + void Load (AVAsset asset, Action completionHandler); + + [Export ("renderingVersion")] + nint RenderingVersion { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNRenderingSessionFrameAttributes : NSCopying, NSMutableCopying { + [Export ("initWithSampleBuffer:sessionAttributes:")] + NativeHandle Constructor (CMSampleBuffer sampleBuffer, CNRenderingSessionAttributes sessionAttributes); + + [Export ("initWithTimedMetadataGroup:sessionAttributes:")] + NativeHandle Constructor (AVTimedMetadataGroup metadataGroup, CNRenderingSessionAttributes sessionAttributes); + + [Export ("focusDisparity")] + float FocusDisparity { get; set; } + + [Export ("fNumber")] + float FNumber { get; set; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNRenderingSession { + [Export ("initWithCommandQueue:sessionAttributes:preferredTransform:quality:")] + NativeHandle Constructor (IMTLCommandQueue commandQueue, CNRenderingSessionAttributes sessionAttributes, CGAffineTransform preferredTransform, CNRenderingQuality quality); + + [Export ("commandQueue", ArgumentSemantic.Strong)] + IMTLCommandQueue CommandQueue { get; } + + [Export ("sessionAttributes", ArgumentSemantic.Strong)] + CNRenderingSessionAttributes SessionAttributes { get; } + + [Export ("preferredTransform")] + CGAffineTransform PreferredTransform { get; } + + [Export ("quality")] + CNRenderingQuality Quality { get; } + + [Export ("encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage:")] + bool EncodeRender (IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CVPixelBuffer sourceImage, CVPixelBuffer sourceDisparity, CVPixelBuffer destinationImage); + + [Export ("encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA:")] + bool EncodeRender (IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CVPixelBuffer sourceImage, CVPixelBuffer sourceDisparity, IMTLTexture destinationRgba); + + [Export ("encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma:")] + bool EncodeRender (IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CVPixelBuffer sourceImage, CVPixelBuffer sourceDisparity, IMTLTexture destinationLuma, IMTLTexture destinationChroma); + + [Static] + [Export ("sourcePixelFormatTypes", ArgumentSemantic.Strong)] + NSNumber [] SourcePixelFormatTypes { get; } + + [Static] + [Export ("destinationPixelFormatTypes", ArgumentSemantic.Strong)] + NSNumber [] DestinationPixelFormatTypes { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNDetection : NSCopying { + [Export ("initWithTime:detectionType:normalizedRect:focusDisparity:")] + NativeHandle Constructor (CMTime time, CNDetectionType detectionType, CGRect normalizedRect, float focusDisparity); + + [Export ("time")] + CMTime Time { get; } + + [Export ("detectionType")] + CNDetectionType DetectionType { get; } + + [Export ("normalizedRect")] + CGRect NormalizedRect { get; } + + [Export ("focusDisparity")] + float FocusDisparity { get; } + + [Export ("detectionID")] + long DetectionId { get; } + + [Export ("detectionGroupID")] + long DetectionGroupId { get; } + + [Static] + [Export ("isValidDetectionID:")] + bool IsValidDetectionId (long detectionId); + + [Static] + [Export ("isValidDetectionGroupID:")] + bool IsValidDetectionGroupId (long detectionGroupId); + + [Static] + [Export ("accessibilityLabelForDetectionType:")] + string AccessibilityLabelForDetectionType (CNDetectionType detectionType); + + [Static] + [Export ("disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity:")] + float DisparityInNormalizedRect (CGRect normalizedRect, CVPixelBuffer sourceDisparity, CNDetectionType detectionType, float priorDisparity); + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNDecision : NSCopying { + [Internal] + [Export ("initWithTime:detectionID:strong:")] + NativeHandle _InitWithSingleIdentifier (CMTime time, long detectionId, bool isStrong); + + [Internal] + [Export ("initWithTime:detectionGroupID:strong:")] + NativeHandle _InitWithGroupIdentifier (CMTime time, long detectionGroupId, bool isStrong); + + [Export ("time")] + CMTime Time { get; } + + [Export ("detectionID")] + long DetectionId { get; } + + [Export ("detectionGroupID")] + long DetectionGroupId { get; } + + [Export ("userDecision")] + bool UserDecision { [Bind ("isUserDecision")] get; } + + [Export ("groupDecision")] + bool GroupDecision { [Bind ("isGroupDecision")] get; } + + [Export ("strongDecision")] + bool StrongDecision { [Bind ("isStrongDecision")] get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNDetectionTrack : NSCopying { + [Export ("detectionType")] + CNDetectionType DetectionType { get; } + + [Export ("detectionID")] + long DetectionId { get; } + + [Export ("detectionGroupID")] + long DetectionGroupId { get; } + + [Export ("userCreated")] + bool UserCreated { [Bind ("isUserCreated")] get; } + + [Export ("discrete")] + bool Discrete { [Bind ("isDiscrete")] get; } + + [Export ("detectionAtOrBeforeTime:")] + [return: NullAllowed] + CNDetection GetDetectionAtOrBeforeTime (CMTime time); + + [Export ("detectionNearestTime:")] + [return: NullAllowed] + CNDetection GetDetectionNearestTime (CMTime time); + + [Export ("detectionsInTimeRange:")] + CNDetection [] GetDetectionsInTimeRange (CMTimeRange timeRange); + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (CNDetectionTrack))] + interface CNFixedDetectionTrack { + [Export ("initWithFocusDisparity:")] + NativeHandle Constructor (float focusDisparity); + + [Export ("initWithOriginalDetection:")] + NativeHandle Constructor (CNDetection originalDetection); + + [Export ("focusDisparity")] + float FocusDisparity { get; } + + [NullAllowed, Export ("originalDetection", ArgumentSemantic.Strong)] + CNDetection OriginalDetection { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (CNDetectionTrack))] + interface CNCustomDetectionTrack { + [Export ("initWithDetections:smooth:")] + NativeHandle Constructor (CNDetection [] detections, bool applySmoothing); + + [Export ("allDetections", ArgumentSemantic.Strong)] + CNDetection [] AllDetections { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNScript { + [Async] + [Static] + [Export ("loadFromAsset:changes:progress:completionHandler:")] + void Load (AVAsset asset, [NullAllowed] CNScriptChanges changes, [NullAllowed] NSProgress progress, Action completionHandler); + + [Export ("reloadWithChanges:")] + void Reload ([NullAllowed] CNScriptChanges changes); + + [Export ("changes")] + CNScriptChanges Changes { get; } + + [Export ("changesTrimmedByTimeRange:")] + CNScriptChanges GetChangesTrimmed (CMTimeRange timeRange); + + [Export ("timeRange")] + CMTimeRange TimeRange { get; } + + [Export ("frameAtTime:tolerance:")] + [return: NullAllowed] + CNScriptFrame GetFrame (CMTime time, CMTime tolerance); + + [Export ("framesInTimeRange:")] + CNScriptFrame [] GetFrames (CMTimeRange timeRange); + + [Export ("decisionAtTime:tolerance:")] + [return: NullAllowed] + CNDecision GetDecision (CMTime time, CMTime tolerance); + + [Export ("decisionsInTimeRange:")] + CNDecision [] GetDecisions (CMTimeRange timeRange); + + [Export ("decisionAfterTime:")] + [return: NullAllowed] + CNDecision GetDecisionAfterTime (CMTime time); + + [Export ("decisionBeforeTime:")] + [return: NullAllowed] + CNDecision GetDecisionBeforeTime (CMTime time); + + [Export ("primaryDecisionAtTime:")] + [return: NullAllowed] + CNDecision GetPrimaryDecision (CMTime time); + + [Export ("secondaryDecisionAtTime:")] + [return: NullAllowed] + CNDecision GetSecondaryDecision (CMTime time); + + [Export ("timeRangeOfTransitionAfterDecision:")] + CMTimeRange GetTimeRangeOfTransitionAfterDecision (CNDecision decision); + + [Export ("timeRangeOfTransitionBeforeDecision:")] + CMTimeRange GetTimeRangeOfTransitionBeforeDecision (CNDecision decision); + + [Export ("userDecisionsInTimeRange:")] + CNDecision [] GetUserDecisions (CMTimeRange timeRange); + + [Export ("baseDecisionsInTimeRange:")] + CNDecision [] GetBaseDecisions (CMTimeRange timeRange); + + [Export ("detectionTrackForID:")] + [return: NullAllowed] + CNDetectionTrack GetDetectionTrackForId (long detectionId); + + [Export ("detectionTrackForDecision:")] + [return: NullAllowed] + CNDetectionTrack GetDetectionTrack (CNDecision decision); + + [Export ("fNumber")] + float FNumber { get; set; } + + [Export ("addUserDecision:")] + bool AddUserDecision (CNDecision decision); + + [Export ("removeUserDecision:")] + bool RemoveUserDecision (CNDecision decision); + + [Export ("removeAllUserDecisions")] + void RemoveAllUserDecisions (); + + [Export ("addDetectionTrack:")] + long AddDetectionTrack (CNDetectionTrack detectionTrack); + + [Export ("removeDetectionTrack:")] + bool RemoveDetectionTrack (CNDetectionTrack detectionTrack); + + [Export ("addedDetectionTracks", ArgumentSemantic.Strong)] + CNDetectionTrack [] AddedDetectionTracks { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNScriptChanges { + [Export ("initWithDataRepresentation:")] + NativeHandle Constructor (NSData dataRepresentation); + + [Export ("dataRepresentation")] + NSData DataRepresentation { get; } + + [Export ("fNumber")] + float FNumber { get; } + + [Export ("userDecisions")] + CNDecision [] UserDecisions { get; } + + [Export ("addedDetectionTracks")] + CNDetectionTrack [] AddedDetectionTracks { get; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNScriptFrame : NSCopying { + [Export ("time")] + CMTime Time { get; } + + [Export ("focusDisparity")] + float FocusDisparity { get; } + + [Export ("focusDetection", ArgumentSemantic.Strong)] + CNDetection FocusDetection { get; } + + [Export ("allDetections", ArgumentSemantic.Strong)] + CNDetection [] AllDetections { get; } + + [Export ("detectionForID:")] + [return: NullAllowed] + CNDetection GetDetectionForId (long detectionId); + + [Export ("bestDetectionForGroupID:")] + [return: NullAllowed] + CNDetection GetBestDetectionForGroupId (long detectionGroupId); + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + interface CNBoundsPrediction : NSCopying, NSMutableCopying { + [Export ("normalizedBounds", ArgumentSemantic.Assign)] + CGRect NormalizedBounds { get; set; } + + [Export ("confidence")] + float Confidence { get; set; } + } + + [TV (17, 0), NoWatch, Mac (14, 0), iOS (17, 0), NoMacCatalyst] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface CNObjectTracker { + [Static] + [Export ("isSupported")] + bool IsSupported { get; } + + [Export ("initWithCommandQueue:")] + NativeHandle Constructor (IMTLCommandQueue commandQueue); + + [Export ("findObjectAtPoint:sourceImage:")] + [return: NullAllowed] + CNBoundsPrediction FindObject (CGPoint point, CVPixelBuffer sourceImage); + + [Export ("startTrackingAt:within:sourceImage:sourceDisparity:")] + bool StartTracking (CMTime atTime, CGRect normalizedBounds, CVPixelBuffer sourceImage, CVPixelBuffer sourceDisparity); + + [Export ("continueTrackingAt:sourceImage:sourceDisparity:")] + [return: NullAllowed] + CNBoundsPrediction ContinueTracking (CMTime atTime, CVPixelBuffer sourceImage, CVPixelBuffer sourceDisparity); + + [Export ("finishDetectionTrack")] + CNDetectionTrack FinishDetectionTrack { get; } + + [Export ("resetDetectionTrack")] + void ResetDetectionTrack (); + } + +} diff --git a/src/frameworks.sources b/src/frameworks.sources index c9af44a793..62b6f3400f 100644 --- a/src/frameworks.sources +++ b/src/frameworks.sources @@ -382,6 +382,10 @@ CFNETWORK_SOURCES = \ CFNetwork/CFHTTPStream.cs \ CFNetwork/CFHost.cs \ +# Cinematic +CINEMATIC_SOURCES = \ + Cinematic/CNDecision.cs \ + # Compression COMPRESSION_API_SOURCES = \ @@ -2033,6 +2037,7 @@ MACOS_FRAMEWORKS = \ CallKit \ CFNetwork \ Chip \ + Cinematic \ ClassKit \ CloudKit \ Contacts \ @@ -2146,6 +2151,7 @@ IOS_FRAMEWORKS = \ CarPlay \ CFNetwork \ Chip \ + Cinematic \ ClassKit \ CloudKit \ Contacts \ @@ -2277,6 +2283,7 @@ TVOS_FRAMEWORKS = \ BackgroundTasks \ CFNetwork \ Chip \ + Cinematic \ CloudKit \ CoreAnimation \ CoreGraphics \ diff --git a/src/rsp/dotnet/ios-defines-dotnet.rsp b/src/rsp/dotnet/ios-defines-dotnet.rsp index 067b5d2f52..b8babbca09 100644 --- a/src/rsp/dotnet/ios-defines-dotnet.rsp +++ b/src/rsp/dotnet/ios-defines-dotnet.rsp @@ -22,6 +22,7 @@ -d:HAS_CALLKIT -d:HAS_CARPLAY -d:HAS_CFNETWORK +-d:HAS_CINEMATIC -d:HAS_CLASSKIT -d:HAS_CLOUDKIT -d:HAS_COMPRESSION diff --git a/src/rsp/dotnet/macos-defines-dotnet.rsp b/src/rsp/dotnet/macos-defines-dotnet.rsp index 6741c03d62..9d60c3c899 100644 --- a/src/rsp/dotnet/macos-defines-dotnet.rsp +++ b/src/rsp/dotnet/macos-defines-dotnet.rsp @@ -16,6 +16,7 @@ -d:HAS_BUSINESSCHAT -d:HAS_CALLKIT -d:HAS_CFNETWORK +-d:HAS_CINEMATIC -d:HAS_CLASSKIT -d:HAS_CLOUDKIT -d:HAS_COMPRESSION diff --git a/src/rsp/dotnet/tvos-defines-dotnet.rsp b/src/rsp/dotnet/tvos-defines-dotnet.rsp index e9199d5663..fde4c9fbbb 100644 --- a/src/rsp/dotnet/tvos-defines-dotnet.rsp +++ b/src/rsp/dotnet/tvos-defines-dotnet.rsp @@ -9,6 +9,7 @@ -d:HAS_AVKIT -d:HAS_BACKGROUNDTASKS -d:HAS_CFNETWORK +-d:HAS_CINEMATIC -d:HAS_CLOUDKIT -d:HAS_COMPRESSION -d:HAS_COREANIMATION diff --git a/src/rsp/ios-defines.rsp b/src/rsp/ios-defines.rsp index 372c2dab3a..9906bed2c7 100644 --- a/src/rsp/ios-defines.rsp +++ b/src/rsp/ios-defines.rsp @@ -23,6 +23,7 @@ -d:HAS_CARPLAY -d:HAS_CFNETWORK -d:HAS_CHIP +-d:HAS_CINEMATIC -d:HAS_CLASSKIT -d:HAS_CLOUDKIT -d:HAS_COMPRESSION diff --git a/src/rsp/macos-defines.rsp b/src/rsp/macos-defines.rsp index 3323a139f2..815b55f25a 100644 --- a/src/rsp/macos-defines.rsp +++ b/src/rsp/macos-defines.rsp @@ -17,6 +17,7 @@ -d:HAS_CALLKIT -d:HAS_CFNETWORK -d:HAS_CHIP +-d:HAS_CINEMATIC -d:HAS_CLASSKIT -d:HAS_CLOUDKIT -d:HAS_COMPRESSION diff --git a/src/rsp/tvos-defines.rsp b/src/rsp/tvos-defines.rsp index a9b6b78a62..9552f520f7 100644 --- a/src/rsp/tvos-defines.rsp +++ b/src/rsp/tvos-defines.rsp @@ -10,6 +10,7 @@ -d:HAS_BACKGROUNDTASKS -d:HAS_CFNETWORK -d:HAS_CHIP +-d:HAS_CINEMATIC -d:HAS_CLOUDKIT -d:HAS_COMPRESSION -d:HAS_COREANIMATION diff --git a/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs b/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs index e839212b64..1484d8bd88 100644 --- a/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs +++ b/tests/cecil-tests/BlittablePInvokes.KnownFailures.cs @@ -1329,6 +1329,14 @@ namespace Cecil.Tests { "System.Void UIKit.UIAccessibility::UIAccessibilityRequestGuidedAccessSession(System.Boolean,ObjCRuntime.BlockLiteral*)", "System.Void UIKit.UIGraphics::BeginImageContextWithOptions(CoreGraphics.CGSize,System.Boolean,System.Runtime.InteropServices.NFloat)", "System.Void UIKit.UIGuidedAccessRestriction::UIGuidedAccessConfigureAccessibilityFeatures(System.UIntPtr,System.Boolean,ObjCRuntime.BlockLiteral*)", + "ObjCRuntime.NativeHandle ObjCRuntime.Messaging::NativeHandle_objc_msgSend_CMTime_Int64_bool(System.IntPtr,System.IntPtr,CoreMedia.CMTime,System.Int64,System.Boolean)", + "ObjCRuntime.NativeHandle ObjCRuntime.Messaging::NativeHandle_objc_msgSendSuper_CMTime_Int64_bool(System.IntPtr,System.IntPtr,CoreMedia.CMTime,System.Int64,System.Boolean)", + "System.Boolean ObjCRuntime.Messaging::bool_objc_msgSend_Int64(System.IntPtr,System.IntPtr,System.Int64)", + "System.Boolean ObjCRuntime.Messaging::bool_objc_msgSendSuper_Int64(System.IntPtr,System.IntPtr,System.Int64)", + "System.Boolean ObjCRuntime.Messaging::bool_objc_msgSend_CMTime_CGRect_NativeHandle_NativeHandle(System.IntPtr,System.IntPtr,CoreMedia.CMTime,CoreGraphics.CGRect,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle)", + "System.Boolean ObjCRuntime.Messaging::bool_objc_msgSendSuper_CMTime_CGRect_NativeHandle_NativeHandle(System.IntPtr,System.IntPtr,CoreMedia.CMTime,CoreGraphics.CGRect,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle)", + "System.Boolean ObjCRuntime.Messaging::bool_objc_msgSend_NativeHandle_NativeHandle_NativeHandle_NativeHandle_NativeHandle_NativeHandle(System.IntPtr,System.IntPtr,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle)", + "System.Boolean ObjCRuntime.Messaging::bool_objc_msgSendSuper_NativeHandle_NativeHandle_NativeHandle_NativeHandle_NativeHandle_NativeHandle(System.IntPtr,System.IntPtr,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle,ObjCRuntime.NativeHandle)", }; } } diff --git a/tests/introspection/ApiProtocolTest.cs b/tests/introspection/ApiProtocolTest.cs index 004a53495d..71b10b6944 100644 --- a/tests/introspection/ApiProtocolTest.cs +++ b/tests/introspection/ApiProtocolTest.cs @@ -34,6 +34,15 @@ namespace Introspection { protected virtual bool Skip (Type type) { + switch (type.Namespace) { + // Xcode 15: + case "Cinematic": + // only present on device :/ + if (TestRuntime.IsSimulatorOrDesktop) + return true; + break; + } + switch (type.Name) { // *** NSForwarding: warning: object 0x5cbd078 of class 'JSExport' does not implement methodSignatureForSelector: -- trouble ahead // *** NSForwarding: warning: object 0x5cbd078 of class 'JSExport' does not implement doesNotRecognizeSelector: -- abort diff --git a/tests/introspection/ApiTypoTest.cs b/tests/introspection/ApiTypoTest.cs index c00c0d498d..7a1c332a59 100644 --- a/tests/introspection/ApiTypoTest.cs +++ b/tests/introspection/ApiTypoTest.cs @@ -1079,6 +1079,7 @@ namespace Introspection { Assert.True (CheckLibrary (s), fi.Name); break; #if !__MACOS__ + case "CinematicLibrary": case "ThreadNetworkLibrary": case "MediaSetupLibrary": case "MLComputeLibrary": diff --git a/tests/introspection/iOS/iOSApiCtorInitTest.cs b/tests/introspection/iOS/iOSApiCtorInitTest.cs index afb805d4c0..f3129eba6c 100644 --- a/tests/introspection/iOS/iOSApiCtorInitTest.cs +++ b/tests/introspection/iOS/iOSApiCtorInitTest.cs @@ -75,6 +75,7 @@ namespace Introspection { if (Class.GetHandle ("NFCNDEFReaderSession") == IntPtr.Zero) return true; break; + case "Cinematic": case "DeviceCheck": // Only available on device case "MLCompute": // Only available on device case "PushToTalk": diff --git a/tests/introspection/iOS/iOSApiSelectorTest.cs b/tests/introspection/iOS/iOSApiSelectorTest.cs index 046ed86358..eb10e94684 100644 --- a/tests/introspection/iOS/iOSApiSelectorTest.cs +++ b/tests/introspection/iOS/iOSApiSelectorTest.cs @@ -93,6 +93,7 @@ namespace Introspection { return true; break; #endif // HAS_WATCHCONNECTIVITY + case "Cinematic": case "PushToTalk": case "ShazamKit": // ShazamKit is not fully supported in the simulator @@ -867,6 +868,12 @@ namespace Introspection { return !TestRuntime.CheckXcodeVersion (9, 0); } break; + case "addTracksForCinematicAssetInfo:preferredStartingTrackID:": // cinematic method only supported on devices + switch (declaredType.Name) { + case "AVMutableComposition": + return TestRuntime.IsSimulatorOrDesktop; + } + break; } return base.CheckResponse (value, actualType, method, ref name); diff --git a/tests/mtouch/RegistrarTest.cs b/tests/mtouch/RegistrarTest.cs index dc3cd86ab3..1f1d749403 100644 --- a/tests/mtouch/RegistrarTest.cs +++ b/tests/mtouch/RegistrarTest.cs @@ -351,6 +351,7 @@ class MyObjectErr : NSObject, IFoo1, IFoo2 new { Framework = "PushToTalk", Version = "16.0" }, new { Framework = "SharedWithYou", Version = "16.0" }, new { Framework = "SharedWithYouCore", Version = "16.0" }, + new { Framework = "Cinematic", Version = "17.0" }, new { Framework = "Symbols", Version = "17.0" }, }; foreach (var framework in invalidFrameworks) diff --git a/tests/xtro-sharpie/api-annotations-dotnet/iOS-Cinematic.todo b/tests/xtro-sharpie/api-annotations-dotnet/iOS-Cinematic.todo deleted file mode 100644 index 1a82c91526..0000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/iOS-Cinematic.todo +++ /dev/null @@ -1,136 +0,0 @@ -!missing-enum! CNCinematicErrorCode not bound -!missing-enum! CNDetectionType not bound -!missing-enum! CNRenderingQuality not bound -!missing-field! CNCinematicErrorDomain not bound -!missing-selector! +CNAssetInfo::checkIfCinematic:completionHandler: not bound -!missing-selector! +CNAssetInfo::loadFromAsset:completionHandler: not bound -!missing-selector! +CNDetection::accessibilityLabelForDetectionType: not bound -!missing-selector! +CNDetection::disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity: not bound -!missing-selector! +CNDetection::isValidDetectionGroupID: not bound -!missing-selector! +CNDetection::isValidDetectionID: not bound -!missing-selector! +CNObjectTracker::isSupported not bound -!missing-selector! +CNRenderingSession::destinationPixelFormatTypes not bound -!missing-selector! +CNRenderingSession::sourcePixelFormatTypes not bound -!missing-selector! +CNRenderingSessionAttributes::loadFromAsset:completionHandler: not bound -!missing-selector! +CNScript::loadFromAsset:changes:progress:completionHandler: not bound -!missing-selector! AVMutableComposition::addTracksForCinematicAssetInfo:preferredStartingTrackID: not bound -!missing-selector! CNAssetInfo::allCinematicTracks not bound -!missing-selector! CNAssetInfo::asset not bound -!missing-selector! CNAssetInfo::cinematicDisparityTrack not bound -!missing-selector! CNAssetInfo::cinematicMetadataTrack not bound -!missing-selector! CNAssetInfo::cinematicVideoTrack not bound -!missing-selector! CNAssetInfo::frameTimingTrack not bound -!missing-selector! CNAssetInfo::naturalSize not bound -!missing-selector! CNAssetInfo::preferredSize not bound -!missing-selector! CNAssetInfo::preferredTransform not bound -!missing-selector! CNAssetInfo::sampleDataTrackIDs not bound -!missing-selector! CNAssetInfo::timeRange not bound -!missing-selector! CNAssetInfo::videoCompositionTrackIDs not bound -!missing-selector! CNAssetInfo::videoCompositionTracks not bound -!missing-selector! CNBoundsPrediction::confidence not bound -!missing-selector! CNBoundsPrediction::normalizedBounds not bound -!missing-selector! CNBoundsPrediction::setConfidence: not bound -!missing-selector! CNBoundsPrediction::setNormalizedBounds: not bound -!missing-selector! CNCompositionInfo::insertTimeRange:ofCinematicAssetInfo:atTime:error: not bound -!missing-selector! CNCustomDetectionTrack::allDetections not bound -!missing-selector! CNCustomDetectionTrack::initWithDetections:smooth: not bound -!missing-selector! CNDecision::detectionGroupID not bound -!missing-selector! CNDecision::detectionID not bound -!missing-selector! CNDecision::initWithTime:detectionGroupID:strong: not bound -!missing-selector! CNDecision::initWithTime:detectionID:strong: not bound -!missing-selector! CNDecision::isGroupDecision not bound -!missing-selector! CNDecision::isStrongDecision not bound -!missing-selector! CNDecision::isUserDecision not bound -!missing-selector! CNDecision::time not bound -!missing-selector! CNDetection::detectionGroupID not bound -!missing-selector! CNDetection::detectionID not bound -!missing-selector! CNDetection::detectionType not bound -!missing-selector! CNDetection::focusDisparity not bound -!missing-selector! CNDetection::initWithTime:detectionType:normalizedRect:focusDisparity: not bound -!missing-selector! CNDetection::normalizedRect not bound -!missing-selector! CNDetection::time not bound -!missing-selector! CNDetectionTrack::detectionAtOrBeforeTime: not bound -!missing-selector! CNDetectionTrack::detectionGroupID not bound -!missing-selector! CNDetectionTrack::detectionID not bound -!missing-selector! CNDetectionTrack::detectionNearestTime: not bound -!missing-selector! CNDetectionTrack::detectionsInTimeRange: not bound -!missing-selector! CNDetectionTrack::detectionType not bound -!missing-selector! CNDetectionTrack::isDiscrete not bound -!missing-selector! CNDetectionTrack::isUserCreated not bound -!missing-selector! CNFixedDetectionTrack::focusDisparity not bound -!missing-selector! CNFixedDetectionTrack::initWithFocusDisparity: not bound -!missing-selector! CNFixedDetectionTrack::initWithOriginalDetection: not bound -!missing-selector! CNFixedDetectionTrack::originalDetection not bound -!missing-selector! CNObjectTracker::continueTrackingAt:sourceImage:sourceDisparity: not bound -!missing-selector! CNObjectTracker::findObjectAtPoint:sourceImage: not bound -!missing-selector! CNObjectTracker::finishDetectionTrack not bound -!missing-selector! CNObjectTracker::initWithCommandQueue: not bound -!missing-selector! CNObjectTracker::resetDetectionTrack not bound -!missing-selector! CNObjectTracker::startTrackingAt:within:sourceImage:sourceDisparity: not bound -!missing-selector! CNRenderingSession::commandQueue not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA: not bound -!missing-selector! CNRenderingSession::initWithCommandQueue:sessionAttributes:preferredTransform:quality: not bound -!missing-selector! CNRenderingSession::preferredTransform not bound -!missing-selector! CNRenderingSession::quality not bound -!missing-selector! CNRenderingSession::sessionAttributes not bound -!missing-selector! CNRenderingSessionAttributes::renderingVersion not bound -!missing-selector! CNRenderingSessionFrameAttributes::fNumber not bound -!missing-selector! CNRenderingSessionFrameAttributes::focusDisparity not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithSampleBuffer:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithTimedMetadataGroup:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFNumber: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFocusDisparity: not bound -!missing-selector! CNScript::addDetectionTrack: not bound -!missing-selector! CNScript::addedDetectionTracks not bound -!missing-selector! CNScript::addUserDecision: not bound -!missing-selector! CNScript::baseDecisionsInTimeRange: not bound -!missing-selector! CNScript::changes not bound -!missing-selector! CNScript::changesTrimmedByTimeRange: not bound -!missing-selector! CNScript::decisionAfterTime: not bound -!missing-selector! CNScript::decisionAtTime:tolerance: not bound -!missing-selector! CNScript::decisionBeforeTime: not bound -!missing-selector! CNScript::decisionsInTimeRange: not bound -!missing-selector! CNScript::detectionTrackForDecision: not bound -!missing-selector! CNScript::detectionTrackForID: not bound -!missing-selector! CNScript::fNumber not bound -!missing-selector! CNScript::frameAtTime:tolerance: not bound -!missing-selector! CNScript::framesInTimeRange: not bound -!missing-selector! CNScript::primaryDecisionAtTime: not bound -!missing-selector! CNScript::reloadWithChanges: not bound -!missing-selector! CNScript::removeAllUserDecisions not bound -!missing-selector! CNScript::removeDetectionTrack: not bound -!missing-selector! CNScript::removeUserDecision: not bound -!missing-selector! CNScript::secondaryDecisionAtTime: not bound -!missing-selector! CNScript::setFNumber: not bound -!missing-selector! CNScript::timeRange not bound -!missing-selector! CNScript::timeRangeOfTransitionAfterDecision: not bound -!missing-selector! CNScript::timeRangeOfTransitionBeforeDecision: not bound -!missing-selector! CNScript::userDecisionsInTimeRange: not bound -!missing-selector! CNScriptChanges::addedDetectionTracks not bound -!missing-selector! CNScriptChanges::dataRepresentation not bound -!missing-selector! CNScriptChanges::fNumber not bound -!missing-selector! CNScriptChanges::initWithDataRepresentation: not bound -!missing-selector! CNScriptChanges::userDecisions not bound -!missing-selector! CNScriptFrame::allDetections not bound -!missing-selector! CNScriptFrame::bestDetectionForGroupID: not bound -!missing-selector! CNScriptFrame::detectionForID: not bound -!missing-selector! CNScriptFrame::focusDetection not bound -!missing-selector! CNScriptFrame::focusDisparity not bound -!missing-selector! CNScriptFrame::time not bound -!missing-type! CNAssetInfo not bound -!missing-type! CNBoundsPrediction not bound -!missing-type! CNCompositionInfo not bound -!missing-type! CNCustomDetectionTrack not bound -!missing-type! CNDecision not bound -!missing-type! CNDetection not bound -!missing-type! CNDetectionTrack not bound -!missing-type! CNFixedDetectionTrack not bound -!missing-type! CNObjectTracker not bound -!missing-type! CNRenderingSession not bound -!missing-type! CNRenderingSessionAttributes not bound -!missing-type! CNRenderingSessionFrameAttributes not bound -!missing-type! CNScript not bound -!missing-type! CNScriptChanges not bound -!missing-type! CNScriptFrame not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/macOS-Cinematic.todo b/tests/xtro-sharpie/api-annotations-dotnet/macOS-Cinematic.todo deleted file mode 100644 index 1a82c91526..0000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/macOS-Cinematic.todo +++ /dev/null @@ -1,136 +0,0 @@ -!missing-enum! CNCinematicErrorCode not bound -!missing-enum! CNDetectionType not bound -!missing-enum! CNRenderingQuality not bound -!missing-field! CNCinematicErrorDomain not bound -!missing-selector! +CNAssetInfo::checkIfCinematic:completionHandler: not bound -!missing-selector! +CNAssetInfo::loadFromAsset:completionHandler: not bound -!missing-selector! +CNDetection::accessibilityLabelForDetectionType: not bound -!missing-selector! +CNDetection::disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity: not bound -!missing-selector! +CNDetection::isValidDetectionGroupID: not bound -!missing-selector! +CNDetection::isValidDetectionID: not bound -!missing-selector! +CNObjectTracker::isSupported not bound -!missing-selector! +CNRenderingSession::destinationPixelFormatTypes not bound -!missing-selector! +CNRenderingSession::sourcePixelFormatTypes not bound -!missing-selector! +CNRenderingSessionAttributes::loadFromAsset:completionHandler: not bound -!missing-selector! +CNScript::loadFromAsset:changes:progress:completionHandler: not bound -!missing-selector! AVMutableComposition::addTracksForCinematicAssetInfo:preferredStartingTrackID: not bound -!missing-selector! CNAssetInfo::allCinematicTracks not bound -!missing-selector! CNAssetInfo::asset not bound -!missing-selector! CNAssetInfo::cinematicDisparityTrack not bound -!missing-selector! CNAssetInfo::cinematicMetadataTrack not bound -!missing-selector! CNAssetInfo::cinematicVideoTrack not bound -!missing-selector! CNAssetInfo::frameTimingTrack not bound -!missing-selector! CNAssetInfo::naturalSize not bound -!missing-selector! CNAssetInfo::preferredSize not bound -!missing-selector! CNAssetInfo::preferredTransform not bound -!missing-selector! CNAssetInfo::sampleDataTrackIDs not bound -!missing-selector! CNAssetInfo::timeRange not bound -!missing-selector! CNAssetInfo::videoCompositionTrackIDs not bound -!missing-selector! CNAssetInfo::videoCompositionTracks not bound -!missing-selector! CNBoundsPrediction::confidence not bound -!missing-selector! CNBoundsPrediction::normalizedBounds not bound -!missing-selector! CNBoundsPrediction::setConfidence: not bound -!missing-selector! CNBoundsPrediction::setNormalizedBounds: not bound -!missing-selector! CNCompositionInfo::insertTimeRange:ofCinematicAssetInfo:atTime:error: not bound -!missing-selector! CNCustomDetectionTrack::allDetections not bound -!missing-selector! CNCustomDetectionTrack::initWithDetections:smooth: not bound -!missing-selector! CNDecision::detectionGroupID not bound -!missing-selector! CNDecision::detectionID not bound -!missing-selector! CNDecision::initWithTime:detectionGroupID:strong: not bound -!missing-selector! CNDecision::initWithTime:detectionID:strong: not bound -!missing-selector! CNDecision::isGroupDecision not bound -!missing-selector! CNDecision::isStrongDecision not bound -!missing-selector! CNDecision::isUserDecision not bound -!missing-selector! CNDecision::time not bound -!missing-selector! CNDetection::detectionGroupID not bound -!missing-selector! CNDetection::detectionID not bound -!missing-selector! CNDetection::detectionType not bound -!missing-selector! CNDetection::focusDisparity not bound -!missing-selector! CNDetection::initWithTime:detectionType:normalizedRect:focusDisparity: not bound -!missing-selector! CNDetection::normalizedRect not bound -!missing-selector! CNDetection::time not bound -!missing-selector! CNDetectionTrack::detectionAtOrBeforeTime: not bound -!missing-selector! CNDetectionTrack::detectionGroupID not bound -!missing-selector! CNDetectionTrack::detectionID not bound -!missing-selector! CNDetectionTrack::detectionNearestTime: not bound -!missing-selector! CNDetectionTrack::detectionsInTimeRange: not bound -!missing-selector! CNDetectionTrack::detectionType not bound -!missing-selector! CNDetectionTrack::isDiscrete not bound -!missing-selector! CNDetectionTrack::isUserCreated not bound -!missing-selector! CNFixedDetectionTrack::focusDisparity not bound -!missing-selector! CNFixedDetectionTrack::initWithFocusDisparity: not bound -!missing-selector! CNFixedDetectionTrack::initWithOriginalDetection: not bound -!missing-selector! CNFixedDetectionTrack::originalDetection not bound -!missing-selector! CNObjectTracker::continueTrackingAt:sourceImage:sourceDisparity: not bound -!missing-selector! CNObjectTracker::findObjectAtPoint:sourceImage: not bound -!missing-selector! CNObjectTracker::finishDetectionTrack not bound -!missing-selector! CNObjectTracker::initWithCommandQueue: not bound -!missing-selector! CNObjectTracker::resetDetectionTrack not bound -!missing-selector! CNObjectTracker::startTrackingAt:within:sourceImage:sourceDisparity: not bound -!missing-selector! CNRenderingSession::commandQueue not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA: not bound -!missing-selector! CNRenderingSession::initWithCommandQueue:sessionAttributes:preferredTransform:quality: not bound -!missing-selector! CNRenderingSession::preferredTransform not bound -!missing-selector! CNRenderingSession::quality not bound -!missing-selector! CNRenderingSession::sessionAttributes not bound -!missing-selector! CNRenderingSessionAttributes::renderingVersion not bound -!missing-selector! CNRenderingSessionFrameAttributes::fNumber not bound -!missing-selector! CNRenderingSessionFrameAttributes::focusDisparity not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithSampleBuffer:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithTimedMetadataGroup:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFNumber: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFocusDisparity: not bound -!missing-selector! CNScript::addDetectionTrack: not bound -!missing-selector! CNScript::addedDetectionTracks not bound -!missing-selector! CNScript::addUserDecision: not bound -!missing-selector! CNScript::baseDecisionsInTimeRange: not bound -!missing-selector! CNScript::changes not bound -!missing-selector! CNScript::changesTrimmedByTimeRange: not bound -!missing-selector! CNScript::decisionAfterTime: not bound -!missing-selector! CNScript::decisionAtTime:tolerance: not bound -!missing-selector! CNScript::decisionBeforeTime: not bound -!missing-selector! CNScript::decisionsInTimeRange: not bound -!missing-selector! CNScript::detectionTrackForDecision: not bound -!missing-selector! CNScript::detectionTrackForID: not bound -!missing-selector! CNScript::fNumber not bound -!missing-selector! CNScript::frameAtTime:tolerance: not bound -!missing-selector! CNScript::framesInTimeRange: not bound -!missing-selector! CNScript::primaryDecisionAtTime: not bound -!missing-selector! CNScript::reloadWithChanges: not bound -!missing-selector! CNScript::removeAllUserDecisions not bound -!missing-selector! CNScript::removeDetectionTrack: not bound -!missing-selector! CNScript::removeUserDecision: not bound -!missing-selector! CNScript::secondaryDecisionAtTime: not bound -!missing-selector! CNScript::setFNumber: not bound -!missing-selector! CNScript::timeRange not bound -!missing-selector! CNScript::timeRangeOfTransitionAfterDecision: not bound -!missing-selector! CNScript::timeRangeOfTransitionBeforeDecision: not bound -!missing-selector! CNScript::userDecisionsInTimeRange: not bound -!missing-selector! CNScriptChanges::addedDetectionTracks not bound -!missing-selector! CNScriptChanges::dataRepresentation not bound -!missing-selector! CNScriptChanges::fNumber not bound -!missing-selector! CNScriptChanges::initWithDataRepresentation: not bound -!missing-selector! CNScriptChanges::userDecisions not bound -!missing-selector! CNScriptFrame::allDetections not bound -!missing-selector! CNScriptFrame::bestDetectionForGroupID: not bound -!missing-selector! CNScriptFrame::detectionForID: not bound -!missing-selector! CNScriptFrame::focusDetection not bound -!missing-selector! CNScriptFrame::focusDisparity not bound -!missing-selector! CNScriptFrame::time not bound -!missing-type! CNAssetInfo not bound -!missing-type! CNBoundsPrediction not bound -!missing-type! CNCompositionInfo not bound -!missing-type! CNCustomDetectionTrack not bound -!missing-type! CNDecision not bound -!missing-type! CNDetection not bound -!missing-type! CNDetectionTrack not bound -!missing-type! CNFixedDetectionTrack not bound -!missing-type! CNObjectTracker not bound -!missing-type! CNRenderingSession not bound -!missing-type! CNRenderingSessionAttributes not bound -!missing-type! CNRenderingSessionFrameAttributes not bound -!missing-type! CNScript not bound -!missing-type! CNScriptChanges not bound -!missing-type! CNScriptFrame not bound diff --git a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Cinematic.todo b/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Cinematic.todo deleted file mode 100644 index 1a82c91526..0000000000 --- a/tests/xtro-sharpie/api-annotations-dotnet/tvOS-Cinematic.todo +++ /dev/null @@ -1,136 +0,0 @@ -!missing-enum! CNCinematicErrorCode not bound -!missing-enum! CNDetectionType not bound -!missing-enum! CNRenderingQuality not bound -!missing-field! CNCinematicErrorDomain not bound -!missing-selector! +CNAssetInfo::checkIfCinematic:completionHandler: not bound -!missing-selector! +CNAssetInfo::loadFromAsset:completionHandler: not bound -!missing-selector! +CNDetection::accessibilityLabelForDetectionType: not bound -!missing-selector! +CNDetection::disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity: not bound -!missing-selector! +CNDetection::isValidDetectionGroupID: not bound -!missing-selector! +CNDetection::isValidDetectionID: not bound -!missing-selector! +CNObjectTracker::isSupported not bound -!missing-selector! +CNRenderingSession::destinationPixelFormatTypes not bound -!missing-selector! +CNRenderingSession::sourcePixelFormatTypes not bound -!missing-selector! +CNRenderingSessionAttributes::loadFromAsset:completionHandler: not bound -!missing-selector! +CNScript::loadFromAsset:changes:progress:completionHandler: not bound -!missing-selector! AVMutableComposition::addTracksForCinematicAssetInfo:preferredStartingTrackID: not bound -!missing-selector! CNAssetInfo::allCinematicTracks not bound -!missing-selector! CNAssetInfo::asset not bound -!missing-selector! CNAssetInfo::cinematicDisparityTrack not bound -!missing-selector! CNAssetInfo::cinematicMetadataTrack not bound -!missing-selector! CNAssetInfo::cinematicVideoTrack not bound -!missing-selector! CNAssetInfo::frameTimingTrack not bound -!missing-selector! CNAssetInfo::naturalSize not bound -!missing-selector! CNAssetInfo::preferredSize not bound -!missing-selector! CNAssetInfo::preferredTransform not bound -!missing-selector! CNAssetInfo::sampleDataTrackIDs not bound -!missing-selector! CNAssetInfo::timeRange not bound -!missing-selector! CNAssetInfo::videoCompositionTrackIDs not bound -!missing-selector! CNAssetInfo::videoCompositionTracks not bound -!missing-selector! CNBoundsPrediction::confidence not bound -!missing-selector! CNBoundsPrediction::normalizedBounds not bound -!missing-selector! CNBoundsPrediction::setConfidence: not bound -!missing-selector! CNBoundsPrediction::setNormalizedBounds: not bound -!missing-selector! CNCompositionInfo::insertTimeRange:ofCinematicAssetInfo:atTime:error: not bound -!missing-selector! CNCustomDetectionTrack::allDetections not bound -!missing-selector! CNCustomDetectionTrack::initWithDetections:smooth: not bound -!missing-selector! CNDecision::detectionGroupID not bound -!missing-selector! CNDecision::detectionID not bound -!missing-selector! CNDecision::initWithTime:detectionGroupID:strong: not bound -!missing-selector! CNDecision::initWithTime:detectionID:strong: not bound -!missing-selector! CNDecision::isGroupDecision not bound -!missing-selector! CNDecision::isStrongDecision not bound -!missing-selector! CNDecision::isUserDecision not bound -!missing-selector! CNDecision::time not bound -!missing-selector! CNDetection::detectionGroupID not bound -!missing-selector! CNDetection::detectionID not bound -!missing-selector! CNDetection::detectionType not bound -!missing-selector! CNDetection::focusDisparity not bound -!missing-selector! CNDetection::initWithTime:detectionType:normalizedRect:focusDisparity: not bound -!missing-selector! CNDetection::normalizedRect not bound -!missing-selector! CNDetection::time not bound -!missing-selector! CNDetectionTrack::detectionAtOrBeforeTime: not bound -!missing-selector! CNDetectionTrack::detectionGroupID not bound -!missing-selector! CNDetectionTrack::detectionID not bound -!missing-selector! CNDetectionTrack::detectionNearestTime: not bound -!missing-selector! CNDetectionTrack::detectionsInTimeRange: not bound -!missing-selector! CNDetectionTrack::detectionType not bound -!missing-selector! CNDetectionTrack::isDiscrete not bound -!missing-selector! CNDetectionTrack::isUserCreated not bound -!missing-selector! CNFixedDetectionTrack::focusDisparity not bound -!missing-selector! CNFixedDetectionTrack::initWithFocusDisparity: not bound -!missing-selector! CNFixedDetectionTrack::initWithOriginalDetection: not bound -!missing-selector! CNFixedDetectionTrack::originalDetection not bound -!missing-selector! CNObjectTracker::continueTrackingAt:sourceImage:sourceDisparity: not bound -!missing-selector! CNObjectTracker::findObjectAtPoint:sourceImage: not bound -!missing-selector! CNObjectTracker::finishDetectionTrack not bound -!missing-selector! CNObjectTracker::initWithCommandQueue: not bound -!missing-selector! CNObjectTracker::resetDetectionTrack not bound -!missing-selector! CNObjectTracker::startTrackingAt:within:sourceImage:sourceDisparity: not bound -!missing-selector! CNRenderingSession::commandQueue not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA: not bound -!missing-selector! CNRenderingSession::initWithCommandQueue:sessionAttributes:preferredTransform:quality: not bound -!missing-selector! CNRenderingSession::preferredTransform not bound -!missing-selector! CNRenderingSession::quality not bound -!missing-selector! CNRenderingSession::sessionAttributes not bound -!missing-selector! CNRenderingSessionAttributes::renderingVersion not bound -!missing-selector! CNRenderingSessionFrameAttributes::fNumber not bound -!missing-selector! CNRenderingSessionFrameAttributes::focusDisparity not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithSampleBuffer:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithTimedMetadataGroup:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFNumber: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFocusDisparity: not bound -!missing-selector! CNScript::addDetectionTrack: not bound -!missing-selector! CNScript::addedDetectionTracks not bound -!missing-selector! CNScript::addUserDecision: not bound -!missing-selector! CNScript::baseDecisionsInTimeRange: not bound -!missing-selector! CNScript::changes not bound -!missing-selector! CNScript::changesTrimmedByTimeRange: not bound -!missing-selector! CNScript::decisionAfterTime: not bound -!missing-selector! CNScript::decisionAtTime:tolerance: not bound -!missing-selector! CNScript::decisionBeforeTime: not bound -!missing-selector! CNScript::decisionsInTimeRange: not bound -!missing-selector! CNScript::detectionTrackForDecision: not bound -!missing-selector! CNScript::detectionTrackForID: not bound -!missing-selector! CNScript::fNumber not bound -!missing-selector! CNScript::frameAtTime:tolerance: not bound -!missing-selector! CNScript::framesInTimeRange: not bound -!missing-selector! CNScript::primaryDecisionAtTime: not bound -!missing-selector! CNScript::reloadWithChanges: not bound -!missing-selector! CNScript::removeAllUserDecisions not bound -!missing-selector! CNScript::removeDetectionTrack: not bound -!missing-selector! CNScript::removeUserDecision: not bound -!missing-selector! CNScript::secondaryDecisionAtTime: not bound -!missing-selector! CNScript::setFNumber: not bound -!missing-selector! CNScript::timeRange not bound -!missing-selector! CNScript::timeRangeOfTransitionAfterDecision: not bound -!missing-selector! CNScript::timeRangeOfTransitionBeforeDecision: not bound -!missing-selector! CNScript::userDecisionsInTimeRange: not bound -!missing-selector! CNScriptChanges::addedDetectionTracks not bound -!missing-selector! CNScriptChanges::dataRepresentation not bound -!missing-selector! CNScriptChanges::fNumber not bound -!missing-selector! CNScriptChanges::initWithDataRepresentation: not bound -!missing-selector! CNScriptChanges::userDecisions not bound -!missing-selector! CNScriptFrame::allDetections not bound -!missing-selector! CNScriptFrame::bestDetectionForGroupID: not bound -!missing-selector! CNScriptFrame::detectionForID: not bound -!missing-selector! CNScriptFrame::focusDetection not bound -!missing-selector! CNScriptFrame::focusDisparity not bound -!missing-selector! CNScriptFrame::time not bound -!missing-type! CNAssetInfo not bound -!missing-type! CNBoundsPrediction not bound -!missing-type! CNCompositionInfo not bound -!missing-type! CNCustomDetectionTrack not bound -!missing-type! CNDecision not bound -!missing-type! CNDetection not bound -!missing-type! CNDetectionTrack not bound -!missing-type! CNFixedDetectionTrack not bound -!missing-type! CNObjectTracker not bound -!missing-type! CNRenderingSession not bound -!missing-type! CNRenderingSessionAttributes not bound -!missing-type! CNRenderingSessionFrameAttributes not bound -!missing-type! CNScript not bound -!missing-type! CNScriptChanges not bound -!missing-type! CNScriptFrame not bound diff --git a/tests/xtro-sharpie/iOS-Cinematic.todo b/tests/xtro-sharpie/iOS-Cinematic.todo deleted file mode 100644 index 1a82c91526..0000000000 --- a/tests/xtro-sharpie/iOS-Cinematic.todo +++ /dev/null @@ -1,136 +0,0 @@ -!missing-enum! CNCinematicErrorCode not bound -!missing-enum! CNDetectionType not bound -!missing-enum! CNRenderingQuality not bound -!missing-field! CNCinematicErrorDomain not bound -!missing-selector! +CNAssetInfo::checkIfCinematic:completionHandler: not bound -!missing-selector! +CNAssetInfo::loadFromAsset:completionHandler: not bound -!missing-selector! +CNDetection::accessibilityLabelForDetectionType: not bound -!missing-selector! +CNDetection::disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity: not bound -!missing-selector! +CNDetection::isValidDetectionGroupID: not bound -!missing-selector! +CNDetection::isValidDetectionID: not bound -!missing-selector! +CNObjectTracker::isSupported not bound -!missing-selector! +CNRenderingSession::destinationPixelFormatTypes not bound -!missing-selector! +CNRenderingSession::sourcePixelFormatTypes not bound -!missing-selector! +CNRenderingSessionAttributes::loadFromAsset:completionHandler: not bound -!missing-selector! +CNScript::loadFromAsset:changes:progress:completionHandler: not bound -!missing-selector! AVMutableComposition::addTracksForCinematicAssetInfo:preferredStartingTrackID: not bound -!missing-selector! CNAssetInfo::allCinematicTracks not bound -!missing-selector! CNAssetInfo::asset not bound -!missing-selector! CNAssetInfo::cinematicDisparityTrack not bound -!missing-selector! CNAssetInfo::cinematicMetadataTrack not bound -!missing-selector! CNAssetInfo::cinematicVideoTrack not bound -!missing-selector! CNAssetInfo::frameTimingTrack not bound -!missing-selector! CNAssetInfo::naturalSize not bound -!missing-selector! CNAssetInfo::preferredSize not bound -!missing-selector! CNAssetInfo::preferredTransform not bound -!missing-selector! CNAssetInfo::sampleDataTrackIDs not bound -!missing-selector! CNAssetInfo::timeRange not bound -!missing-selector! CNAssetInfo::videoCompositionTrackIDs not bound -!missing-selector! CNAssetInfo::videoCompositionTracks not bound -!missing-selector! CNBoundsPrediction::confidence not bound -!missing-selector! CNBoundsPrediction::normalizedBounds not bound -!missing-selector! CNBoundsPrediction::setConfidence: not bound -!missing-selector! CNBoundsPrediction::setNormalizedBounds: not bound -!missing-selector! CNCompositionInfo::insertTimeRange:ofCinematicAssetInfo:atTime:error: not bound -!missing-selector! CNCustomDetectionTrack::allDetections not bound -!missing-selector! CNCustomDetectionTrack::initWithDetections:smooth: not bound -!missing-selector! CNDecision::detectionGroupID not bound -!missing-selector! CNDecision::detectionID not bound -!missing-selector! CNDecision::initWithTime:detectionGroupID:strong: not bound -!missing-selector! CNDecision::initWithTime:detectionID:strong: not bound -!missing-selector! CNDecision::isGroupDecision not bound -!missing-selector! CNDecision::isStrongDecision not bound -!missing-selector! CNDecision::isUserDecision not bound -!missing-selector! CNDecision::time not bound -!missing-selector! CNDetection::detectionGroupID not bound -!missing-selector! CNDetection::detectionID not bound -!missing-selector! CNDetection::detectionType not bound -!missing-selector! CNDetection::focusDisparity not bound -!missing-selector! CNDetection::initWithTime:detectionType:normalizedRect:focusDisparity: not bound -!missing-selector! CNDetection::normalizedRect not bound -!missing-selector! CNDetection::time not bound -!missing-selector! CNDetectionTrack::detectionAtOrBeforeTime: not bound -!missing-selector! CNDetectionTrack::detectionGroupID not bound -!missing-selector! CNDetectionTrack::detectionID not bound -!missing-selector! CNDetectionTrack::detectionNearestTime: not bound -!missing-selector! CNDetectionTrack::detectionsInTimeRange: not bound -!missing-selector! CNDetectionTrack::detectionType not bound -!missing-selector! CNDetectionTrack::isDiscrete not bound -!missing-selector! CNDetectionTrack::isUserCreated not bound -!missing-selector! CNFixedDetectionTrack::focusDisparity not bound -!missing-selector! CNFixedDetectionTrack::initWithFocusDisparity: not bound -!missing-selector! CNFixedDetectionTrack::initWithOriginalDetection: not bound -!missing-selector! CNFixedDetectionTrack::originalDetection not bound -!missing-selector! CNObjectTracker::continueTrackingAt:sourceImage:sourceDisparity: not bound -!missing-selector! CNObjectTracker::findObjectAtPoint:sourceImage: not bound -!missing-selector! CNObjectTracker::finishDetectionTrack not bound -!missing-selector! CNObjectTracker::initWithCommandQueue: not bound -!missing-selector! CNObjectTracker::resetDetectionTrack not bound -!missing-selector! CNObjectTracker::startTrackingAt:within:sourceImage:sourceDisparity: not bound -!missing-selector! CNRenderingSession::commandQueue not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA: not bound -!missing-selector! CNRenderingSession::initWithCommandQueue:sessionAttributes:preferredTransform:quality: not bound -!missing-selector! CNRenderingSession::preferredTransform not bound -!missing-selector! CNRenderingSession::quality not bound -!missing-selector! CNRenderingSession::sessionAttributes not bound -!missing-selector! CNRenderingSessionAttributes::renderingVersion not bound -!missing-selector! CNRenderingSessionFrameAttributes::fNumber not bound -!missing-selector! CNRenderingSessionFrameAttributes::focusDisparity not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithSampleBuffer:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithTimedMetadataGroup:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFNumber: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFocusDisparity: not bound -!missing-selector! CNScript::addDetectionTrack: not bound -!missing-selector! CNScript::addedDetectionTracks not bound -!missing-selector! CNScript::addUserDecision: not bound -!missing-selector! CNScript::baseDecisionsInTimeRange: not bound -!missing-selector! CNScript::changes not bound -!missing-selector! CNScript::changesTrimmedByTimeRange: not bound -!missing-selector! CNScript::decisionAfterTime: not bound -!missing-selector! CNScript::decisionAtTime:tolerance: not bound -!missing-selector! CNScript::decisionBeforeTime: not bound -!missing-selector! CNScript::decisionsInTimeRange: not bound -!missing-selector! CNScript::detectionTrackForDecision: not bound -!missing-selector! CNScript::detectionTrackForID: not bound -!missing-selector! CNScript::fNumber not bound -!missing-selector! CNScript::frameAtTime:tolerance: not bound -!missing-selector! CNScript::framesInTimeRange: not bound -!missing-selector! CNScript::primaryDecisionAtTime: not bound -!missing-selector! CNScript::reloadWithChanges: not bound -!missing-selector! CNScript::removeAllUserDecisions not bound -!missing-selector! CNScript::removeDetectionTrack: not bound -!missing-selector! CNScript::removeUserDecision: not bound -!missing-selector! CNScript::secondaryDecisionAtTime: not bound -!missing-selector! CNScript::setFNumber: not bound -!missing-selector! CNScript::timeRange not bound -!missing-selector! CNScript::timeRangeOfTransitionAfterDecision: not bound -!missing-selector! CNScript::timeRangeOfTransitionBeforeDecision: not bound -!missing-selector! CNScript::userDecisionsInTimeRange: not bound -!missing-selector! CNScriptChanges::addedDetectionTracks not bound -!missing-selector! CNScriptChanges::dataRepresentation not bound -!missing-selector! CNScriptChanges::fNumber not bound -!missing-selector! CNScriptChanges::initWithDataRepresentation: not bound -!missing-selector! CNScriptChanges::userDecisions not bound -!missing-selector! CNScriptFrame::allDetections not bound -!missing-selector! CNScriptFrame::bestDetectionForGroupID: not bound -!missing-selector! CNScriptFrame::detectionForID: not bound -!missing-selector! CNScriptFrame::focusDetection not bound -!missing-selector! CNScriptFrame::focusDisparity not bound -!missing-selector! CNScriptFrame::time not bound -!missing-type! CNAssetInfo not bound -!missing-type! CNBoundsPrediction not bound -!missing-type! CNCompositionInfo not bound -!missing-type! CNCustomDetectionTrack not bound -!missing-type! CNDecision not bound -!missing-type! CNDetection not bound -!missing-type! CNDetectionTrack not bound -!missing-type! CNFixedDetectionTrack not bound -!missing-type! CNObjectTracker not bound -!missing-type! CNRenderingSession not bound -!missing-type! CNRenderingSessionAttributes not bound -!missing-type! CNRenderingSessionFrameAttributes not bound -!missing-type! CNScript not bound -!missing-type! CNScriptChanges not bound -!missing-type! CNScriptFrame not bound diff --git a/tests/xtro-sharpie/macOS-Cinematic.todo b/tests/xtro-sharpie/macOS-Cinematic.todo deleted file mode 100644 index 1a82c91526..0000000000 --- a/tests/xtro-sharpie/macOS-Cinematic.todo +++ /dev/null @@ -1,136 +0,0 @@ -!missing-enum! CNCinematicErrorCode not bound -!missing-enum! CNDetectionType not bound -!missing-enum! CNRenderingQuality not bound -!missing-field! CNCinematicErrorDomain not bound -!missing-selector! +CNAssetInfo::checkIfCinematic:completionHandler: not bound -!missing-selector! +CNAssetInfo::loadFromAsset:completionHandler: not bound -!missing-selector! +CNDetection::accessibilityLabelForDetectionType: not bound -!missing-selector! +CNDetection::disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity: not bound -!missing-selector! +CNDetection::isValidDetectionGroupID: not bound -!missing-selector! +CNDetection::isValidDetectionID: not bound -!missing-selector! +CNObjectTracker::isSupported not bound -!missing-selector! +CNRenderingSession::destinationPixelFormatTypes not bound -!missing-selector! +CNRenderingSession::sourcePixelFormatTypes not bound -!missing-selector! +CNRenderingSessionAttributes::loadFromAsset:completionHandler: not bound -!missing-selector! +CNScript::loadFromAsset:changes:progress:completionHandler: not bound -!missing-selector! AVMutableComposition::addTracksForCinematicAssetInfo:preferredStartingTrackID: not bound -!missing-selector! CNAssetInfo::allCinematicTracks not bound -!missing-selector! CNAssetInfo::asset not bound -!missing-selector! CNAssetInfo::cinematicDisparityTrack not bound -!missing-selector! CNAssetInfo::cinematicMetadataTrack not bound -!missing-selector! CNAssetInfo::cinematicVideoTrack not bound -!missing-selector! CNAssetInfo::frameTimingTrack not bound -!missing-selector! CNAssetInfo::naturalSize not bound -!missing-selector! CNAssetInfo::preferredSize not bound -!missing-selector! CNAssetInfo::preferredTransform not bound -!missing-selector! CNAssetInfo::sampleDataTrackIDs not bound -!missing-selector! CNAssetInfo::timeRange not bound -!missing-selector! CNAssetInfo::videoCompositionTrackIDs not bound -!missing-selector! CNAssetInfo::videoCompositionTracks not bound -!missing-selector! CNBoundsPrediction::confidence not bound -!missing-selector! CNBoundsPrediction::normalizedBounds not bound -!missing-selector! CNBoundsPrediction::setConfidence: not bound -!missing-selector! CNBoundsPrediction::setNormalizedBounds: not bound -!missing-selector! CNCompositionInfo::insertTimeRange:ofCinematicAssetInfo:atTime:error: not bound -!missing-selector! CNCustomDetectionTrack::allDetections not bound -!missing-selector! CNCustomDetectionTrack::initWithDetections:smooth: not bound -!missing-selector! CNDecision::detectionGroupID not bound -!missing-selector! CNDecision::detectionID not bound -!missing-selector! CNDecision::initWithTime:detectionGroupID:strong: not bound -!missing-selector! CNDecision::initWithTime:detectionID:strong: not bound -!missing-selector! CNDecision::isGroupDecision not bound -!missing-selector! CNDecision::isStrongDecision not bound -!missing-selector! CNDecision::isUserDecision not bound -!missing-selector! CNDecision::time not bound -!missing-selector! CNDetection::detectionGroupID not bound -!missing-selector! CNDetection::detectionID not bound -!missing-selector! CNDetection::detectionType not bound -!missing-selector! CNDetection::focusDisparity not bound -!missing-selector! CNDetection::initWithTime:detectionType:normalizedRect:focusDisparity: not bound -!missing-selector! CNDetection::normalizedRect not bound -!missing-selector! CNDetection::time not bound -!missing-selector! CNDetectionTrack::detectionAtOrBeforeTime: not bound -!missing-selector! CNDetectionTrack::detectionGroupID not bound -!missing-selector! CNDetectionTrack::detectionID not bound -!missing-selector! CNDetectionTrack::detectionNearestTime: not bound -!missing-selector! CNDetectionTrack::detectionsInTimeRange: not bound -!missing-selector! CNDetectionTrack::detectionType not bound -!missing-selector! CNDetectionTrack::isDiscrete not bound -!missing-selector! CNDetectionTrack::isUserCreated not bound -!missing-selector! CNFixedDetectionTrack::focusDisparity not bound -!missing-selector! CNFixedDetectionTrack::initWithFocusDisparity: not bound -!missing-selector! CNFixedDetectionTrack::initWithOriginalDetection: not bound -!missing-selector! CNFixedDetectionTrack::originalDetection not bound -!missing-selector! CNObjectTracker::continueTrackingAt:sourceImage:sourceDisparity: not bound -!missing-selector! CNObjectTracker::findObjectAtPoint:sourceImage: not bound -!missing-selector! CNObjectTracker::finishDetectionTrack not bound -!missing-selector! CNObjectTracker::initWithCommandQueue: not bound -!missing-selector! CNObjectTracker::resetDetectionTrack not bound -!missing-selector! CNObjectTracker::startTrackingAt:within:sourceImage:sourceDisparity: not bound -!missing-selector! CNRenderingSession::commandQueue not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA: not bound -!missing-selector! CNRenderingSession::initWithCommandQueue:sessionAttributes:preferredTransform:quality: not bound -!missing-selector! CNRenderingSession::preferredTransform not bound -!missing-selector! CNRenderingSession::quality not bound -!missing-selector! CNRenderingSession::sessionAttributes not bound -!missing-selector! CNRenderingSessionAttributes::renderingVersion not bound -!missing-selector! CNRenderingSessionFrameAttributes::fNumber not bound -!missing-selector! CNRenderingSessionFrameAttributes::focusDisparity not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithSampleBuffer:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithTimedMetadataGroup:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFNumber: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFocusDisparity: not bound -!missing-selector! CNScript::addDetectionTrack: not bound -!missing-selector! CNScript::addedDetectionTracks not bound -!missing-selector! CNScript::addUserDecision: not bound -!missing-selector! CNScript::baseDecisionsInTimeRange: not bound -!missing-selector! CNScript::changes not bound -!missing-selector! CNScript::changesTrimmedByTimeRange: not bound -!missing-selector! CNScript::decisionAfterTime: not bound -!missing-selector! CNScript::decisionAtTime:tolerance: not bound -!missing-selector! CNScript::decisionBeforeTime: not bound -!missing-selector! CNScript::decisionsInTimeRange: not bound -!missing-selector! CNScript::detectionTrackForDecision: not bound -!missing-selector! CNScript::detectionTrackForID: not bound -!missing-selector! CNScript::fNumber not bound -!missing-selector! CNScript::frameAtTime:tolerance: not bound -!missing-selector! CNScript::framesInTimeRange: not bound -!missing-selector! CNScript::primaryDecisionAtTime: not bound -!missing-selector! CNScript::reloadWithChanges: not bound -!missing-selector! CNScript::removeAllUserDecisions not bound -!missing-selector! CNScript::removeDetectionTrack: not bound -!missing-selector! CNScript::removeUserDecision: not bound -!missing-selector! CNScript::secondaryDecisionAtTime: not bound -!missing-selector! CNScript::setFNumber: not bound -!missing-selector! CNScript::timeRange not bound -!missing-selector! CNScript::timeRangeOfTransitionAfterDecision: not bound -!missing-selector! CNScript::timeRangeOfTransitionBeforeDecision: not bound -!missing-selector! CNScript::userDecisionsInTimeRange: not bound -!missing-selector! CNScriptChanges::addedDetectionTracks not bound -!missing-selector! CNScriptChanges::dataRepresentation not bound -!missing-selector! CNScriptChanges::fNumber not bound -!missing-selector! CNScriptChanges::initWithDataRepresentation: not bound -!missing-selector! CNScriptChanges::userDecisions not bound -!missing-selector! CNScriptFrame::allDetections not bound -!missing-selector! CNScriptFrame::bestDetectionForGroupID: not bound -!missing-selector! CNScriptFrame::detectionForID: not bound -!missing-selector! CNScriptFrame::focusDetection not bound -!missing-selector! CNScriptFrame::focusDisparity not bound -!missing-selector! CNScriptFrame::time not bound -!missing-type! CNAssetInfo not bound -!missing-type! CNBoundsPrediction not bound -!missing-type! CNCompositionInfo not bound -!missing-type! CNCustomDetectionTrack not bound -!missing-type! CNDecision not bound -!missing-type! CNDetection not bound -!missing-type! CNDetectionTrack not bound -!missing-type! CNFixedDetectionTrack not bound -!missing-type! CNObjectTracker not bound -!missing-type! CNRenderingSession not bound -!missing-type! CNRenderingSessionAttributes not bound -!missing-type! CNRenderingSessionFrameAttributes not bound -!missing-type! CNScript not bound -!missing-type! CNScriptChanges not bound -!missing-type! CNScriptFrame not bound diff --git a/tests/xtro-sharpie/tvOS-Cinematic.todo b/tests/xtro-sharpie/tvOS-Cinematic.todo deleted file mode 100644 index 1a82c91526..0000000000 --- a/tests/xtro-sharpie/tvOS-Cinematic.todo +++ /dev/null @@ -1,136 +0,0 @@ -!missing-enum! CNCinematicErrorCode not bound -!missing-enum! CNDetectionType not bound -!missing-enum! CNRenderingQuality not bound -!missing-field! CNCinematicErrorDomain not bound -!missing-selector! +CNAssetInfo::checkIfCinematic:completionHandler: not bound -!missing-selector! +CNAssetInfo::loadFromAsset:completionHandler: not bound -!missing-selector! +CNDetection::accessibilityLabelForDetectionType: not bound -!missing-selector! +CNDetection::disparityInNormalizedRect:sourceDisparity:detectionType:priorDisparity: not bound -!missing-selector! +CNDetection::isValidDetectionGroupID: not bound -!missing-selector! +CNDetection::isValidDetectionID: not bound -!missing-selector! +CNObjectTracker::isSupported not bound -!missing-selector! +CNRenderingSession::destinationPixelFormatTypes not bound -!missing-selector! +CNRenderingSession::sourcePixelFormatTypes not bound -!missing-selector! +CNRenderingSessionAttributes::loadFromAsset:completionHandler: not bound -!missing-selector! +CNScript::loadFromAsset:changes:progress:completionHandler: not bound -!missing-selector! AVMutableComposition::addTracksForCinematicAssetInfo:preferredStartingTrackID: not bound -!missing-selector! CNAssetInfo::allCinematicTracks not bound -!missing-selector! CNAssetInfo::asset not bound -!missing-selector! CNAssetInfo::cinematicDisparityTrack not bound -!missing-selector! CNAssetInfo::cinematicMetadataTrack not bound -!missing-selector! CNAssetInfo::cinematicVideoTrack not bound -!missing-selector! CNAssetInfo::frameTimingTrack not bound -!missing-selector! CNAssetInfo::naturalSize not bound -!missing-selector! CNAssetInfo::preferredSize not bound -!missing-selector! CNAssetInfo::preferredTransform not bound -!missing-selector! CNAssetInfo::sampleDataTrackIDs not bound -!missing-selector! CNAssetInfo::timeRange not bound -!missing-selector! CNAssetInfo::videoCompositionTrackIDs not bound -!missing-selector! CNAssetInfo::videoCompositionTracks not bound -!missing-selector! CNBoundsPrediction::confidence not bound -!missing-selector! CNBoundsPrediction::normalizedBounds not bound -!missing-selector! CNBoundsPrediction::setConfidence: not bound -!missing-selector! CNBoundsPrediction::setNormalizedBounds: not bound -!missing-selector! CNCompositionInfo::insertTimeRange:ofCinematicAssetInfo:atTime:error: not bound -!missing-selector! CNCustomDetectionTrack::allDetections not bound -!missing-selector! CNCustomDetectionTrack::initWithDetections:smooth: not bound -!missing-selector! CNDecision::detectionGroupID not bound -!missing-selector! CNDecision::detectionID not bound -!missing-selector! CNDecision::initWithTime:detectionGroupID:strong: not bound -!missing-selector! CNDecision::initWithTime:detectionID:strong: not bound -!missing-selector! CNDecision::isGroupDecision not bound -!missing-selector! CNDecision::isStrongDecision not bound -!missing-selector! CNDecision::isUserDecision not bound -!missing-selector! CNDecision::time not bound -!missing-selector! CNDetection::detectionGroupID not bound -!missing-selector! CNDetection::detectionID not bound -!missing-selector! CNDetection::detectionType not bound -!missing-selector! CNDetection::focusDisparity not bound -!missing-selector! CNDetection::initWithTime:detectionType:normalizedRect:focusDisparity: not bound -!missing-selector! CNDetection::normalizedRect not bound -!missing-selector! CNDetection::time not bound -!missing-selector! CNDetectionTrack::detectionAtOrBeforeTime: not bound -!missing-selector! CNDetectionTrack::detectionGroupID not bound -!missing-selector! CNDetectionTrack::detectionID not bound -!missing-selector! CNDetectionTrack::detectionNearestTime: not bound -!missing-selector! CNDetectionTrack::detectionsInTimeRange: not bound -!missing-selector! CNDetectionTrack::detectionType not bound -!missing-selector! CNDetectionTrack::isDiscrete not bound -!missing-selector! CNDetectionTrack::isUserCreated not bound -!missing-selector! CNFixedDetectionTrack::focusDisparity not bound -!missing-selector! CNFixedDetectionTrack::initWithFocusDisparity: not bound -!missing-selector! CNFixedDetectionTrack::initWithOriginalDetection: not bound -!missing-selector! CNFixedDetectionTrack::originalDetection not bound -!missing-selector! CNObjectTracker::continueTrackingAt:sourceImage:sourceDisparity: not bound -!missing-selector! CNObjectTracker::findObjectAtPoint:sourceImage: not bound -!missing-selector! CNObjectTracker::finishDetectionTrack not bound -!missing-selector! CNObjectTracker::initWithCommandQueue: not bound -!missing-selector! CNObjectTracker::resetDetectionTrack not bound -!missing-selector! CNObjectTracker::startTrackingAt:within:sourceImage:sourceDisparity: not bound -!missing-selector! CNRenderingSession::commandQueue not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationImage: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationLuma:destinationChroma: not bound -!missing-selector! CNRenderingSession::encodeRenderToCommandBuffer:frameAttributes:sourceImage:sourceDisparity:destinationRGBA: not bound -!missing-selector! CNRenderingSession::initWithCommandQueue:sessionAttributes:preferredTransform:quality: not bound -!missing-selector! CNRenderingSession::preferredTransform not bound -!missing-selector! CNRenderingSession::quality not bound -!missing-selector! CNRenderingSession::sessionAttributes not bound -!missing-selector! CNRenderingSessionAttributes::renderingVersion not bound -!missing-selector! CNRenderingSessionFrameAttributes::fNumber not bound -!missing-selector! CNRenderingSessionFrameAttributes::focusDisparity not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithSampleBuffer:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::initWithTimedMetadataGroup:sessionAttributes: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFNumber: not bound -!missing-selector! CNRenderingSessionFrameAttributes::setFocusDisparity: not bound -!missing-selector! CNScript::addDetectionTrack: not bound -!missing-selector! CNScript::addedDetectionTracks not bound -!missing-selector! CNScript::addUserDecision: not bound -!missing-selector! CNScript::baseDecisionsInTimeRange: not bound -!missing-selector! CNScript::changes not bound -!missing-selector! CNScript::changesTrimmedByTimeRange: not bound -!missing-selector! CNScript::decisionAfterTime: not bound -!missing-selector! CNScript::decisionAtTime:tolerance: not bound -!missing-selector! CNScript::decisionBeforeTime: not bound -!missing-selector! CNScript::decisionsInTimeRange: not bound -!missing-selector! CNScript::detectionTrackForDecision: not bound -!missing-selector! CNScript::detectionTrackForID: not bound -!missing-selector! CNScript::fNumber not bound -!missing-selector! CNScript::frameAtTime:tolerance: not bound -!missing-selector! CNScript::framesInTimeRange: not bound -!missing-selector! CNScript::primaryDecisionAtTime: not bound -!missing-selector! CNScript::reloadWithChanges: not bound -!missing-selector! CNScript::removeAllUserDecisions not bound -!missing-selector! CNScript::removeDetectionTrack: not bound -!missing-selector! CNScript::removeUserDecision: not bound -!missing-selector! CNScript::secondaryDecisionAtTime: not bound -!missing-selector! CNScript::setFNumber: not bound -!missing-selector! CNScript::timeRange not bound -!missing-selector! CNScript::timeRangeOfTransitionAfterDecision: not bound -!missing-selector! CNScript::timeRangeOfTransitionBeforeDecision: not bound -!missing-selector! CNScript::userDecisionsInTimeRange: not bound -!missing-selector! CNScriptChanges::addedDetectionTracks not bound -!missing-selector! CNScriptChanges::dataRepresentation not bound -!missing-selector! CNScriptChanges::fNumber not bound -!missing-selector! CNScriptChanges::initWithDataRepresentation: not bound -!missing-selector! CNScriptChanges::userDecisions not bound -!missing-selector! CNScriptFrame::allDetections not bound -!missing-selector! CNScriptFrame::bestDetectionForGroupID: not bound -!missing-selector! CNScriptFrame::detectionForID: not bound -!missing-selector! CNScriptFrame::focusDetection not bound -!missing-selector! CNScriptFrame::focusDisparity not bound -!missing-selector! CNScriptFrame::time not bound -!missing-type! CNAssetInfo not bound -!missing-type! CNBoundsPrediction not bound -!missing-type! CNCompositionInfo not bound -!missing-type! CNCustomDetectionTrack not bound -!missing-type! CNDecision not bound -!missing-type! CNDetection not bound -!missing-type! CNDetectionTrack not bound -!missing-type! CNFixedDetectionTrack not bound -!missing-type! CNObjectTracker not bound -!missing-type! CNRenderingSession not bound -!missing-type! CNRenderingSessionAttributes not bound -!missing-type! CNRenderingSessionFrameAttributes not bound -!missing-type! CNScript not bound -!missing-type! CNScriptChanges not bound -!missing-type! CNScriptFrame not bound diff --git a/tools/common/Frameworks.cs b/tools/common/Frameworks.cs index 3564be9774..d6fb2bf89a 100644 --- a/tools/common/Frameworks.cs +++ b/tools/common/Frameworks.cs @@ -283,6 +283,7 @@ public class Frameworks : Dictionary { { "ExtensionKit", "ExtensionKit", 13,0 }, { "ThreadNetwork", "ThreadNetwork", 13,0 }, + { "Cinematic", "Cinematic", 14,0 }, { "Symbols", "Symbols", 14, 0 }, }; } @@ -460,6 +461,7 @@ public class Frameworks : Dictionary { { "SharedWithYou", "SharedWithYou", 16, 0 }, { "SharedWithYouCore", "SharedWithYouCore", 16, 0 }, + { "Cinematic", "Cinematic", new Version (17, 0), NotAvailableInSimulator }, { "Symbols", "Symbols", 17, 0 }, // the above MUST be kept in sync with simlauncher @@ -639,6 +641,7 @@ public class Frameworks : Dictionary { { "SharedWithYou", "SharedWithYou", 16,0 }, { "SharedWithYouCore", "SharedWithYouCore", 16,0 }, + { "Cinematic", "Cinematic", new Version (17, 0), NotAvailableInSimulator }, { "Symbols", "Symbols", 17, 0 }, }; } @@ -692,6 +695,7 @@ public class Frameworks : Dictionary { case "ARKit": case "AssetsLibrary": case "CarPlay": + case "Cinematic": #if !NET case "iAd": case "CHIP": diff --git a/tools/linker/ObjCExtensions.cs b/tools/linker/ObjCExtensions.cs index 854cf24dbc..5fe73b903e 100644 --- a/tools/linker/ObjCExtensions.cs +++ b/tools/linker/ObjCExtensions.cs @@ -18,6 +18,7 @@ namespace Xamarin.Linker { #if !NET public const string Chip = nameof (Chip); #endif + public const string Cinematic = nameof (Cinematic); public const string CloudKit = nameof (CloudKit); public const string Contacts = nameof (Contacts); public const string ContactsUI = nameof (ContactsUI);