Bagikan melalui


struktur KSCLOCK_DISPATCH (ks.h)

Struktur KSCLOCK_DISPATCH berisi panggilan balik yang diperlukan agar pin mengimplementasikan objek jam.

Sintaks

typedef struct _KSCLOCK_DISPATCH {
  PFNKSPINSETTIMER       SetTimer;
  PFNKSPINCANCELTIMER    CancelTimer;
  PFNKSPINCORRELATEDTIME CorrelatedTime;
  PFNKSPINRESOLUTION     Resolution;
} KSCLOCK_DISPATCH, *PKSCLOCK_DISPATCH;

Anggota

SetTimer

Secara opsional berisi penunjuk ke fungsi alternatif untuk digunakan dalam menghasilkan panggilan balik timer DPC berdasarkan waktu presentasi. Jika ini diatur, fungsi ini digunakan untuk mengatur timer berdasarkan delta ke waktu presentasi saat ini untuk menghasilkan pemberitahuan peristiwa. Jika fungsi alternatif ditentukan untuk mengatur timer, fungsi CancelTimer yang sesuai juga harus disediakan. Ini diatur ke NULL jika fungsi KeSetTimerEx default digunakan untuk memperkirakan waktu pemberitahuan berikutnya. Ini biasanya akan diatur hanya jika fungsi KeSetTimerEx sedang digunakan. Fungsi harus memiliki karakteristik yang sama dengan fungsi default.

Fungsi harus diprototi sebagai berikut:

BOOLEAN SetTimer (IN PKSPIN Pin,
    IN PKTIMER Timer,
    IN LARGE_INTEGER DueTime,
    IN PKDPC Dpc);

Lihat dokumentasi ke KeSetTimerEx untuk detail tentang implementasi fungsi ini. Implementasi klien apa pun harus bersifat serupa.

CancelTimer

Secara opsional berisi fungsi alternatif untuk digunakan dalam membatalkan panggilan balik timer yang luar biasa. Jika fungsi alternatif disediakan untuk membatalkan timer, fungsi SetTimer yang sesuai juga harus disediakan. Ini diatur ke NULL jika fungsi KeCancelTimer default akan digunakan. Fungsi harus memiliki karakteristik yang sama dengan fungsi default.

Fungsi harus diprototi sebagai berikut:

BOOLEAN CancelTimer (IN PKSPIN Pin,
    IN PKTIMER Timer);

Lihat dokumentasi ke KeCancelTimer untuk detail tentang implementasi fungsi ini. Implementasi klien apa pun harus bersifat serupa.

CorrelatedTime

Penunjuk ke fungsi untuk mengambil waktu jam saat ini dan waktu sistem yang berkorelasi sebagai operasi atomik. Fungsi harus diprototi sebagai berikut:

LONGLONG CorrelatedTime (IN PKSPIN Pin,
    OUT PLONGLONG SystemTime);

Waktu jam saat ini harus dikembalikan dan waktu sistem saat ini harus ditempatkan di SystemTime.

Resolution

Penunjuk ke fungsi untuk menentukan resolusi jam. Ini sesuai dengan properti KS KSPROPERTY_CLOCK_RESOLUTION. Fungsi ini harus melaporkan granularitas dalam hal 100 unit nanodetik. Untuk informasi selengkapnya, lihat dokumentasi KS tentang KSPROPERTY_CLOCK_RESOLUTION.

Fungsi harus diprototi sebagai berikut:

void Resolution (IN PKSPIN Pin,
        OUT PKSRESOLUTION Resolution);

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia di Microsoft Windows XP dan sistem operasi yang lebih baru dan di Microsoft DirectX 8.0 dan versi yang lebih baru.
Header ks.h (termasuk Ks.h)

Lihat juga

KDPC

KSPIN

KSPIN_DISPATCH

KSPROPERTY_CLOCK_RESOLUTION

KSRESOLUTION

KeSetTimerEx