Skip to content

QuartzCore macOS xcode15.0 b1

Alex Soto edited this page Jun 5, 2023 · 1 revision

#QuartzCore.framework

diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAAnimation.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 #import <QuartzCore/CAFrameRateRange.h>
 #import <Foundation/NSObject.h>
@@ -278,12 +280,40 @@
 
 @property CGFloat initialVelocity;
 
+/* Whether true overdamping is allowed (otherwise it is treated as critically
+ * damped). Defaults to false. */
+
+@property BOOL allowsOverdamping
+    API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0));
+
 /* Returns the estimated duration required for the spring system to be
  * considered at rest. The duration is evaluated for the current animation
  * parameters. */
 
 @property(readonly) CFTimeInterval settlingDuration;
 
+/* Creates a spring animation with coefficients computed from the specified
+ * perceptual duration and bounce. A spring animation created with this
+ * initializer will have allowsOverdamping set to true (so will use overdamping
+ * when a negative bounce is specified). */
+
+- (instancetype)initWithPerceptualDuration:(CFTimeInterval)perceptualDuration
+                    bounce:(CGFloat)bounce
+    API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0));
+
+/* The perceptual duration, which defines the pace of the spring. */
+
+@property(readonly) CFTimeInterval perceptualDuration
+    API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0));
+
+/* How bouncy the spring is. A value of 0 indicates no bounces (a critically
+ * damped spring), positive values indicate increasing amounts of bounce (with
+ * typical values being between 0.0 and 1.0), and negative values indicate
+ * overdamped springs (with typical values being between 0.0 and -1.0). */
+
+@property(readonly) CGFloat bounce
+    API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0));
+
 @end
 
 /** Transition animation subclass. **/
@@ -359,3 +389,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h	2023-05-31 09:01:18
@@ -77,14 +77,6 @@
 # endif
 #endif
 
-#ifndef CA_HIDDEN
-# if CA_GNUC (4,0)
-#  define CA_HIDDEN __attribute__ ((visibility ("hidden")))
-# else
-#  define CA_HIDDEN /* no hidden */
-# endif
-#endif
-
 #ifndef CA_PURE
 # if CA_GNUC (3, 0)
 #  define CA_PURE __attribute__ ((pure))
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAConstraintLayoutManager.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAConstraintLayoutManager.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAConstraintLayoutManager.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAConstraintLayoutManager.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 /* The constraint-based layout manager add a `constraints' layer
@@ -110,3 +112,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CADisplayLink.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CADisplayLink.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CADisplayLink.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CADisplayLink.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2009-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CABase.h>
 #import <QuartzCore/CAFrameRateRange.h>
 #import <Foundation/NSObject.h>
@@ -12,8 +14,10 @@
 NS_ASSUME_NONNULL_BEGIN
 
 /** Class representing a timer bound to the display vsync. **/
+API_AVAILABLE(ios(3.1), watchos(2.0), tvos(9.0))
 
-API_AVAILABLE(ios(3.1), watchos(2.0), tvos(9.0)) API_UNAVAILABLE(macos)
+API_AVAILABLE(macos(14.0))
+
 @interface CADisplayLink : NSObject
 {
 @private
@@ -22,9 +26,11 @@
 
 /* Create a new display link object for the main display. It will
  * invoke the method called 'sel' on 'target', the method has the
- * signature '(void)selector:(CADisplayLink *)sender'. */
+ * signature '(void)selector:(CADisplayLink *)sender'.
+ * For macOS, see NSView/NSWindow/NSScreen.displayLink(withTarget:selector:). */
 
-+ (CADisplayLink *)displayLinkWithTarget:(id)target selector:(SEL)sel;
++ (CADisplayLink *)displayLinkWithTarget:(id)target selector:(SEL)sel
+    API_UNAVAILABLE(macos);
 
 /* Adds the receiver to the given run-loop and mode. Unless paused, it
  * will fire every vsync until removed. Each object may only be added
@@ -70,8 +76,9 @@
  * DEPRECATED - use preferredFramesPerSecond. */
 
 @property(nonatomic) NSInteger frameInterval
-  API_DEPRECATED("preferredFramesPerSecond", ios(3.1, 10.0), 
-                 watchos(2.0, 3.0), tvos(9.0, 10.0));
+  API_DEPRECATED("preferredFramesPerSecond", ios(3.1, 10.0),
+                 watchos(2.0, 3.0), tvos(9.0, 10.0))
+  API_UNAVAILABLE(macos);
 
 /* Defines the desired callback rate in frames-per-second for this display
  * link. If set to zero, the default value, the display link will fire at the
@@ -82,7 +89,8 @@
   API_DEPRECATED_WITH_REPLACEMENT ("preferredFrameRateRange",
                                    ios(10.0, API_TO_BE_DEPRECATED),
                                    watchos(3.0, API_TO_BE_DEPRECATED),
-                                   tvos(10.0, API_TO_BE_DEPRECATED));
+                                   tvos(10.0, API_TO_BE_DEPRECATED))
+  API_UNAVAILABLE(macos);
 
 /* Defines the range of desired callback rate in frames-per-second for this
    display link. If the range contains the same minimum and maximum frame rate,
@@ -96,3 +104,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEDRMetadata.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEDRMetadata.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEDRMetadata.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEDRMetadata.h	2023-05-31 04:57:05
@@ -7,6 +7,8 @@
 #define CAEDRMetadata_h
 
 
+#ifdef __OBJC__
+
 #include <Foundation/NSObject.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -79,6 +81,21 @@
                                     maxLuminance:(float)maxNits
                               opticalOutputScale:(float)scale NS_SWIFT_NAME(hdr10(minLuminance:maxLuminance:opticalOutputScale:));
 
+/*
+ * Initialize with SEI Ambient Viewing Environmnent as defined in ISO/IEC 23002-7:2021
+ *
+ * `data'
+ * The value is 8 bytes containing a big-endian structure as defined in D.3.39
+ *
+ * The default metadata attached to Apple captures will typically have
+ * ambient_illuminance = 314,0000 with a D65 background chromaticity
+ * (ambient_light_x = 15,635, ambient_light_y = 16,450) but may change.
+ * As such it should be queried from the movies FormatDescription using the
+ * kCMFormatDescriptionExtension_AmbientViewingEnvironment key.
+ */
+
++ (CAEDRMetadata *)HLGMetadataWithAmbientViewingEnvironment:(nonnull NSData *)data NS_SWIFT_NAME(hlg(ambientViewingEnvironment:)) API_AVAILABLE(macos(14.0), ios(17.0));
+
 /* Content is scene referred and originally encoded with the ITU-R BT.2100-2
  * Hybrid Log Gamma (HLG) opto-electrical transfer function (OETF). The system
  * will apply the opto-optical transfer function (OOTF) based on peak display
@@ -93,6 +110,8 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif /* __OBJC__ */
 
 
 #endif /* CAEDRMetadata_h */
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterCell.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterCell.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterCell.h	2023-03-09 23:52:48
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterCell.h	2023-05-31 03:55:12
@@ -3,6 +3,8 @@
    Copyright (c) 2007-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -147,3 +149,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterLayer.h	2023-03-09 19:13:10
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEmitterLayer.h	2023-06-01 00:24:45
@@ -14,6 +14,8 @@
  * The particles are drawn above the backgroundColor and border of the
  * layer. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 typedef NSString * CAEmitterLayerEmitterShape NS_TYPED_ENUM;
@@ -145,3 +147,5 @@
     API_AVAILABLE(macos(10.6), ios(5.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAGradientLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAGradientLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAGradientLayer.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAGradientLayer.h	2023-05-31 09:01:18
@@ -6,6 +6,8 @@
 /* The gradient layer draws a color gradient over its background color,
  * filling the shape of the layer (i.e. including rounded corners). */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 #import <QuartzCore/CAMediaTimingFunction.h>
 #import <Foundation/NSArray.h>
@@ -72,3 +74,5 @@
     API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CAMediaTiming.h>
 #import <QuartzCore/CATransform3D.h>
 #import <Foundation/NSObject.h>
@@ -377,6 +379,19 @@
 @property(copy) CALayerContentsFormat contentsFormat
   API_AVAILABLE(macos(10.12), ios(10.0), watchos(3.0), tvos(10.0));
 
+/* If YES, contents of the layer can be displayed up to its NSScreen's
+ * maximumExtendedDynamicRangeColorComponentValue or UIScreen's
+ * currentEDRHeadroom. If NO, contents are clipped or tonemapped to 1.0 (SDR).
+ * `contents` with a CGColorSpaceRef conforming to ITU-R 2100
+ * (CGColorSpaceUsesITUR_2100TF) will be tonemapped. Setting this value to
+ * YES may have a significant impact on power consumption and therefore
+ * should only be set when displaying EDR contents. The default value is NO. */
+
+@property BOOL wantsExtendedDynamicRangeContent
+  API_AVAILABLE(macos(14.0), ios(17.0), macCatalyst(17.0)) API_UNAVAILABLE(tvos, watchos);
+
+
+
 /* The filter types to use when rendering the `contents' property of
  * the layer. The minification filter is used when to reduce the size
  * of image data, the magnification filter to increase the size of
@@ -951,3 +966,5 @@
     API_AVAILABLE(macos(10.5), ios(2.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTiming.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTiming.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTiming.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTiming.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CABase.h>
 #import <objc/objc.h>
 #import <Foundation/NSObject.h>
@@ -90,3 +92,5 @@
     API_AVAILABLE(macos(10.5), ios(2.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTimingFunction.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CAMediaTiming.h>
 #import <Foundation/NSObject.h>
 
@@ -61,3 +63,5 @@
     API_AVAILABLE(macos(10.6), ios(3.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalDisplayLink.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalDisplayLink.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalDisplayLink.h	1969-12-31 19:00:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalDisplayLink.h	2023-05-31 09:01:18
@@ -0,0 +1,53 @@
+/* CoreAnimation - CAMetalDisplayLink.h
+
+   Copyright (c) 2023, Apple Inc.
+   All rights reserved. */
+
+#ifdef __OBJC__
+
+#import <QuartzCore/CABase.h>
+#import <QuartzCore/CAFrameRateRange.h>
+#import <QuartzCore/CAMetalLayer.h>
+#import <Foundation/NSObject.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class CAMetalDisplayLink;
+
+API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0))
+CF_SWIFT_NAME(CAMetalDisplayLink.Update)
+@interface CAMetalDisplayLinkUpdate : NSObject
+@property(readonly, nonatomic) id<CAMetalDrawable> drawable;
+@property(readonly, nonatomic) CFTimeInterval targetTimestamp;
+@property(readonly, nonatomic) CFTimeInterval targetPresentationTimestamp;
+@end
+
+API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0))
+@protocol CAMetalDisplayLinkDelegate
+- (void)metalDisplayLink:(CAMetalDisplayLink *)link needsUpdate:(CAMetalDisplayLinkUpdate *)update;
+@end
+
+API_AVAILABLE(macos(14.0), ios(17.0), watchos(10.0), tvos(17.0))
+@interface CAMetalDisplayLink : NSObject
+
+- (instancetype)initWithMetalLayer:(CAMetalLayer *)layer;
+
+- (void)addToRunLoop:(NSRunLoop *)runloop forMode:(NSRunLoopMode)mode;
+
+- (void)removeFromRunLoop:(NSRunLoop *)runloop forMode:(NSRunLoopMode)mode;
+
+- (void)invalidate;
+
+@property(nonatomic, weak, nullable) id<CAMetalDisplayLinkDelegate> delegate;
+
+@property(nonatomic) float preferredFrameLatency;
+
+@property(nonatomic) CAFrameRateRange preferredFrameRateRange;
+
+@property(getter=isPaused, nonatomic) BOOL paused;
+
+@end
+
+NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalLayer.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMetalLayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2013-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 #import <QuartzCore/CAEDRMetadata.h>
 #import <Metal/MTLPixelFormat.h>
@@ -148,3 +150,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAOpenGLLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAOpenGLLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAOpenGLLayer.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAOpenGLLayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 #import <CoreVideo/CVBase.h>
 #import <OpenGL/OpenGL.h>
@@ -88,3 +90,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerClient.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerClient.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerClient.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerClient.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2010-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CABase.h>
 #import <Foundation/NSObject.h>
 #import <mach/mach.h>
@@ -41,3 +43,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerServer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerServer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerServer.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARemoteLayerServer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2010-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 #import <Foundation/NSObject.h>
 #import <mach/mach.h>
@@ -37,3 +39,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARenderer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARenderer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARenderer.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CARenderer.h	2023-05-31 09:01:18
@@ -29,6 +29,8 @@
  *    from the -render method, the default values will be preserved.
  */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CABase.h>
 #import <CoreVideo/CVBase.h>
 #import <Foundation/NSObject.h>
@@ -56,6 +58,7 @@
     API_AVAILABLE(macos(10.5));
 #endif
 
+
 /* Create a new renderer object. Its render target is the specified
  * texture. 'dict' is an optional dictionary of parameters.  */
 
@@ -127,3 +130,5 @@
     API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAReplicatorLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAReplicatorLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAReplicatorLayer.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAReplicatorLayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2008-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -59,3 +61,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAScrollLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAScrollLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAScrollLayer.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAScrollLayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -58,3 +60,5 @@
     API_AVAILABLE(macos(10.5), ios(2.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAShapeLayer.h	2023-06-01 00:24:45
@@ -3,6 +3,8 @@
    Copyright (c) 2008-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -129,3 +131,5 @@
     API_AVAILABLE(macos(10.6), ios(3.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATextLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATextLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATextLayer.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATextLayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 /* The text layer provides simple text layout and rendering of plain
@@ -93,3 +95,5 @@
     API_AVAILABLE(macos(10.5), ios(3.2), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATiledLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATiledLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATiledLayer.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATiledLayer.h	2023-05-31 09:01:18
@@ -22,6 +22,8 @@
  * an CATiledLayer object - doing so will effectively turn it into a
  * regular CALayer. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -61,3 +63,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h	2023-03-09 19:16:29
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransaction.h	2023-05-31 04:57:05
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CABase.h>
 #import <Foundation/NSObject.h>
 
@@ -107,6 +109,12 @@
 + (nullable id)valueForKey:(NSString *)key;
 + (void)setValue:(nullable id)anObject forKey:(NSString *)key;
 
+/* Enables batching for the transaction. When this is enabled,
+ * all CAContexts for the current process will be batch commited together
+ * in a single transaction. */
+
++ (void)batch;
+
 @end
 
 /** Transaction property ids. **/
@@ -121,3 +129,5 @@
     API_AVAILABLE(macos(10.6), ios(4.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransformLayer.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransformLayer.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransformLayer.h	2023-03-09 19:08:01
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransformLayer.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2006-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CALayer.h>
 
 NS_ASSUME_NONNULL_BEGIN
@@ -34,3 +36,5 @@
 @end
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAValueFunction.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAValueFunction.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAValueFunction.h	2023-03-09 19:08:00
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAValueFunction.h	2023-05-31 09:01:18
@@ -3,6 +3,8 @@
    Copyright (c) 2008-2022, Apple Inc.
    All rights reserved. */
 
+#ifdef __OBJC__
+
 #import <QuartzCore/CABase.h>
 #import <Foundation/NSObject.h>
 
@@ -72,3 +74,5 @@
     API_AVAILABLE(macos(10.6), ios(3.0), watchos(2.0), tvos(9.0));
 
 NS_ASSUME_NONNULL_END
+
+#endif
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h	2023-03-08 00:53:41
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CoreAnimation.h	2023-05-31 09:01:16
@@ -11,10 +11,13 @@
 
 #ifdef __OBJC__
 #import <Foundation/Foundation.h>
+#endif
+
 #import <QuartzCore/CAAnimation.h>
 #import <QuartzCore/CAConstraintLayoutManager.h>
 #import <QuartzCore/CADisplayLink.h>
 #import <QuartzCore/CAMetalLayer.h>
+#import <QuartzCore/CAMetalDisplayLink.h>
 #import <QuartzCore/CAEmitterCell.h>
 #import <QuartzCore/CAEmitterLayer.h>
 #import <QuartzCore/CAFrameRateRange.h>
@@ -36,6 +39,5 @@
 #import <QuartzCore/CATransformLayer.h>
 #import <QuartzCore/CAValueFunction.h>
 #import <QuartzCore/CAEDRMetadata.h>
-#endif
 
 #endif /* COREANIMATION_H */
diff -ruN /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/QuartzCore.h /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/QuartzCore.h
--- /Applications/Xcode_14.3.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/QuartzCore.h	2023-03-08 00:53:41
+++ /Applications/Xcode_15.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/QuartzCore.h	2023-05-31 09:01:16
@@ -12,6 +12,7 @@
 #if !__has_feature(modules)
 #include <QuartzCore/CoreVideo.h>
 #endif
+
 #include <QuartzCore/CoreAnimation.h>
 
 #endif /* QUARTZCORE_H */
Clone this wiki locally