|
libosmocore 1.11.0.52-28973f
Osmocom core library
|
Common routines regarding counter handling. More...
#include <osmocom/core/defs.h>Go to the source code of this file.
Data Structures | |
| struct | osmo_counter |
| Structure representing a single counter. More... | |
Functions | |
| static void | osmo_counter_dec (struct osmo_counter *ctr) |
| Decrement given counter by one. More... | |
| static void | osmo_counter_inc (struct osmo_counter *ctr) |
| Increment counter by one. More... | |
| static unsigned long | osmo_counter_get (struct osmo_counter *ctr) |
| Get current value of counter. More... | |
| static void | osmo_counter_reset (struct osmo_counter *ctr) |
| Reset current value of counter to 0. More... | |
| struct osmo_counter * | osmo_counter_alloc (const char *name) OSMO_DEPRECATED("Implement as osmo_stat_item instead") |
| Allocate a new counter with given name. More... | |
| void | osmo_counter_free (struct osmo_counter *ctr) OSMO_DEPRECATED("Implement as osmo_stat_item instead") |
| Release/Destroy a given counter. More... | |
| int | osmo_counters_for_each (int(*handle_counter)(struct osmo_counter *, void *), void *data) |
| Iterate over all counters; call handle_cunter call-back for each. More... | |
| int | osmo_counters_count (void) |
| Counts the registered counter. More... | |
| struct osmo_counter * | osmo_counter_get_by_name (const char *name) |
| Find a counter by its name. More... | |
| int | osmo_counter_difference (struct osmo_counter *ctr) |
| Compute difference between current and previous counter value. More... | |
Common routines regarding counter handling.
| struct osmo_counter * osmo_counter_alloc | ( | const char * | name | ) |
Allocate a new counter with given name.
Allocates from tall_ctr_ctx
| [in] | name | Human-readable string name for the counter |
References osmo_counter::list, llist_add_tail(), name, osmo_counter::name, and tall_ctr_ctx.
|
inlinestatic |
Decrement given counter by one.
| [in] | ctr | Counter that's to be decremented |
| int osmo_counter_difference | ( | struct osmo_counter * | ctr | ) |
Compute difference between current and previous counter value.
| [in] | ctr | Counter of which the difference is to be computed |
References osmo_counter::previous, and osmo_counter::value.
Referenced by handle_counter().
| void osmo_counter_free | ( | struct osmo_counter * | ctr | ) |
Release/Destroy a given counter.
| [in] | ctr | Counter to be destroyed |
References osmo_counter::list, and llist_del().
|
inlinestatic |
Get current value of counter.
| struct osmo_counter * osmo_counter_get_by_name | ( | const char * | name | ) |
Find a counter by its name.
| [in] | name | Name used to look-up/search counter |
References list, llist_for_each_entry, name, and osmo_counter::name.
|
inlinestatic |
Increment counter by one.
| [in] | Counter | that's to be incremented |
|
inlinestatic |
Reset current value of counter to 0.
| int osmo_counters_count | ( | void | ) |
| int osmo_counters_for_each | ( | int(*)(struct osmo_counter *, void *) | handle_counter, |
| void * | data | ||
| ) |
Iterate over all counters; call handle_cunter call-back for each.
| [in] | handle_counter | Call-back to be called for each counter; aborts if rc < 0 |
| [in] | data | Opaque data passed through to handle_counter function |
References data, handle_counter(), list, and llist_for_each_entry.
Referenced by osmo_stats_report().