Метод CSourceSeeking.CheckCapabilities
Метод CheckCapabilities
запрашивает, задано ли в потоке возможности поиска. Этот метод реализует метод IMediaSeeking::CheckCapabilities .
Синтаксис
HRESULT CheckCapabilities(
DWORD *pCapabilities
);
Параметры
-
pCapabilities
-
Указатель на побитовое сочетание одного или нескольких атрибутов AM_SEEKING_SEEKING_CAPABILITIES .
Возвращаемое значение
Возвращает одно из значений HRESULT , перечисленных в следующей таблице.
Код возврата | Описание |
---|---|
|
Существуют не все возможности в pCapabilities . |
|
Присутствуют все возможности в pCapabilities . |
|
Аргумент указателя NULL. |
Комментарии
Как реализован, этот метод проверяет значение *pCapabilities на соответствие переменной-члену CSourceSeeking::m_dwSeekingCaps . Однако он не задает значение *pCapabilities , равное m_dwSeekingCaps, как описано для метода IMediaSeeking::CheckCapabilities . Кроме того, если ни один из указанных возможностей недоступен, метод не возвращает E_FAIL. Более полной реализацией будет следующее:
STDMETHODIMP CheckCapabilities(DWORD *pCapabilities)
{
CheckPointer(pCapabilities, E_POINTER)
;
DWORD dwCaps;
HRESULT hr = GetCapabilities(&dwCaps);
if (SUCCEEDED(hr))
{
dwCaps &= *pCapabilities;
if (dwCaps)
{
hr = (dwCaps == *pCapabilities ? S_OK : S_FALSE );
}
else
{
hr = E_FAIL;
}
*pCapabilities = dwCaps;
}
else
{
*pCapabilities = 0;
}
return hr;
}
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|