/usr/x86_64-w64-mingw32/include/perflib.h is in mingw-w64-x86-64-dev 2.0.3-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 | /**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the w64 mingw-runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _INC_PERFLIB
#define _INC_PERFLIB
#if (_WIN32_WINNT >= 0x0600)
#ifdef __cplusplus
extern "C" {
#endif
#ifndef WINADVAPI
#define WINADVAPI DECLSPEC_IMPORT
#endif
typedef LPVOID (CALLBACK *PERF_MEM_ALLOC)(SIZE_T AllocSize,LPVOID pContext);
typedef ULONG (WINAPI *PERFLIBREQUEST)(ULONG RequestCode,PVOID Buffer,ULONG BufferSize);
typedef void (CALLBACK *PERF_MEM_FREE)(LPVOID pBuffer,LPVOID pContext);
typedef struct _PERF_PROVIDER_CONTEXT {
DWORD ContextSize;
DWORD Reserved;
PERFLIBREQUEST ControlCallback;
PERF_MEM_ALLOC MemAllocRoutine;
PERF_MEM_FREE MemFreeRoutine;
LPVOID pMemContext;
} PERF_PROVIDER_CONTEXT, *PPERF_PROVIDER_CONTEXT;
typedef struct _PERF_COUNTER_IDENTITY {
GUID CounterSetGuid;
ULONG BufferSize;
ULONG CounterId;
ULONG InstanceId;
ULONG MachineOffset;
ULONG NameOffset;
ULONG Reserved;
} PERF_COUNTER_IDENTITY, *PPERF_COUNTER_IDENTITY;
typedef struct _PERF_COUNTER_INFO {
ULONG CounterId;
ULONG Type;
ULONGLONG Attrib;
ULONG Size;
ULONG DetailLevel;
LONG Scale;
ULONG Offset;
} PERF_COUNTER_INFO, *PPERF_COUNTER_INFO;
typedef struct _PERF_COUNTERSET_INFO {
GUID CounterSetGuid;
GUID ProviderGuid;
ULONG NumCounters;
ULONG InstanceType;
} PERF_COUNTERSET_INFO, *PPERF_COUNTERSET_INFO;
typedef struct _PERF_COUNTERSET_INSTANCE {
GUID CounterSetGuid;
ULONG dwSize;
ULONG InstanceId;
ULONG InstanceNameOffset;
ULONG InstanceNameSize;
} PERF_COUNTERSET_INSTANCE, *PPERF_COUNTERSET_INSTANCE;
WINADVAPI PPERF_COUNTERSET_INSTANCE WINAPI PerfCreateInstance(
HANDLE hProvider,
LPCGUID CounterSetGuid,
LPCWSTR szInstanceName,
ULONG dwInstance
);
WINADVAPI ULONG WINAPI PerfDecrementULongCounterValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
ULONG lValue
);
WINADVAPI ULONG WINAPI PerfDecrementULongLongCounterValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
ULONGLONG llValue
);
WINADVAPI ULONG WINAPI PerfDeleteInstance(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE InstanceBlock
);
WINADVAPI ULONG WINAPI PerfIncrementULongCounterValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
ULONG lValue
);
WINADVAPI ULONG WINAPI PerfIncrementULongLongCounterValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
ULONGLONG llValue
);
WINADVAPI PPERF_COUNTERSET_INSTANCE WINAPI PerfQueryInstance(
HANDLE hProvider,
LPCGUID CounterSetGuid,
LPCWSTR szInstance,
ULONG dwInstance
);
WINADVAPI ULONG WINAPI PerfSetCounterRefValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
PVOID lpAddr
);
WINADVAPI ULONG WINAPI PerfSetCounterSetInfo(
HANDLE hProvider,
PPERF_COUNTERSET_INFO pTemplate,
ULONG dwTemplateSize
);
WINADVAPI ULONG WINAPI PerfSetULongCounterValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
ULONG lValue
);
WINADVAPI ULONG WINAPI PerfSetULongLongCounterValue(
HANDLE hProvider,
PPERF_COUNTERSET_INSTANCE pInstance,
ULONG CounterId,
ULONGLONG llValue
);
WINADVAPI ULONG WINAPI PerfStartProvider(
LPGUID ProviderGuid,
PERFLIBREQUEST ControlCallback,
HANDLE *phProvider
);
WINADVAPI ULONG WINAPI PerfStartProviderEx(
LPGUID ProviderGuid,
PPERF_PROVIDER_CONTEXT ProviderContext,
HANDLE *phProvider
);
WINADVAPI ULONG WINAPI PerfStopProvider(
HANDLE hProvider
);
#ifdef __cplusplus
}
#endif
#endif /*(_WIN32_WINNT >= 0x0600)*/
#endif /*_INC_PERFLIB*/
|