1 #ifndef _BABELTRACE_FORMAT_H
2 #define _BABELTRACE_FORMAT_H
9 * Copyright (c) 2010 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
11 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Lesser General Public
13 * License as published by the Free Software Foundation; either
14 * version 2.1 of the License, or (at your option) any later version.
16 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Lesser General Public License for more details.
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this library; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
32 uint64_t (*uint_read
)(struct stream_pos
*pos
,
33 const struct type_class_integer
*int_class
);
34 int64_t (*int_read
)(struct stream_pos
*pos
,
35 const struct type_class_integer
*int_class
);
36 void (*uint_write
)(struct stream_pos
*pos
,
37 const struct type_class_integer
*int_class
,
39 void (*int_write
)(struct stream_pos
*pos
,
40 const struct type_class_integer
*int_class
,
43 uint64_t (*bitfield_unsigned_read
)(struct stream_pos
*pos
,
44 const struct type_class_bitfield
*bitfield_class
);
45 int64_t (*bitfield_signed_read
)(struct stream_pos
*pos
,
46 const struct type_class_bitfield
*bitfield_class
);
47 void (*bitfield_unsigned_write
)(struct stream_pos
*pos
,
48 const struct type_class_bitfield
*bitfield_class
,
50 void (*bitfield_signed_write
)(struct stream_pos
*pos
,
51 const struct type_class_bitfield
*bitfield_class
,
54 void (*float_copy
)(struct stream_pos
*dest
,
55 struct stream_pos
*src
,
56 const struct type_class_float
*src
);
57 double (*double_read
)(struct stream_pos
*pos
,
58 const struct type_class_float
*float_class
);
59 void (*double_write
)(struct stream_pos
*pos
,
60 const struct type_class_float
*float_class
,
63 void (*string_copy
)(struct stream_pos
*dest
, struct stream_pos
*src
,
64 const struct type_class_string
*string_class
);
65 void (*string_read
)(unsigned char **dest
, struct stream_pos
*src
,
66 const struct type_class_string
*string_class
);
67 void (*string_write
)(struct stream_pos
*dest
, const unsigned char *src
,
68 const struct type_class_string
*string_class
);
69 void (*string_free_temp
)(unsigned char *string
);
71 GQuark (*enum_read
)(struct stream_pos
*pos
,
72 const struct type_class_enum
*src
);
73 void (*enum_write
)(struct stream_pos
*pos
,
74 const struct type_class_enum
*dest
,
79 struct format
*bt_lookup_format(GQuark qname
);
80 int bt_register_format(const struct format
*format
);
82 /* TBD: format unregistration */
84 #endif /* _BABELTRACE_FORMAT_H */
This page took 0.032322 seconds and 5 git commands to generate.