Метод IMFMediaSession::SetTopology (mfidl.h)
Задает топологию для сеанса мультимедиа.
Синтаксис
HRESULT SetTopology(
[in] DWORD dwSetTopologyFlags,
[in] IMFTopology *pTopology
);
Параметры
[in] dwSetTopologyFlags
Побитовое ЗНАЧЕНИЕ ИЛИ , равное нулю или более флагам из перечисления MFSESSION_SETTOPOLOGY_FLAGS .
[in] pTopology
Указатель на интерфейс IMFTopology объекта топологии .
Возвращаемое значение
Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Метод выполнен успешно. |
|
Операция не может быть выполнена в текущем состоянии сеанса мультимедиа. |
|
Сеанс мультимедиа завершен. |
|
Топология имеет недопустимые значения для одного или нескольких следующих атрибутов: |
|
Во время отладки невозможно воспроизвести защищенное содержимое. |
Комментарии
Если pTopology является полной топологией, установите флаг MFSESSION_SETTOPOLOGY_NORESOLUTION в параметре dwSetTopologyFlags . В противном случае предполагается, что топология является частичной. Сеанс мультимедиа использует загрузчик топологии для разрешения частичной топологии в полную топологию.
Если сеанс мультимедиа в настоящее время приостановлен или остановлен, метод SetTopology не вступит в силу до следующего вызова IMFMediaSession::Start.
Если сеанс мультимедиа выполняется в данный момент или при следующем вызове метода Start, метод SetTopology выполняет следующие действия:
- Если флаг MFSESSION_SETTOPOLOGY_IMMEDIATE установлен в dwSetTopologyFlags, сеанс мультимедиа немедленно завершает текущую презентацию, очищает все ожидающие топологии и использует pTopology для запуска новой презентации.
- В противном случае сеанс мультимедиа помещает в очередь pTopology и запускает новую презентацию после завершения текущей презентации. Если текущей презентации нет, новая презентация начинается немедленно.
- Начиная с Windows 7, вы также можете указать флаг MFSESSION_SETTOPOLOGY_CLEAR_CURRENT , чтобы очистить текущую топологию, но оставить все другие ожидающие топологии в очереди.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | mfidl.h |
Библиотека | Mfuuid.lib |