функция обратного вызова PHW_QUERY_CLOCK_ROUTINE (strmini.h)
С каждым потоком могут быть связаны часы. Драйвер класса запрашивает часы, вызывая функцию StrMiniClock , предоставляемую потоком minidriver, указанную в HW_STREAM_OBJECT каждого потока.
Синтаксис
PHW_QUERY_CLOCK_ROUTINE PhwQueryClockRoutine;
void PhwQueryClockRoutine(
[in] IN PHW_TIME_CONTEXT TimeContext
)
{...}
Параметры
[in] TimeContext
Указатель на структуру HW_TIME_CONTEXT , которую должен заполнить StrMiniClock запрошенными сведениями.
Возвращаемое значение
None
Remarks
Поток задает функцию StrMiniClock в члене HwClockFunctionHW_CLOCK_OBJECT подструктуры HW_STREAM_OBJECT. Мини-driver заполняет HW_STREAM_OBJECT для потока в рамках процедуры StrMiniReceiveDevicePacket в ответ на запрос SRB_OPEN_STREAM.
Когда драйвер класса вызывает StrMiniClock, он заполняет элементы HwDeviceExtension, HwStreamObject и Function параметра TimeContext . Ожидается, что StrMiniClock заполнит элемент Time значением времени в 100-наносекундных единицах, указанным в параметре Function . StrMiniClock также должен заполнить элемент SystemTime текущим системным временем, вызвав KeQueryPerformanceCounter и преобразовав результат в 100-наносекундных единиц.
Подпрограмма StrMiniClock должна обрабатывать функции, указанные в clockSupportFlags HW_CLOCK_OBJECT часов. Дополнительные сведения см. в HW_CLOCK_OBJECT.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | strmini.h (включая Strmini.h) |