Core Graphics >     Quartz Display Services
Quartz Display Services
ディスプレイハードウェアを設定および制御するための macOS ウィンドウサーバーの機能への直接アクセスを提供します。
概観
Quartz Display Services を使用すると、以下のことができます。
- 幅、高さ、ピクセルの深さなどの表示モードのプロパティを調べて変更する
- 一度の操作で一連のディスプレイを構成する
- 排他的使用のために 1 つ以上のディスプレイをキャプチャする
- ディスプレイのコンテンツをストリーミングする
- フェード効果を実行する
- ディスプレイミラーリングを有効にする
- ガンマ補正表の設定
- 画面更新操作の通知を受け取る
シンボル
ディスプレイの検索
func CGMainDisplayID()
メインディスプレイのディスプレイ ID を返します。
func CGGetOnlineDisplayList(UInt32, UnsafeMutablePointer<CGDirectDisplayID>?, UnsafeMutablePointer<UInt32>?)
オンラインの(アクティブな、ミラーリングされている、またはスリープしている) ディスプレイのリストを提供します。
func CGGetActiveDisplayList(UInt32, UnsafeMutablePointer<CGDirectDisplayID>?, UnsafeMutablePointer<UInt32>?)
アクティブ(または描画可能) なディスプレイのリストを提供します。
func CGGetDisplaysWithOpenGLDisplayMask(CGOpenGLDisplayMask, UInt32, UnsafeMutablePointer<CGDirectDisplayID>?, UnsafeMutablePointer<UInt32>?)
OpenGL ディスプレイマスクに設定されたビットに対応するディスプレイのリストを提供します。
func CGGetDisplaysWithPoint(CGPoint, UInt32, UnsafeMutablePointer<CGDirectDisplayID>?, UnsafeMutablePointer<UInt32>?)
指定された点を含む境界線を持つオンラインディスプレイのリストを提供します。
func CGGetDisplaysWithRect(CGRect, UInt32, UnsafeMutablePointer<CGDirectDisplayID>?, UnsafeMutablePointer<UInt32>?)
指定された長方形と交差する境界を持つオンラインディスプレイのリストを取得します。
func CGOpenGLDisplayMaskToDisplayID(CGOpenGLDisplayMask)
OpenGL ディスプレイマスクをディスプレイ ID にマッピングします。
func CGDisplayIDToOpenGLDisplayMask(CGDirectDisplayID)
ディスプレイ ID を OpenGL ディスプレイマスクにマッピングします。
ディスプレイのキャプチャと解放
func CGDisplayCapture(CGDirectDisplayID)
アプリケーションが排他的に使用するディスプレイをキャプチャします。
func CGDisplayCaptureWithOptions(CGDirectDisplayID, CGCaptureOptions)
指定されたオプションを使用して、アプリケーションによって排他的に使用されるディスプレイをキャプチャします。
func CGDisplayRelease(CGDirectDisplayID)
キャプチャされたディスプレイを解放します。
func CGCaptureAllDisplays()
接続しているすべてのディスプレイをキャプチャします。
func CGCaptureAllDisplaysWithOptions(CGCaptureOptions)
指定したオプションを使用して、接続しているすべてのディスプレイをキャプチャします。
func CGReleaseAllDisplays()
キャプチャされたすべてのディスプレイを解放します。
func CGShieldingWindowID(CGDirectDisplayID)
キャプチャされたディスプレイのシールドウィンドウのウィンドウ ID を返します。
func CGShieldingWindowLevel()
キャプチャされたディスプレイのシールドウィンドウのウィンドウレベルを返します。
func CGDisplayGetDrawingContext(CGDirectDisplayID)
キャプチャされたディスプレイに描画するのに適したグラフィックスコンテキストを返します。
ディスプレイからイメージの作成
func CGDisplayCreateImage(CGDirectDisplayID)
指定されたディスプレイのコンテンツを含むイメージを返します。
func CGDisplayCreateImage(CGDirectDisplayID, rect: CGRect)
指定されたディスプレイの一部のコンテンツを含むイメージを返します。
ディスプレイの構成
func CGBeginDisplayConfiguration(UnsafeMutablePointer<CGDisplayConfigRef?>?)
新しいディスプレイ構成の変更のセットを開始します。
func CGCancelDisplayConfiguration(CGDisplayConfigRef?)
一連のディスプレイ構成の変更を取り消します。
func CGCompleteDisplayConfiguration(CGDisplayConfigRef?, CGConfigureOption)
一連のディスプレイ構成の変更を完了します。
func CGConfigureDisplayMirrorOfDisplay(CGDisplayConfigRef?, CGDirectDisplayID, CGDirectDisplayID)
ミラーリングセットの構成を変更します。
func CGConfigureDisplayOrigin(CGDisplayConfigRef?, CGDirectDisplayID, Int32, Int32)
グローバルディスプレイ座標空間でのディスプレイの原点を構成します。
func CGRestorePermanentDisplayConfiguration()
現在のユーザーの永続的なディスプレイ構成設定を復元します。
func CGConfigureDisplayStereoOperation(CGDisplayConfigRef?, CGDirectDisplayID, boolean_t, boolean_t)
ディスプレイ構成の一部として、ディスプレイのステレオ動作を有効または無効にします。
func CGDisplaySetStereoOperation(CGDirectDisplayID, boolean_t, boolean_t, CGConfigureOption)
直ちにディスプレイのステレオ動作を有効または無効にします。
func CGConfigureDisplayWithDisplayMode(CGDisplayConfigRef?, CGDirectDisplayID, CGDisplayMode?, CFDictionary?)
ディスプレイのディスプレイモードを構成します。
ディスプレイ構成の取得
func CGDisplayCopyColorSpace(CGDirectDisplayID)
ディスプレイの色空間を返します。
func CGDisplayIsActive(CGDirectDisplayID)
ディスプレイがアクティブかどうかを示すブール値を返します。
func CGDisplayIsAlwaysInMirrorSet(CGDirectDisplayID)
ディスプレイが常にミラーリングセット内にあるかどうかを示すブール値を返します。
func CGDisplayIsAsleep(CGDirectDisplayID)
ディスプレイがスリープ状態(そのため描画可能ではない) かどうかを示すブール値を返します。
func CGDisplayIsBuiltin(CGDirectDisplayID)
ポータブルシステムの内部ディスプレイなど、ディスプレイがビルトインかどうかを示すブール値を返します。
func CGDisplayIsInHWMirrorSet(CGDirectDisplayID)
ディスプレイがハードウェアミラーリングセット内にあるかどうかを示すブール値を返します。
func CGDisplayIsInMirrorSet(CGDirectDisplayID)
ディスプレイがミラーリングセット内にあるかどうかを示すブール値を返します。
func CGDisplayIsMain(CGDirectDisplayID)
ディスプレイがメインディスプレイであるかどうかを示すブール値を返します。
func CGDisplayIsOnline(CGDirectDisplayID)
ディスプレイが接続されているかオンラインであるかを示すブール値を返します。
func CGDisplayIsStereo(CGDirectDisplayID)
ディスプレイがステレオグラフィックモードで動作しているかどうかを示すブール値を返します。
func CGDisplayMirrorsDisplay(CGDirectDisplayID)
ミラーリングセットの第2ディスプレイの場合は、主ディスプレイを返します。
func CGDisplayModelNumber(CGDirectDisplayID)
ディスプレイモニタのモデル番号を返します。
func CGDisplayPrimaryDisplay(CGDirectDisplayID)
ハードウェアミラーリングセット内の主ディスプレイを返します。
func CGDisplayRotation(CGDirectDisplayID)
ディスプレイの回転角度を度で返します。
func CGDisplayScreenSize(CGDirectDisplayID)
ディスプレイの幅と高さをミリメートル単位で返します。
func CGDisplaySerialNumber(CGDirectDisplayID)
ディスプレイモニタのシリアル番号を返します。
func CGDisplayUnitNumber(CGDirectDisplayID)
ディスプレイの論理ユニット番号を返します。
func CGDisplayUsesOpenGLAcceleration(CGDirectDisplayID)
Quartz が OpenGL ベースのウィンドウアクセラレーション(Quartz Extreme) を使用してディスプレイにレンダリングするかどうかを示すブール値を返します。
func CGDisplayVendorNumber(CGDirectDisplayID)
指定したディスプレイモニタのベンダー番号を返します。
ディスプレイ構成の変更通知の登録
これらの関数は、ディスプレイ構成の変更を通知する呼び出し関数を登録および登録解除するために使用されます。
func CGDisplayRegisterReconfigurationCallback(CGDisplayReconfigurationCallBack?, UnsafeMutableRawPointer?)
ローカルディスプレイが再構成されるたびに呼び出される呼び出し関数を登録します。
func CGDisplayRemoveReconfigurationCallback(CGDisplayReconfigurationCallBack?, UnsafeMutableRawPointer?)
ローカルディスプレイが再構成されるたびに呼び出される呼び出し関数の登録を削除します。
ディスプレイパラメータの取得
func CGDisplayBounds(CGDirectDisplayID)
グローバルディスプレイ座標空間におけるディスプレイの境界を返します。
func CGDisplayPixelsHigh(CGDirectDisplayID)
ディスプレイの高さをピクセル単位で返します。
func CGDisplayPixelsWide(CGDirectDisplayID)
ディスプレイの幅をピクセル単位で返します。
ディスプレイモードの作成と管理
func CGDisplayCopyDisplayMode(CGDirectDisplayID)
現在のディスプレイ構成に関する情報を返します。
func CGDisplayCopyAllDisplayModes(CGDirectDisplayID, CFDictionary?)
現在利用可能なディスプレイモードに関する情報を返します。
func CGDisplaySetDisplayMode(CGDirectDisplayID, CGDisplayMode?, CFDictionary?)
ディスプレイを別のモードに切り替えます。
ディスプレイモードに関する情報の取得
var width: Int
指定されたディスプレイモードの幅を返します。
var height: Int
指定したディスプレイモードの高さを返します。
指定されたディスプレイモードのピクセルのコード化を返します。
旧式 |
---|
var refreshRate: Double
指定されたディスプレイモードのリフレッシュレートを返します。
var ioFlags: UInt32
指定されたディスプレイモードの I/O Kit フラグを返します。
var ioDisplayModeID: Int32
指定されたディスプレイモードの I/O Kit ディスプレイモード ID を返します。
func isUsableForDesktopGUI()
指定されたディスプレイモードがデスクトップのグラフィカルユーザーインターフェイスで使用可能かどうかを示すブール値を返します。
class var typeID: CFTypeID
Quartz ディスプレイモードの型 ID を返します。
ディスプレイガンマの調整
func CGSetDisplayTransferByFormula(CGDirectDisplayID, CGGammaValue, CGGammaValue, CGGammaValue, CGGammaValue, CGGammaValue, CGGammaValue, CGGammaValue, CGGammaValue, CGGammaValue)
ガンマ転送式の係数を指定して、ディスプレイのガンマ関数を設定します。
func CGGetDisplayTransferByFormula(CGDirectDisplayID, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?)
ディスプレイのガンマ転送式の係数を取得します。
func CGSetDisplayTransferByTable(CGDirectDisplayID, UInt32, UnsafePointer<CGGammaValue>?, UnsafePointer<CGGammaValue>?, UnsafePointer<CGGammaValue>?)
RGB ガンマテーブルの値を指定して、ディスプレイのカラーガンマ関数を設定します。
func CGGetDisplayTransferByTable(CGDirectDisplayID, UInt32, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<CGGammaValue>?, UnsafeMutablePointer<UInt32>?)
ディスプレイの RGB ガンマ表の値を取得します。
func CGSetDisplayTransferByByteTable(CGDirectDisplayID, UInt32, UnsafePointer<UInt8>, UnsafePointer<UInt8>, UnsafePointer<UInt8>)
ディスプレイ用の 8 ビット RGB ガンマ表のバイト値を設定します。
func CGDisplayRestoreColorSyncSettings()
ガンマ表をユーザーの ColorSync ディスプレイプロファイルの値に戻します。
func CGDisplayGammaTableCapacity(CGDirectDisplayID)
ディスプレイのガンマ表内に容量またはエントリ数を返します。
ディスプレイのフェード効果
func CGConfigureDisplayFadeEffect(CGDisplayConfigRef?, CGDisplayFadeInterval, CGDisplayFadeInterval, Float, Float, Float)
ディスプレイの構成中に発生する組み込みのフェード効果の設定を変更します。
func CGAcquireDisplayFadeReservation(CGDisplayReservationInterval, UnsafeMutablePointer<CGDisplayFadeReservationToken>?)
指定した時間間隔でフェードハードウェアを予約します。
func CGDisplayFade(CGDisplayFadeReservationToken, CGDisplayFadeInterval, CGDisplayBlendFraction, CGDisplayBlendFraction, Float, Float, Float, boolean_t)
単一のフェード操作を実行します。
func CGReleaseDisplayFadeReservation(CGDisplayFadeReservationToken)
ディスプレイのフェード予約を解除し、必要に応じてディスプレイをフェードアウトします。
マウスカーソルの制御
func CGDisplayHideCursor(CGDirectDisplayID)
マウスカーソルを非表示にし、非表示カーソルカウントを増分します。
func CGDisplayShowCursor(CGDirectDisplayID)
非表示カーソル数を減分し、カウントが 0 の場合はマウスカーソルを表示します。
func CGDisplayMoveCursorToPoint(CGDirectDisplayID, CGPoint)
マウスカーソルをディスプレイの原点(ディスプレイの左上隅) に対して指定された点に移動します。
func CGAssociateMouseAndMouseCursorPosition(boolean_t)
アプリケーションが前景にあるときにマウスとカーソルを接続または切断します。
func CGWarpMouseCursorPosition(CGPoint)
イベントを生成せずにマウスカーソルを移動します。
func CGGetLastMouseDelta()
アプリケーションが最後にマウスの移動イベントを受信してからのマウスの位置の変化を報告します。
ウィンドウサーバー情報の取得
func CGSessionCopyCurrentDictionary()
呼び出し元のウィンドウサーバーセッションに関する情報を返します。
func CGWindowLevelForKey(CGWindowLevelKey)
標準ウィンドウ型の 1 つに対応するウィンドウレベルを返します。
ディスプレイのコンテンツをストリーミングする
init?(display: CGDirectDisplayID, outputWidth: Int, outputHeight: Int, pixelFormat: Int32, properties: CFDictionary?, handler: CGDisplayStreamFrameAvailableHandler?)
CFRunloop で使用する新しいディスプレイストリームを作成します。
init?(dispatchQueueDisplay: CGDirectDisplayID, outputWidth: Int, outputHeight: Int, pixelFormat: Int32, properties: CFDictionary?, queue: DispatchQueue, handler: CGDisplayStreamFrameAvailableHandler?)
その更新がディスパッチキューに配信される新しいディスプレイストリームを作成します。
func start()
ストリームに更新の送信を開始するように指示します。
func stop()
ストリームに更新の送信を停止するように指示します。
var runLoopSource: CFRunLoopSource?
ディスプレイストリーム用の実行ループソースを取得します。
func getRects(CGDisplayStreamUpdateRectType, rectCount: UnsafeMutablePointer<Int>)
直前のフレームからフレームが変更された場所を記述する長方形の配列を返します。
init?(mergedUpdateFirstUpdate: CGDisplayStreamUpdate?, secondUpdate: CGDisplayStreamUpdate?)
両方のソースの更新のメタデータを含む、新しい更新に二つの更新を結合します。
func getMovedRectsDelta(dx: UnsafeMutablePointer<CGFloat>, dy: UnsafeMutablePointer<CGFloat>)
単一の更新の移動デルタ値を返します。
var dropCount: Int
更新ハンドラへの最後の呼び出し以降に削除されたフレームの数を返します。
class var typeID: CFTypeID
Quartz ディスプレイストリームの型 ID を返します。
class var typeID: CFTypeID
Quartz ディスプレイストリーム更新の型 ID を返します。
呼び出し関数
CGDisplayReconfigurationCallBack
ローカルディスプレイの構成が変更されたときいつでも呼び出されるクライアント提供の呼び出し関数。
ディスプレイの領域が変更または更新されたときに呼び出されるクライアント提供の呼び出し関数。
ディスプレイの領域が移動されたときに呼び出されるクライアント提供の呼び出し関数。
データ型
接続されたディスプレイの一意の ID。
フェード操作で使用されるブレンド色の割合。
ディスプレイ構成処理への参照。
さまざまなリストでのディスプレイの数。
Quartz Display Services 内の関数から返される結果コードの統一型。
フェード操作またはフェードハードウェア予約の持続時間(秒)。
指定した間隔でフェード操作のために 1 つ以上のディスプレイを予約するときに Quartz によって発行されるトークン。
ディスプレイモードオブジェクトへの参照。
フェード予約の時間間隔。
ソフトウェアで生成された色をディスプレイハードウェアでサポートされている色にマッピングするために使用される値。
接続されたディスプレイのセットを指定するために OpenGL で使用されるビットマスク。
Quartz 長方形の配列のサイズ。
ディスプレイのリフレッシュレート(フレーム/秒)。
スクリーン上の領域が移動する、ピクセル単位での距離。
アプリケーションフレームワークによってウィンドウに割り当てられたレベル。
ディスプレイストリームオブジェクトへの参照。
フレーム更新のメタデータへの参照。
CGDisplayStreamFrameAvailableHandler
処理すべき新しいフレーム・イベントがデータ・ストリームにあるときに呼び出されるブロック。
定数
ディスプレイをキャプチャするときに使用される構成パラメータ。
ディスプレイ再構成呼び出し関数に渡される構成パラメータ。
ディスプレイ構成処理の変更の範囲。
ディスプレイのフェード操作中のブレンド色部分の下限と上限。
フェード操作に関連する値。
Display Mode Standard Properties
ディスプレイモード辞書内の標準プロパティのキー。
Display Mode Optional Properties
ディスプレイモード辞書内のオプションのプロパティのキー。
ウィンドウレベルの定数。
CGScreenUpdateOperation
スクリーン更新操作の種類。
macOS の標準ウィンドウレベルを表すキー。Quartz には、Cocoa のようなアプリケーションフレームワークをサポートするこれらのキーが含まれています。アプリケーションで直接使用する必要はありません。
Window Server Session Properties
ウィンドウサーバー・セッション辞書内の標準プロパティーのキー。
これらの定数を使用して、あなたのアプリが興味を持っている長方形を決定します。
フレーム更新イベントを記述します。
Display Stream Optional Property Keys
これらのキーは、新しいディスプレイストリームを作成するときに使用される properties 辞書を生成するために使用されます。
Display Stream YCbCr to RGB conversion Matrix Options
これらの文字列は、yCbCrMatrix オプションの配列を指定するために使用されます。
以下も見よ
関連した文書