21 #include "ws_symbol_export.h" 27 typedef struct _uat_fld_rep_t uat_fld_rep_t;
28 typedef struct _uat_rep_t uat_rep_t;
30 typedef void (*uat_rep_fld_free_cb_t)(uat_fld_rep_t*);
31 typedef void (*uat_rep_free_cb_t)(uat_rep_t*);
36 uat_rep_fld_free_cb_t free_rep;
43 gboolean from_profile;
48 uat_copy_cb_t copy_cb;
49 uat_update_cb_t update_cb;
50 uat_free_cb_t free_cb;
51 uat_post_update_cb_t post_update_cb;
52 uat_reset_cb_t reset_cb;
61 uat_rep_free_cb_t free_rep;
67 gchar* uat_get_actual_filename(
uat_t* uat, gboolean for_writing);
75 void* uat_add_record(
uat_t *uat,
const void *orig_rec_ptr, gboolean valid_rec);
82 void uat_update_record(
uat_t *uat,
const void *record, gboolean valid_rec);
88 void uat_swap(
uat_t *uat, guint idx_a, guint idx_b);
94 void uat_insert_record_idx(
uat_t *uat, guint rec_idx,
const void *src_record);
100 void uat_remove_record_idx(
uat_t *uat, guint rec_idx);
106 void uat_move_index(
uat_t *uat, guint old_idx, guint new_idx);
112 void uat_clear(
uat_t *uat);
120 gboolean uat_save(
uat_t *uat,
char **error);
125 void uat_load_all(
void);
137 #define UAT_UPDATE(uat) do { *((uat)->user_ptr) = (void*)((uat)->user_data->data); *((uat)->nrows_p) = (uat)->user_data->len; } while(0) 143 #define UAT_INDEX_PTR(uat,idx) (uat->raw_data->data + (uat->record_size * (idx))) 148 #define UAT_USER_INDEX_PTR(uat,idx) (uat->user_data->data + (uat->record_size * (idx))) void ** user_ptr
Definition: uat-int.h:46
GArray * raw_data
Definition: uat-int.h:57
GArray * user_data
Definition: uat-int.h:56
GArray * valid_data
Definition: uat-int.h:58
guint * nrows_p
Definition: uat-int.h:47