11#include "ws_symbol_export.h"
254 const char **filter,
char **err);
270 const char *filter_string);
303 unsigned table_index,
319 unsigned table_index,
320 unsigned field_index);
bool(* wmem_foreach_func)(const void *key, void *value, void *userdata)
Function type for processing one node of a tree during a traversal.
Definition wmem_tree.h:389
enum register_stat_group_e register_stat_group_t
WS_DLL_PUBLIC void register_stat_tap_ui(stat_tap_ui *ui, void *userdata)
Definition stat_tap_ui.c:68
WS_DLL_PUBLIC stat_tap_table_ui * stat_tap_by_name(const char *name)
Look up a registered table-based statistics tap UI by its option name.
Definition stat_tap_ui.c:157
struct _tap_param tap_param
Describes a single configurable parameter accepted by a tap statistic.
WS_DLL_PUBLIC void reset_stat_table(stat_tap_table_ui *new_stat)
Reset all tables belonging to a statistics tap UI to their initial state.
Definition stat_tap_ui.c:266
WS_DLL_PUBLIC bool start_requested_stats(void)
Start requested statistics.
Definition stat_tap_ui.c:136
WS_DLL_PUBLIC stat_tap_table * stat_tap_find_table(stat_tap_table_ui *ui, const char *name)
Finds a table by its UI structure and name.
Definition stat_tap_ui.c:199
struct _stat_data_t stat_data_t
Per-tap-instance data passed between the tap engine and the statistics UI.
WS_DLL_PUBLIC void stat_tap_iterate_tables(wmem_foreach_func func, void *user_data)
Iterate over all registered table-based statistics tap UIs.
Definition stat_tap_ui.c:162
param_type
Parameter types for tap statistics dialogs and CLI argument parsing.
Definition stat_tap_ui.h:26
@ PARAM_STRING
Definition stat_tap_ui.h:28
@ PARAM_UINT
Definition stat_tap_ui.h:27
@ PARAM_ENUM
Definition stat_tap_ui.h:29
@ PARAM_FILTER
Definition stat_tap_ui.h:31
@ PARAM_UUID
Definition stat_tap_ui.h:30
WS_DLL_PUBLIC void free_stat_tables(stat_tap_table_ui *new_stat)
Free all of the tables associated with a stat_tap_table_ui.
Definition stat_tap_ui.c:280
struct _stat_tap_ui stat_tap_ui
Registration descriptor for a tap-based statistics dialog or CLI report.
WS_DLL_PUBLIC bool process_stat_cmd_arg(const char *optstr)
Processes a command argument for statistics.
Definition stat_tap_ui.c:88
WS_DLL_PUBLIC stat_tap_table * stat_tap_init_table(const char *name, int num_fields, int num_elements, const char *filter_string)
Allocate and initialise a stat_tap_table.
Definition stat_tap_ui.c:185
stat_tap_table_item_enum
Value type for a cell within a statistics tap table.
Definition stat_tap_ui.h:72
@ TABLE_ITEM_FLOAT
Definition stat_tap_ui.h:77
@ TABLE_ITEM_STRING
Definition stat_tap_ui.h:76
@ TABLE_ITEM_UINT
Definition stat_tap_ui.h:74
@ TABLE_ITEM_INT
Definition stat_tap_ui.h:75
@ TABLE_ITEM_NONE
Definition stat_tap_ui.h:73
@ TABLE_ITEM_ENUM
Definition stat_tap_ui.h:78
WS_DLL_PUBLIC void register_stat_tap_table_ui(stat_tap_table_ui *ui)
Register a table-based statistics tap UI descriptor.
Definition stat_tap_ui.c:152
void stat_tap_init(void)
Initializes the statistics tap system, setting up necessary data structures.
Definition stat_tap_ui.c:61
bool(* stat_tap_init_cb)(const char *opt_arg, void *userdata)
Callback invoked to initialize a tap statistic with its CLI argument string.
Definition stat_tap_ui.h:53
tap_alignment_type
Horizontal alignment for a statistics table column.
Definition stat_tap_ui.h:124
@ TAP_ALIGN_LEFT
Definition stat_tap_ui.h:125
@ TAP_ALIGN_RIGHT
Definition stat_tap_ui.h:126
struct _stat_tap_table stat_tap_table
A single statistics table instance, holding rows of tap-collected data.
WS_DLL_PUBLIC void list_stat_cmd_args(void)
List command-line arguments for requested statistics.
Definition stat_tap_ui.c:127
WS_DLL_PUBLIC void stat_tap_set_field_data(stat_tap_table *stat_table, unsigned table_index, unsigned field_index, stat_tap_table_item_type *field_data)
Set field data for a specific table and field index.
Definition stat_tap_ui.c:254
WS_DLL_PUBLIC void stat_tap_get_filter(stat_tap_table_ui *new_stat, const char *opt_arg, const char **filter, char **err)
Parse the display filter from a statistics option argument string.
Definition stat_tap_ui.c:167
WS_DLL_PUBLIC stat_tap_table_item_type * stat_tap_get_field_data(const stat_tap_table *stat_table, unsigned table_index, unsigned field_index)
Return a pointer to the field value at a given row and column.
Definition stat_tap_ui.c:242
struct _stat_tap_table_item stat_tap_table_item
Schema descriptor for a single column in a statistics tap table.
WS_DLL_PUBLIC void stat_tap_init_table_row(stat_tap_table *stat_table, unsigned table_index, unsigned num_fields, const stat_tap_table_item_type *fields)
Initialise a row in a stat_tap_table with field values.
Definition stat_tap_ui.c:225
struct _stat_tap_table_ui stat_tap_table_ui
Registration descriptor and runtime state for a table-based tap statistics UI.
WS_DLL_PUBLIC void stat_tap_add_table(stat_tap_table_ui *new_stat, stat_tap_table *table)
Adds a new table to the statistics tap.
Definition stat_tap_ui.c:217
struct _stat_tap_table_item_type stat_tap_table_item_type
Represents a single item in a statistics tap table.
Per-tap-instance data passed between the tap engine and the statistics UI.
Definition stat_tap_ui.h:205
void * user_data
Definition stat_tap_ui.h:207
stat_tap_table_ui * stat_tap_data
Definition stat_tap_ui.h:206
Represents a single item in a statistics tap table.
Definition stat_tap_ui.h:89
double float_value
Definition stat_tap_ui.h:101
const char * string_value
Definition stat_tap_ui.h:100
union _stat_tap_table_item_type::@492 value
The primary value of the item.
void * ptr_value
Definition stat_tap_ui.h:117
int int_value
Definition stat_tap_ui.h:99
int enum_value
Definition stat_tap_ui.h:102
union _stat_tap_table_item_type::@493 user_data
Scratch space for dissector use.
unsigned uint_value
Definition stat_tap_ui.h:98
stat_tap_table_item_enum type
Definition stat_tap_ui.h:90
Schema descriptor for a single column in a statistics tap table.
Definition stat_tap_ui.h:133
tap_alignment_type align
Definition stat_tap_ui.h:135
const char * column_name
Definition stat_tap_ui.h:136
stat_tap_table_item_enum type
Definition stat_tap_ui.h:134
const char * field_format
Definition stat_tap_ui.h:137
Registration descriptor and runtime state for a table-based tap statistics UI.
Definition stat_tap_ui.h:156
unsigned refcount
Definition stat_tap_ui.h:198
const char * tap_name
Definition stat_tap_ui.h:159
void(* stat_tap_free_table_item_cb)(stat_tap_table *table, unsigned row, unsigned column, stat_tap_table_item_type *field_data)
Callback invoked to release resources held by a single table cell.
Definition stat_tap_ui.h:183
const char * cli_string
Definition stat_tap_ui.h:160
tap_packet_cb packet_func
Definition stat_tap_ui.h:168
const char * title
Definition stat_tap_ui.h:158
register_stat_group_t group
Definition stat_tap_ui.h:157
stat_tap_table_item * fields
Definition stat_tap_ui.h:194
void(* stat_tap_reset_table_cb)(stat_tap_table *table)
Callback invoked to reset (clear) all rows in a table without freeing its schema.
Definition stat_tap_ui.h:174
size_t nfields
Definition stat_tap_ui.h:193
GArray * tables
Definition stat_tap_ui.h:197
void(* stat_filter_check_cb)(const char *opt_arg, const char **filter, char **err)
Callback giving the dissector a chance to validate or transform the filter string.
Definition stat_tap_ui.h:191
size_t nparams
Definition stat_tap_ui.h:195
tap_param * params
Definition stat_tap_ui.h:196
void(* stat_tap_init_cb)(struct _stat_tap_table_ui *new_stat)
Callback invoked once to allocate and initialize the statistic's tables.
Definition stat_tap_ui.h:166
A single statistics table instance, holding rows of tap-collected data.
Definition stat_tap_ui.h:144
const char * filter_string
Definition stat_tap_ui.h:146
unsigned num_elements
Definition stat_tap_ui.h:148
unsigned num_fields
Definition stat_tap_ui.h:147
const char * title
Definition stat_tap_ui.h:145
stat_tap_table_item_type ** elements
Definition stat_tap_ui.h:149
Registration descriptor for a tap-based statistics dialog or CLI report.
Definition stat_tap_ui.h:59
stat_tap_init_cb tap_init_cb
Definition stat_tap_ui.h:63
const char * cli_string
Definition stat_tap_ui.h:62
tap_param * params
Definition stat_tap_ui.h:65
register_stat_group_t group
Definition stat_tap_ui.h:60
size_t nparams
Definition stat_tap_ui.h:64
const char * title
Definition stat_tap_ui.h:61
Describes a single configurable parameter accepted by a tap statistic.
Definition stat_tap_ui.h:38
bool optional
Definition stat_tap_ui.h:43
param_type type
Definition stat_tap_ui.h:39
const enum_val_t * enum_vals
Definition stat_tap_ui.h:42
const char * name
Definition stat_tap_ui.h:40
const char * title
Definition stat_tap_ui.h:41
Defines a single named value within an enumerated preference or option type.
Definition params.h:16