1 #ifndef BABELTRACE2_GRAPH_COMPONENT_CLASS_H
2 #define BABELTRACE2_GRAPH_COMPONENT_CLASS_H
26 #ifndef __BT_IN_BABELTRACE_H
27 # error "Please include <babeltrace2/babeltrace.h> instead."
30 #include <babeltrace2/types.h>
461 #define BT_COMPONENT_CLASS_PUT_REF_AND_RESET(_component_class) \
463 bt_component_class_put_ref(_component_class); \
464 (_component_class) = NULL; \
494 #define BT_COMPONENT_CLASS_MOVE_REF(_dst, _src) \
496 bt_component_class_put_ref(_dst); \
589 #define BT_COMPONENT_CLASS_SOURCE_PUT_REF_AND_RESET(_component_class) \
591 bt_component_class_source_put_ref(_component_class); \
592 (_component_class) = NULL; \
621 #define BT_COMPONENT_CLASS_SOURCE_MOVE_REF(_dst, _src) \
623 bt_component_class_source_put_ref(_dst); \
716 #define BT_COMPONENT_CLASS_FILTER_PUT_REF_AND_RESET(_component_class) \
718 bt_component_class_filter_put_ref(_component_class); \
719 (_component_class) = NULL; \
748 #define BT_COMPONENT_CLASS_FILTER_MOVE_REF(_dst, _src) \
750 bt_component_class_filter_put_ref(_dst); \
843 #define BT_COMPONENT_CLASS_SINK_PUT_REF_AND_RESET(_component_class) \
845 bt_component_class_sink_put_ref(_component_class); \
846 (_component_class) = NULL; \
875 #define BT_COMPONENT_CLASS_SINK_MOVE_REF(_dst, _src) \
877 bt_component_class_sink_put_ref(_dst); \
struct bt_component_class_source bt_component_class_source
Source component class.
Definition: types.h:42
void bt_component_class_filter_put_ref(const bt_component_class_filter *component_class)
Decrements the reference count of the filter component class component_class.
const char * bt_component_class_get_description(const bt_component_class *component_class)
Returns the description of the component class component_class.
void bt_component_class_filter_get_ref(const bt_component_class_filter *component_class)
Increments the reference count of the filter component class component_class.
static bt_bool bt_component_class_is_filter(const bt_component_class *component_class)
Returns whether or not the component class component_class is a filter component class.
Definition: component-class.h:298
struct bt_component_class_filter bt_component_class_filter
Filter component class.
Definition: types.h:40
void bt_component_class_source_get_ref(const bt_component_class_source *component_class)
Increments the reference count of the source component class component_class.
void bt_component_class_sink_put_ref(const bt_component_class_sink *component_class)
Decrements the reference count of the sink component class component_class.
static const bt_component_class * bt_component_class_filter_as_component_class_const(const bt_component_class_filter *component_class)
Upcasts the filter component class component_class to the common bt_component_class type...
Definition: component-class.h:652
static const bt_component_class * bt_component_class_sink_as_component_class_const(const bt_component_class_sink *component_class)
Upcasts the sink component class component_class to the common bt_component_class type...
Definition: component-class.h:779
struct bt_component_class bt_component_class
Component class.
Definition: types.h:39
bt_component_class_type
Component class type enumerators.
Definition: component-class.h:214
static const bt_component_class * bt_component_class_source_as_component_class_const(const bt_component_class_source *component_class)
Upcasts the source component class component_class to the common bt_component_class type...
Definition: component-class.h:525
void bt_component_class_put_ref(const bt_component_class *component_class)
Decrements the reference count of the component class component_class.
struct bt_component_class_sink bt_component_class_sink
Sink component class.
Definition: types.h:41
int bt_bool
Babeltrace 2 boolean type.
Definition: types.h:140
Filter component class.
Definition: component-class.h:225
const char * bt_component_class_get_name(const bt_component_class *component_class)
Returns the name of the component class component_class.
Source component class.
Definition: component-class.h:219
void bt_component_class_sink_get_ref(const bt_component_class_sink *component_class)
Increments the reference count of the sink component class component_class.
void bt_component_class_get_ref(const bt_component_class *component_class)
Increments the reference count of the component class component_class.
static bt_bool bt_component_class_is_source(const bt_component_class *component_class)
Returns whether or not the component class component_class is a source component class.
Definition: component-class.h:274
void bt_component_class_source_put_ref(const bt_component_class_source *component_class)
Decrements the reference count of the source component class component_class.
Sink component class.
Definition: component-class.h:231
const char * bt_component_class_get_help(const bt_component_class *component_class)
Returns the help text of the component class component_class.
bt_component_class_type bt_component_class_get_type(const bt_component_class *component_class)
Returns the type enumerator of the component class component_class.
static bt_bool bt_component_class_is_sink(const bt_component_class *component_class)
Returns whether or not the component class component_class is a sink component class.
Definition: component-class.h:322