-typedef struct _select_data {
- lttv_attributes *a;
- lttv_key *k;
- void *user_data;
- lttv_key_select select;
-} select_data;
-
-static void select_integer(void *key, void *value, void *user_data);
-static void select_double(void *key, void *value, void *user_data);
-static void select_time(void *key, void *value, void *user_data);
-static void select_pointer(void *key, void *value, void *user_data);
-
-lttv_attributes *lttv_attributes_select(lttv_attributes *a, lttv_key_select f,
- void *user_data)
-{
- select_data *d;
-
- d = g_new(select_data, 1);
- d->a = lttv_attributes_new();
- d->k = lttv_key_new();
- d->user_data = user_data;
- d->select = f;
-
- g_hash_table_foreach(a->ints,select_integer, d);
- g_hash_table_foreach(a->doubles,select_double, d);
- g_hash_table_foreach(a->times,select_time, d);
- g_hash_table_foreach(a->pointers,select_pointer, d);
-}
-
-int lttv_key_select_spec(lttv_key *in, lttv_key *out, void *user_data)