Win32 API 日本語リファレンス
ホームSystem.WinRT.Holographic › IHolographicCameraInterop

IHolographicCameraInterop

COM
IID7cc1f9c5-6d02-41fa-9500-e1809eb48eec継承元IInspectable自前メソッド開始 vtbl6

メソッド 5

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

vtbl 6 HRESULT CreateDirect3D12BackBufferResource(ID3D12Device* pDevice, D3D12_RESOURCE_DESC* pTexture2DDesc, ID3D12Resource** ppCreatedTexture2DResource)
pDeviceID3D12Device*inリソース生成に使用する Direct3D 12 デバイス ID3D12Device へのポインタを指定する。
pTexture2DDescD3D12_RESOURCE_DESC*in作成するバックバッファ用 2D テクスチャの記述子 D3D12_RESOURCE_DESC へのポインタを指定する。
ppCreatedTexture2DResourceID3D12Resource**out作成されたバックバッファリソース ID3D12Resource へのポインタを受け取る出力ポインタである。
vtbl 7 HRESULT CreateDirect3D12HardwareProtectedBackBufferResource(ID3D12Device* pDevice, D3D12_RESOURCE_DESC* pTexture2DDesc, ID3D12ProtectedResourceSession* pProtectedResourceSession, ID3D12Resource** ppCreatedTexture2DResource)
pDeviceID3D12Device*inリソース生成に使用する Direct3D 12 デバイス ID3D12Device へのポインタを指定する。
pTexture2DDescD3D12_RESOURCE_DESC*in作成するバックバッファ用 2D テクスチャの記述子 D3D12_RESOURCE_DESC へのポインタを指定する。
pProtectedResourceSessionID3D12ProtectedResourceSession*in保護されたコンテンツに使用する ID3D12ProtectedResourceSession へのポインタを指定する。
ppCreatedTexture2DResourceID3D12Resource**out作成されたハードウェア保護バックバッファリソース ID3D12Resource へのポインタを受け取る出力ポインタである。
vtbl 8 HRESULT AcquireDirect3D12BufferResource(ID3D12Resource* pResourceToAcquire, ID3D12CommandQueue* pCommandQueue)
pResourceToAcquireID3D12Resource*in取得(レンダリング用に確保)する Direct3D 12 リソース ID3D12Resource へのポインタを指定する。
pCommandQueueID3D12CommandQueue*inリソース取得を同期させる Direct3D 12 コマンドキュー ID3D12CommandQueue へのポインタを指定する。
vtbl 9 HRESULT AcquireDirect3D12BufferResourceWithTimeout(ID3D12Resource* pResourceToAcquire, ID3D12CommandQueue* pCommandQueue, ULONGLONG duration)
pResourceToAcquireID3D12Resource*in取得(レンダリング用に確保)する Direct3D 12 リソース ID3D12Resource へのポインタを指定する。
pCommandQueueID3D12CommandQueue*inリソース取得を同期させる Direct3D 12 コマンドキュー ID3D12CommandQueue へのポインタを指定する。
durationULONGLONGin取得を待機する最大時間をタイムアウト値として指定する。
vtbl 10 HRESULT UnacquireDirect3D12BufferResource(ID3D12Resource* pResourceToUnacquire)
pResourceToUnacquireID3D12Resource*in取得を解除して解放する Direct3D 12 リソース ID3D12Resource へのポインタを指定する。

HSP用 COM定義

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

出力引数:
#define global IID_IHolographicCameraInterop "{7CC1F9C5-6D02-41FA-9500-E1809EB48EEC}"
#usecom global IHolographicCameraInterop IID_IHolographicCameraInterop "{}"
#comfunc global IHolographicCameraInterop_CreateDirect3D12BackBufferResource                   6 sptr,var,sptr
#comfunc global IHolographicCameraInterop_CreateDirect3D12HardwareProtectedBackBufferResource  7 sptr,var,sptr,sptr
#comfunc global IHolographicCameraInterop_AcquireDirect3D12BufferResource                      8 sptr,sptr
#comfunc global IHolographicCameraInterop_AcquireDirect3D12BufferResourceWithTimeout           9 sptr,sptr,int64
#comfunc global IHolographicCameraInterop_UnacquireDirect3D12BufferResource                    10 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。