Note: This documentation (@AppleGraphicsInternals.md) is based on a dump of internal type definitions extracted from macOS Ventura. It provides insight into the private structures used by Apple's graphics and windowing systems on that OS version.
This document summarizes and organizes the most developer-relevant types and structures found in the internal Apple graphics/windowing system dump (windowserver.info). It focuses on types from Core Animation (CA), Core Graphics (CG), and related frameworks, providing a reference for reverse engineers and advanced developers.
- CALayer: The base class for all layer types. Represents a renderable region in a layer tree.
- CAEmitterLayer, CATiledLayer, CATransformLayer, CAReplicatorLayer, CAShapeLayer, CAProxyLayer, CAChameleonLayer, CABoxLayoutManager, CAScrollLayer, CATableLayoutManager, CAWrappedLayoutManager, CACloningTerminatorLayer, CABackdropLayer, CADistanceFieldLayer, CAPluginLayer, CAOpenGLLayer, CAEAGLLayer, CAMetalLayer, CAPortalLayer, CALayerHost, CAStateControllerLayer, CAStateElement, CAStateAddElement, CAStateRemoveElement, CAStateSetValue, CAStateTransitionElement, CAStateRemoveAnimation, CAStateAddAnimation: Specialized layer types for various rendering, effects, and layout purposes.
- CAAnimation: Base struct for animations.
- CAPropertyAnimation, CABasicAnimation, CAKeyframeAnimation, CASpringAnimation, CAMatchMoveAnimation, CAMatchPropertyAnimation, CATransition, CAAnimationGroup, CAExternalAnimation: Animation types for property changes, keyframes, transitions, and groups.
- CAMediaTimingFunction, CAMediaTimingFunctionPrivate, CAMediaTimingFunctionBuiltin: Timing functions for animation pacing.
- CARenderer: Represents a rendering context for drawing layer trees.
- CAContext: Encapsulates a rendering context for remote or local drawing.
- CAContentStream, CAContentStreamOptions, CAContentStreamFrame: Types for streaming content to displays or remote contexts.
- CADisplay, CADisplayMode, CADisplayAttributes, CADisplayPreferences, CADisplayLink, CADisplayPowerAssertion, CADisplayWallGroup, CADisplayWallConfiguration, CADisplayProperties, CADisplayPersistedData, CADisplayPersistedLatency, CADisplayPersistedPreferredMode, CAFrameRateRange, CAFrameIntervalRange, DynamicFrameRateSource, CADynamicFrameRateSource: Types for display management, modes, and timing.
- CATimingFramePacingLatency: Frame pacing and latency info.
- CAMetalLayer, CAMetalDrawable, CAMetalDisplayLink, CAMetalDisplayLinkUpdate, CAOpenGLLayer, CAEAGLLayer, CAEAGLBuffer, _CAEAGLNativeWindow: Types for Metal and OpenGL-backed layers and drawables.
- CAFilter, CAValueFunction, CAStateController, CAStateControllerTransition, CAStateControllerUndo, CAState, CAStateTransition, CAStateControllerAnimation, CAStateControllerDelegate, CAStateControllerData, CAStateControllerLayer, CAStateElement, CAStateAddElement, CAStateRemoveElement, CAStateSetValue, CAStateTransitionElement, CAStateRemoveAnimation, CAStateAddAnimation: State management and filtering.
- CAFrameRateRangeGroup, CAFrameRateRange, CAFrameIntervalRange, CAFrameRateRangeGroup, CAFrameRateRange, CAFrameIntervalRange: Frame rate and timing.
- CGPoint, CGSize, CGRect, CGAffineTransform, CATransform3D, CAPoint3D, CACornerRadii, CAColorMatrix: Fundamental geometric and transformation types.
- CGPath, CGPathElement, CGPattern, CGColor, CGImage, CGContext: Types for paths, patterns, colors, images, and drawing contexts.
- CGColorSpace, CGColorTRC, CGColorTRCParametric, CGColorTRCTable, CGColorTRCBoundaryExtension: Color management and transfer curve types.
- CAWindowServer, CAWindowServerImpl, CAWindowServerDisplay, CAWindowServerDisplayImpl, CAWindowServerVirtualDisplay, CAWindowServerDisplayManager: Types for managing the window server and displays.
- CABrightnessTransaction: Manages display brightness transactions.
- objc_object, NSObject, NSString, NSArray, NSDictionary, NSMutableArray, NSMutableSet, NSTimer: Core Objective-C types referenced by many structures.
- __objc2_class, __objc2_class_ro, __objc2_class_rw, __objc2_class_rw1, __objc2_class_rw1_ext, __objc2_category, __objc2_meth, __objc2_meth_list, __objc2_ivar, __objc2_ivar_list, __objc2_prop, __objc2_prop_list, __objc2_prot, __objc2_prot_list: Internal Objective-C runtime structures.
- Mutex, SpinLock, pthread_mutex_t, pthread_cond_t, mach_msg_header_t, mach_port_t, mach_vm_size_t, vm_address_t, vm_size_t, audit_token_t: Synchronization, Mach IPC, and memory management types.
- Many types are internal and not documented by Apple. Use with caution.
- This document omits purely internal, low-level, or irrelevant types for clarity.
- For more details, refer to the original
windowserver.infodump.