Arm MAP Metric Plugin Interface
Metric Plugin Interface for MAP
allinea_metric_plugin_template.h
Go to the documentation of this file.
1 
6 #ifndef ALLINEA_METRIC_PLUGIN_TEMPLATE_H
7 #define ALLINEA_METRIC_PLUGIN_TEMPLATE_H
8 
10 
11 #ifdef __cplusplus
12 extern "C" {
13 #endif
14 
16 
36 int allinea_plugin_initialize(plugin_id_t plugin_id, void* data);
37 
39 
58 int allinea_plugin_cleanup(plugin_id_t plugin_id, void* data);
59 
61 
113 int mymetric_getIntValue(metric_id_t id, struct timespec *currentSampleTime, uint64_t *outValue);
114 
116 
168 int mymetric_getDoubleValue(metric_id_t id, struct timespec *currentSampleTime, double *outValue);
169 
171 
192 int start_profiling(plugin_id_t plugin_id);
193 
195 
216 int stop_profiling(plugin_id_t plugin_id);
217 
218 
219 #ifdef __cplusplus
220 }
221 #endif
222 
223 #endif // ALLINEA_METRIC_PLUGIN_TEMPLATE_H
Types and typedefs used by the Arm MAP metric plugin API.
int stop_profiling(plugin_id_t plugin_id)
Called after the sampler stops sampling.
uintptr_t metric_id_t
Opaque handle to a metric.
Definition: allinea_metric_plugin_types.h:17
int allinea_plugin_cleanup(plugin_id_t plugin_id, void *data)
Cleans a metric plugin being unloaded.
int allinea_plugin_initialize(plugin_id_t plugin_id, void *data)
Initialises a metric plugin.
int start_profiling(plugin_id_t plugin_id)
Called when the sampler is initialised.
uintptr_t plugin_id_t
Opaque handle to a metric plugin.
Definition: allinea_metric_plugin_types.h:15
int mymetric_getIntValue(metric_id_t id, struct timespec *currentSampleTime, uint64_t *outValue)
Example of an integer metric getter function.
int mymetric_getDoubleValue(metric_id_t id, struct timespec *currentSampleTime, double *outValue)
Example of a floating-point metric getter function.