/*++ Copyright (c) 2000 Microsoft Corporation Module Name: xxtimer.h Abstract: This module contains definitions used by the HAL's timer-related functions Author: Eric Nelson (enelson) July 7, 2000 Revision History: --*/ #ifndef __XXTIMER_H__ #define __XXTIMER_H__ typedef ULONG (*PSTE_ROUTINE)( // (S)et (T)ime (I)ncrement IN ULONG DesiredIncrement ); typedef VOID (*PSEP_ROUTINE)( // (S)tall (E)xecution (P)rocessor IN ULONG Microseconds ); typedef VOID (*PCPC_ROUTINE)( // (C)alibrate (P)erformance (C)ounter IN LONG volatile *Number, IN ULONGLONG NewCount ); typedef LARGE_INTEGER (*PQPC_ROUTINE)( // (Q)uery (P)erformance (C)ounter OUT PLARGE_INTEGER PerformanceFrequency OPTIONAL ); typedef struct _TIMER_FUNCTIONS { PSEP_ROUTINE StallExecProc; PCPC_ROUTINE CalibratePerfCount; PQPC_ROUTINE QueryPerfCount; PSTE_ROUTINE SetTimeIncrement; } TIMER_FUNCTIONS, *PTIMER_FUNCTIONS; VOID HalpSetTimerFunctions( IN PTIMER_FUNCTIONS TimerFunctions ); #endif // __XXTIMER_H__