KSCLOCK_DISPATCH結構 (ks.h)
KSCLOCK_DISPATCH結構包含針腳實作時鐘物件所需的回呼。
語法
typedef struct _KSCLOCK_DISPATCH {
PFNKSPINSETTIMER SetTimer;
PFNKSPINCANCELTIMER CancelTimer;
PFNKSPINCORRELATEDTIME CorrelatedTime;
PFNKSPINRESOLUTION Resolution;
} KSCLOCK_DISPATCH, *PKSCLOCK_DISPATCH;
成員
SetTimer
選擇性地包含替代函式的指標,以根據簡報時間產生 DPC 定時器回呼。 如果已設定,則此函式會用來根據差異設定定時器到目前的簡報時間,以產生事件通知。 如果指定替代函式來設定定時器,也必須提供對應的 CancelTimer 函式。 如果預設的 KeSetTimerEx 函式用於大約下次通知時間,這會設定為 NULL。 只有在使用 KeSetTimerEx 函式時,才會設定此設定。 函式必須具有與預設函式相同的特性。
函式的原型應如下所示:
BOOLEAN SetTimer (IN PKSPIN Pin,
IN PKTIMER Timer,
IN LARGE_INTEGER DueTime,
IN PKDPC Dpc);
如需此函式實作的詳細資訊,請參閱 KeSetTimerEx 檔。 任何客戶端實作都必須以類似的方式運作。
CancelTimer
選擇性地包含用來取消未完成定時器回呼的替代函式。 如果提供替代函式來取消定時器,也必須提供對應的 SetTimer 函式。 如果要使用預設 KeCancelTimer 函式,這會設定為 NULL。 函式必須具有與預設函式相同的特性。
函式的原型應如下所示:
BOOLEAN CancelTimer (IN PKSPIN Pin,
IN PKTIMER Timer);
如需此函式實作的詳細數據,請參閱 KeCancelTimer 的檔。 任何客戶端實作都必須以類似的方式運作。
CorrelatedTime
要擷取目前時鐘時間和相互關聯的系統時間做為不可部分完成作業的函式指標。 函式的原型應如下所示:
LONGLONG CorrelatedTime (IN PKSPIN Pin,
OUT PLONGLONG SystemTime);
應該傳回目前的時鐘時間,而且目前的系統時間應該放在 systemTime 中。
Resolution
指定時鐘解析度之函式的指標。 這會對應至 KS 屬性 KSPROPERTY_CLOCK_RESOLUTION。 此函式應報告 100 奈秒單位的數據粒度。 如需詳細資訊,請參閱KSPROPERTY_CLOCK_RESOLUTION的 KS 檔。
函式的原型應如下所示:
void Resolution (IN PKSPIN Pin,
OUT PKSRESOLUTION Resolution);
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 適用於 Microsoft Windows XP 和更新版本的作系統,以及 Microsoft DirectX 8.0 和更新版本。 |
標頭 | ks.h (包括 Ks.h) |