Win32 API 日本語リファレンス
ホームGraphics.Direct2D › ID2D1ImageSource

ID2D1ImageSource

COM
IIDc9b664e5-74a1-4378-9ac2-eefc37a3f4d8継承元ID2D1Image自前メソッド開始 vtbl4

公式ドキュメント

任意の 2D 平面を塗りつぶすことができるピクセルのプロデューサーを表します。(ID2D1ImageSource)

メソッド 2

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 4 HRESULT OfferResources()

リソースの内容を破棄することで、オペレーティング システムがリソースのビデオ メモリを解放できるようにします。(ID2D1ImageSource.OfferResources)

戻り値

型: HRESULT

OfferResources は次を返します:

vtbl 5 HRESULT TryReclaimResources(BOOL* resourcesDiscarded)

OfferResources を呼び出して以前に提供したリソースへのアクセスを復元します。

resourcesDiscardedBOOL*out対応するリソースの内容が破棄されて現在は未定義になっている場合は TRUE、対応するリソースの以前の内容がまだ保持されている場合は FALSE を返します。 以前の内容が破棄されたかどうかに関係なくリソースを新しい内容で埋めるつもりであれば、呼び出し元は NULL を渡すことができます。

戻り値

型: HRESULT

ReclaimResources は次を返します:

解説(Remarks)

OfferResources を呼び出して 1 つ以上のリソースを提供した後は、 それらのリソースを再び使用する前に TryReclaimResources を呼び出す必要があります。 リソースの内容が破棄されたかどうかを判断するには、resourcesDiscarded の値を確認する必要があります。 リソースが提供されている間にその内容が破棄された場合、現在の内容は未定義です。そのため、リソースを使用する前にリソースの内容を上書きする必要があります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ID2D1ImageSource "{C9B664E5-74A1-4378-9AC2-EEFC37A3F4D8}"
#usecom global ID2D1ImageSource IID_ID2D1ImageSource "{}"
#comfunc global ID2D1ImageSource_OfferResources       4
#comfunc global ID2D1ImageSource_TryReclaimResources  5 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。