X-Git-Url: https://git.efficios.com/?a=blobdiff_plain;ds=sidebyside;f=include%2Fbabeltrace%2Fctf-writer%2Fwriter-internal.h;h=3fa03b5953cc33bcdd5145ffe5edeb3fcbfe2a0e;hb=1c822dfb58d831ad298b704ecaea181c16d16f3f;hp=5c682dd857dac84ec577cd31852c7ec0364c0f03;hpb=09c9a6e8d4ece8431f4fd305efac21ea054ccc97;p=babeltrace.git diff --git a/include/babeltrace/ctf-writer/writer-internal.h b/include/babeltrace/ctf-writer/writer-internal.h index 5c682dd8..3fa03b59 100644 --- a/include/babeltrace/ctf-writer/writer-internal.h +++ b/include/babeltrace/ctf-writer/writer-internal.h @@ -4,7 +4,7 @@ /* * BabelTrace - CTF Writer: Writer internal * - * Copyright 2013 EfficiOS Inc. + * Copyright 2013, 2014 Jérémie Galarneau * * Author: Jérémie Galarneau * @@ -27,61 +27,24 @@ * SOFTWARE. */ -#include #include -#include -#include #include #include #include #include -#include - -enum field_type_alias { - FIELD_TYPE_ALIAS_UINT5_T = 0, - FIELD_TYPE_ALIAS_UINT8_T, - FIELD_TYPE_ALIAS_UINT16_T, - FIELD_TYPE_ALIAS_UINT27_T, - FIELD_TYPE_ALIAS_UINT32_T, - FIELD_TYPE_ALIAS_UINT64_T, - NR_FIELD_TYPE_ALIAS, -}; +#include +#include struct bt_ctf_writer { - struct bt_ctf_ref ref_count; + struct bt_object base; int frozen; /* Protects attributes that can't be changed mid-trace */ + struct bt_ctf_trace *trace; GString *path; - uuid_t uuid; - int byte_order; int trace_dir_fd; int metadata_fd; - GPtrArray *environment; /* Array of pointers to environment_variable */ - GPtrArray *clocks; /* Array of pointers to bt_ctf_clock */ - GPtrArray *stream_classes; /* Array of pointers to bt_ctf_stream_class */ - GPtrArray *streams; /* Array of pointers to bt_ctf_stream */ - struct bt_ctf_field_type *trace_packet_header_type; - struct bt_ctf_field *trace_packet_header; - uint32_t next_stream_id; -}; - -struct environment_variable { - GString *name, *value; -}; - -struct metadata_context { - GString *string; - GString *field_name; - unsigned int current_indentation_level; }; -/* Checks that the string does not contain a reserved keyword */ -BT_HIDDEN -int validate_identifier(const char *string); - -BT_HIDDEN -const char *get_byte_order_string(int byte_order); - BT_HIDDEN -struct bt_ctf_field_type *get_field_type(enum field_type_alias alias); +void bt_ctf_writer_freeze(struct bt_ctf_writer *writer); #endif /* BABELTRACE_CTF_WRITER_WRITER_INTERNAL_H */