Метод IMFTimer::SetTimer (mfidl.h)
Задает таймер, который вызывает обратный вызов в указанное время.
Синтаксис
HRESULT SetTimer(
[in] DWORD dwFlags,
[in] LONGLONG llClockTime,
[in] IMFAsyncCallback *pCallback,
[in] IUnknown *punkState,
[out] IUnknown **ppunkKey
);
Параметры
[in] dwFlags
Побитовое ИЛИ с нулевым или более флагами из перечисления MFTIMER_FLAGS .
[in] llClockTime
Время срабатывания таймера в единицах частоты часов. Время является абсолютным или относительно текущего времени в зависимости от значения dwFlags.
[in] pCallback
Указатель на интерфейс IMFAsyncCallback объекта обратного вызова. Вызывающий объект должен реализовать этот интерфейс. Метод Invoke для обратного вызова вызывается в момент, указанный в параметре llClockTime .
[in] punkState
Указатель на интерфейс IUnknown объекта состояния, определенного вызывающим объектом. Этот параметр может принимать значение NULL. Этот объект можно использовать для хранения сведений о состоянии. Объект возвращается вызывающей при вызове обратного вызова.
[out] ppunkKey
Получает указатель на интерфейс IUnknown объекта отмены. Вызывающий объект должен освободить интерфейс . Чтобы отменить таймер, передайте этот указатель в метод IMFTimer::CancelTimer . Этот параметр может принимать значение NULL.
Возвращаемое значение
Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Метод выполнен успешно. |
|
Часы были выключены. |
|
Метод выполнен успешно, но часы остановлены. |
Комментарии
Если часы остановлены, метод возвращает MF_S_CLOCK_STOPPED. Обратный вызов не будет вызываться, пока не будут запущены часы.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | mfidl.h |
Библиотека | Mfuuid.lib |