1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 use shared::basetsd::PULONG64;
7 use shared::minwindef::{BOOL, PULONG, USHORT};
8 use um::winnt::{HANDLE, PULONGLONG};
9 extern "system" {
10     pub fn QueryThreadCycleTime(
11         ThreadHandle: HANDLE,
12         CycleTime: PULONG64,
13     ) -> BOOL;
14     pub fn QueryProcessCycleTime(
15         ProcessHandle: HANDLE,
16         CycleTime: PULONG64,
17     ) -> BOOL;
18     pub fn QueryIdleProcessorCycleTime(
19         BufferLength: PULONG,
20         ProcessorIdleCycleTime: PULONG64,
21     ) -> BOOL;
22     pub fn QueryIdleProcessorCycleTimeEx(
23         Group: USHORT,
24         BufferLength: PULONG,
25         ProcessorIdleCycleTime: PULONG64,
26     ) -> BOOL;
27     pub fn QueryUnbiasedInterruptTime(
28         UnbiasedTime: PULONGLONG,
29     ) -> BOOL;
30 }
31