7162c0ea0822cbb2320317407aa1be87d0020f5e
1 #ifndef _BABELTRACE_FORMAT_H
2 #define _BABELTRACE_FORMAT_H
9 * Copyright 2010 - Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
11 * Permission is hereby granted, free of charge, to any person obtaining a copy
12 * of this software and associated documentation files (the "Software"), to deal
13 * in the Software without restriction, including without limitation the rights
14 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15 * copies of the Software, and to permit persons to whom the Software is
16 * furnished to do so, subject to the following conditions:
18 * The above copyright notice and this permission notice shall be included in
19 * all copies or substantial portions of the Software.
28 uint64_t (*uint_read
)(struct stream_pos
*pos
,
29 const struct type_class_integer
*int_class
);
30 int64_t (*int_read
)(struct stream_pos
*pos
,
31 const struct type_class_integer
*int_class
);
32 void (*uint_write
)(struct stream_pos
*pos
,
33 const struct type_class_integer
*int_class
,
35 void (*int_write
)(struct stream_pos
*pos
,
36 const struct type_class_integer
*int_class
,
39 void (*float_copy
)(struct stream_pos
*dest
,
40 struct stream_pos
*src
,
41 const struct type_class_float
*src
);
42 double (*double_read
)(struct stream_pos
*pos
,
43 const struct type_class_float
*float_class
);
44 void (*double_write
)(struct stream_pos
*pos
,
45 const struct type_class_float
*float_class
,
48 void (*string_copy
)(struct stream_pos
*dest
, struct stream_pos
*src
,
49 const struct type_class_string
*string_class
);
50 void (*string_read
)(unsigned char **dest
, struct stream_pos
*src
,
51 const struct type_class_string
*string_class
);
52 void (*string_write
)(struct stream_pos
*dest
, const unsigned char *src
,
53 const struct type_class_string
*string_class
);
54 void (*string_free_temp
)(unsigned char *string
);
56 GQuark (*enum_read
)(struct stream_pos
*pos
,
57 const struct type_class_enum
*src
);
58 void (*enum_write
)(struct stream_pos
*pos
,
59 const struct type_class_enum
*dest
,
61 void (*struct_begin
)(struct stream_pos
*pos
,
62 const struct type_class_struct
*struct_class
);
63 void (*struct_end
)(struct stream_pos
*pos
,
64 const struct type_class_struct
*struct_class
);
65 void (*array_begin
)(struct stream_pos
*pos
,
66 const struct type_class_array
*array_class
);
67 void (*array_end
)(struct stream_pos
*pos
,
68 const struct type_class_array
*array_class
);
69 void (*sequence_begin
)(struct stream_pos
*pos
,
70 const struct type_class_sequence
*sequence_class
);
71 void (*sequence_end
)(struct stream_pos
*pos
,
72 const struct type_class_sequence
*sequence_class
);
75 struct format
*bt_lookup_format(GQuark qname
);
76 int bt_register_format(const struct format
*format
);
78 /* TBD: format unregistration */
80 #endif /* _BABELTRACE_FORMAT_H */
This page took 0.032647 seconds and 4 git commands to generate.