lib: make discarded events/packets support and clock snapshots optional
[babeltrace.git] / include / babeltrace / trace-ir / stream-class-internal.h
index f3f8a6265b0935c8173a74c05c978e3e1e6b2238..b996d96906a92443ba087a39f97a701878f92305 100644 (file)
@@ -2,12 +2,9 @@
 #define BABELTRACE_TRACE_IR_STREAM_CLASS_INTERNAL_H
 
 /*
- * BabelTrace - Trace IR: Stream class internal
- *
+ * Copyright 2017-2018 Philippe Proulx <pproulx@efficios.com>
  * Copyright 2013, 2014 Jérémie Galarneau <jeremie.galarneau@efficios.com>
  *
- * Author: Jérémie Galarneau <jeremie.galarneau@efficios.com>
- *
  * Permission is hereby granted, free of charge, to any person obtaining a copy
  * of this software and associated documentation files (the "Software"), to deal
  * in the Software without restriction, including without limitation the rights
@@ -29,7 +26,7 @@
 
 #include <babeltrace/assert-internal.h>
 #include <babeltrace/common-internal.h>
-#include <babeltrace/trace-ir/field-types-internal.h>
+#include <babeltrace/trace-ir/field-class-internal.h>
 #include <babeltrace/trace-ir/utils-internal.h>
 #include <babeltrace/trace-ir/stream-class.h>
 #include <babeltrace/object-internal.h>
@@ -51,21 +48,19 @@ struct bt_stream_class {
        uint64_t id;
        bool assigns_automatic_event_class_id;
        bool assigns_automatic_stream_id;
-       bool packets_have_discarded_event_counter_snapshot;
-       bool packets_have_packet_counter_snapshot;
-       bool packets_have_default_beginning_cv;
-       bool packets_have_default_end_cv;
-       struct bt_field_type *packet_context_ft;
-       struct bt_field_type *event_header_ft;
-       struct bt_field_type *event_common_context_ft;
+       bool packets_have_default_beginning_clock_snapshot;
+       bool packets_have_default_end_clock_snapshot;
+       bool supports_discarded_events;
+       bool supports_discarded_packets;
+       bool discarded_events_have_default_clock_snapshots;
+       bool discarded_packets_have_default_clock_snapshots;
+       struct bt_field_class *packet_context_fc;
+       struct bt_field_class *event_common_context_fc;
        struct bt_clock_class *default_clock_class;
 
        /* Array of `struct bt_event_class *` */
        GPtrArray *event_classes;
 
-       /* Pool of `struct bt_field_wrapper *` */
-       struct bt_object_pool event_header_field_pool;
-
        /* Pool of `struct bt_field_wrapper *` */
        struct bt_object_pool packet_context_field_pool;
 
@@ -73,7 +68,7 @@ struct bt_stream_class {
 };
 
 BT_HIDDEN
-void _bt_stream_class_freeze(struct bt_stream_class *stream_class);
+void _bt_stream_class_freeze(const struct bt_stream_class *stream_class);
 
 #ifdef BT_DEV_MODE
 # define bt_stream_class_freeze                _bt_stream_class_freeze
@@ -82,8 +77,8 @@ void _bt_stream_class_freeze(struct bt_stream_class *stream_class);
 #endif
 
 static inline
-struct bt_trace *bt_stream_class_borrow_trace_inline(
-               struct bt_stream_class *stream_class)
+struct bt_trace_class *bt_stream_class_borrow_trace_class_inline(
+               const struct bt_stream_class *stream_class)
 {
        BT_ASSERT(stream_class);
        return (void *) bt_object_borrow_parent(&stream_class->base);
This page took 0.024214 seconds and 4 git commands to generate.