2 * $Id: ftypes-int.h,v 1.5 2002/01/21 07:37:39 guy Exp $
4 * Ethereal - Network traffic analyzer
5 * By Gerald Combs <gerald@ethereal.com>
6 * Copyright 2001 Gerald Combs
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
26 #include <epan/packet.h>
29 typedef void (*FvalueNewFunc)(fvalue_t*);
30 typedef void (*FvalueFreeFunc)(fvalue_t*);
32 typedef gboolean (*FvalueFromString)(fvalue_t*, char*, LogFunc);
34 typedef void (*FvalueSetFunc)(fvalue_t*, gpointer, gboolean);
35 typedef void (*FvalueSetIntegerFunc)(fvalue_t*, guint32);
36 typedef void (*FvalueSetFloatingFunc)(fvalue_t*, gdouble);
38 typedef gpointer (*FvalueGetFunc)(fvalue_t*);
39 typedef guint32 (*FvalueGetIntegerFunc)(fvalue_t*);
40 typedef double (*FvalueGetFloatingFunc)(fvalue_t*);
42 typedef gboolean (*FvalueCmp)(fvalue_t*, fvalue_t*);
44 typedef guint (*FvalueLen)(fvalue_t*);
45 typedef void (*FvalueSlice)(fvalue_t*, GByteArray *, guint offset, guint length);
49 const char *pretty_name;
51 FvalueNewFunc new_value;
52 FvalueFreeFunc free_value;
53 FvalueFromString val_from_string;
56 FvalueSetFunc set_value;
57 FvalueSetIntegerFunc set_value_integer;
58 FvalueSetFloatingFunc set_value_floating;
61 FvalueGetFunc get_value;
62 FvalueGetIntegerFunc get_value_integer;
63 FvalueGetFloatingFunc get_value_floating;
78 ftype_register(enum ftenum ftype, ftype_t *ft);