1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[cfg(feature = "Win32_System_Performance_HardwareCounterProfiling")]
3 pub mod HardwareCounterProfiling;
4 #[link(name = "windows")]
5 extern "system" {
6     #[cfg(feature = "Win32_Foundation")]
BackupPerfRegistryToFileW(szfilename: super::super::Foundation::PWSTR, szcommentstring: super::super::Foundation::PWSTR) -> u327     pub fn BackupPerfRegistryToFileW(szfilename: super::super::Foundation::PWSTR, szcommentstring: super::super::Foundation::PWSTR) -> u32;
8     #[cfg(feature = "Win32_Foundation")]
InstallPerfDllA(szcomputername: super::super::Foundation::PSTR, lpinifile: super::super::Foundation::PSTR, dwflags: usize) -> u329     pub fn InstallPerfDllA(szcomputername: super::super::Foundation::PSTR, lpinifile: super::super::Foundation::PSTR, dwflags: usize) -> u32;
10     #[cfg(feature = "Win32_Foundation")]
InstallPerfDllW(szcomputername: super::super::Foundation::PWSTR, lpinifile: super::super::Foundation::PWSTR, dwflags: usize) -> u3211     pub fn InstallPerfDllW(szcomputername: super::super::Foundation::PWSTR, lpinifile: super::super::Foundation::PWSTR, dwflags: usize) -> u32;
12     #[cfg(feature = "Win32_Foundation")]
LoadPerfCounterTextStringsA(lpcommandline: super::super::Foundation::PSTR, bquietmodearg: super::super::Foundation::BOOL) -> u3213     pub fn LoadPerfCounterTextStringsA(lpcommandline: super::super::Foundation::PSTR, bquietmodearg: super::super::Foundation::BOOL) -> u32;
14     #[cfg(feature = "Win32_Foundation")]
LoadPerfCounterTextStringsW(lpcommandline: super::super::Foundation::PWSTR, bquietmodearg: super::super::Foundation::BOOL) -> u3215     pub fn LoadPerfCounterTextStringsW(lpcommandline: super::super::Foundation::PWSTR, bquietmodearg: super::super::Foundation::BOOL) -> u32;
16     #[cfg(feature = "Win32_Foundation")]
PdhAddCounterA(hquery: isize, szfullcounterpath: super::super::Foundation::PSTR, dwuserdata: usize, phcounter: *mut isize) -> i3217     pub fn PdhAddCounterA(hquery: isize, szfullcounterpath: super::super::Foundation::PSTR, dwuserdata: usize, phcounter: *mut isize) -> i32;
18     #[cfg(feature = "Win32_Foundation")]
PdhAddCounterW(hquery: isize, szfullcounterpath: super::super::Foundation::PWSTR, dwuserdata: usize, phcounter: *mut isize) -> i3219     pub fn PdhAddCounterW(hquery: isize, szfullcounterpath: super::super::Foundation::PWSTR, dwuserdata: usize, phcounter: *mut isize) -> i32;
20     #[cfg(feature = "Win32_Foundation")]
PdhAddEnglishCounterA(hquery: isize, szfullcounterpath: super::super::Foundation::PSTR, dwuserdata: usize, phcounter: *mut isize) -> i3221     pub fn PdhAddEnglishCounterA(hquery: isize, szfullcounterpath: super::super::Foundation::PSTR, dwuserdata: usize, phcounter: *mut isize) -> i32;
22     #[cfg(feature = "Win32_Foundation")]
PdhAddEnglishCounterW(hquery: isize, szfullcounterpath: super::super::Foundation::PWSTR, dwuserdata: usize, phcounter: *mut isize) -> i3223     pub fn PdhAddEnglishCounterW(hquery: isize, szfullcounterpath: super::super::Foundation::PWSTR, dwuserdata: usize, phcounter: *mut isize) -> i32;
24     #[cfg(feature = "Win32_Foundation")]
PdhBindInputDataSourceA(phdatasource: *mut isize, logfilenamelist: super::super::Foundation::PSTR) -> i3225     pub fn PdhBindInputDataSourceA(phdatasource: *mut isize, logfilenamelist: super::super::Foundation::PSTR) -> i32;
26     #[cfg(feature = "Win32_Foundation")]
PdhBindInputDataSourceW(phdatasource: *mut isize, logfilenamelist: super::super::Foundation::PWSTR) -> i3227     pub fn PdhBindInputDataSourceW(phdatasource: *mut isize, logfilenamelist: super::super::Foundation::PWSTR) -> i32;
28     #[cfg(feature = "Win32_Foundation")]
PdhBrowseCountersA(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_A) -> i3229     pub fn PdhBrowseCountersA(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_A) -> i32;
30     #[cfg(feature = "Win32_Foundation")]
PdhBrowseCountersHA(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_HA) -> i3231     pub fn PdhBrowseCountersHA(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_HA) -> i32;
32     #[cfg(feature = "Win32_Foundation")]
PdhBrowseCountersHW(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_HW) -> i3233     pub fn PdhBrowseCountersHW(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_HW) -> i32;
34     #[cfg(feature = "Win32_Foundation")]
PdhBrowseCountersW(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_W) -> i3235     pub fn PdhBrowseCountersW(pbrowsedlgdata: *const PDH_BROWSE_DLG_CONFIG_W) -> i32;
36     #[cfg(feature = "Win32_Foundation")]
PdhCalculateCounterFromRawValue(hcounter: isize, dwformat: PDH_FMT, rawvalue1: *const PDH_RAW_COUNTER, rawvalue2: *const PDH_RAW_COUNTER, fmtvalue: *mut PDH_FMT_COUNTERVALUE) -> i3237     pub fn PdhCalculateCounterFromRawValue(hcounter: isize, dwformat: PDH_FMT, rawvalue1: *const PDH_RAW_COUNTER, rawvalue2: *const PDH_RAW_COUNTER, fmtvalue: *mut PDH_FMT_COUNTERVALUE) -> i32;
PdhCloseLog(hlog: isize, dwflags: u32) -> i3238     pub fn PdhCloseLog(hlog: isize, dwflags: u32) -> i32;
PdhCloseQuery(hquery: isize) -> i3239     pub fn PdhCloseQuery(hquery: isize) -> i32;
PdhCollectQueryData(hquery: isize) -> i3240     pub fn PdhCollectQueryData(hquery: isize) -> i32;
41     #[cfg(feature = "Win32_Foundation")]
PdhCollectQueryDataEx(hquery: isize, dwintervaltime: u32, hnewdataevent: super::super::Foundation::HANDLE) -> i3242     pub fn PdhCollectQueryDataEx(hquery: isize, dwintervaltime: u32, hnewdataevent: super::super::Foundation::HANDLE) -> i32;
PdhCollectQueryDataWithTime(hquery: isize, plltimestamp: *mut i64) -> i3243     pub fn PdhCollectQueryDataWithTime(hquery: isize, plltimestamp: *mut i64) -> i32;
44     #[cfg(feature = "Win32_Foundation")]
PdhComputeCounterStatistics(hcounter: isize, dwformat: PDH_FMT, dwfirstentry: u32, dwnumentries: u32, lprawvaluearray: *const PDH_RAW_COUNTER, data: *mut PDH_STATISTICS) -> i3245     pub fn PdhComputeCounterStatistics(hcounter: isize, dwformat: PDH_FMT, dwfirstentry: u32, dwnumentries: u32, lprawvaluearray: *const PDH_RAW_COUNTER, data: *mut PDH_STATISTICS) -> i32;
46     #[cfg(feature = "Win32_Foundation")]
PdhConnectMachineA(szmachinename: super::super::Foundation::PSTR) -> i3247     pub fn PdhConnectMachineA(szmachinename: super::super::Foundation::PSTR) -> i32;
48     #[cfg(feature = "Win32_Foundation")]
PdhConnectMachineW(szmachinename: super::super::Foundation::PWSTR) -> i3249     pub fn PdhConnectMachineW(szmachinename: super::super::Foundation::PWSTR) -> i32;
50     #[cfg(feature = "Win32_Foundation")]
PdhCreateSQLTablesA(szdatasource: super::super::Foundation::PSTR) -> i3251     pub fn PdhCreateSQLTablesA(szdatasource: super::super::Foundation::PSTR) -> i32;
52     #[cfg(feature = "Win32_Foundation")]
PdhCreateSQLTablesW(szdatasource: super::super::Foundation::PWSTR) -> i3253     pub fn PdhCreateSQLTablesW(szdatasource: super::super::Foundation::PWSTR) -> i32;
54     #[cfg(feature = "Win32_Foundation")]
PdhEnumLogSetNamesA(szdatasource: super::super::Foundation::PSTR, mszdatasetnamelist: super::super::Foundation::PSTR, pcchbufferlength: *mut u32) -> i3255     pub fn PdhEnumLogSetNamesA(szdatasource: super::super::Foundation::PSTR, mszdatasetnamelist: super::super::Foundation::PSTR, pcchbufferlength: *mut u32) -> i32;
56     #[cfg(feature = "Win32_Foundation")]
PdhEnumLogSetNamesW(szdatasource: super::super::Foundation::PWSTR, mszdatasetnamelist: super::super::Foundation::PWSTR, pcchbufferlength: *mut u32) -> i3257     pub fn PdhEnumLogSetNamesW(szdatasource: super::super::Foundation::PWSTR, mszdatasetnamelist: super::super::Foundation::PWSTR, pcchbufferlength: *mut u32) -> i32;
58     #[cfg(feature = "Win32_Foundation")]
PdhEnumMachinesA(szdatasource: super::super::Foundation::PSTR, mszmachinelist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i3259     pub fn PdhEnumMachinesA(szdatasource: super::super::Foundation::PSTR, mszmachinelist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32;
60     #[cfg(feature = "Win32_Foundation")]
PdhEnumMachinesHA(hdatasource: isize, mszmachinelist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i3261     pub fn PdhEnumMachinesHA(hdatasource: isize, mszmachinelist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32;
62     #[cfg(feature = "Win32_Foundation")]
PdhEnumMachinesHW(hdatasource: isize, mszmachinelist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i3263     pub fn PdhEnumMachinesHW(hdatasource: isize, mszmachinelist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32;
64     #[cfg(feature = "Win32_Foundation")]
PdhEnumMachinesW(szdatasource: super::super::Foundation::PWSTR, mszmachinelist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i3265     pub fn PdhEnumMachinesW(szdatasource: super::super::Foundation::PWSTR, mszmachinelist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32;
66     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectItemsA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, mszcounterlist: super::super::Foundation::PSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i3267     pub fn PdhEnumObjectItemsA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, mszcounterlist: super::super::Foundation::PSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i32;
68     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectItemsHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, mszcounterlist: super::super::Foundation::PSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i3269     pub fn PdhEnumObjectItemsHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, mszcounterlist: super::super::Foundation::PSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i32;
70     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectItemsHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, mszcounterlist: super::super::Foundation::PWSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PWSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i3271     pub fn PdhEnumObjectItemsHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, mszcounterlist: super::super::Foundation::PWSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PWSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i32;
72     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectItemsW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, mszcounterlist: super::super::Foundation::PWSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PWSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i3273     pub fn PdhEnumObjectItemsW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, mszcounterlist: super::super::Foundation::PWSTR, pcchcounterlistlength: *mut u32, mszinstancelist: super::super::Foundation::PWSTR, pcchinstancelistlength: *mut u32, dwdetaillevel: PERF_DETAIL, dwflags: u32) -> i32;
74     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectsA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, mszobjectlist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i3275     pub fn PdhEnumObjectsA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, mszobjectlist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i32;
76     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectsHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, mszobjectlist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i3277     pub fn PdhEnumObjectsHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, mszobjectlist: super::super::Foundation::PSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i32;
78     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectsHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, mszobjectlist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i3279     pub fn PdhEnumObjectsHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, mszobjectlist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i32;
80     #[cfg(feature = "Win32_Foundation")]
PdhEnumObjectsW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, mszobjectlist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i3281     pub fn PdhEnumObjectsW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, mszobjectlist: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32, dwdetaillevel: PERF_DETAIL, brefresh: super::super::Foundation::BOOL) -> i32;
82     #[cfg(feature = "Win32_Foundation")]
PdhExpandCounterPathA(szwildcardpath: super::super::Foundation::PSTR, mszexpandedpathlist: super::super::Foundation::PSTR, pcchpathlistlength: *mut u32) -> i3283     pub fn PdhExpandCounterPathA(szwildcardpath: super::super::Foundation::PSTR, mszexpandedpathlist: super::super::Foundation::PSTR, pcchpathlistlength: *mut u32) -> i32;
84     #[cfg(feature = "Win32_Foundation")]
PdhExpandCounterPathW(szwildcardpath: super::super::Foundation::PWSTR, mszexpandedpathlist: super::super::Foundation::PWSTR, pcchpathlistlength: *mut u32) -> i3285     pub fn PdhExpandCounterPathW(szwildcardpath: super::super::Foundation::PWSTR, mszexpandedpathlist: super::super::Foundation::PWSTR, pcchpathlistlength: *mut u32) -> i32;
86     #[cfg(feature = "Win32_Foundation")]
PdhExpandWildCardPathA(szdatasource: super::super::Foundation::PSTR, szwildcardpath: super::super::Foundation::PSTR, mszexpandedpathlist: super::super::Foundation::PSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i3287     pub fn PdhExpandWildCardPathA(szdatasource: super::super::Foundation::PSTR, szwildcardpath: super::super::Foundation::PSTR, mszexpandedpathlist: super::super::Foundation::PSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i32;
88     #[cfg(feature = "Win32_Foundation")]
PdhExpandWildCardPathHA(hdatasource: isize, szwildcardpath: super::super::Foundation::PSTR, mszexpandedpathlist: super::super::Foundation::PSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i3289     pub fn PdhExpandWildCardPathHA(hdatasource: isize, szwildcardpath: super::super::Foundation::PSTR, mszexpandedpathlist: super::super::Foundation::PSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i32;
90     #[cfg(feature = "Win32_Foundation")]
PdhExpandWildCardPathHW(hdatasource: isize, szwildcardpath: super::super::Foundation::PWSTR, mszexpandedpathlist: super::super::Foundation::PWSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i3291     pub fn PdhExpandWildCardPathHW(hdatasource: isize, szwildcardpath: super::super::Foundation::PWSTR, mszexpandedpathlist: super::super::Foundation::PWSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i32;
92     #[cfg(feature = "Win32_Foundation")]
PdhExpandWildCardPathW(szdatasource: super::super::Foundation::PWSTR, szwildcardpath: super::super::Foundation::PWSTR, mszexpandedpathlist: super::super::Foundation::PWSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i3293     pub fn PdhExpandWildCardPathW(szdatasource: super::super::Foundation::PWSTR, szwildcardpath: super::super::Foundation::PWSTR, mszexpandedpathlist: super::super::Foundation::PWSTR, pcchpathlistlength: *mut u32, dwflags: u32) -> i32;
94     #[cfg(feature = "Win32_Foundation")]
PdhFormatFromRawValue(dwcountertype: u32, dwformat: PDH_FMT, ptimebase: *const i64, prawvalue1: *const PDH_RAW_COUNTER, prawvalue2: *const PDH_RAW_COUNTER, pfmtvalue: *mut PDH_FMT_COUNTERVALUE) -> i3295     pub fn PdhFormatFromRawValue(dwcountertype: u32, dwformat: PDH_FMT, ptimebase: *const i64, prawvalue1: *const PDH_RAW_COUNTER, prawvalue2: *const PDH_RAW_COUNTER, pfmtvalue: *mut PDH_FMT_COUNTERVALUE) -> i32;
96     #[cfg(feature = "Win32_Foundation")]
PdhGetCounterInfoA(hcounter: isize, bretrieveexplaintext: super::super::Foundation::BOOLEAN, pdwbuffersize: *mut u32, lpbuffer: *mut PDH_COUNTER_INFO_A) -> i3297     pub fn PdhGetCounterInfoA(hcounter: isize, bretrieveexplaintext: super::super::Foundation::BOOLEAN, pdwbuffersize: *mut u32, lpbuffer: *mut PDH_COUNTER_INFO_A) -> i32;
98     #[cfg(feature = "Win32_Foundation")]
PdhGetCounterInfoW(hcounter: isize, bretrieveexplaintext: super::super::Foundation::BOOLEAN, pdwbuffersize: *mut u32, lpbuffer: *mut PDH_COUNTER_INFO_W) -> i3299     pub fn PdhGetCounterInfoW(hcounter: isize, bretrieveexplaintext: super::super::Foundation::BOOLEAN, pdwbuffersize: *mut u32, lpbuffer: *mut PDH_COUNTER_INFO_W) -> i32;
PdhGetCounterTimeBase(hcounter: isize, ptimebase: *mut i64) -> i32100     pub fn PdhGetCounterTimeBase(hcounter: isize, ptimebase: *mut i64) -> i32;
101     #[cfg(feature = "Win32_Foundation")]
PdhGetDataSourceTimeRangeA(szdatasource: super::super::Foundation::PSTR, pdwnumentries: *mut u32, pinfo: *mut PDH_TIME_INFO, pdwbuffersize: *mut u32) -> i32102     pub fn PdhGetDataSourceTimeRangeA(szdatasource: super::super::Foundation::PSTR, pdwnumentries: *mut u32, pinfo: *mut PDH_TIME_INFO, pdwbuffersize: *mut u32) -> i32;
PdhGetDataSourceTimeRangeH(hdatasource: isize, pdwnumentries: *mut u32, pinfo: *mut PDH_TIME_INFO, pdwbuffersize: *mut u32) -> i32103     pub fn PdhGetDataSourceTimeRangeH(hdatasource: isize, pdwnumentries: *mut u32, pinfo: *mut PDH_TIME_INFO, pdwbuffersize: *mut u32) -> i32;
104     #[cfg(feature = "Win32_Foundation")]
PdhGetDataSourceTimeRangeW(szdatasource: super::super::Foundation::PWSTR, pdwnumentries: *mut u32, pinfo: *mut PDH_TIME_INFO, pdwbuffersize: *mut u32) -> i32105     pub fn PdhGetDataSourceTimeRangeW(szdatasource: super::super::Foundation::PWSTR, pdwnumentries: *mut u32, pinfo: *mut PDH_TIME_INFO, pdwbuffersize: *mut u32) -> i32;
106     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfCounterA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, szdefaultcountername: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32107     pub fn PdhGetDefaultPerfCounterA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, szdefaultcountername: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32;
108     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfCounterHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, szdefaultcountername: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32109     pub fn PdhGetDefaultPerfCounterHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, szobjectname: super::super::Foundation::PSTR, szdefaultcountername: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32;
110     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfCounterHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, szdefaultcountername: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32111     pub fn PdhGetDefaultPerfCounterHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, szdefaultcountername: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32;
112     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfCounterW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, szdefaultcountername: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32113     pub fn PdhGetDefaultPerfCounterW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, szobjectname: super::super::Foundation::PWSTR, szdefaultcountername: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32;
114     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfObjectA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, szdefaultobjectname: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32115     pub fn PdhGetDefaultPerfObjectA(szdatasource: super::super::Foundation::PSTR, szmachinename: super::super::Foundation::PSTR, szdefaultobjectname: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32;
116     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfObjectHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, szdefaultobjectname: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32117     pub fn PdhGetDefaultPerfObjectHA(hdatasource: isize, szmachinename: super::super::Foundation::PSTR, szdefaultobjectname: super::super::Foundation::PSTR, pcchbuffersize: *mut u32) -> i32;
118     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfObjectHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, szdefaultobjectname: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32119     pub fn PdhGetDefaultPerfObjectHW(hdatasource: isize, szmachinename: super::super::Foundation::PWSTR, szdefaultobjectname: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32;
120     #[cfg(feature = "Win32_Foundation")]
PdhGetDefaultPerfObjectW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, szdefaultobjectname: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32121     pub fn PdhGetDefaultPerfObjectW(szdatasource: super::super::Foundation::PWSTR, szmachinename: super::super::Foundation::PWSTR, szdefaultobjectname: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32) -> i32;
PdhGetDllVersion(lpdwversion: *mut PDH_DLL_VERSION) -> i32122     pub fn PdhGetDllVersion(lpdwversion: *mut PDH_DLL_VERSION) -> i32;
123     #[cfg(feature = "Win32_Foundation")]
PdhGetFormattedCounterArrayA(hcounter: isize, dwformat: PDH_FMT, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_FMT_COUNTERVALUE_ITEM_A) -> i32124     pub fn PdhGetFormattedCounterArrayA(hcounter: isize, dwformat: PDH_FMT, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_FMT_COUNTERVALUE_ITEM_A) -> i32;
125     #[cfg(feature = "Win32_Foundation")]
PdhGetFormattedCounterArrayW(hcounter: isize, dwformat: PDH_FMT, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_FMT_COUNTERVALUE_ITEM_W) -> i32126     pub fn PdhGetFormattedCounterArrayW(hcounter: isize, dwformat: PDH_FMT, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_FMT_COUNTERVALUE_ITEM_W) -> i32;
127     #[cfg(feature = "Win32_Foundation")]
PdhGetFormattedCounterValue(hcounter: isize, dwformat: PDH_FMT, lpdwtype: *mut u32, pvalue: *mut PDH_FMT_COUNTERVALUE) -> i32128     pub fn PdhGetFormattedCounterValue(hcounter: isize, dwformat: PDH_FMT, lpdwtype: *mut u32, pvalue: *mut PDH_FMT_COUNTERVALUE) -> i32;
PdhGetLogFileSize(hlog: isize, llsize: *mut i64) -> i32129     pub fn PdhGetLogFileSize(hlog: isize, llsize: *mut i64) -> i32;
PdhGetLogSetGUID(hlog: isize, pguid: *mut ::windows_sys::core::GUID, prunid: *mut i32) -> i32130     pub fn PdhGetLogSetGUID(hlog: isize, pguid: *mut ::windows_sys::core::GUID, prunid: *mut i32) -> i32;
131     #[cfg(feature = "Win32_Foundation")]
PdhGetRawCounterArrayA(hcounter: isize, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_RAW_COUNTER_ITEM_A) -> i32132     pub fn PdhGetRawCounterArrayA(hcounter: isize, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_RAW_COUNTER_ITEM_A) -> i32;
133     #[cfg(feature = "Win32_Foundation")]
PdhGetRawCounterArrayW(hcounter: isize, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_RAW_COUNTER_ITEM_W) -> i32134     pub fn PdhGetRawCounterArrayW(hcounter: isize, lpdwbuffersize: *mut u32, lpdwitemcount: *mut u32, itembuffer: *mut PDH_RAW_COUNTER_ITEM_W) -> i32;
135     #[cfg(feature = "Win32_Foundation")]
PdhGetRawCounterValue(hcounter: isize, lpdwtype: *mut u32, pvalue: *mut PDH_RAW_COUNTER) -> i32136     pub fn PdhGetRawCounterValue(hcounter: isize, lpdwtype: *mut u32, pvalue: *mut PDH_RAW_COUNTER) -> i32;
137     #[cfg(feature = "Win32_Foundation")]
PdhIsRealTimeQuery(hquery: isize) -> super::super::Foundation::BOOL138     pub fn PdhIsRealTimeQuery(hquery: isize) -> super::super::Foundation::BOOL;
139     #[cfg(feature = "Win32_Foundation")]
PdhLookupPerfIndexByNameA(szmachinename: super::super::Foundation::PSTR, sznamebuffer: super::super::Foundation::PSTR, pdwindex: *mut u32) -> i32140     pub fn PdhLookupPerfIndexByNameA(szmachinename: super::super::Foundation::PSTR, sznamebuffer: super::super::Foundation::PSTR, pdwindex: *mut u32) -> i32;
141     #[cfg(feature = "Win32_Foundation")]
PdhLookupPerfIndexByNameW(szmachinename: super::super::Foundation::PWSTR, sznamebuffer: super::super::Foundation::PWSTR, pdwindex: *mut u32) -> i32142     pub fn PdhLookupPerfIndexByNameW(szmachinename: super::super::Foundation::PWSTR, sznamebuffer: super::super::Foundation::PWSTR, pdwindex: *mut u32) -> i32;
143     #[cfg(feature = "Win32_Foundation")]
PdhLookupPerfNameByIndexA(szmachinename: super::super::Foundation::PSTR, dwnameindex: u32, sznamebuffer: super::super::Foundation::PSTR, pcchnamebuffersize: *mut u32) -> i32144     pub fn PdhLookupPerfNameByIndexA(szmachinename: super::super::Foundation::PSTR, dwnameindex: u32, sznamebuffer: super::super::Foundation::PSTR, pcchnamebuffersize: *mut u32) -> i32;
145     #[cfg(feature = "Win32_Foundation")]
PdhLookupPerfNameByIndexW(szmachinename: super::super::Foundation::PWSTR, dwnameindex: u32, sznamebuffer: super::super::Foundation::PWSTR, pcchnamebuffersize: *mut u32) -> i32146     pub fn PdhLookupPerfNameByIndexW(szmachinename: super::super::Foundation::PWSTR, dwnameindex: u32, sznamebuffer: super::super::Foundation::PWSTR, pcchnamebuffersize: *mut u32) -> i32;
147     #[cfg(feature = "Win32_Foundation")]
PdhMakeCounterPathA(pcounterpathelements: *const PDH_COUNTER_PATH_ELEMENTS_A, szfullpathbuffer: super::super::Foundation::PSTR, pcchbuffersize: *mut u32, dwflags: PDH_PATH_FLAGS) -> i32148     pub fn PdhMakeCounterPathA(pcounterpathelements: *const PDH_COUNTER_PATH_ELEMENTS_A, szfullpathbuffer: super::super::Foundation::PSTR, pcchbuffersize: *mut u32, dwflags: PDH_PATH_FLAGS) -> i32;
149     #[cfg(feature = "Win32_Foundation")]
PdhMakeCounterPathW(pcounterpathelements: *const PDH_COUNTER_PATH_ELEMENTS_W, szfullpathbuffer: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32, dwflags: PDH_PATH_FLAGS) -> i32150     pub fn PdhMakeCounterPathW(pcounterpathelements: *const PDH_COUNTER_PATH_ELEMENTS_W, szfullpathbuffer: super::super::Foundation::PWSTR, pcchbuffersize: *mut u32, dwflags: PDH_PATH_FLAGS) -> i32;
151     #[cfg(feature = "Win32_Foundation")]
PdhOpenLogA(szlogfilename: super::super::Foundation::PSTR, dwaccessflags: PDH_LOG, lpdwlogtype: *mut PDH_LOG_TYPE, hquery: isize, dwmaxsize: u32, szusercaption: super::super::Foundation::PSTR, phlog: *mut isize) -> i32152     pub fn PdhOpenLogA(szlogfilename: super::super::Foundation::PSTR, dwaccessflags: PDH_LOG, lpdwlogtype: *mut PDH_LOG_TYPE, hquery: isize, dwmaxsize: u32, szusercaption: super::super::Foundation::PSTR, phlog: *mut isize) -> i32;
153     #[cfg(feature = "Win32_Foundation")]
PdhOpenLogW(szlogfilename: super::super::Foundation::PWSTR, dwaccessflags: PDH_LOG, lpdwlogtype: *mut PDH_LOG_TYPE, hquery: isize, dwmaxsize: u32, szusercaption: super::super::Foundation::PWSTR, phlog: *mut isize) -> i32154     pub fn PdhOpenLogW(szlogfilename: super::super::Foundation::PWSTR, dwaccessflags: PDH_LOG, lpdwlogtype: *mut PDH_LOG_TYPE, hquery: isize, dwmaxsize: u32, szusercaption: super::super::Foundation::PWSTR, phlog: *mut isize) -> i32;
155     #[cfg(feature = "Win32_Foundation")]
PdhOpenQueryA(szdatasource: super::super::Foundation::PSTR, dwuserdata: usize, phquery: *mut isize) -> i32156     pub fn PdhOpenQueryA(szdatasource: super::super::Foundation::PSTR, dwuserdata: usize, phquery: *mut isize) -> i32;
PdhOpenQueryH(hdatasource: isize, dwuserdata: usize, phquery: *mut isize) -> i32157     pub fn PdhOpenQueryH(hdatasource: isize, dwuserdata: usize, phquery: *mut isize) -> i32;
158     #[cfg(feature = "Win32_Foundation")]
PdhOpenQueryW(szdatasource: super::super::Foundation::PWSTR, dwuserdata: usize, phquery: *mut isize) -> i32159     pub fn PdhOpenQueryW(szdatasource: super::super::Foundation::PWSTR, dwuserdata: usize, phquery: *mut isize) -> i32;
160     #[cfg(feature = "Win32_Foundation")]
PdhParseCounterPathA(szfullpathbuffer: super::super::Foundation::PSTR, pcounterpathelements: *mut PDH_COUNTER_PATH_ELEMENTS_A, pdwbuffersize: *mut u32, dwflags: u32) -> i32161     pub fn PdhParseCounterPathA(szfullpathbuffer: super::super::Foundation::PSTR, pcounterpathelements: *mut PDH_COUNTER_PATH_ELEMENTS_A, pdwbuffersize: *mut u32, dwflags: u32) -> i32;
162     #[cfg(feature = "Win32_Foundation")]
PdhParseCounterPathW(szfullpathbuffer: super::super::Foundation::PWSTR, pcounterpathelements: *mut PDH_COUNTER_PATH_ELEMENTS_W, pdwbuffersize: *mut u32, dwflags: u32) -> i32163     pub fn PdhParseCounterPathW(szfullpathbuffer: super::super::Foundation::PWSTR, pcounterpathelements: *mut PDH_COUNTER_PATH_ELEMENTS_W, pdwbuffersize: *mut u32, dwflags: u32) -> i32;
164     #[cfg(feature = "Win32_Foundation")]
PdhParseInstanceNameA(szinstancestring: super::super::Foundation::PSTR, szinstancename: super::super::Foundation::PSTR, pcchinstancenamelength: *mut u32, szparentname: super::super::Foundation::PSTR, pcchparentnamelength: *mut u32, lpindex: *mut u32) -> i32165     pub fn PdhParseInstanceNameA(szinstancestring: super::super::Foundation::PSTR, szinstancename: super::super::Foundation::PSTR, pcchinstancenamelength: *mut u32, szparentname: super::super::Foundation::PSTR, pcchparentnamelength: *mut u32, lpindex: *mut u32) -> i32;
166     #[cfg(feature = "Win32_Foundation")]
PdhParseInstanceNameW(szinstancestring: super::super::Foundation::PWSTR, szinstancename: super::super::Foundation::PWSTR, pcchinstancenamelength: *mut u32, szparentname: super::super::Foundation::PWSTR, pcchparentnamelength: *mut u32, lpindex: *mut u32) -> i32167     pub fn PdhParseInstanceNameW(szinstancestring: super::super::Foundation::PWSTR, szinstancename: super::super::Foundation::PWSTR, pcchinstancenamelength: *mut u32, szparentname: super::super::Foundation::PWSTR, pcchparentnamelength: *mut u32, lpindex: *mut u32) -> i32;
168     #[cfg(feature = "Win32_Foundation")]
PdhReadRawLogRecord(hlog: isize, ftrecord: super::super::Foundation::FILETIME, prawlogrecord: *mut PDH_RAW_LOG_RECORD, pdwbufferlength: *mut u32) -> i32169     pub fn PdhReadRawLogRecord(hlog: isize, ftrecord: super::super::Foundation::FILETIME, prawlogrecord: *mut PDH_RAW_LOG_RECORD, pdwbufferlength: *mut u32) -> i32;
PdhRemoveCounter(hcounter: isize) -> i32170     pub fn PdhRemoveCounter(hcounter: isize) -> i32;
171     #[cfg(feature = "Win32_Foundation")]
PdhSelectDataSourceA(hwndowner: super::super::Foundation::HWND, dwflags: PDH_SELECT_DATA_SOURCE_FLAGS, szdatasource: super::super::Foundation::PSTR, pcchbufferlength: *mut u32) -> i32172     pub fn PdhSelectDataSourceA(hwndowner: super::super::Foundation::HWND, dwflags: PDH_SELECT_DATA_SOURCE_FLAGS, szdatasource: super::super::Foundation::PSTR, pcchbufferlength: *mut u32) -> i32;
173     #[cfg(feature = "Win32_Foundation")]
PdhSelectDataSourceW(hwndowner: super::super::Foundation::HWND, dwflags: PDH_SELECT_DATA_SOURCE_FLAGS, szdatasource: super::super::Foundation::PWSTR, pcchbufferlength: *mut u32) -> i32174     pub fn PdhSelectDataSourceW(hwndowner: super::super::Foundation::HWND, dwflags: PDH_SELECT_DATA_SOURCE_FLAGS, szdatasource: super::super::Foundation::PWSTR, pcchbufferlength: *mut u32) -> i32;
PdhSetCounterScaleFactor(hcounter: isize, lfactor: i32) -> i32175     pub fn PdhSetCounterScaleFactor(hcounter: isize, lfactor: i32) -> i32;
PdhSetDefaultRealTimeDataSource(dwdatasourceid: REAL_TIME_DATA_SOURCE_ID_FLAGS) -> i32176     pub fn PdhSetDefaultRealTimeDataSource(dwdatasourceid: REAL_TIME_DATA_SOURCE_ID_FLAGS) -> i32;
PdhSetLogSetRunID(hlog: isize, runid: i32) -> i32177     pub fn PdhSetLogSetRunID(hlog: isize, runid: i32) -> i32;
PdhSetQueryTimeRange(hquery: isize, pinfo: *const PDH_TIME_INFO) -> i32178     pub fn PdhSetQueryTimeRange(hquery: isize, pinfo: *const PDH_TIME_INFO) -> i32;
179     #[cfg(feature = "Win32_Foundation")]
PdhUpdateLogA(hlog: isize, szuserstring: super::super::Foundation::PSTR) -> i32180     pub fn PdhUpdateLogA(hlog: isize, szuserstring: super::super::Foundation::PSTR) -> i32;
PdhUpdateLogFileCatalog(hlog: isize) -> i32181     pub fn PdhUpdateLogFileCatalog(hlog: isize) -> i32;
182     #[cfg(feature = "Win32_Foundation")]
PdhUpdateLogW(hlog: isize, szuserstring: super::super::Foundation::PWSTR) -> i32183     pub fn PdhUpdateLogW(hlog: isize, szuserstring: super::super::Foundation::PWSTR) -> i32;
184     #[cfg(feature = "Win32_Foundation")]
PdhValidatePathA(szfullpathbuffer: super::super::Foundation::PSTR) -> i32185     pub fn PdhValidatePathA(szfullpathbuffer: super::super::Foundation::PSTR) -> i32;
186     #[cfg(feature = "Win32_Foundation")]
PdhValidatePathExA(hdatasource: isize, szfullpathbuffer: super::super::Foundation::PSTR) -> i32187     pub fn PdhValidatePathExA(hdatasource: isize, szfullpathbuffer: super::super::Foundation::PSTR) -> i32;
188     #[cfg(feature = "Win32_Foundation")]
PdhValidatePathExW(hdatasource: isize, szfullpathbuffer: super::super::Foundation::PWSTR) -> i32189     pub fn PdhValidatePathExW(hdatasource: isize, szfullpathbuffer: super::super::Foundation::PWSTR) -> i32;
190     #[cfg(feature = "Win32_Foundation")]
PdhValidatePathW(szfullpathbuffer: super::super::Foundation::PWSTR) -> i32191     pub fn PdhValidatePathW(szfullpathbuffer: super::super::Foundation::PWSTR) -> i32;
192     #[cfg(feature = "Win32_Foundation")]
PdhVerifySQLDBA(szdatasource: super::super::Foundation::PSTR) -> i32193     pub fn PdhVerifySQLDBA(szdatasource: super::super::Foundation::PSTR) -> i32;
194     #[cfg(feature = "Win32_Foundation")]
PdhVerifySQLDBW(szdatasource: super::super::Foundation::PWSTR) -> i32195     pub fn PdhVerifySQLDBW(szdatasource: super::super::Foundation::PWSTR) -> i32;
PerfAddCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32196     pub fn PerfAddCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32;
197     #[cfg(feature = "Win32_Foundation")]
PerfCloseQueryHandle(hquery: super::super::Foundation::HANDLE) -> u32198     pub fn PerfCloseQueryHandle(hquery: super::super::Foundation::HANDLE) -> u32;
199     #[cfg(feature = "Win32_Foundation")]
PerfCreateInstance(providerhandle: PerfProviderHandle, countersetguid: *const ::windows_sys::core::GUID, name: super::super::Foundation::PWSTR, id: u32) -> *mut PERF_COUNTERSET_INSTANCE200     pub fn PerfCreateInstance(providerhandle: PerfProviderHandle, countersetguid: *const ::windows_sys::core::GUID, name: super::super::Foundation::PWSTR, id: u32) -> *mut PERF_COUNTERSET_INSTANCE;
201     #[cfg(feature = "Win32_Foundation")]
PerfDecrementULongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u32) -> u32202     pub fn PerfDecrementULongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u32) -> u32;
203     #[cfg(feature = "Win32_Foundation")]
PerfDecrementULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32204     pub fn PerfDecrementULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32;
PerfDeleteCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32205     pub fn PerfDeleteCounters(hquery: PerfQueryHandle, pcounters: *const PERF_COUNTER_IDENTIFIER, cbcounters: u32) -> u32;
PerfDeleteInstance(provider: PerfProviderHandle, instanceblock: *const PERF_COUNTERSET_INSTANCE) -> u32206     pub fn PerfDeleteInstance(provider: PerfProviderHandle, instanceblock: *const PERF_COUNTERSET_INSTANCE) -> u32;
207     #[cfg(feature = "Win32_Foundation")]
PerfEnumerateCounterSet(szmachine: super::super::Foundation::PWSTR, pcountersetids: *mut ::windows_sys::core::GUID, ccountersetids: u32, pccountersetidsactual: *mut u32) -> u32208     pub fn PerfEnumerateCounterSet(szmachine: super::super::Foundation::PWSTR, pcountersetids: *mut ::windows_sys::core::GUID, ccountersetids: u32, pccountersetidsactual: *mut u32) -> u32;
209     #[cfg(feature = "Win32_Foundation")]
PerfEnumerateCounterSetInstances(szmachine: super::super::Foundation::PWSTR, pcountersetid: *const ::windows_sys::core::GUID, pinstances: *mut PERF_INSTANCE_HEADER, cbinstances: u32, pcbinstancesactual: *mut u32) -> u32210     pub fn PerfEnumerateCounterSetInstances(szmachine: super::super::Foundation::PWSTR, pcountersetid: *const ::windows_sys::core::GUID, pinstances: *mut PERF_INSTANCE_HEADER, cbinstances: u32, pcbinstancesactual: *mut u32) -> u32;
211     #[cfg(feature = "Win32_Foundation")]
PerfIncrementULongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u32) -> u32212     pub fn PerfIncrementULongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u32) -> u32;
213     #[cfg(feature = "Win32_Foundation")]
PerfIncrementULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32214     pub fn PerfIncrementULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32;
215     #[cfg(feature = "Win32_Foundation")]
PerfOpenQueryHandle(szmachine: super::super::Foundation::PWSTR, phquery: *mut PerfQueryHandle) -> u32216     pub fn PerfOpenQueryHandle(szmachine: super::super::Foundation::PWSTR, phquery: *mut PerfQueryHandle) -> u32;
217     #[cfg(feature = "Win32_Foundation")]
PerfQueryCounterData(hquery: PerfQueryHandle, pcounterblock: *mut PERF_DATA_HEADER, cbcounterblock: u32, pcbcounterblockactual: *mut u32) -> u32218     pub fn PerfQueryCounterData(hquery: PerfQueryHandle, pcounterblock: *mut PERF_DATA_HEADER, cbcounterblock: u32, pcbcounterblockactual: *mut u32) -> u32;
PerfQueryCounterInfo(hquery: PerfQueryHandle, pcounters: *mut PERF_COUNTER_IDENTIFIER, cbcounters: u32, pcbcountersactual: *mut u32) -> u32219     pub fn PerfQueryCounterInfo(hquery: PerfQueryHandle, pcounters: *mut PERF_COUNTER_IDENTIFIER, cbcounters: u32, pcbcountersactual: *mut u32) -> u32;
220     #[cfg(feature = "Win32_Foundation")]
PerfQueryCounterSetRegistrationInfo(szmachine: super::super::Foundation::PWSTR, pcountersetid: *const ::windows_sys::core::GUID, requestcode: PerfRegInfoType, requestlangid: u32, pbreginfo: *mut u8, cbreginfo: u32, pcbreginfoactual: *mut u32) -> u32221     pub fn PerfQueryCounterSetRegistrationInfo(szmachine: super::super::Foundation::PWSTR, pcountersetid: *const ::windows_sys::core::GUID, requestcode: PerfRegInfoType, requestlangid: u32, pbreginfo: *mut u8, cbreginfo: u32, pcbreginfoactual: *mut u32) -> u32;
222     #[cfg(feature = "Win32_Foundation")]
PerfQueryInstance(providerhandle: super::super::Foundation::HANDLE, countersetguid: *const ::windows_sys::core::GUID, name: super::super::Foundation::PWSTR, id: u32) -> *mut PERF_COUNTERSET_INSTANCE223     pub fn PerfQueryInstance(providerhandle: super::super::Foundation::HANDLE, countersetguid: *const ::windows_sys::core::GUID, name: super::super::Foundation::PWSTR, id: u32) -> *mut PERF_COUNTERSET_INSTANCE;
224     #[cfg(feature = "Win32_Foundation")]
PerfSetCounterRefValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, address: *const ::core::ffi::c_void) -> u32225     pub fn PerfSetCounterRefValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, address: *const ::core::ffi::c_void) -> u32;
226     #[cfg(feature = "Win32_Foundation")]
PerfSetCounterSetInfo(providerhandle: super::super::Foundation::HANDLE, template: *mut PERF_COUNTERSET_INFO, templatesize: u32) -> u32227     pub fn PerfSetCounterSetInfo(providerhandle: super::super::Foundation::HANDLE, template: *mut PERF_COUNTERSET_INFO, templatesize: u32) -> u32;
228     #[cfg(feature = "Win32_Foundation")]
PerfSetULongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u32) -> u32229     pub fn PerfSetULongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u32) -> u32;
230     #[cfg(feature = "Win32_Foundation")]
PerfSetULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32231     pub fn PerfSetULongLongCounterValue(provider: super::super::Foundation::HANDLE, instance: *mut PERF_COUNTERSET_INSTANCE, counterid: u32, value: u64) -> u32;
PerfStartProvider(providerguid: *const ::windows_sys::core::GUID, controlcallback: ::core::option::Option<PERFLIBREQUEST>, phprovider: *mut PerfProviderHandle) -> u32232     pub fn PerfStartProvider(providerguid: *const ::windows_sys::core::GUID, controlcallback: ::core::option::Option<PERFLIBREQUEST>, phprovider: *mut PerfProviderHandle) -> u32;
PerfStartProviderEx(providerguid: *const ::windows_sys::core::GUID, providercontext: *const PERF_PROVIDER_CONTEXT, provider: *mut PerfProviderHandle) -> u32233     pub fn PerfStartProviderEx(providerguid: *const ::windows_sys::core::GUID, providercontext: *const PERF_PROVIDER_CONTEXT, provider: *mut PerfProviderHandle) -> u32;
PerfStopProvider(providerhandle: PerfProviderHandle) -> u32234     pub fn PerfStopProvider(providerhandle: PerfProviderHandle) -> u32;
235     #[cfg(feature = "Win32_Foundation")]
QueryPerformanceCounter(lpperformancecount: *mut i64) -> super::super::Foundation::BOOL236     pub fn QueryPerformanceCounter(lpperformancecount: *mut i64) -> super::super::Foundation::BOOL;
237     #[cfg(feature = "Win32_Foundation")]
QueryPerformanceFrequency(lpfrequency: *mut i64) -> super::super::Foundation::BOOL238     pub fn QueryPerformanceFrequency(lpfrequency: *mut i64) -> super::super::Foundation::BOOL;
239     #[cfg(feature = "Win32_Foundation")]
RestorePerfRegistryFromFileW(szfilename: super::super::Foundation::PWSTR, szlangid: super::super::Foundation::PWSTR) -> u32240     pub fn RestorePerfRegistryFromFileW(szfilename: super::super::Foundation::PWSTR, szlangid: super::super::Foundation::PWSTR) -> u32;
241     #[cfg(feature = "Win32_Foundation")]
SetServiceAsTrustedA(szreserved: super::super::Foundation::PSTR, szservicename: super::super::Foundation::PSTR) -> u32242     pub fn SetServiceAsTrustedA(szreserved: super::super::Foundation::PSTR, szservicename: super::super::Foundation::PSTR) -> u32;
243     #[cfg(feature = "Win32_Foundation")]
SetServiceAsTrustedW(szreserved: super::super::Foundation::PWSTR, szservicename: super::super::Foundation::PWSTR) -> u32244     pub fn SetServiceAsTrustedW(szreserved: super::super::Foundation::PWSTR, szservicename: super::super::Foundation::PWSTR) -> u32;
245     #[cfg(feature = "Win32_Foundation")]
UnloadPerfCounterTextStringsA(lpcommandline: super::super::Foundation::PSTR, bquietmodearg: super::super::Foundation::BOOL) -> u32246     pub fn UnloadPerfCounterTextStringsA(lpcommandline: super::super::Foundation::PSTR, bquietmodearg: super::super::Foundation::BOOL) -> u32;
247     #[cfg(feature = "Win32_Foundation")]
UnloadPerfCounterTextStringsW(lpcommandline: super::super::Foundation::PWSTR, bquietmodearg: super::super::Foundation::BOOL) -> u32248     pub fn UnloadPerfCounterTextStringsW(lpcommandline: super::super::Foundation::PWSTR, bquietmodearg: super::super::Foundation::BOOL) -> u32;
249     #[cfg(feature = "Win32_Foundation")]
UpdatePerfNameFilesA(sznewctrfilepath: super::super::Foundation::PSTR, sznewhlpfilepath: super::super::Foundation::PSTR, szlanguageid: super::super::Foundation::PSTR, dwflags: usize) -> u32250     pub fn UpdatePerfNameFilesA(sznewctrfilepath: super::super::Foundation::PSTR, sznewhlpfilepath: super::super::Foundation::PSTR, szlanguageid: super::super::Foundation::PSTR, dwflags: usize) -> u32;
251     #[cfg(feature = "Win32_Foundation")]
UpdatePerfNameFilesW(sznewctrfilepath: super::super::Foundation::PWSTR, sznewhlpfilepath: super::super::Foundation::PWSTR, szlanguageid: super::super::Foundation::PWSTR, dwflags: usize) -> u32252     pub fn UpdatePerfNameFilesW(sznewctrfilepath: super::super::Foundation::PWSTR, sznewhlpfilepath: super::super::Foundation::PWSTR, szlanguageid: super::super::Foundation::PWSTR, dwflags: usize) -> u32;
253 }
254 pub const AppearPropPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
255     data1: 3835118057,
256     data2: 37800,
257     data3: 19121,
258     data4: [142, 150, 191, 68, 130, 40, 46, 156],
259 };
260 pub type AutoPathFormat = i32;
261 pub const plaNone: AutoPathFormat = 0i32;
262 pub const plaPattern: AutoPathFormat = 1i32;
263 pub const plaComputer: AutoPathFormat = 2i32;
264 pub const plaMonthDayHour: AutoPathFormat = 256i32;
265 pub const plaSerialNumber: AutoPathFormat = 512i32;
266 pub const plaYearDayOfYear: AutoPathFormat = 1024i32;
267 pub const plaYearMonth: AutoPathFormat = 2048i32;
268 pub const plaYearMonthDay: AutoPathFormat = 4096i32;
269 pub const plaYearMonthDayHour: AutoPathFormat = 8192i32;
270 pub const plaMonthDayHourMinute: AutoPathFormat = 16384i32;
271 pub const BootTraceSession: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946872, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
272 pub const BootTraceSessionCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946873, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
273 pub type ClockType = i32;
274 pub const plaTimeStamp: ClockType = 0i32;
275 pub const plaPerformance: ClockType = 1i32;
276 pub const plaSystem: ClockType = 2i32;
277 pub const plaCycle: ClockType = 3i32;
278 pub type CommitMode = i32;
279 pub const plaCreateNew: CommitMode = 1i32;
280 pub const plaModify: CommitMode = 2i32;
281 pub const plaCreateOrModify: CommitMode = 3i32;
282 pub const plaUpdateRunningInstance: CommitMode = 16i32;
283 pub const plaFlushTrace: CommitMode = 32i32;
284 pub const plaValidateOnly: CommitMode = 4096i32;
285 pub const CounterItem: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3302152416, data2: 53725, data3: 4558, data4: [148, 15, 0, 128, 41, 0, 67, 72] };
286 pub const CounterItem2: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
287     data1: 1125739618,
288     data2: 49951,
289     data3: 19683,
290     data4: [160, 46, 121, 239, 224, 246, 165, 37],
291 };
292 pub type CounterPathCallBack = unsafe extern "system" fn(param0: usize) -> i32;
293 pub const CounterPropPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3482617185, data2: 60904, data3: 4558, data4: [148, 30, 0, 128, 41, 0, 67, 71] };
294 pub const Counters: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2997905106, data2: 10924, data3: 4559, data4: [148, 47, 0, 128, 41, 0, 67, 71] };
295 pub type DICounterItem = *mut ::core::ffi::c_void;
296 pub const DIID_DICounterItem: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3230420978, data2: 3630, data3: 4559, data4: [148, 44, 0, 128, 41, 0, 67, 71] };
297 pub const DIID_DILogFileItem: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
298     data1: 2366193660,
299     data2: 63351,
300     data3: 18711,
301     data4: [130, 209, 131, 63, 188, 84, 197, 143],
302 };
303 pub const DIID_DISystemMonitor: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 332873089, data2: 49966, data3: 4559, data4: [147, 152, 0, 170, 0, 163, 221, 234] };
304 pub const DIID_DISystemMonitorEvents: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 2224527664, data2: 19123, data3: 4559, data4: [148, 58, 0, 128, 41, 0, 67, 71] };
305 pub const DIID_DISystemMonitorInternal: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 424587842, data2: 49964, data3: 4559, data4: [147, 152, 0, 170, 0, 163, 221, 234] };
306 pub type DILogFileItem = *mut ::core::ffi::c_void;
307 pub type DISystemMonitor = *mut ::core::ffi::c_void;
308 pub type DISystemMonitorEvents = *mut ::core::ffi::c_void;
309 pub type DISystemMonitorInternal = *mut ::core::ffi::c_void;
310 pub const DataCollectorSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946849, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
311 pub const DataCollectorSetCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946853, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
312 pub type DataCollectorSetStatus = i32;
313 pub const plaStopped: DataCollectorSetStatus = 0i32;
314 pub const plaRunning: DataCollectorSetStatus = 1i32;
315 pub const plaCompiling: DataCollectorSetStatus = 2i32;
316 pub const plaPending: DataCollectorSetStatus = 3i32;
317 pub const plaUndefined: DataCollectorSetStatus = 4i32;
318 pub type DataCollectorType = i32;
319 pub const plaPerformanceCounter: DataCollectorType = 0i32;
320 pub const plaTrace: DataCollectorType = 1i32;
321 pub const plaConfiguration: DataCollectorType = 2i32;
322 pub const plaAlert: DataCollectorType = 3i32;
323 pub const plaApiTrace: DataCollectorType = 4i32;
324 pub type DataManagerSteps = i32;
325 pub const plaCreateReport: DataManagerSteps = 1i32;
326 pub const plaRunRules: DataManagerSteps = 2i32;
327 pub const plaCreateHtml: DataManagerSteps = 4i32;
328 pub const plaFolderActions: DataManagerSteps = 8i32;
329 pub const plaResourceFreeing: DataManagerSteps = 16i32;
330 pub type DataSourceTypeConstants = i32;
331 pub const sysmonNullDataSource: DataSourceTypeConstants = -1i32;
332 pub const sysmonCurrentActivity: DataSourceTypeConstants = 1i32;
333 pub const sysmonLogFiles: DataSourceTypeConstants = 2i32;
334 pub const sysmonSqlLog: DataSourceTypeConstants = 3i32;
335 pub type DisplayTypeConstants = i32;
336 pub const sysmonLineGraph: DisplayTypeConstants = 1i32;
337 pub const sysmonHistogram: DisplayTypeConstants = 2i32;
338 pub const sysmonReport: DisplayTypeConstants = 3i32;
339 pub const sysmonChartArea: DisplayTypeConstants = 4i32;
340 pub const sysmonChartStackedArea: DisplayTypeConstants = 5i32;
341 pub type FileFormat = i32;
342 pub const plaCommaSeparated: FileFormat = 0i32;
343 pub const plaTabSeparated: FileFormat = 1i32;
344 pub const plaSql: FileFormat = 2i32;
345 pub const plaBinary: FileFormat = 3i32;
346 pub type FolderActionSteps = i32;
347 pub const plaCreateCab: FolderActionSteps = 1i32;
348 pub const plaDeleteData: FolderActionSteps = 2i32;
349 pub const plaSendCab: FolderActionSteps = 4i32;
350 pub const plaDeleteCab: FolderActionSteps = 8i32;
351 pub const plaDeleteReport: FolderActionSteps = 16i32;
352 pub const GeneralPropPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3286619090, data2: 6659, data3: 4559, data4: [148, 45, 0, 128, 41, 0, 67, 71] };
353 pub const GraphPropPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3286619091, data2: 6659, data3: 4559, data4: [148, 45, 0, 128, 41, 0, 67, 71] };
354 pub const H_WBEM_DATASOURCE: i32 = -1i32;
355 pub type IAlertDataCollector = *mut ::core::ffi::c_void;
356 pub type IApiTracingDataCollector = *mut ::core::ffi::c_void;
357 pub type IConfigurationDataCollector = *mut ::core::ffi::c_void;
358 pub type ICounterItem = *mut ::core::ffi::c_void;
359 pub type ICounterItem2 = *mut ::core::ffi::c_void;
360 pub type ICounters = *mut ::core::ffi::c_void;
361 pub type IDataCollector = *mut ::core::ffi::c_void;
362 pub type IDataCollectorCollection = *mut ::core::ffi::c_void;
363 pub type IDataCollectorSet = *mut ::core::ffi::c_void;
364 pub type IDataCollectorSetCollection = *mut ::core::ffi::c_void;
365 pub type IDataManager = *mut ::core::ffi::c_void;
366 pub type IFolderAction = *mut ::core::ffi::c_void;
367 pub type IFolderActionCollection = *mut ::core::ffi::c_void;
368 pub type ILogFileItem = *mut ::core::ffi::c_void;
369 pub type ILogFiles = *mut ::core::ffi::c_void;
370 pub type IPerformanceCounterDataCollector = *mut ::core::ffi::c_void;
371 pub type ISchedule = *mut ::core::ffi::c_void;
372 pub type IScheduleCollection = *mut ::core::ffi::c_void;
373 pub type ISystemMonitor = *mut ::core::ffi::c_void;
374 pub type ISystemMonitor2 = *mut ::core::ffi::c_void;
375 pub type ISystemMonitorEvents = *mut ::core::ffi::c_void;
376 pub type ITraceDataCollector = *mut ::core::ffi::c_void;
377 pub type ITraceDataProvider = *mut ::core::ffi::c_void;
378 pub type ITraceDataProviderCollection = *mut ::core::ffi::c_void;
379 pub type IValueMap = *mut ::core::ffi::c_void;
380 pub type IValueMapItem = *mut ::core::ffi::c_void;
381 pub const LIBID_SystemMonitor: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 460799554, data2: 9481, data3: 4559, data4: [148, 47, 0, 128, 41, 0, 67, 71] };
382 pub const LegacyDataCollectorSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946854, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
383 pub const LegacyDataCollectorSetCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946855, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
384 pub const LegacyTraceSession: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946856, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
385 pub const LegacyTraceSessionCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946857, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
386 pub const LogFileItem: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 384588776, data2: 57235, data3: 16951, data4: [148, 228, 158, 233, 24, 17, 29, 113] };
387 pub const LogFiles: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
388     data1: 657840637,
389     data2: 63161,
390     data3: 20249,
391     data4: [165, 217, 226, 208, 104, 88, 75, 197],
392 };
393 pub const MAX_COUNTER_PATH: u32 = 256u32;
394 pub const MAX_PERF_OBJECTS_IN_QUERY_FUNCTION: i32 = 64i32;
395 pub const PDH_ACCESS_DENIED: i32 = -1073738789i32;
396 pub const PDH_ASYNC_QUERY_TIMEOUT: i32 = -2147481637i32;
397 pub const PDH_BINARY_LOG_CORRUPT: i32 = -1073738761i32;
398 #[repr(C)]
399 #[cfg(feature = "Win32_Foundation")]
400 pub struct PDH_BROWSE_DLG_CONFIG_A {
401     pub _bitfield: u32,
402     pub hWndOwner: super::super::Foundation::HWND,
403     pub szDataSource: super::super::Foundation::PSTR,
404     pub szReturnPathBuffer: super::super::Foundation::PSTR,
405     pub cchReturnPathLength: u32,
406     pub pCallBack: CounterPathCallBack,
407     pub dwCallBackArg: usize,
408     pub CallBackStatus: i32,
409     pub dwDefaultDetailLevel: PERF_DETAIL,
410     pub szDialogBoxCaption: super::super::Foundation::PSTR,
411 }
412 #[cfg(feature = "Win32_Foundation")]
413 impl ::core::marker::Copy for PDH_BROWSE_DLG_CONFIG_A {}
414 #[cfg(feature = "Win32_Foundation")]
415 impl ::core::clone::Clone for PDH_BROWSE_DLG_CONFIG_A {
clone(&self) -> Self416     fn clone(&self) -> Self {
417         *self
418     }
419 }
420 #[repr(C)]
421 #[cfg(feature = "Win32_Foundation")]
422 pub struct PDH_BROWSE_DLG_CONFIG_HA {
423     pub _bitfield: u32,
424     pub hWndOwner: super::super::Foundation::HWND,
425     pub hDataSource: isize,
426     pub szReturnPathBuffer: super::super::Foundation::PSTR,
427     pub cchReturnPathLength: u32,
428     pub pCallBack: CounterPathCallBack,
429     pub dwCallBackArg: usize,
430     pub CallBackStatus: i32,
431     pub dwDefaultDetailLevel: PERF_DETAIL,
432     pub szDialogBoxCaption: super::super::Foundation::PSTR,
433 }
434 #[cfg(feature = "Win32_Foundation")]
435 impl ::core::marker::Copy for PDH_BROWSE_DLG_CONFIG_HA {}
436 #[cfg(feature = "Win32_Foundation")]
437 impl ::core::clone::Clone for PDH_BROWSE_DLG_CONFIG_HA {
clone(&self) -> Self438     fn clone(&self) -> Self {
439         *self
440     }
441 }
442 #[repr(C)]
443 #[cfg(feature = "Win32_Foundation")]
444 pub struct PDH_BROWSE_DLG_CONFIG_HW {
445     pub _bitfield: u32,
446     pub hWndOwner: super::super::Foundation::HWND,
447     pub hDataSource: isize,
448     pub szReturnPathBuffer: super::super::Foundation::PWSTR,
449     pub cchReturnPathLength: u32,
450     pub pCallBack: CounterPathCallBack,
451     pub dwCallBackArg: usize,
452     pub CallBackStatus: i32,
453     pub dwDefaultDetailLevel: PERF_DETAIL,
454     pub szDialogBoxCaption: super::super::Foundation::PWSTR,
455 }
456 #[cfg(feature = "Win32_Foundation")]
457 impl ::core::marker::Copy for PDH_BROWSE_DLG_CONFIG_HW {}
458 #[cfg(feature = "Win32_Foundation")]
459 impl ::core::clone::Clone for PDH_BROWSE_DLG_CONFIG_HW {
clone(&self) -> Self460     fn clone(&self) -> Self {
461         *self
462     }
463 }
464 #[repr(C)]
465 #[cfg(feature = "Win32_Foundation")]
466 pub struct PDH_BROWSE_DLG_CONFIG_W {
467     pub _bitfield: u32,
468     pub hWndOwner: super::super::Foundation::HWND,
469     pub szDataSource: super::super::Foundation::PWSTR,
470     pub szReturnPathBuffer: super::super::Foundation::PWSTR,
471     pub cchReturnPathLength: u32,
472     pub pCallBack: CounterPathCallBack,
473     pub dwCallBackArg: usize,
474     pub CallBackStatus: i32,
475     pub dwDefaultDetailLevel: PERF_DETAIL,
476     pub szDialogBoxCaption: super::super::Foundation::PWSTR,
477 }
478 #[cfg(feature = "Win32_Foundation")]
479 impl ::core::marker::Copy for PDH_BROWSE_DLG_CONFIG_W {}
480 #[cfg(feature = "Win32_Foundation")]
481 impl ::core::clone::Clone for PDH_BROWSE_DLG_CONFIG_W {
clone(&self) -> Self482     fn clone(&self) -> Self {
483         *self
484     }
485 }
486 pub const PDH_CALC_NEGATIVE_DENOMINATOR: i32 = -2147481642i32;
487 pub const PDH_CALC_NEGATIVE_TIMEBASE: i32 = -2147481641i32;
488 pub const PDH_CALC_NEGATIVE_VALUE: i32 = -2147481640i32;
489 pub const PDH_CANNOT_CONNECT_MACHINE: i32 = -1073738813i32;
490 pub const PDH_CANNOT_CONNECT_WMI_SERVER: i32 = -1073738776i32;
491 pub const PDH_CANNOT_READ_NAME_STRINGS: i32 = -1073738808i32;
492 pub const PDH_CANNOT_SET_DEFAULT_REALTIME_DATASOURCE: i32 = -2147481636i32;
493 pub const PDH_COUNTER_ALREADY_IN_QUERY: i32 = -1073738762i32;
494 #[repr(C)]
495 #[cfg(feature = "Win32_Foundation")]
496 pub struct PDH_COUNTER_INFO_A {
497     pub dwLength: u32,
498     pub dwType: u32,
499     pub CVersion: u32,
500     pub CStatus: u32,
501     pub lScale: i32,
502     pub lDefaultScale: i32,
503     pub dwUserData: usize,
504     pub dwQueryUserData: usize,
505     pub szFullPath: super::super::Foundation::PSTR,
506     pub Anonymous: PDH_COUNTER_INFO_A_0,
507     pub szExplainText: super::super::Foundation::PSTR,
508     pub DataBuffer: [u32; 1],
509 }
510 #[cfg(feature = "Win32_Foundation")]
511 impl ::core::marker::Copy for PDH_COUNTER_INFO_A {}
512 #[cfg(feature = "Win32_Foundation")]
513 impl ::core::clone::Clone for PDH_COUNTER_INFO_A {
clone(&self) -> Self514     fn clone(&self) -> Self {
515         *self
516     }
517 }
518 #[repr(C)]
519 #[cfg(feature = "Win32_Foundation")]
520 pub union PDH_COUNTER_INFO_A_0 {
521     pub DataItemPath: PDH_DATA_ITEM_PATH_ELEMENTS_A,
522     pub CounterPath: PDH_COUNTER_PATH_ELEMENTS_A,
523     pub Anonymous: PDH_COUNTER_INFO_A_0_0,
524 }
525 #[cfg(feature = "Win32_Foundation")]
526 impl ::core::marker::Copy for PDH_COUNTER_INFO_A_0 {}
527 #[cfg(feature = "Win32_Foundation")]
528 impl ::core::clone::Clone for PDH_COUNTER_INFO_A_0 {
clone(&self) -> Self529     fn clone(&self) -> Self {
530         *self
531     }
532 }
533 #[repr(C)]
534 #[cfg(feature = "Win32_Foundation")]
535 pub struct PDH_COUNTER_INFO_A_0_0 {
536     pub szMachineName: super::super::Foundation::PSTR,
537     pub szObjectName: super::super::Foundation::PSTR,
538     pub szInstanceName: super::super::Foundation::PSTR,
539     pub szParentInstance: super::super::Foundation::PSTR,
540     pub dwInstanceIndex: u32,
541     pub szCounterName: super::super::Foundation::PSTR,
542 }
543 #[cfg(feature = "Win32_Foundation")]
544 impl ::core::marker::Copy for PDH_COUNTER_INFO_A_0_0 {}
545 #[cfg(feature = "Win32_Foundation")]
546 impl ::core::clone::Clone for PDH_COUNTER_INFO_A_0_0 {
clone(&self) -> Self547     fn clone(&self) -> Self {
548         *self
549     }
550 }
551 #[repr(C)]
552 #[cfg(feature = "Win32_Foundation")]
553 pub struct PDH_COUNTER_INFO_W {
554     pub dwLength: u32,
555     pub dwType: u32,
556     pub CVersion: u32,
557     pub CStatus: u32,
558     pub lScale: i32,
559     pub lDefaultScale: i32,
560     pub dwUserData: usize,
561     pub dwQueryUserData: usize,
562     pub szFullPath: super::super::Foundation::PWSTR,
563     pub Anonymous: PDH_COUNTER_INFO_W_0,
564     pub szExplainText: super::super::Foundation::PWSTR,
565     pub DataBuffer: [u32; 1],
566 }
567 #[cfg(feature = "Win32_Foundation")]
568 impl ::core::marker::Copy for PDH_COUNTER_INFO_W {}
569 #[cfg(feature = "Win32_Foundation")]
570 impl ::core::clone::Clone for PDH_COUNTER_INFO_W {
clone(&self) -> Self571     fn clone(&self) -> Self {
572         *self
573     }
574 }
575 #[repr(C)]
576 #[cfg(feature = "Win32_Foundation")]
577 pub union PDH_COUNTER_INFO_W_0 {
578     pub DataItemPath: PDH_DATA_ITEM_PATH_ELEMENTS_W,
579     pub CounterPath: PDH_COUNTER_PATH_ELEMENTS_W,
580     pub Anonymous: PDH_COUNTER_INFO_W_0_0,
581 }
582 #[cfg(feature = "Win32_Foundation")]
583 impl ::core::marker::Copy for PDH_COUNTER_INFO_W_0 {}
584 #[cfg(feature = "Win32_Foundation")]
585 impl ::core::clone::Clone for PDH_COUNTER_INFO_W_0 {
clone(&self) -> Self586     fn clone(&self) -> Self {
587         *self
588     }
589 }
590 #[repr(C)]
591 #[cfg(feature = "Win32_Foundation")]
592 pub struct PDH_COUNTER_INFO_W_0_0 {
593     pub szMachineName: super::super::Foundation::PWSTR,
594     pub szObjectName: super::super::Foundation::PWSTR,
595     pub szInstanceName: super::super::Foundation::PWSTR,
596     pub szParentInstance: super::super::Foundation::PWSTR,
597     pub dwInstanceIndex: u32,
598     pub szCounterName: super::super::Foundation::PWSTR,
599 }
600 #[cfg(feature = "Win32_Foundation")]
601 impl ::core::marker::Copy for PDH_COUNTER_INFO_W_0_0 {}
602 #[cfg(feature = "Win32_Foundation")]
603 impl ::core::clone::Clone for PDH_COUNTER_INFO_W_0_0 {
clone(&self) -> Self604     fn clone(&self) -> Self {
605         *self
606     }
607 }
608 #[repr(C)]
609 #[cfg(feature = "Win32_Foundation")]
610 pub struct PDH_COUNTER_PATH_ELEMENTS_A {
611     pub szMachineName: super::super::Foundation::PSTR,
612     pub szObjectName: super::super::Foundation::PSTR,
613     pub szInstanceName: super::super::Foundation::PSTR,
614     pub szParentInstance: super::super::Foundation::PSTR,
615     pub dwInstanceIndex: u32,
616     pub szCounterName: super::super::Foundation::PSTR,
617 }
618 #[cfg(feature = "Win32_Foundation")]
619 impl ::core::marker::Copy for PDH_COUNTER_PATH_ELEMENTS_A {}
620 #[cfg(feature = "Win32_Foundation")]
621 impl ::core::clone::Clone for PDH_COUNTER_PATH_ELEMENTS_A {
clone(&self) -> Self622     fn clone(&self) -> Self {
623         *self
624     }
625 }
626 #[repr(C)]
627 #[cfg(feature = "Win32_Foundation")]
628 pub struct PDH_COUNTER_PATH_ELEMENTS_W {
629     pub szMachineName: super::super::Foundation::PWSTR,
630     pub szObjectName: super::super::Foundation::PWSTR,
631     pub szInstanceName: super::super::Foundation::PWSTR,
632     pub szParentInstance: super::super::Foundation::PWSTR,
633     pub dwInstanceIndex: u32,
634     pub szCounterName: super::super::Foundation::PWSTR,
635 }
636 #[cfg(feature = "Win32_Foundation")]
637 impl ::core::marker::Copy for PDH_COUNTER_PATH_ELEMENTS_W {}
638 #[cfg(feature = "Win32_Foundation")]
639 impl ::core::clone::Clone for PDH_COUNTER_PATH_ELEMENTS_W {
clone(&self) -> Self640     fn clone(&self) -> Self {
641         *self
642     }
643 }
644 pub const PDH_CSTATUS_BAD_COUNTERNAME: i32 = -1073738816i32;
645 pub const PDH_CSTATUS_INVALID_DATA: i32 = -1073738822i32;
646 pub const PDH_CSTATUS_ITEM_NOT_VALIDATED: i32 = -2147481645i32;
647 pub const PDH_CSTATUS_NEW_DATA: i32 = 1i32;
648 pub const PDH_CSTATUS_NO_COUNTER: i32 = -1073738823i32;
649 pub const PDH_CSTATUS_NO_COUNTERNAME: i32 = -1073738817i32;
650 pub const PDH_CSTATUS_NO_INSTANCE: i32 = -2147481647i32;
651 pub const PDH_CSTATUS_NO_MACHINE: i32 = -2147481648i32;
652 pub const PDH_CSTATUS_NO_OBJECT: i32 = -1073738824i32;
653 pub const PDH_CSTATUS_VALID_DATA: i32 = 0i32;
654 #[repr(C)]
655 #[cfg(feature = "Win32_Foundation")]
656 pub struct PDH_DATA_ITEM_PATH_ELEMENTS_A {
657     pub szMachineName: super::super::Foundation::PSTR,
658     pub ObjectGUID: ::windows_sys::core::GUID,
659     pub dwItemId: u32,
660     pub szInstanceName: super::super::Foundation::PSTR,
661 }
662 #[cfg(feature = "Win32_Foundation")]
663 impl ::core::marker::Copy for PDH_DATA_ITEM_PATH_ELEMENTS_A {}
664 #[cfg(feature = "Win32_Foundation")]
665 impl ::core::clone::Clone for PDH_DATA_ITEM_PATH_ELEMENTS_A {
clone(&self) -> Self666     fn clone(&self) -> Self {
667         *self
668     }
669 }
670 #[repr(C)]
671 #[cfg(feature = "Win32_Foundation")]
672 pub struct PDH_DATA_ITEM_PATH_ELEMENTS_W {
673     pub szMachineName: super::super::Foundation::PWSTR,
674     pub ObjectGUID: ::windows_sys::core::GUID,
675     pub dwItemId: u32,
676     pub szInstanceName: super::super::Foundation::PWSTR,
677 }
678 #[cfg(feature = "Win32_Foundation")]
679 impl ::core::marker::Copy for PDH_DATA_ITEM_PATH_ELEMENTS_W {}
680 #[cfg(feature = "Win32_Foundation")]
681 impl ::core::clone::Clone for PDH_DATA_ITEM_PATH_ELEMENTS_W {
clone(&self) -> Self682     fn clone(&self) -> Self {
683         *self
684     }
685 }
686 pub const PDH_DATA_SOURCE_IS_LOG_FILE: i32 = -1073738802i32;
687 pub const PDH_DATA_SOURCE_IS_REAL_TIME: i32 = -1073738801i32;
688 pub const PDH_DIALOG_CANCELLED: i32 = -2147481639i32;
689 pub type PDH_DLL_VERSION = u32;
690 pub const PDH_CVERSION_WIN50: PDH_DLL_VERSION = 1280u32;
691 pub const PDH_VERSION: PDH_DLL_VERSION = 1283u32;
692 pub const PDH_END_OF_LOG_FILE: i32 = -2147481638i32;
693 pub const PDH_ENTRY_NOT_IN_LOG_FILE: i32 = -1073738803i32;
694 pub const PDH_FILE_ALREADY_EXISTS: i32 = -1073738798i32;
695 pub const PDH_FILE_NOT_FOUND: i32 = -1073738799i32;
696 pub type PDH_FMT = u32;
697 pub const PDH_FMT_DOUBLE: PDH_FMT = 512u32;
698 pub const PDH_FMT_LARGE: PDH_FMT = 1024u32;
699 pub const PDH_FMT_LONG: PDH_FMT = 256u32;
700 #[repr(C)]
701 #[cfg(feature = "Win32_Foundation")]
702 pub struct PDH_FMT_COUNTERVALUE {
703     pub CStatus: u32,
704     pub Anonymous: PDH_FMT_COUNTERVALUE_0,
705 }
706 #[cfg(feature = "Win32_Foundation")]
707 impl ::core::marker::Copy for PDH_FMT_COUNTERVALUE {}
708 #[cfg(feature = "Win32_Foundation")]
709 impl ::core::clone::Clone for PDH_FMT_COUNTERVALUE {
clone(&self) -> Self710     fn clone(&self) -> Self {
711         *self
712     }
713 }
714 #[repr(C)]
715 #[cfg(feature = "Win32_Foundation")]
716 pub union PDH_FMT_COUNTERVALUE_0 {
717     pub longValue: i32,
718     pub doubleValue: f64,
719     pub largeValue: i64,
720     pub AnsiStringValue: super::super::Foundation::PSTR,
721     pub WideStringValue: super::super::Foundation::PWSTR,
722 }
723 #[cfg(feature = "Win32_Foundation")]
724 impl ::core::marker::Copy for PDH_FMT_COUNTERVALUE_0 {}
725 #[cfg(feature = "Win32_Foundation")]
726 impl ::core::clone::Clone for PDH_FMT_COUNTERVALUE_0 {
clone(&self) -> Self727     fn clone(&self) -> Self {
728         *self
729     }
730 }
731 #[repr(C)]
732 #[cfg(feature = "Win32_Foundation")]
733 pub struct PDH_FMT_COUNTERVALUE_ITEM_A {
734     pub szName: super::super::Foundation::PSTR,
735     pub FmtValue: PDH_FMT_COUNTERVALUE,
736 }
737 #[cfg(feature = "Win32_Foundation")]
738 impl ::core::marker::Copy for PDH_FMT_COUNTERVALUE_ITEM_A {}
739 #[cfg(feature = "Win32_Foundation")]
740 impl ::core::clone::Clone for PDH_FMT_COUNTERVALUE_ITEM_A {
clone(&self) -> Self741     fn clone(&self) -> Self {
742         *self
743     }
744 }
745 #[repr(C)]
746 #[cfg(feature = "Win32_Foundation")]
747 pub struct PDH_FMT_COUNTERVALUE_ITEM_W {
748     pub szName: super::super::Foundation::PWSTR,
749     pub FmtValue: PDH_FMT_COUNTERVALUE,
750 }
751 #[cfg(feature = "Win32_Foundation")]
752 impl ::core::marker::Copy for PDH_FMT_COUNTERVALUE_ITEM_W {}
753 #[cfg(feature = "Win32_Foundation")]
754 impl ::core::clone::Clone for PDH_FMT_COUNTERVALUE_ITEM_W {
clone(&self) -> Self755     fn clone(&self) -> Self {
756         *self
757     }
758 }
759 pub const PDH_FUNCTION_NOT_FOUND: i32 = -1073738818i32;
760 pub const PDH_INCORRECT_APPEND_TIME: i32 = -1073738757i32;
761 pub const PDH_INSUFFICIENT_BUFFER: i32 = -1073738814i32;
762 pub const PDH_INVALID_ARGUMENT: i32 = -1073738819i32;
763 pub const PDH_INVALID_BUFFER: i32 = -1073738815i32;
764 pub const PDH_INVALID_DATA: i32 = -1073738810i32;
765 pub const PDH_INVALID_DATASOURCE: i32 = -1073738787i32;
766 pub const PDH_INVALID_HANDLE: i32 = -1073738820i32;
767 pub const PDH_INVALID_INSTANCE: i32 = -1073738811i32;
768 pub const PDH_INVALID_PATH: i32 = -1073738812i32;
769 pub const PDH_INVALID_SQLDB: i32 = -1073738786i32;
770 pub const PDH_INVALID_SQL_LOG_FORMAT: i32 = -1073738763i32;
771 pub type PDH_LOG = u32;
772 pub const PDH_LOG_READ_ACCESS: PDH_LOG = 65536u32;
773 pub const PDH_LOG_WRITE_ACCESS: PDH_LOG = 131072u32;
774 pub const PDH_LOG_UPDATE_ACCESS: PDH_LOG = 262144u32;
775 pub const PDH_LOGSVC_NOT_OPENED: i32 = -1073738791i32;
776 pub const PDH_LOGSVC_QUERY_NOT_FOUND: i32 = -1073738792i32;
777 pub const PDH_LOG_FILE_CREATE_ERROR: i32 = -1073738807i32;
778 pub const PDH_LOG_FILE_OPEN_ERROR: i32 = -1073738806i32;
779 pub const PDH_LOG_FILE_TOO_SMALL: i32 = -1073738788i32;
780 pub const PDH_LOG_SAMPLE_TOO_SMALL: i32 = -1073738760i32;
781 #[repr(C)]
782 #[cfg(feature = "Win32_Foundation")]
783 pub struct PDH_LOG_SERVICE_QUERY_INFO_A {
784     pub dwSize: u32,
785     pub dwFlags: u32,
786     pub dwLogQuota: u32,
787     pub szLogFileCaption: super::super::Foundation::PSTR,
788     pub szDefaultDir: super::super::Foundation::PSTR,
789     pub szBaseFileName: super::super::Foundation::PSTR,
790     pub dwFileType: u32,
791     pub dwReserved: u32,
792     pub Anonymous: PDH_LOG_SERVICE_QUERY_INFO_A_0,
793 }
794 #[cfg(feature = "Win32_Foundation")]
795 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_A {}
796 #[cfg(feature = "Win32_Foundation")]
797 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_A {
clone(&self) -> Self798     fn clone(&self) -> Self {
799         *self
800     }
801 }
802 #[repr(C)]
803 #[cfg(feature = "Win32_Foundation")]
804 pub union PDH_LOG_SERVICE_QUERY_INFO_A_0 {
805     pub Anonymous1: PDH_LOG_SERVICE_QUERY_INFO_A_0_0,
806     pub Anonymous2: PDH_LOG_SERVICE_QUERY_INFO_A_0_1,
807 }
808 #[cfg(feature = "Win32_Foundation")]
809 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_A_0 {}
810 #[cfg(feature = "Win32_Foundation")]
811 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_A_0 {
clone(&self) -> Self812     fn clone(&self) -> Self {
813         *self
814     }
815 }
816 #[repr(C)]
817 #[cfg(feature = "Win32_Foundation")]
818 pub struct PDH_LOG_SERVICE_QUERY_INFO_A_0_0 {
819     pub PdlAutoNameInterval: u32,
820     pub PdlAutoNameUnits: u32,
821     pub PdlCommandFilename: super::super::Foundation::PSTR,
822     pub PdlCounterList: super::super::Foundation::PSTR,
823     pub PdlAutoNameFormat: u32,
824     pub PdlSampleInterval: u32,
825     pub PdlLogStartTime: super::super::Foundation::FILETIME,
826     pub PdlLogEndTime: super::super::Foundation::FILETIME,
827 }
828 #[cfg(feature = "Win32_Foundation")]
829 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_A_0_0 {}
830 #[cfg(feature = "Win32_Foundation")]
831 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_A_0_0 {
clone(&self) -> Self832     fn clone(&self) -> Self {
833         *self
834     }
835 }
836 #[repr(C)]
837 #[cfg(feature = "Win32_Foundation")]
838 pub struct PDH_LOG_SERVICE_QUERY_INFO_A_0_1 {
839     pub TlNumberOfBuffers: u32,
840     pub TlMinimumBuffers: u32,
841     pub TlMaximumBuffers: u32,
842     pub TlFreeBuffers: u32,
843     pub TlBufferSize: u32,
844     pub TlEventsLost: u32,
845     pub TlLoggerThreadId: u32,
846     pub TlBuffersWritten: u32,
847     pub TlLogHandle: u32,
848     pub TlLogFileName: super::super::Foundation::PSTR,
849 }
850 #[cfg(feature = "Win32_Foundation")]
851 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_A_0_1 {}
852 #[cfg(feature = "Win32_Foundation")]
853 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_A_0_1 {
clone(&self) -> Self854     fn clone(&self) -> Self {
855         *self
856     }
857 }
858 #[repr(C)]
859 #[cfg(feature = "Win32_Foundation")]
860 pub struct PDH_LOG_SERVICE_QUERY_INFO_W {
861     pub dwSize: u32,
862     pub dwFlags: u32,
863     pub dwLogQuota: u32,
864     pub szLogFileCaption: super::super::Foundation::PWSTR,
865     pub szDefaultDir: super::super::Foundation::PWSTR,
866     pub szBaseFileName: super::super::Foundation::PWSTR,
867     pub dwFileType: u32,
868     pub dwReserved: u32,
869     pub Anonymous: PDH_LOG_SERVICE_QUERY_INFO_W_0,
870 }
871 #[cfg(feature = "Win32_Foundation")]
872 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_W {}
873 #[cfg(feature = "Win32_Foundation")]
874 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_W {
clone(&self) -> Self875     fn clone(&self) -> Self {
876         *self
877     }
878 }
879 #[repr(C)]
880 #[cfg(feature = "Win32_Foundation")]
881 pub union PDH_LOG_SERVICE_QUERY_INFO_W_0 {
882     pub Anonymous1: PDH_LOG_SERVICE_QUERY_INFO_W_0_0,
883     pub Anonymous2: PDH_LOG_SERVICE_QUERY_INFO_W_0_1,
884 }
885 #[cfg(feature = "Win32_Foundation")]
886 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_W_0 {}
887 #[cfg(feature = "Win32_Foundation")]
888 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_W_0 {
clone(&self) -> Self889     fn clone(&self) -> Self {
890         *self
891     }
892 }
893 #[repr(C)]
894 #[cfg(feature = "Win32_Foundation")]
895 pub struct PDH_LOG_SERVICE_QUERY_INFO_W_0_0 {
896     pub PdlAutoNameInterval: u32,
897     pub PdlAutoNameUnits: u32,
898     pub PdlCommandFilename: super::super::Foundation::PWSTR,
899     pub PdlCounterList: super::super::Foundation::PWSTR,
900     pub PdlAutoNameFormat: u32,
901     pub PdlSampleInterval: u32,
902     pub PdlLogStartTime: super::super::Foundation::FILETIME,
903     pub PdlLogEndTime: super::super::Foundation::FILETIME,
904 }
905 #[cfg(feature = "Win32_Foundation")]
906 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_W_0_0 {}
907 #[cfg(feature = "Win32_Foundation")]
908 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_W_0_0 {
clone(&self) -> Self909     fn clone(&self) -> Self {
910         *self
911     }
912 }
913 #[repr(C)]
914 #[cfg(feature = "Win32_Foundation")]
915 pub struct PDH_LOG_SERVICE_QUERY_INFO_W_0_1 {
916     pub TlNumberOfBuffers: u32,
917     pub TlMinimumBuffers: u32,
918     pub TlMaximumBuffers: u32,
919     pub TlFreeBuffers: u32,
920     pub TlBufferSize: u32,
921     pub TlEventsLost: u32,
922     pub TlLoggerThreadId: u32,
923     pub TlBuffersWritten: u32,
924     pub TlLogHandle: u32,
925     pub TlLogFileName: super::super::Foundation::PWSTR,
926 }
927 #[cfg(feature = "Win32_Foundation")]
928 impl ::core::marker::Copy for PDH_LOG_SERVICE_QUERY_INFO_W_0_1 {}
929 #[cfg(feature = "Win32_Foundation")]
930 impl ::core::clone::Clone for PDH_LOG_SERVICE_QUERY_INFO_W_0_1 {
clone(&self) -> Self931     fn clone(&self) -> Self {
932         *self
933     }
934 }
935 pub type PDH_LOG_TYPE = u32;
936 pub const PDH_LOG_TYPE_UNDEFINED: PDH_LOG_TYPE = 0u32;
937 pub const PDH_LOG_TYPE_CSV: PDH_LOG_TYPE = 1u32;
938 pub const PDH_LOG_TYPE_SQL: PDH_LOG_TYPE = 7u32;
939 pub const PDH_LOG_TYPE_TSV: PDH_LOG_TYPE = 2u32;
940 pub const PDH_LOG_TYPE_BINARY: PDH_LOG_TYPE = 8u32;
941 pub const PDH_LOG_TYPE_PERFMON: PDH_LOG_TYPE = 6u32;
942 pub const PDH_LOG_TYPE_NOT_FOUND: i32 = -1073738805i32;
943 pub const PDH_LOG_TYPE_RETIRED_BIN: u32 = 3u32;
944 pub const PDH_LOG_TYPE_TRACE_GENERIC: u32 = 5u32;
945 pub const PDH_LOG_TYPE_TRACE_KERNEL: u32 = 4u32;
946 pub const PDH_MAX_COUNTER_NAME: u32 = 1024u32;
947 pub const PDH_MAX_COUNTER_PATH: u32 = 2048u32;
948 pub const PDH_MAX_DATASOURCE_PATH: u32 = 1024u32;
949 pub const PDH_MAX_INSTANCE_NAME: u32 = 1024u32;
950 pub const PDH_MAX_SCALE: i32 = 7i32;
951 pub const PDH_MEMORY_ALLOCATION_FAILURE: i32 = -1073738821i32;
952 pub const PDH_MIN_SCALE: i32 = -7i32;
953 pub const PDH_MORE_DATA: i32 = -2147481646i32;
954 pub const PDH_NOEXPANDCOUNTERS: u32 = 1u32;
955 pub const PDH_NOEXPANDINSTANCES: u32 = 2u32;
956 pub const PDH_NOT_IMPLEMENTED: i32 = -1073738797i32;
957 pub const PDH_NO_COUNTERS: i32 = -1073738785i32;
958 pub const PDH_NO_DATA: i32 = -2147481643i32;
959 pub const PDH_NO_DIALOG_DATA: i32 = -1073738809i32;
960 pub const PDH_NO_MORE_DATA: i32 = -1073738804i32;
961 pub const PDH_OS_EARLIER_VERSION: i32 = -1073738758i32;
962 pub const PDH_OS_LATER_VERSION: i32 = -1073738759i32;
963 pub type PDH_PATH_FLAGS = u32;
964 pub const PDH_PATH_WBEM_RESULT: PDH_PATH_FLAGS = 1u32;
965 pub const PDH_PATH_WBEM_INPUT: PDH_PATH_FLAGS = 2u32;
966 pub const PDH_PATH_WBEM_NONE: PDH_PATH_FLAGS = 0u32;
967 pub const PDH_PLA_COLLECTION_ALREADY_RUNNING: i32 = -1073738775i32;
968 pub const PDH_PLA_COLLECTION_NOT_FOUND: i32 = -1073738773i32;
969 pub const PDH_PLA_ERROR_ALREADY_EXISTS: i32 = -1073738770i32;
970 pub const PDH_PLA_ERROR_FILEPATH: i32 = -1073738768i32;
971 pub const PDH_PLA_ERROR_NAME_TOO_LONG: i32 = -1073738764i32;
972 pub const PDH_PLA_ERROR_NOSTART: i32 = -1073738771i32;
973 pub const PDH_PLA_ERROR_SCHEDULE_ELAPSED: i32 = -1073738772i32;
974 pub const PDH_PLA_ERROR_SCHEDULE_OVERLAP: i32 = -1073738774i32;
975 pub const PDH_PLA_ERROR_TYPE_MISMATCH: i32 = -1073738769i32;
976 pub const PDH_PLA_SERVICE_ERROR: i32 = -1073738767i32;
977 pub const PDH_PLA_VALIDATION_ERROR: i32 = -1073738766i32;
978 pub const PDH_PLA_VALIDATION_WARNING: i32 = -2147480589i32;
979 pub const PDH_QUERY_PERF_DATA_TIMEOUT: i32 = -1073738754i32;
980 #[repr(C)]
981 #[cfg(feature = "Win32_Foundation")]
982 pub struct PDH_RAW_COUNTER {
983     pub CStatus: u32,
984     pub TimeStamp: super::super::Foundation::FILETIME,
985     pub FirstValue: i64,
986     pub SecondValue: i64,
987     pub MultiCount: u32,
988 }
989 #[cfg(feature = "Win32_Foundation")]
990 impl ::core::marker::Copy for PDH_RAW_COUNTER {}
991 #[cfg(feature = "Win32_Foundation")]
992 impl ::core::clone::Clone for PDH_RAW_COUNTER {
clone(&self) -> Self993     fn clone(&self) -> Self {
994         *self
995     }
996 }
997 #[repr(C)]
998 #[cfg(feature = "Win32_Foundation")]
999 pub struct PDH_RAW_COUNTER_ITEM_A {
1000     pub szName: super::super::Foundation::PSTR,
1001     pub RawValue: PDH_RAW_COUNTER,
1002 }
1003 #[cfg(feature = "Win32_Foundation")]
1004 impl ::core::marker::Copy for PDH_RAW_COUNTER_ITEM_A {}
1005 #[cfg(feature = "Win32_Foundation")]
1006 impl ::core::clone::Clone for PDH_RAW_COUNTER_ITEM_A {
clone(&self) -> Self1007     fn clone(&self) -> Self {
1008         *self
1009     }
1010 }
1011 #[repr(C)]
1012 #[cfg(feature = "Win32_Foundation")]
1013 pub struct PDH_RAW_COUNTER_ITEM_W {
1014     pub szName: super::super::Foundation::PWSTR,
1015     pub RawValue: PDH_RAW_COUNTER,
1016 }
1017 #[cfg(feature = "Win32_Foundation")]
1018 impl ::core::marker::Copy for PDH_RAW_COUNTER_ITEM_W {}
1019 #[cfg(feature = "Win32_Foundation")]
1020 impl ::core::clone::Clone for PDH_RAW_COUNTER_ITEM_W {
clone(&self) -> Self1021     fn clone(&self) -> Self {
1022         *self
1023     }
1024 }
1025 #[repr(C)]
1026 pub struct PDH_RAW_LOG_RECORD {
1027     pub dwStructureSize: u32,
1028     pub dwRecordType: PDH_LOG_TYPE,
1029     pub dwItems: u32,
1030     pub RawBytes: [u8; 1],
1031 }
1032 impl ::core::marker::Copy for PDH_RAW_LOG_RECORD {}
1033 impl ::core::clone::Clone for PDH_RAW_LOG_RECORD {
clone(&self) -> Self1034     fn clone(&self) -> Self {
1035         *self
1036     }
1037 }
1038 pub const PDH_REFRESHCOUNTERS: u32 = 4u32;
1039 pub const PDH_RETRY: i32 = -2147481644i32;
1040 pub type PDH_SELECT_DATA_SOURCE_FLAGS = u32;
1041 pub const PDH_FLAGS_FILE_BROWSER_ONLY: PDH_SELECT_DATA_SOURCE_FLAGS = 1u32;
1042 pub const PDH_FLAGS_NONE: PDH_SELECT_DATA_SOURCE_FLAGS = 0u32;
1043 pub const PDH_SQL_ALLOCCON_FAILED: i32 = -1073738783i32;
1044 pub const PDH_SQL_ALLOC_FAILED: i32 = -1073738784i32;
1045 pub const PDH_SQL_ALTER_DETAIL_FAILED: i32 = -1073738755i32;
1046 pub const PDH_SQL_BIND_FAILED: i32 = -1073738777i32;
1047 pub const PDH_SQL_CONNECT_FAILED: i32 = -1073738778i32;
1048 pub const PDH_SQL_EXEC_DIRECT_FAILED: i32 = -1073738782i32;
1049 pub const PDH_SQL_FETCH_FAILED: i32 = -1073738781i32;
1050 pub const PDH_SQL_MORE_RESULTS_FAILED: i32 = -1073738779i32;
1051 pub const PDH_SQL_ROWCOUNT_FAILED: i32 = -1073738780i32;
1052 #[repr(C)]
1053 #[cfg(feature = "Win32_Foundation")]
1054 pub struct PDH_STATISTICS {
1055     pub dwFormat: u32,
1056     pub count: u32,
1057     pub min: PDH_FMT_COUNTERVALUE,
1058     pub max: PDH_FMT_COUNTERVALUE,
1059     pub mean: PDH_FMT_COUNTERVALUE,
1060 }
1061 #[cfg(feature = "Win32_Foundation")]
1062 impl ::core::marker::Copy for PDH_STATISTICS {}
1063 #[cfg(feature = "Win32_Foundation")]
1064 impl ::core::clone::Clone for PDH_STATISTICS {
clone(&self) -> Self1065     fn clone(&self) -> Self {
1066         *self
1067     }
1068 }
1069 pub const PDH_STRING_NOT_FOUND: i32 = -1073738796i32;
1070 #[repr(C)]
1071 pub struct PDH_TIME_INFO {
1072     pub StartTime: i64,
1073     pub EndTime: i64,
1074     pub SampleCount: u32,
1075 }
1076 impl ::core::marker::Copy for PDH_TIME_INFO {}
1077 impl ::core::clone::Clone for PDH_TIME_INFO {
clone(&self) -> Self1078     fn clone(&self) -> Self {
1079         *self
1080     }
1081 }
1082 pub const PDH_UNABLE_MAP_NAME_FILES: i32 = -2147480619i32;
1083 pub const PDH_UNABLE_READ_LOG_HEADER: i32 = -1073738800i32;
1084 pub const PDH_UNKNOWN_LOGSVC_COMMAND: i32 = -1073738793i32;
1085 pub const PDH_UNKNOWN_LOG_FORMAT: i32 = -1073738794i32;
1086 pub const PDH_UNMATCHED_APPEND_COUNTER: i32 = -1073738756i32;
1087 pub const PDH_WBEM_ERROR: i32 = -1073738790i32;
1088 pub type PERFLIBREQUEST = unsafe extern "system" fn(requestcode: u32, buffer: *mut ::core::ffi::c_void, buffersize: u32) -> u32;
1089 pub const PERF_ADD_COUNTER: u32 = 1u32;
1090 pub const PERF_AGGREGATE_MAX: u32 = 4u32;
1091 pub const PERF_ATTRIB_BY_REFERENCE: u64 = 1u64;
1092 pub const PERF_ATTRIB_DISPLAY_AS_HEX: u64 = 16u64;
1093 pub const PERF_ATTRIB_DISPLAY_AS_REAL: u64 = 8u64;
1094 pub const PERF_ATTRIB_NO_DISPLAYABLE: u64 = 2u64;
1095 pub const PERF_ATTRIB_NO_GROUP_SEPARATOR: u64 = 4u64;
1096 pub const PERF_COLLECT_END: u32 = 6u32;
1097 pub const PERF_COLLECT_START: u32 = 5u32;
1098 pub const PERF_COUNTERSET_FLAG_AGGREGATE: u32 = 4u32;
1099 pub const PERF_COUNTERSET_FLAG_HISTORY: u32 = 8u32;
1100 pub const PERF_COUNTERSET_FLAG_INSTANCE: u32 = 16u32;
1101 pub const PERF_COUNTERSET_FLAG_MULTIPLE: u32 = 2u32;
1102 #[repr(C)]
1103 pub struct PERF_COUNTERSET_INFO {
1104     pub CounterSetGuid: ::windows_sys::core::GUID,
1105     pub ProviderGuid: ::windows_sys::core::GUID,
1106     pub NumCounters: u32,
1107     pub InstanceType: u32,
1108 }
1109 impl ::core::marker::Copy for PERF_COUNTERSET_INFO {}
1110 impl ::core::clone::Clone for PERF_COUNTERSET_INFO {
clone(&self) -> Self1111     fn clone(&self) -> Self {
1112         *self
1113     }
1114 }
1115 #[repr(C)]
1116 pub struct PERF_COUNTERSET_INSTANCE {
1117     pub CounterSetGuid: ::windows_sys::core::GUID,
1118     pub dwSize: u32,
1119     pub InstanceId: u32,
1120     pub InstanceNameOffset: u32,
1121     pub InstanceNameSize: u32,
1122 }
1123 impl ::core::marker::Copy for PERF_COUNTERSET_INSTANCE {}
1124 impl ::core::clone::Clone for PERF_COUNTERSET_INSTANCE {
clone(&self) -> Self1125     fn clone(&self) -> Self {
1126         *self
1127     }
1128 }
1129 pub const PERF_COUNTERSET_MULTI_INSTANCES: u32 = 2u32;
1130 #[repr(C)]
1131 pub struct PERF_COUNTERSET_REG_INFO {
1132     pub CounterSetGuid: ::windows_sys::core::GUID,
1133     pub CounterSetType: u32,
1134     pub DetailLevel: u32,
1135     pub NumCounters: u32,
1136     pub InstanceType: u32,
1137 }
1138 impl ::core::marker::Copy for PERF_COUNTERSET_REG_INFO {}
1139 impl ::core::clone::Clone for PERF_COUNTERSET_REG_INFO {
clone(&self) -> Self1140     fn clone(&self) -> Self {
1141         *self
1142     }
1143 }
1144 pub const PERF_COUNTERSET_SINGLE_AGGREGATE: u32 = 4u32;
1145 pub const PERF_COUNTERSET_SINGLE_INSTANCE: u32 = 0u32;
1146 pub type PERF_COUNTER_AGGREGATE_FUNC = u32;
1147 pub const PERF_AGGREGATE_UNDEFINED: PERF_COUNTER_AGGREGATE_FUNC = 0u32;
1148 pub const PERF_AGGREGATE_TOTAL: PERF_COUNTER_AGGREGATE_FUNC = 1u32;
1149 pub const PERF_AGGREGATE_AVG: PERF_COUNTER_AGGREGATE_FUNC = 2u32;
1150 pub const PERF_AGGREGATE_MIN: PERF_COUNTER_AGGREGATE_FUNC = 3u32;
1151 pub const PERF_COUNTER_BASE: u32 = 196608u32;
1152 #[repr(C)]
1153 pub struct PERF_COUNTER_BLOCK {
1154     pub ByteLength: u32,
1155 }
1156 impl ::core::marker::Copy for PERF_COUNTER_BLOCK {}
1157 impl ::core::clone::Clone for PERF_COUNTER_BLOCK {
clone(&self) -> Self1158     fn clone(&self) -> Self {
1159         *self
1160     }
1161 }
1162 #[repr(C)]
1163 pub struct PERF_COUNTER_DATA {
1164     pub dwDataSize: u32,
1165     pub dwSize: u32,
1166 }
1167 impl ::core::marker::Copy for PERF_COUNTER_DATA {}
1168 impl ::core::clone::Clone for PERF_COUNTER_DATA {
clone(&self) -> Self1169     fn clone(&self) -> Self {
1170         *self
1171     }
1172 }
1173 #[repr(C)]
1174 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
1175 #[cfg(feature = "Win32_Foundation")]
1176 pub struct PERF_COUNTER_DEFINITION {
1177     pub ByteLength: u32,
1178     pub CounterNameTitleIndex: u32,
1179     pub CounterNameTitle: u32,
1180     pub CounterHelpTitleIndex: u32,
1181     pub CounterHelpTitle: u32,
1182     pub DefaultScale: i32,
1183     pub DetailLevel: u32,
1184     pub CounterType: u32,
1185     pub CounterSize: u32,
1186     pub CounterOffset: u32,
1187 }
1188 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
1189 #[cfg(feature = "Win32_Foundation")]
1190 impl ::core::marker::Copy for PERF_COUNTER_DEFINITION {}
1191 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
1192 #[cfg(feature = "Win32_Foundation")]
1193 impl ::core::clone::Clone for PERF_COUNTER_DEFINITION {
clone(&self) -> Self1194     fn clone(&self) -> Self {
1195         *self
1196     }
1197 }
1198 #[repr(C)]
1199 #[cfg(any(target_arch = "x86",))]
1200 #[cfg(feature = "Win32_Foundation")]
1201 pub struct PERF_COUNTER_DEFINITION {
1202     pub ByteLength: u32,
1203     pub CounterNameTitleIndex: u32,
1204     pub CounterNameTitle: super::super::Foundation::PWSTR,
1205     pub CounterHelpTitleIndex: u32,
1206     pub CounterHelpTitle: super::super::Foundation::PWSTR,
1207     pub DefaultScale: i32,
1208     pub DetailLevel: u32,
1209     pub CounterType: u32,
1210     pub CounterSize: u32,
1211     pub CounterOffset: u32,
1212 }
1213 #[cfg(any(target_arch = "x86",))]
1214 #[cfg(feature = "Win32_Foundation")]
1215 impl ::core::marker::Copy for PERF_COUNTER_DEFINITION {}
1216 #[cfg(any(target_arch = "x86",))]
1217 #[cfg(feature = "Win32_Foundation")]
1218 impl ::core::clone::Clone for PERF_COUNTER_DEFINITION {
clone(&self) -> Self1219     fn clone(&self) -> Self {
1220         *self
1221     }
1222 }
1223 pub const PERF_COUNTER_ELAPSED: u32 = 262144u32;
1224 pub const PERF_COUNTER_FRACTION: u32 = 131072u32;
1225 #[repr(C)]
1226 pub struct PERF_COUNTER_HEADER {
1227     pub dwStatus: u32,
1228     pub dwType: PerfCounterDataType,
1229     pub dwSize: u32,
1230     pub Reserved: u32,
1231 }
1232 impl ::core::marker::Copy for PERF_COUNTER_HEADER {}
1233 impl ::core::clone::Clone for PERF_COUNTER_HEADER {
clone(&self) -> Self1234     fn clone(&self) -> Self {
1235         *self
1236     }
1237 }
1238 pub const PERF_COUNTER_HISTOGRAM: u32 = 393216u32;
1239 pub const PERF_COUNTER_HISTOGRAM_TYPE: u32 = 2147483648u32;
1240 #[repr(C)]
1241 pub struct PERF_COUNTER_IDENTIFIER {
1242     pub CounterSetGuid: ::windows_sys::core::GUID,
1243     pub Status: u32,
1244     pub Size: u32,
1245     pub CounterId: u32,
1246     pub InstanceId: u32,
1247     pub Index: u32,
1248     pub Reserved: u32,
1249 }
1250 impl ::core::marker::Copy for PERF_COUNTER_IDENTIFIER {}
1251 impl ::core::clone::Clone for PERF_COUNTER_IDENTIFIER {
clone(&self) -> Self1252     fn clone(&self) -> Self {
1253         *self
1254     }
1255 }
1256 #[repr(C)]
1257 pub struct PERF_COUNTER_IDENTITY {
1258     pub CounterSetGuid: ::windows_sys::core::GUID,
1259     pub BufferSize: u32,
1260     pub CounterId: u32,
1261     pub InstanceId: u32,
1262     pub MachineOffset: u32,
1263     pub NameOffset: u32,
1264     pub Reserved: u32,
1265 }
1266 impl ::core::marker::Copy for PERF_COUNTER_IDENTITY {}
1267 impl ::core::clone::Clone for PERF_COUNTER_IDENTITY {
clone(&self) -> Self1268     fn clone(&self) -> Self {
1269         *self
1270     }
1271 }
1272 #[repr(C)]
1273 pub struct PERF_COUNTER_INFO {
1274     pub CounterId: u32,
1275     pub Type: u32,
1276     pub Attrib: u64,
1277     pub Size: u32,
1278     pub DetailLevel: u32,
1279     pub Scale: i32,
1280     pub Offset: u32,
1281 }
1282 impl ::core::marker::Copy for PERF_COUNTER_INFO {}
1283 impl ::core::clone::Clone for PERF_COUNTER_INFO {
clone(&self) -> Self1284     fn clone(&self) -> Self {
1285         *self
1286     }
1287 }
1288 pub const PERF_COUNTER_PRECISION: u32 = 458752u32;
1289 pub const PERF_COUNTER_QUEUELEN: u32 = 327680u32;
1290 pub const PERF_COUNTER_RATE: u32 = 65536u32;
1291 #[repr(C)]
1292 pub struct PERF_COUNTER_REG_INFO {
1293     pub CounterId: u32,
1294     pub Type: u32,
1295     pub Attrib: u64,
1296     pub DetailLevel: u32,
1297     pub DefaultScale: i32,
1298     pub BaseCounterId: u32,
1299     pub PerfTimeId: u32,
1300     pub PerfFreqId: u32,
1301     pub MultiId: u32,
1302     pub AggregateFunc: PERF_COUNTER_AGGREGATE_FUNC,
1303     pub Reserved: u32,
1304 }
1305 impl ::core::marker::Copy for PERF_COUNTER_REG_INFO {}
1306 impl ::core::clone::Clone for PERF_COUNTER_REG_INFO {
clone(&self) -> Self1307     fn clone(&self) -> Self {
1308         *self
1309     }
1310 }
1311 pub const PERF_COUNTER_VALUE: u32 = 0u32;
1312 #[repr(C)]
1313 #[cfg(feature = "Win32_Foundation")]
1314 pub struct PERF_DATA_BLOCK {
1315     pub Signature: [u16; 4],
1316     pub LittleEndian: u32,
1317     pub Version: u32,
1318     pub Revision: u32,
1319     pub TotalByteLength: u32,
1320     pub HeaderLength: u32,
1321     pub NumObjectTypes: u32,
1322     pub DefaultObject: i32,
1323     pub SystemTime: super::super::Foundation::SYSTEMTIME,
1324     pub PerfTime: i64,
1325     pub PerfFreq: i64,
1326     pub PerfTime100nSec: i64,
1327     pub SystemNameLength: u32,
1328     pub SystemNameOffset: u32,
1329 }
1330 #[cfg(feature = "Win32_Foundation")]
1331 impl ::core::marker::Copy for PERF_DATA_BLOCK {}
1332 #[cfg(feature = "Win32_Foundation")]
1333 impl ::core::clone::Clone for PERF_DATA_BLOCK {
clone(&self) -> Self1334     fn clone(&self) -> Self {
1335         *self
1336     }
1337 }
1338 #[repr(C)]
1339 #[cfg(feature = "Win32_Foundation")]
1340 pub struct PERF_DATA_HEADER {
1341     pub dwTotalSize: u32,
1342     pub dwNumCounters: u32,
1343     pub PerfTimeStamp: i64,
1344     pub PerfTime100NSec: i64,
1345     pub PerfFreq: i64,
1346     pub SystemTime: super::super::Foundation::SYSTEMTIME,
1347 }
1348 #[cfg(feature = "Win32_Foundation")]
1349 impl ::core::marker::Copy for PERF_DATA_HEADER {}
1350 #[cfg(feature = "Win32_Foundation")]
1351 impl ::core::clone::Clone for PERF_DATA_HEADER {
clone(&self) -> Self1352     fn clone(&self) -> Self {
1353         *self
1354     }
1355 }
1356 pub const PERF_DATA_REVISION: u32 = 1u32;
1357 pub const PERF_DATA_VERSION: u32 = 1u32;
1358 pub const PERF_DELTA_BASE: u32 = 8388608u32;
1359 pub const PERF_DELTA_COUNTER: u32 = 4194304u32;
1360 pub type PERF_DETAIL = u32;
1361 pub const PERF_DETAIL_NOVICE: PERF_DETAIL = 100u32;
1362 pub const PERF_DETAIL_ADVANCED: PERF_DETAIL = 200u32;
1363 pub const PERF_DETAIL_EXPERT: PERF_DETAIL = 300u32;
1364 pub const PERF_DETAIL_WIZARD: PERF_DETAIL = 400u32;
1365 pub const PERF_DISPLAY_NOSHOW: u32 = 1073741824u32;
1366 pub const PERF_DISPLAY_NO_SUFFIX: u32 = 0u32;
1367 pub const PERF_DISPLAY_PERCENT: u32 = 536870912u32;
1368 pub const PERF_DISPLAY_PER_SEC: u32 = 268435456u32;
1369 pub const PERF_DISPLAY_SECONDS: u32 = 805306368u32;
1370 pub const PERF_ENUM_INSTANCES: u32 = 3u32;
1371 pub const PERF_FILTER: u32 = 9u32;
1372 #[repr(C)]
1373 pub struct PERF_INSTANCE_DEFINITION {
1374     pub ByteLength: u32,
1375     pub ParentObjectTitleIndex: u32,
1376     pub ParentObjectInstance: u32,
1377     pub UniqueID: i32,
1378     pub NameOffset: u32,
1379     pub NameLength: u32,
1380 }
1381 impl ::core::marker::Copy for PERF_INSTANCE_DEFINITION {}
1382 impl ::core::clone::Clone for PERF_INSTANCE_DEFINITION {
clone(&self) -> Self1383     fn clone(&self) -> Self {
1384         *self
1385     }
1386 }
1387 #[repr(C)]
1388 pub struct PERF_INSTANCE_HEADER {
1389     pub Size: u32,
1390     pub InstanceId: u32,
1391 }
1392 impl ::core::marker::Copy for PERF_INSTANCE_HEADER {}
1393 impl ::core::clone::Clone for PERF_INSTANCE_HEADER {
clone(&self) -> Self1394     fn clone(&self) -> Self {
1395         *self
1396     }
1397 }
1398 pub const PERF_INVERSE_COUNTER: u32 = 16777216u32;
1399 pub const PERF_MAX_INSTANCE_NAME: u32 = 1024u32;
1400 pub type PERF_MEM_ALLOC = unsafe extern "system" fn(allocsize: usize, pcontext: *mut ::core::ffi::c_void) -> *mut ::core::ffi::c_void;
1401 pub type PERF_MEM_FREE = unsafe extern "system" fn(pbuffer: *mut ::core::ffi::c_void, pcontext: *mut ::core::ffi::c_void);
1402 pub const PERF_METADATA_MULTIPLE_INSTANCES: i32 = -2i32;
1403 pub const PERF_METADATA_NO_INSTANCES: i32 = -3i32;
1404 pub const PERF_MULTI_COUNTER: u32 = 33554432u32;
1405 #[repr(C)]
1406 pub struct PERF_MULTI_COUNTERS {
1407     pub dwSize: u32,
1408     pub dwCounters: u32,
1409 }
1410 impl ::core::marker::Copy for PERF_MULTI_COUNTERS {}
1411 impl ::core::clone::Clone for PERF_MULTI_COUNTERS {
clone(&self) -> Self1412     fn clone(&self) -> Self {
1413         *self
1414     }
1415 }
1416 #[repr(C)]
1417 pub struct PERF_MULTI_INSTANCES {
1418     pub dwTotalSize: u32,
1419     pub dwInstances: u32,
1420 }
1421 impl ::core::marker::Copy for PERF_MULTI_INSTANCES {}
1422 impl ::core::clone::Clone for PERF_MULTI_INSTANCES {
clone(&self) -> Self1423     fn clone(&self) -> Self {
1424         *self
1425     }
1426 }
1427 pub const PERF_NO_INSTANCES: i32 = -1i32;
1428 pub const PERF_NO_UNIQUE_ID: i32 = -1i32;
1429 pub const PERF_NUMBER_DECIMAL: u32 = 65536u32;
1430 pub const PERF_NUMBER_DEC_1000: u32 = 131072u32;
1431 pub const PERF_NUMBER_HEX: u32 = 0u32;
1432 pub const PERF_OBJECT_TIMER: u32 = 2097152u32;
1433 #[repr(C)]
1434 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
1435 #[cfg(feature = "Win32_Foundation")]
1436 pub struct PERF_OBJECT_TYPE {
1437     pub TotalByteLength: u32,
1438     pub DefinitionLength: u32,
1439     pub HeaderLength: u32,
1440     pub ObjectNameTitleIndex: u32,
1441     pub ObjectNameTitle: u32,
1442     pub ObjectHelpTitleIndex: u32,
1443     pub ObjectHelpTitle: u32,
1444     pub DetailLevel: u32,
1445     pub NumCounters: u32,
1446     pub DefaultCounter: i32,
1447     pub NumInstances: i32,
1448     pub CodePage: u32,
1449     pub PerfTime: i64,
1450     pub PerfFreq: i64,
1451 }
1452 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
1453 #[cfg(feature = "Win32_Foundation")]
1454 impl ::core::marker::Copy for PERF_OBJECT_TYPE {}
1455 #[cfg(any(target_arch = "x86_64", target_arch = "aarch64",))]
1456 #[cfg(feature = "Win32_Foundation")]
1457 impl ::core::clone::Clone for PERF_OBJECT_TYPE {
clone(&self) -> Self1458     fn clone(&self) -> Self {
1459         *self
1460     }
1461 }
1462 #[repr(C)]
1463 #[cfg(any(target_arch = "x86",))]
1464 #[cfg(feature = "Win32_Foundation")]
1465 pub struct PERF_OBJECT_TYPE {
1466     pub TotalByteLength: u32,
1467     pub DefinitionLength: u32,
1468     pub HeaderLength: u32,
1469     pub ObjectNameTitleIndex: u32,
1470     pub ObjectNameTitle: super::super::Foundation::PWSTR,
1471     pub ObjectHelpTitleIndex: u32,
1472     pub ObjectHelpTitle: super::super::Foundation::PWSTR,
1473     pub DetailLevel: u32,
1474     pub NumCounters: u32,
1475     pub DefaultCounter: i32,
1476     pub NumInstances: i32,
1477     pub CodePage: u32,
1478     pub PerfTime: i64,
1479     pub PerfFreq: i64,
1480 }
1481 #[cfg(any(target_arch = "x86",))]
1482 #[cfg(feature = "Win32_Foundation")]
1483 impl ::core::marker::Copy for PERF_OBJECT_TYPE {}
1484 #[cfg(any(target_arch = "x86",))]
1485 #[cfg(feature = "Win32_Foundation")]
1486 impl ::core::clone::Clone for PERF_OBJECT_TYPE {
clone(&self) -> Self1487     fn clone(&self) -> Self {
1488         *self
1489     }
1490 }
1491 #[repr(C)]
1492 pub struct PERF_PROVIDER_CONTEXT {
1493     pub ContextSize: u32,
1494     pub Reserved: u32,
1495     pub ControlCallback: PERFLIBREQUEST,
1496     pub MemAllocRoutine: PERF_MEM_ALLOC,
1497     pub MemFreeRoutine: PERF_MEM_FREE,
1498     pub pMemContext: *mut ::core::ffi::c_void,
1499 }
1500 impl ::core::marker::Copy for PERF_PROVIDER_CONTEXT {}
1501 impl ::core::clone::Clone for PERF_PROVIDER_CONTEXT {
clone(&self) -> Self1502     fn clone(&self) -> Self {
1503         *self
1504     }
1505 }
1506 pub const PERF_PROVIDER_DRIVER: u32 = 2u32;
1507 pub const PERF_PROVIDER_KERNEL_MODE: u32 = 1u32;
1508 pub const PERF_PROVIDER_USER_MODE: u32 = 0u32;
1509 pub const PERF_REMOVE_COUNTER: u32 = 2u32;
1510 pub const PERF_SIZE_DWORD: u32 = 0u32;
1511 pub const PERF_SIZE_LARGE: u32 = 256u32;
1512 pub const PERF_SIZE_VARIABLE_LEN: u32 = 768u32;
1513 pub const PERF_SIZE_ZERO: u32 = 512u32;
1514 #[repr(C)]
1515 pub struct PERF_STRING_BUFFER_HEADER {
1516     pub dwSize: u32,
1517     pub dwCounters: u32,
1518 }
1519 impl ::core::marker::Copy for PERF_STRING_BUFFER_HEADER {}
1520 impl ::core::clone::Clone for PERF_STRING_BUFFER_HEADER {
clone(&self) -> Self1521     fn clone(&self) -> Self {
1522         *self
1523     }
1524 }
1525 #[repr(C)]
1526 pub struct PERF_STRING_COUNTER_HEADER {
1527     pub dwCounterId: u32,
1528     pub dwOffset: u32,
1529 }
1530 impl ::core::marker::Copy for PERF_STRING_COUNTER_HEADER {}
1531 impl ::core::clone::Clone for PERF_STRING_COUNTER_HEADER {
clone(&self) -> Self1532     fn clone(&self) -> Self {
1533         *self
1534     }
1535 }
1536 pub const PERF_TEXT_ASCII: u32 = 65536u32;
1537 pub const PERF_TEXT_UNICODE: u32 = 0u32;
1538 pub const PERF_TIMER_100NS: u32 = 1048576u32;
1539 pub const PERF_TIMER_TICK: u32 = 0u32;
1540 pub const PERF_TYPE_COUNTER: u32 = 1024u32;
1541 pub const PERF_TYPE_NUMBER: u32 = 0u32;
1542 pub const PERF_TYPE_TEXT: u32 = 2048u32;
1543 pub const PERF_TYPE_ZERO: u32 = 3072u32;
1544 pub const PERF_WILDCARD_COUNTER: u32 = 4294967295u32;
1545 #[cfg(feature = "Win32_Foundation")]
1546 pub type PLA_CABEXTRACT_CALLBACK = unsafe extern "system" fn(filename: super::super::Foundation::PWSTR, context: *mut ::core::ffi::c_void);
1547 pub const PLA_CAPABILITY_AUTOLOGGER: u32 = 32u32;
1548 pub const PLA_CAPABILITY_LEGACY_SESSION: u32 = 8u32;
1549 pub const PLA_CAPABILITY_LEGACY_SVC: u32 = 16u32;
1550 pub const PLA_CAPABILITY_LOCAL: u32 = 268435456u32;
1551 pub const PLA_CAPABILITY_V1_SESSION: u32 = 2u32;
1552 pub const PLA_CAPABILITY_V1_SVC: u32 = 1u32;
1553 pub const PLA_CAPABILITY_V1_SYSTEM: u32 = 4u32;
1554 pub type PM_CLOSE_PROC = unsafe extern "system" fn() -> u32;
1555 #[cfg(feature = "Win32_Foundation")]
1556 pub type PM_COLLECT_PROC = unsafe extern "system" fn(pvaluename: super::super::Foundation::PWSTR, ppdata: *mut *mut ::core::ffi::c_void, pcbtotalbytes: *mut u32, pnumobjecttypes: *mut u32) -> u32;
1557 #[cfg(feature = "Win32_Foundation")]
1558 pub type PM_OPEN_PROC = unsafe extern "system" fn(pcontext: super::super::Foundation::PWSTR) -> u32;
1559 pub type PerfCounterDataType = i32;
1560 pub const PERF_ERROR_RETURN: PerfCounterDataType = 0i32;
1561 pub const PERF_SINGLE_COUNTER: PerfCounterDataType = 1i32;
1562 pub const PERF_MULTIPLE_COUNTERS: PerfCounterDataType = 2i32;
1563 pub const PERF_MULTIPLE_INSTANCES: PerfCounterDataType = 4i32;
1564 pub const PERF_COUNTERSET: PerfCounterDataType = 6i32;
1565 pub type PerfProviderHandle = isize;
1566 pub type PerfQueryHandle = isize;
1567 pub type PerfRegInfoType = i32;
1568 pub const PERF_REG_COUNTERSET_STRUCT: PerfRegInfoType = 1i32;
1569 pub const PERF_REG_COUNTER_STRUCT: PerfRegInfoType = 2i32;
1570 pub const PERF_REG_COUNTERSET_NAME_STRING: PerfRegInfoType = 3i32;
1571 pub const PERF_REG_COUNTERSET_HELP_STRING: PerfRegInfoType = 4i32;
1572 pub const PERF_REG_COUNTER_NAME_STRINGS: PerfRegInfoType = 5i32;
1573 pub const PERF_REG_COUNTER_HELP_STRINGS: PerfRegInfoType = 6i32;
1574 pub const PERF_REG_PROVIDER_NAME: PerfRegInfoType = 7i32;
1575 pub const PERF_REG_PROVIDER_GUID: PerfRegInfoType = 8i32;
1576 pub const PERF_REG_COUNTERSET_ENGLISH_NAME: PerfRegInfoType = 9i32;
1577 pub const PERF_REG_COUNTER_ENGLISH_NAMES: PerfRegInfoType = 10i32;
1578 pub type REAL_TIME_DATA_SOURCE_ID_FLAGS = u32;
1579 pub const DATA_SOURCE_REGISTRY: REAL_TIME_DATA_SOURCE_ID_FLAGS = 1u32;
1580 pub const DATA_SOURCE_WBEM: REAL_TIME_DATA_SOURCE_ID_FLAGS = 4u32;
1581 pub type ReportValueTypeConstants = i32;
1582 pub const sysmonDefaultValue: ReportValueTypeConstants = 0i32;
1583 pub const sysmonCurrentValue: ReportValueTypeConstants = 1i32;
1584 pub const sysmonAverage: ReportValueTypeConstants = 2i32;
1585 pub const sysmonMinimum: ReportValueTypeConstants = 3i32;
1586 pub const sysmonMaximum: ReportValueTypeConstants = 4i32;
1587 pub type ResourcePolicy = i32;
1588 pub const plaDeleteLargest: ResourcePolicy = 0i32;
1589 pub const plaDeleteOldest: ResourcePolicy = 1i32;
1590 pub const S_PDH: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 81159000, data2: 50337, data3: 16795, data4: [128, 35, 35, 183, 57, 2, 222, 44] };
1591 pub const ServerDataCollectorSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946865, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1592 pub const ServerDataCollectorSetCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946866, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1593 pub const SourcePropPage: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 217262753, data2: 30065, data3: 4560, data4: [147, 196, 0, 170, 0, 163, 221, 234] };
1594 pub type StreamMode = i32;
1595 pub const plaFile: StreamMode = 1i32;
1596 pub const plaRealTime: StreamMode = 2i32;
1597 pub const plaBoth: StreamMode = 3i32;
1598 pub const plaBuffering: StreamMode = 4i32;
1599 pub type SysmonBatchReason = i32;
1600 pub const sysmonBatchNone: SysmonBatchReason = 0i32;
1601 pub const sysmonBatchAddFiles: SysmonBatchReason = 1i32;
1602 pub const sysmonBatchAddCounters: SysmonBatchReason = 2i32;
1603 pub const sysmonBatchAddFilesAutoCounters: SysmonBatchReason = 3i32;
1604 pub type SysmonDataType = i32;
1605 pub const sysmonDataAvg: SysmonDataType = 1i32;
1606 pub const sysmonDataMin: SysmonDataType = 2i32;
1607 pub const sysmonDataMax: SysmonDataType = 3i32;
1608 pub const sysmonDataTime: SysmonDataType = 4i32;
1609 pub const sysmonDataCount: SysmonDataType = 5i32;
1610 pub type SysmonFileType = i32;
1611 pub const sysmonFileHtml: SysmonFileType = 1i32;
1612 pub const sysmonFileReport: SysmonFileType = 2i32;
1613 pub const sysmonFileCsv: SysmonFileType = 3i32;
1614 pub const sysmonFileTsv: SysmonFileType = 4i32;
1615 pub const sysmonFileBlg: SysmonFileType = 5i32;
1616 pub const sysmonFileRetiredBlg: SysmonFileType = 6i32;
1617 pub const sysmonFileGif: SysmonFileType = 7i32;
1618 pub const SystemDataCollectorSet: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946886, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1619 pub const SystemDataCollectorSetCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946887, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1620 pub const SystemMonitor: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 3302152416, data2: 53725, data3: 4558, data4: [148, 15, 0, 128, 41, 0, 67, 71] };
1621 pub const SystemMonitor2: ::windows_sys::core::GUID = ::windows_sys::core::GUID {
1622     data1: 2133874572,
1623     data2: 24376,
1624     data3: 17938,
1625     data4: [172, 254, 110, 208, 76, 123, 122, 248],
1626 };
1627 pub const TraceDataProvider: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946835, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1628 pub const TraceDataProviderCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946833, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1629 pub const TraceSession: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946844, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1630 pub const TraceSessionCollection: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 58946864, data2: 2443, data3: 4568, data4: [148, 20, 80, 80, 84, 80, 48, 48] };
1631 pub type ValueMapType = i32;
1632 pub const plaIndex: ValueMapType = 1i32;
1633 pub const plaFlag: ValueMapType = 2i32;
1634 pub const plaFlagArray: ValueMapType = 3i32;
1635 pub const plaValidation: ValueMapType = 4i32;
1636 pub const WINPERF_LOG_DEBUG: u32 = 2u32;
1637 pub const WINPERF_LOG_NONE: u32 = 0u32;
1638 pub const WINPERF_LOG_USER: u32 = 1u32;
1639 pub const WINPERF_LOG_VERBOSE: u32 = 3u32;
1640 pub type WeekDays = i32;
1641 pub const plaRunOnce: WeekDays = 0i32;
1642 pub const plaSunday: WeekDays = 1i32;
1643 pub const plaMonday: WeekDays = 2i32;
1644 pub const plaTuesday: WeekDays = 4i32;
1645 pub const plaWednesday: WeekDays = 8i32;
1646 pub const plaThursday: WeekDays = 16i32;
1647 pub const plaFriday: WeekDays = 32i32;
1648 pub const plaSaturday: WeekDays = 64i32;
1649 pub const plaEveryday: WeekDays = 127i32;
1650 pub type _ICounterItemUnion = *mut ::core::ffi::c_void;
1651 pub type _ISystemMonitorUnion = *mut ::core::ffi::c_void;
1652