Performance Counters Structures
You use the following structures when working with performance data.
Consumer structures
Consumers that use the Performance Data Helper functions that consume both version 1 and version 2 performance counter data use the following structures.
- PDH_BROWSE_DLG_CONFIG
- PDH_BROWSE_DLG_CONFIG_H
- PDH_COUNTER_INFO
- PDH_COUNTER_PATH_ELEMENTS
- PDH_DATA_ITEM_PATH_ELEMENTS
- PDH_FMT_COUNTERVALUE
- PDH_FMT_COUNTERVALUE_ITEM
- PDH_RAW_COUNTER
- PDH_RAW_COUNTER_ITEM
- PDH_RAW_LOG_RECORD
- PDH_STATISTICS
- PDH_TIME_INFO
Consumers that use the nine low-level functions that can consume version 2 performance counter data use the following structures.
- PERF_COUNTER_DATA
- PERF_COUNTER_HEADER
- PERF_COUNTER_IDENTIFIER
- PERF_COUNTER_REG_INFO
- PERF_COUNTERSET_REG_INFO
- PERF_DATA_HEADER
- PERF_INSTANCE_HEADER
- PERF_MULTI_COUNTERS
- PERF_MULTI_INSTANCES
- PERF_STRING_BUFFER_HEADER
- PERF_STRING_COUNTER_HEADER
For information about the functions that are available for working with performance counters, see Performance Counters Functions.
Provider structures
Performance providers use the following structures.
- PERF_COUNTER_IDENTITY
- PERF_COUNTER_INFO
- PERF_COUNTERSET_INFO
- PERF_COUNTERSET_INSTANCE
- PERF_PROVIDER_CONTEXT
Performance extension DLL providers and consumers that use the registry functions to consume counter data use the following structures.
- PERF_COUNTER_BLOCK
- PERF_COUNTER_DEFINITION
- PERF_DATA_BLOCK
- PERF_INSTANCE_DEFINITION
- PERF_OBJECT_TYPE