KsPinGetConnectedPinInterface 関数 (ks.h)
KsPinGetConnectedPinInterface 関数は、COM スタイル インターフェイスの Pin が接続されているピンに対してクエリを実行します。
構文
KSDDKAPI NTSTATUS KsPinGetConnectedPinInterface(
[in] PKSPIN Pin,
[in] const GUID *InterfaceId,
[out] PVOID *Interface
);
パラメーター
[in] Pin
KSPIN 構造体へのポインター。 AVStream は、 Pin に接続 されているピンに対して、要求されたインターフェイスのクエリを実行します。
[in] InterfaceId
取得するインターフェイスの種類を指定する GUID へのポインター。 QueryInterface 呼び出しは、このインターフェイスに対して自動的に実行されます。
[out] Interface
AVStream が COM インターフェイスの場所に設定するポインターへのポインター。
戻り値
KsPinGetConnectedPinInterface は、STATUS_SUCCESSまたはSTATUS_NOINTERFACEを返します。 詳細は以下を参照してください。
注釈
インターフェイス には対応する参照カウントがあり、COM のように呼び出し元によって解放される 必要があります 。
このルーチンは、接続されたピンまたは AVStream サンクにインターフェイスが存在する場合、STATUS_SUCCESSを返します。 STATUS_SUCCESSが返された場合、AVStream はインターフェイス ポインターを *Interface に設定します。 それ以外の場合、ルーチンはSTATUS_NOINTERFACEを返します。 これは COM HRESULT E_NOINTERFACEに対応します。
既定では、オブジェクトは IUnknown インターフェイスと IKsControl インターフェイスをサポートします。 接続されているピンが AVStream ピンの場合、クエリと返されるインターフェイス ポインターは、他のドライバーへの直接呼び出しです。 一方、接続されたピンが AVStream ドライバーに属していない場合は、IoCallDriver を使用して、接続されたピンを含むドライバーへの同期呼び出しを通じて IKsControl のサポートを提供するサンクが作成されます。
KsPinGetConnectedPinInterface の最も一般的な使用方法は、接続されたピンのコントロール インターフェイスを取得することです。 このコントロール インターフェイスは、接続されたピンに対するプロパティ、メソッド、またはイベント呼び出しに使用することも、接続されたピンに集計されたインターフェイスに対してクエリを実行することもできます。 接続されたピンが AVStream ピンの場合。AVStream では、非 AVStream ピンに対して IKsControl と IUnknown に対してのみサンキングが提供されます。
サンクは、Pin がソース ピン の場合にのみ作成されます。したがって、呼び出しは、次の 1 つ以上が当てはまる場合にのみ機能します。
- 接続は AVStream 内です (ピンの接続ピンは AVStream ピンです)。
- Pin はソース ピンです。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Microsoft Windows XP 以降のオペレーティング システムと DirectX 8.0 以降の DirectX バージョンで使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | ks.h (Ks.h を含む) |
Library | Ks.lib |
IRQL | PASSIVE_LEVEL |
こちらもご覧ください
KsPinGetConnectedFilterInterface