Initial import
[samba] / source / include / rpc_perfcount_defs.h
1 #ifndef _RPC_PERFCOUNT_DEFS_H
2 #define _RPC_PERFCOUNT_DEFS_H
3
4 /*
5  * The following #defines match what is in winperf.h. 
6  * See that include file for more details, or look up
7  * "Performance Data Format" on MSDN
8  * 
9  * Rather than including them in rpc_perfcount.h, they
10  * were broken out into a separate .h file so that they
11  * can be included by other programs that need this info
12  * without pulling in everything else samba-related.
13  */
14
15 #define PERF_NO_INSTANCES             -1
16 #define PERF_NO_UNIQUE_ID             -1
17
18 /* These determine the data size */
19 #define PERF_SIZE_DWORD               0x00000000
20 #define PERF_SIZE_LARGE               0x00000100
21 #define PERF_SIZE_ZERO                0x00000200
22 #define PERF_SIZE_VARIABLE_LEN        0x00000300
23
24 /* These determine the usage of the counter */
25 #define PERF_TYPE_NUMBER              0x00000000
26 #define PERF_TYPE_COUNTER             0x00000400
27 #define PERF_TYPE_TEXT                0x00000800
28 #define PERF_TYPE_ZERO                0x00000C00
29
30 /* If PERF_TYPE_NUMBER was selected, these provide display information */
31 #define PERF_NUMBER_HEX               0x00000000
32 #define PERF_NUMBER_DECIMAL           0x00010000
33 #define PERF_NUMBER_DEC_1000          0x00020000
34
35 /* If PERF_TYPE_COUNTER was selected, these provide display information */
36 #define PERF_COUNTER_VALUE            0x00000000
37 #define PERF_COUNTER_RATE             0x00010000
38 #define PERF_COUNTER_FRACTION         0x00020000
39 #define PERF_COUNTER_BASE             0x00030000
40 #define PERF_COUNTER_ELAPSED          0x00040000
41 #define PERF_COUNTER_QUEUELEN         0x00050000
42 #define PERF_COUNTER_HISTOGRAM        0x00060000
43 #define PERF_COUNTER_PRECISION        0x00070000
44
45 /* If PERF_TYPE_TEXT was selected, these provide display information */
46 #define PERF_TEXT_UNICODE             0x00000000
47 #define PERF_TEXT_ASCII               0x00010000
48
49 /* These provide information for which tick count to use when computing elapsed interval */
50 #define PERF_TIMER_TICK               0x00000000
51 #define PERF_TIMER_100NS              0x00100000
52 #define PERF_OBJECT_TIMER             0x00200000
53
54 /* These affect how the data is manipulated prior to being displayed */
55 #define PERF_DELTA_COUNTER            0x00400000
56 #define PERF_DELTA_BASE               0x00800000
57 #define PERF_INVERSE_COUNTER          0x01000000
58 #define PERF_MULTI_COUNTER            0x02000000
59
60 /* These determine if any text gets added when the value is displayed */
61 #define PERF_DISPLAY_NO_SUFFIX        0x00000000
62 #define PERF_DISPLAY_PER_SEC          0x10000000
63 #define PERF_DISPLAY_PERCENT          0x20000000
64 #define PERF_DISPLAY_SECONDS          0x30000000
65 #define PERF_DISPLAY_NOSHOW           0x40000000
66
67 /* These determine the DetailLevel of the counter */
68 #define PERF_DETAIL_NOVICE            100
69 #define PERF_DETAIL_ADVANCED          200
70 #define PERF_DETAIL_EXPERT            300
71 #define PERF_DETAIL_WIZARD            400
72
73 #endif /* _RPC_PERFCOUNT_DEFS_H */