Condividi tramite


Metodo IMFTimer::SetTimer (mfidl.h)

Imposta un timer che richiama un callback al momento specificato.

Sintassi

HRESULT SetTimer(
  [in]  DWORD            dwFlags,
  [in]  LONGLONG         llClockTime,
  [in]  IMFAsyncCallback *pCallback,
  [in]  IUnknown         *punkState,
  [out] IUnknown         **ppunkKey
);

Parametri

[in] dwFlags

OR bit per bit di zero o più flag dall'enumerazione MFTIMER_FLAGS .

[in] llClockTime

Ora in cui il timer deve essere attivato, in unità della frequenza dell'orologio. L'ora è assoluta o relativa all'ora corrente, a seconda del valore di dwFlags.

[in] pCallback

Puntatore all'interfaccia IMFAsyncCallback di un oggetto callback. Il chiamante deve implementare questa interfaccia. Il metodo Invoke del callback viene chiamato al momento specificato nel parametro llClockTime .

[in] punkState

Puntatore all'interfaccia IUnknown di un oggetto di stato, definito dal chiamante. Questo parametro può essere NULL. È possibile utilizzare questo oggetto per contenere le informazioni sullo stato. L'oggetto viene restituito al chiamante quando viene richiamato il callback.

[out] ppunkKey

Riceve un puntatore all'interfaccia IUnknown di un oggetto di annullamento. Il chiamante deve rilasciare l'interfaccia. Per annullare il timer, passare questo puntatore al metodo IMFTimer::CancelTimer . Questo parametro può essere NULL.

Valore restituito

Il metodo restituisce un valore HRESULT. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente.

Codice restituito Descrizione
S_OK
Il metodo è riuscito.
MF_E_SHUTDOWN
L'orologio è stato chiuso.
MF_S_CLOCK_STOPPED
Il metodo è riuscito, ma l'orologio viene arrestato.

Commenti

Se l'orologio viene arrestato, il metodo restituisce MF_S_CLOCK_STOPPED. Il callback non verrà richiamato fino all'avvio dell'orologio.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione mfidl.h
Libreria Mfuuid.lib

Vedi anche

IMFTimer