Skip to content

IOSurface iOS xcode15.3 b1

Alex Soto edited this page Jan 27, 2024 · 2 revisions

#IOSurface.framework

diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceBase.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceBase.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceBase.h	2023-11-12 10:20:58
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceBase.h	2024-01-10 00:27:16
@@ -33,6 +33,7 @@
 #endif
 
 #include <mach/kern_return.h>
+#include <mach/mach_types.h>
 #include <CoreFoundation/CoreFoundation.h>
 #if TARGET_OS_OSX
 #include <xpc/xpc.h>
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceRef.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceRef.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceRef.h	2023-11-12 10:38:27
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceRef.h	2024-01-10 00:41:30
@@ -444,6 +444,24 @@
 kern_return_t IOSurfaceSetPurgeable(IOSurfaceRef buffer, uint32_t newState, uint32_t * __nullable oldState)
     API_AVAILABLE(macos(10.12), ios(11.0), watchos(4.0), tvos(11.0));
 
+// Memory ledger tags.
+typedef CF_ENUM(int, IOSurfaceMemoryLedgerTags) {
+    kIOSurfaceMemoryLedgerTagDefault     = 0x00000001,
+    kIOSurfaceMemoryLedgerTagNetwork     = 0x00000002,
+    kIOSurfaceMemoryLedgerTagMedia       = 0x00000003,
+    kIOSurfaceMemoryLedgerTagGraphics    = 0x00000004,
+    kIOSurfaceMemoryLedgerTagNeural      = 0x00000005,
+};
+
+// Memory ledger flags.
+typedef CF_OPTIONS(uint32_t, IOSurfaceMemoryLedgerFlags) {
+    kIOSurfaceMemoryLedgerFlagNoFootprint = (1 << 0),
+};
+
+
+kern_return_t IOSurfaceSetOwnershipIdentity(IOSurfaceRef buffer, task_id_token_t task_id_token, int newLedgerTag, uint32_t newLedgerOptions) API_AVAILABLE(ios(17.4), watchos(10.4), tvos(17.4), macos(14.4));
+
+
 __END_DECLS
 
 CF_ASSUME_NONNULL_END
Clone this wiki locally