|
static | LLIST_HEAD (rate_ctr_groups) |
|
static bool | rate_ctrl_group_desc_validate (const struct rate_ctr_group_desc *desc) |
|
static char * | mangle_identifier_ifneeded (const void *ctx, const char *in) |
|
static struct rate_ctr_group_desc * | rate_ctr_group_desc_mangle (void *ctx, const struct rate_ctr_group_desc *desc) |
|
static unsigned int | rate_ctr_get_unused_name_idx (const char *name) |
| Find an unused index for this rate counter group. More...
|
|
struct rate_ctr_group * | rate_ctr_group_alloc (void *ctx, const struct rate_ctr_group_desc *desc, unsigned int idx) |
| Allocate a new group of counters according to description. More...
|
|
void | rate_ctr_group_free (struct rate_ctr_group *grp) |
| Free the memory for the specified group of counters. More...
|
|
struct rate_ctr * | rate_ctr_group_get_ctr (struct rate_ctr_group *grp, unsigned int idx) |
| Get rate counter from group, identified by index idx. More...
|
|
void | rate_ctr_group_set_name (struct rate_ctr_group *grp, const char *name) |
| Set a name for the group of counters be used instead of index value at report time. More...
|
|
void | rate_ctr_add (struct rate_ctr *ctr, int inc) |
| Increment the counter by inc. More...
|
|
int64_t | rate_ctr_difference (struct rate_ctr *ctr) |
| Return the counter difference since the last call to this function. More...
|
|
static void | interval_expired (struct rate_ctr *ctr, enum rate_ctr_intv intv) |
|
static void | rate_ctr_group_intv (struct rate_ctr_group *grp) |
|
static int | rate_ctr_timer_cb (struct osmo_fd *ofd, unsigned int what) |
|
int | rate_ctr_init (void *tall_ctx) |
| Initialize the counter module. More...
|
|
struct rate_ctr_group * | rate_ctr_get_group_by_name_idx (const char *name, const unsigned int idx) |
| Search for counter group based on group name and index. More...
|
|
const struct rate_ctr * | rate_ctr_get_by_name (const struct rate_ctr_group *ctrg, const char *name) |
| Search for counter based on group + name. More...
|
|
int | rate_ctr_for_each_counter (struct rate_ctr_group *ctrg, rate_ctr_handler_t handle_counter, void *data) |
| Iterate over each counter in group and call function. More...
|
|
int | rate_ctr_for_each_group (rate_ctr_group_handler_t handle_group, void *data) |
| Iterate over all counter groups. More...
|
|
void | rate_ctr_reset (struct rate_ctr *ctr) |
| Reset a rate counter back to zero. More...
|
|
void | rate_ctr_group_reset (struct rate_ctr_group *ctrg) |
| Reset all counters in a group. More...
|
|