Wireshark 4.5.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
uat-int.h
Go to the documentation of this file.
1
16#ifndef __UAT_INT_H__
17#define __UAT_INT_H__
18
19#include <glib.h>
20
21#include "uat.h"
22#include "ws_symbol_export.h"
23
24#ifdef __cplusplus
25extern "C" {
26#endif /* __cplusplus */
27
28typedef struct _uat_fld_rep_t uat_fld_rep_t;
29typedef struct _uat_rep_t uat_rep_t;
30
31typedef void (*uat_rep_fld_free_cb_t)(uat_fld_rep_t*);
32typedef void (*uat_rep_free_cb_t)(uat_rep_t*);
33
34typedef struct _fld_data_t {
35 unsigned colnum;
36 uat_fld_rep_t* rep;
37 uat_rep_fld_free_cb_t free_rep;
39
40struct epan_uat {
41 char* name;
42 size_t record_size;
43 char* filename;
44 bool from_profile;
45 char* help;
46 unsigned flags;
47 void** user_ptr;
48 unsigned* nrows_p;
49 uat_copy_cb_t copy_cb;
50 uat_update_cb_t update_cb;
51 uat_free_cb_t free_cb;
52 uat_post_update_cb_t post_update_cb;
53 uat_reset_cb_t reset_cb;
54
55 uat_field_t* fields;
56 const char** default_values;
57 unsigned ncols;
58 GArray* user_data;
59 GArray* raw_data;
60 GArray* valid_data;
61 bool changed;
62 uat_rep_t* rep;
63 uat_rep_free_cb_t free_rep;
64 bool loaded;
65};
66
67WS_DLL_PUBLIC
68char* uat_get_actual_filename(uat_t* uat, bool for_writing);
69
75WS_DLL_PUBLIC
76void* uat_add_record(uat_t *uat, const void *orig_rec_ptr, bool valid_rec);
77
82WS_DLL_PUBLIC
83void uat_update_record(uat_t *uat, const void *record, bool valid_rec);
84
88WS_DLL_PUBLIC
89void uat_swap(uat_t *uat, unsigned idx_a, unsigned idx_b);
90
94WS_DLL_PUBLIC
95void uat_insert_record_idx(uat_t *uat, unsigned rec_idx, const void *src_record);
96
101WS_DLL_PUBLIC
102void uat_remove_record_idx(uat_t *uat, unsigned rec_idx);
103
109WS_DLL_PUBLIC
110void uat_remove_record_range(uat_t *uat, unsigned rec_idx, unsigned count);
111
115WS_DLL_PUBLIC
116void uat_move_index(uat_t *uat, unsigned old_idx, unsigned new_idx);
117
121WS_DLL_PUBLIC
122void uat_clear(uat_t *uat);
123
129WS_DLL_PUBLIC
130bool uat_save(uat_t *uat, char **error);
131
135void uat_load_all(void);
136
144WS_DLL_PUBLIC
145char *uat_fld_tostr(void *rec, uat_field_t *f);
146
151#define UAT_UPDATE(uat) do { *((uat)->user_ptr) = (void*)((uat)->user_data->data); *((uat)->nrows_p) = (uat)->user_data->len; } while(0)
157#define UAT_INDEX_PTR(uat,idx) (uat->raw_data->data + (uat->record_size * (idx)))
162#define UAT_USER_INDEX_PTR(uat,idx) (uat->user_data->data + (uat->record_size * (idx)))
163
164#ifdef __cplusplus
165}
166#endif /* __cplusplus */
167
168#endif /* __UAT_INT_H__ */
169
170/*
171 * Editor modelines - https://www.wireshark.org/tools/modelines.html
172 *
173 * Local variables:
174 * c-basic-offset: 4
175 * tab-width: 8
176 * indent-tabs-mode: nil
177 * End:
178 *
179 * vi: set shiftwidth=4 tabstop=8 expandtab:
180 * :indentSize=4:tabSize=8:noTabs=true:
181 */
Definition uat-int.h:34
Definition uat.h:234
Definition uat-int.h:40
void ** user_ptr
Definition uat-int.h:47
GArray * raw_data
Definition uat-int.h:59
unsigned * nrows_p
Definition uat-int.h:48
GArray * valid_data
Definition uat-int.h:60
GArray * user_data
Definition uat-int.h:58
WS_DLL_PUBLIC bool uat_save(uat_t *uat, char **error)
Definition uat.c:381
WS_DLL_PUBLIC void uat_update_record(uat_t *uat, const void *record, bool valid_rec)
Definition uat.c:145
WS_DLL_PUBLIC void uat_remove_record_range(uat_t *uat, unsigned rec_idx, unsigned count)
Definition uat.c:217
WS_DLL_PUBLIC void uat_move_index(uat_t *uat, unsigned old_idx, unsigned new_idx)
Definition uat.c:235
WS_DLL_PUBLIC void uat_clear(uat_t *uat)
Definition uat.c:518
WS_DLL_PUBLIC void uat_swap(uat_t *uat, unsigned idx_a, unsigned idx_b)
Definition uat.c:164
void uat_load_all(void)
Definition uat.c:600
WS_DLL_PUBLIC void * uat_add_record(uat_t *uat, const void *orig_rec_ptr, bool valid_rec)
Definition uat.c:117
WS_DLL_PUBLIC char * uat_fld_tostr(void *rec, uat_field_t *f)
Definition uat.c:288
WS_DLL_PUBLIC void uat_remove_record_idx(uat_t *uat, unsigned rec_idx)
Definition uat.c:205
WS_DLL_PUBLIC void uat_insert_record_idx(uat_t *uat, unsigned rec_idx, const void *src_record)
Definition uat.c:186
void *(* uat_copy_cb_t)(void *dest, const void *source, size_t len)
Definition uat.h:87
void(* uat_free_cb_t)(void *record)
Definition uat.h:97
bool(* uat_update_cb_t)(void *record, char **error)
Definition uat.h:125
void(* uat_reset_cb_t)(void)
Definition uat.h:105