<!--
{
  "documentType" : "article",
  "framework" : "CoreGraphics",
  "identifier" : "/documentation/CoreGraphics/quartz-window-services",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Quartz Window Services"
}
-->

# Quartz Window Services

Provides information about the windows managed by the macOS window server.

## Discussion

This includes the onscreen windows seen on the user’s desktop and any offscreen windows used by the running applications. You can also use Quartz Window Services to generate images based on the contents of windows.

## Topics

### Getting Window Information

[`CGWindowListCopyWindowInfo(_:_:)`](/documentation/CoreGraphics/CGWindowListCopyWindowInfo(_:_:))

Generates and returns information about the selected windows in the current user session.

[`CGWindowListCreate`](/documentation/CoreGraphics/CGWindowListCreate)

Returns the list of window IDs associated with the specified windows in the current user session.

[`CGWindowListCreateDescriptionFromArray(_:)`](/documentation/CoreGraphics/CGWindowListCreateDescriptionFromArray(_:))

Generates and returns information about windows with the specified window IDs.

### Data Types

[`CGWindowID`](/documentation/CoreGraphics/CGWindowID)

The data type used to store window identifiers.

[`CGWindowListOption`](/documentation/CoreGraphics/CGWindowListOption)

The data type used to specify the options for gathering a list of windows.

[`CGWindowImageOption`](/documentation/CoreGraphics/CGWindowImageOption)

The data type to use to specify the type of image to be generated for a window.

[`CGWindowSharingType`](/documentation/CoreGraphics/CGWindowSharingType)

The data type used to specify the sharing mode used by a window.

[`CGWindowBackingType`](/documentation/CoreGraphics/CGWindowBackingType)

The data type used to specify the backing option for a given window.

### Constants

[Window Sharing Constants](/documentation/CoreGraphics/window-sharing-constants)

Specifies whether and how windows are shared between applications.

[Backing Store Types](/documentation/CoreGraphics/backing-store-types)

Specifies how the window device buffers drawing commands.

[Window List Option Constants](/documentation/CoreGraphics/window-list-option-constants)

Specifies which windows in the current user session to include in a generated list.

[Window Image Types](/documentation/CoreGraphics/window-image-types)

Specifies the options for capturing an image of a window.

[CGWindowID Encoding Type](/documentation/CoreGraphics/cgwindowid-encoding-type)

Defines the encoding type for window IDs.

[Null Window](/documentation/CoreGraphics/null-window)

Defines a guaranteed invalid window ID.

[Window Sharing Encoding Type](/documentation/CoreGraphics/window-sharing-encoding-type)

Defines the encoding type for window sharing values.

[Window Backing Encoding Type](/documentation/CoreGraphics/window-backing-encoding-type)

Defines the encoding type for window backing types.

[Required Window List Keys](/documentation/CoreGraphics/required-window-list-keys)

The keys that are guaranteed to be available in a window’s information dictionary.

[Optional Window List Keys](/documentation/CoreGraphics/optional-window-list-keys)

The keys that may optionally be available inside a window’s information dictionary.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)