IMFCollection::GetElement メソッド (mfobjects.h)
コレクション内のオブジェクトを取得します。
構文
HRESULT GetElement(
[in] DWORD dwElementIndex,
[out] IUnknown **ppUnkElement
);
パラメーター
[in] dwElementIndex
取得するオブジェクトの 0 から始まるインデックス。 オブジェクトは、コレクションに追加された順序でインデックスが作成されます。
[out] ppUnkElement
オブジェクトの IUnknown インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。 取得されたポインター値は NULL である可能性があります。
戻り値
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
注釈
このメソッドは、コレクションからオブジェクトを削除しません。 オブジェクトを削除するには、 IMFCollection::RemoveElement を呼び出します。
例
// Gets an interface pointer from a collection (IMFCollection).
//
// Q: Interface type
template <class Q>
HRESULT GetCollectionObject(IMFCollection *pCollection,
DWORD dwIndex, Q **ppObject)
{
*ppObject = NULL; // zero output
IUnknown *pUnk = NULL;
HRESULT hr = pCollection->GetElement(dwIndex, &pUnk);
if (SUCCEEDED(hr))
{
hr = pUnk->QueryInterface(IID_PPV_ARGS(ppObject));
pUnk->Release();
}
return hr;
}
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | mfobjects.h (Mfidl.h を含む) |
Library | Mfuuid.lib |