1 | /* header auto-generated by pidl */
|
---|
2 |
|
---|
3 | #include <stdint.h>
|
---|
4 |
|
---|
5 | #include "libcli/util/ntstatus.h"
|
---|
6 |
|
---|
7 | #ifndef _HEADER_perfcount
|
---|
8 | #define _HEADER_perfcount
|
---|
9 |
|
---|
10 | #define PERF_NO_INSTANCES ( -1 )
|
---|
11 | #define PERF_NO_UNIQUE_ID ( -1 )
|
---|
12 | #define PERF_SIZE_DWORD ( 0x00000000 )
|
---|
13 | #define PERF_SIZE_LARGE ( 0x00000100 )
|
---|
14 | #define PERF_SIZE_ZERO ( 0x00000200 )
|
---|
15 | #define PERF_SIZE_VARIABLE_LEN ( 0x00000300 )
|
---|
16 | #define PERF_TYPE_NUMBER ( 0x00000000 )
|
---|
17 | #define PERF_TYPE_COUNTER ( 0x00000400 )
|
---|
18 | #define PERF_TYPE_TEXT ( 0x00000800 )
|
---|
19 | #define PERF_TYPE_ZERO ( 0x00000C00 )
|
---|
20 | #define PERF_NUMBER_HEX ( 0x00000000 )
|
---|
21 | #define PERF_NUMBER_DECIMAL ( 0x00010000 )
|
---|
22 | #define PERF_NUMBER_DEC_1000 ( 0x00020000 )
|
---|
23 | #define PERF_COUNTER_VALUE ( 0x00000000 )
|
---|
24 | #define PERF_COUNTER_RATE ( 0x00010000 )
|
---|
25 | #define PERF_COUNTER_FRACTION ( 0x00020000 )
|
---|
26 | #define PERF_COUNTER_BASE ( 0x00030000 )
|
---|
27 | #define PERF_COUNTER_ELAPSED ( 0x00040000 )
|
---|
28 | #define PERF_COUNTER_QUEUELEN ( 0x00050000 )
|
---|
29 | #define PERF_COUNTER_HISTOGRAM ( 0x00060000 )
|
---|
30 | #define PERF_COUNTER_PRECISION ( 0x00070000 )
|
---|
31 | #define PERF_TEXT_UNICODE ( 0x00000000 )
|
---|
32 | #define PERF_TEXT_ASCII ( 0x00010000 )
|
---|
33 | #define PERF_TIMER_TICK ( 0x00000000 )
|
---|
34 | #define PERF_TIMER_100NS ( 0x00100000 )
|
---|
35 | #define PERF_OBJECT_TIMER ( 0x00200000 )
|
---|
36 | #define PERF_DELTA_COUNTER ( 0x00400000 )
|
---|
37 | #define PERF_DELTA_BASE ( 0x00800000 )
|
---|
38 | #define PERF_INVERSE_COUNTER ( 0x01000000 )
|
---|
39 | #define PERF_MULTI_COUNTER ( 0x02000000 )
|
---|
40 | #define PERF_DISPLAY_NO_SUFFIX ( 0x00000000 )
|
---|
41 | #define PERF_DISPLAY_PER_SEC ( 0x10000000 )
|
---|
42 | #define PERF_DISPLAY_PERCENT ( 0x20000000 )
|
---|
43 | #define PERF_DISPLAY_SECONDS ( 0x30000000 )
|
---|
44 | #define PERF_DISPLAY_NOSHOW ( 0x40000000 )
|
---|
45 | #define PERF_DETAIL_NOVICE ( 100 )
|
---|
46 | #define PERF_DETAIL_ADVANCED ( 200 )
|
---|
47 | #define PERF_DETAIL_EXPERT ( 300 )
|
---|
48 | #define PERF_DETAIL_WIZARD ( 400 )
|
---|
49 | struct SYSTEMTIME {
|
---|
50 | uint16_t year;
|
---|
51 | uint16_t month;
|
---|
52 | uint16_t dayofweek;
|
---|
53 | uint16_t day;
|
---|
54 | uint16_t hour;
|
---|
55 | uint16_t minute;
|
---|
56 | uint16_t second;
|
---|
57 | uint16_t milliseconds;
|
---|
58 | };
|
---|
59 |
|
---|
60 | struct PERF_COUNTER_DEFINITION {
|
---|
61 | uint32_t ByteLength;
|
---|
62 | uint32_t CounterNameTitleIndex;
|
---|
63 | uint32_t CounterNameTitlePointer;
|
---|
64 | uint32_t CounterHelpTitleIndex;
|
---|
65 | uint32_t CounterHelpTitlePointer;
|
---|
66 | uint32_t DefaultScale;
|
---|
67 | uint32_t DetailLevel;
|
---|
68 | uint32_t CounterType;
|
---|
69 | uint32_t CounterSize;
|
---|
70 | uint32_t CounterOffset;
|
---|
71 | }/* [public] */;
|
---|
72 |
|
---|
73 | struct PERF_COUNTER_BLOCK {
|
---|
74 | uint32_t ByteLength;
|
---|
75 | uint8_t *data;
|
---|
76 | }/* [public] */;
|
---|
77 |
|
---|
78 | struct PERF_INSTANCE_DEFINITION {
|
---|
79 | uint32_t ByteLength;
|
---|
80 | uint32_t ParentObjectTitleIndex;
|
---|
81 | uint32_t ParentObjectTitlePointer;
|
---|
82 | uint32_t UniqueID;
|
---|
83 | uint32_t NameOffset;
|
---|
84 | uint32_t NameLength;
|
---|
85 | uint8_t *data;/* [unique] */
|
---|
86 | struct PERF_COUNTER_BLOCK counter_data;
|
---|
87 | }/* [public] */;
|
---|
88 |
|
---|
89 | struct PERF_OBJECT_TYPE {
|
---|
90 | uint32_t TotalByteLength;
|
---|
91 | uint32_t DefinitionLength;
|
---|
92 | uint32_t HeaderLength;
|
---|
93 | uint32_t ObjectNameTitleIndex;
|
---|
94 | uint32_t ObjectNameTitlePointer;
|
---|
95 | uint32_t ObjectHelpTitleIndex;
|
---|
96 | uint32_t ObjectHelpTitlePointer;
|
---|
97 | uint32_t DetailLevel;
|
---|
98 | uint32_t NumCounters;
|
---|
99 | uint32_t DefaultCounter;
|
---|
100 | uint32_t NumInstances;
|
---|
101 | uint32_t CodePage;
|
---|
102 | uint64_t PerfTime;
|
---|
103 | uint64_t PerfFreq;
|
---|
104 | struct PERF_COUNTER_DEFINITION *counters;
|
---|
105 | struct PERF_INSTANCE_DEFINITION *instances;
|
---|
106 | struct PERF_COUNTER_BLOCK counter_data;
|
---|
107 | }/* [public] */;
|
---|
108 |
|
---|
109 | struct PERF_DATA_BLOCK {
|
---|
110 | uint16_t Signature[4];
|
---|
111 | uint32_t LittleEndian;
|
---|
112 | uint32_t Version;
|
---|
113 | uint32_t Revision;
|
---|
114 | uint32_t TotalByteLength;
|
---|
115 | uint32_t HeaderLength;
|
---|
116 | uint32_t NumObjectTypes;
|
---|
117 | uint32_t DefaultObject;
|
---|
118 | struct SYSTEMTIME SystemTime;
|
---|
119 | uint32_t Padding;
|
---|
120 | uint64_t PerfTime;
|
---|
121 | uint64_t PerfFreq;
|
---|
122 | uint64_t PerfTime100nSec;
|
---|
123 | uint32_t SystemNameLength;
|
---|
124 | uint32_t SystemNameOffset;
|
---|
125 | uint8_t *data;/* [unique] */
|
---|
126 | struct PERF_OBJECT_TYPE *objects;
|
---|
127 | }/* [public] */;
|
---|
128 |
|
---|
129 | #endif /* _HEADER_perfcount */
|
---|