Babeltrace 2 C API 2.0.6
Open-source trace manipulation framework
Loading...
Searching...
No Matches
component-class-dev.h
1#ifndef BABELTRACE2_GRAPH_COMPONENT_CLASS_DEV_H
2#define BABELTRACE2_GRAPH_COMPONENT_CLASS_DEV_H
3
4/*
5 * Copyright (c) 2010-2019 EfficiOS Inc. and Linux Foundation
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 * SOFTWARE.
24 */
25
26#ifndef __BT_IN_BABELTRACE_H
27# error "Please include <babeltrace2/babeltrace.h> instead."
28#endif
29
30#include <babeltrace2/types.h>
31#include <babeltrace2/logging.h>
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
534
562 bt_self_component_sink *self_component);
563
581 bt_self_component_source *self_component);
582
600 bt_self_component_filter *self_component);
601
619 bt_self_component_sink *self_component);
620
647
701 bt_self_component_class_source *self_component_class,
702 const bt_value *params, void *initialize_method_data,
703 bt_logging_level logging_level,
704 bt_integer_range_set_unsigned *supported_versions);
705
706
760 bt_self_component_class_filter *source_component_class,
761 const bt_value *params, void *initialize_method_data,
762 bt_logging_level logging_level,
763 bt_integer_range_set_unsigned *supported_versions);
764
818 bt_self_component_class_sink *source_component_class,
819 const bt_value *params, void *initialize_method_data,
820 bt_logging_level logging_level,
821 bt_integer_range_set_unsigned *supported_versions);
822
847
872 bt_self_component_sink *self_component);
873
900
944 bt_self_component_source *self_component,
946 const bt_value *params, void *initialize_method_data);
947
991 bt_self_component_filter *self_component,
993 const bt_value *params, void *initialize_method_data);
994
1039 bt_self_component_sink *self_component,
1041 const bt_value *params, void *initialize_method_data);
1042
1070
1102 bt_self_component_source *self_component,
1104 const bt_port_input *other_port);
1105
1137 bt_self_component_filter *self_component,
1139 const bt_port_output *other_port);
1140
1172 bt_self_component_filter *self_component,
1174 const bt_port_input *other_port);
1175
1207 bt_self_component_sink *self_component,
1209 const bt_port_output *other_port);
1210
1249
1310 bt_self_component_class_source *self_component_class,
1311 bt_private_query_executor *query_executor,
1312 const char *object_name, const bt_value *params,
1313 void *method_data, const bt_value **result);
1314
1375 bt_self_component_class_filter *self_component_class,
1376 bt_private_query_executor *query_executor,
1377 const char *object_name, const bt_value *params,
1378 void *method_data, const bt_value **result);
1379
1440 bt_self_component_class_sink *self_component_class,
1441 bt_private_query_executor *query_executor,
1442 const char *object_name, const bt_value *params,
1443 void *method_data, const bt_value **result);
1444
1491extern
1493 const char *name,
1494 bt_message_iterator_class *message_iterator_class);
1495
1535extern
1537 const char *name,
1538 bt_message_iterator_class *message_iterator_class);
1539
1575extern
1577 const char *name,
1579
1604
1632 const char *description);
1633
1651
1678 bt_component_class *component_class,
1679 const char *help_text);
1680
1700
1723 bt_component_class_source *component_class,
1725
1748 bt_component_class_filter *component_class,
1750
1771extern
1774 bt_component_class_sink *component_class,
1776
1800 bt_component_class_source *component_class,
1802
1826 bt_component_class_filter *component_class,
1828
1852 bt_component_class_sink *component_class,
1854
1877extern
1880 bt_component_class_sink *component_class,
1882
1905 bt_component_class_source *component_class,
1907
1930 bt_component_class_filter *component_class,
1932
1953extern
1956 bt_component_class_sink *component_class,
1958
1983 bt_component_class_source *component_class,
1985
2010 bt_component_class_filter *component_class,
2012
2037 bt_component_class_filter *component_class,
2039
2062extern
2065 bt_component_class_sink *component_class,
2067
2090 bt_component_class_source *component_class,
2092
2115 bt_component_class_filter *component_class,
2117
2138extern
2141 bt_component_class_sink *component_class,
2143
2166static inline
2168 bt_component_class_source *component_class)
2169{
2170 return __BT_UPCAST(bt_component_class, component_class);
2171}
2172
2188static inline
2190 bt_component_class_filter *component_class)
2191{
2192 return __BT_UPCAST(bt_component_class, component_class);
2193}
2194
2210static inline
2212 bt_component_class_sink *component_class)
2213{
2214 return __BT_UPCAST(bt_component_class, component_class);
2215}
2216
2221#ifdef __cplusplus
2222}
2223#endif
2224
2225#endif /* BABELTRACE2_GRAPH_COMPONENT_CLASS_DEV_H */
bt_component_class_initialize_method_status(* bt_component_class_source_initialize_method)(bt_self_component_source *self_component, bt_self_component_source_configuration *configuration, const bt_value *params, void *initialize_method_data)
Source component initialization method.
Definition component-class-dev.h:943
bt_component_class_set_method_status bt_component_class_sink_set_input_port_connected_method(bt_component_class_sink *component_class, bt_component_class_sink_input_port_connected_method method)
Sets the optional "input port connected" method of the sink component class component_class to method...
bt_component_class_set_help_status
Status codes for bt_component_class_set_help().
Definition component-class-dev.h:1638
bt_component_class_set_method_status bt_component_class_sink_set_initialize_method(bt_component_class_sink *component_class, bt_component_class_sink_initialize_method method)
Sets the optional initialization method of the sink component class component_class to method.
bt_component_class_get_supported_mip_versions_method_status(* bt_component_class_filter_get_supported_mip_versions_method)(bt_self_component_class_filter *source_component_class, const bt_value *params, void *initialize_method_data, bt_logging_level logging_level, bt_integer_range_set_unsigned *supported_versions)
Filter component class "get supported Message Interchange Protocol versions" method.
Definition component-class-dev.h:759
void(* bt_component_class_filter_finalize_method)(bt_self_component_filter *self_component)
Filter component finalization method.
Definition component-class-dev.h:599
void(* bt_component_class_source_finalize_method)(bt_self_component_source *self_component)
Source component finalization method.
Definition component-class-dev.h:580
bt_component_class_set_method_status bt_component_class_sink_set_graph_is_configured_method(bt_component_class_sink *component_class, bt_component_class_sink_graph_is_configured_method method)
Sets the "graph is configured" method of the sink component class component_class to method.
bt_component_class_sink_consume_method_status
Status codes for bt_component_class_sink_consume_method.
Definition component-class-dev.h:503
bt_component_class_initialize_method_status(* bt_component_class_filter_initialize_method)(bt_self_component_filter *self_component, bt_self_component_filter_configuration *configuration, const bt_value *params, void *initialize_method_data)
Filter component initialization method.
Definition component-class-dev.h:990
bt_component_class_port_connected_method_status(* bt_component_class_filter_output_port_connected_method)(bt_self_component_filter *self_component, bt_self_component_port_output *self_port, const bt_port_input *other_port)
Filter component "output port connected" method.
Definition component-class-dev.h:1171
bt_component_class_initialize_method_status(* bt_component_class_sink_initialize_method)(bt_self_component_sink *self_component, bt_self_component_sink_configuration *configuration, const bt_value *params, void *initialize_method_data)
Sink component initialization method.
Definition component-class-dev.h:1038
bt_component_class_port_connected_method_status
Status codes for bt_component_class_source_output_port_connected_method, bt_component_class_filter_in...
Definition component-class-dev.h:1051
bt_component_class_get_supported_mip_versions_method_status(* bt_component_class_sink_get_supported_mip_versions_method)(bt_self_component_class_sink *source_component_class, const bt_value *params, void *initialize_method_data, bt_logging_level logging_level, bt_integer_range_set_unsigned *supported_versions)
Sink component class "get supported Message Interchange Protocol versions" method.
Definition component-class-dev.h:817
bt_component_class_set_method_status bt_component_class_filter_set_initialize_method(bt_component_class_filter *component_class, bt_component_class_filter_initialize_method method)
Sets the optional initialization method of the filter component class component_class to method.
bt_component_class_set_help_status bt_component_class_set_help(bt_component_class *component_class, const char *help_text)
Sets the help text of the component class component_class to a copy of help_text.
bt_component_class_source * bt_component_class_source_create(const char *name, bt_message_iterator_class *message_iterator_class)
Creates a source component class named name and having the message iterator class message_iterator_cl...
bt_component_class_sink_graph_is_configured_method_status
Status codes for bt_component_class_sink_graph_is_configured_method.
Definition component-class-dev.h:828
bt_component_class_set_method_status bt_component_class_source_set_get_supported_mip_versions_method(bt_component_class_source *component_class, bt_component_class_source_get_supported_mip_versions_method method)
Sets the "get supported Message Interchange Protocol versions" method of the source component class c...
bt_component_class_sink_graph_is_configured_method_status(* bt_component_class_sink_graph_is_configured_method)(bt_self_component_sink *self_component)
Sink component "graph is configured" method.
Definition component-class-dev.h:871
bt_component_class_set_method_status bt_component_class_filter_set_finalize_method(bt_component_class_filter *component_class, bt_component_class_filter_finalize_method method)
Sets the optional finalization method of the filter component class component_class to method.
bt_component_class_port_connected_method_status(* bt_component_class_filter_input_port_connected_method)(bt_self_component_filter *self_component, bt_self_component_port_input *self_port, const bt_port_output *other_port)
Filter component "input port connected" method.
Definition component-class-dev.h:1136
bt_component_class_query_method_status
Status codes for bt_component_class_source_query_method, bt_component_class_filter_query_method,...
Definition component-class-dev.h:1218
static bt_component_class * bt_component_class_filter_as_component_class(bt_component_class_filter *component_class)
Upcasts the filter component class component_class to the common bt_component_class type.
Definition component-class-dev.h:2189
bt_component_class_set_method_status bt_component_class_sink_set_finalize_method(bt_component_class_sink *component_class, bt_component_class_sink_finalize_method method)
Sets the optional finalization method of the sink component class component_class to method.
bt_component_class_filter * bt_component_class_filter_create(const char *name, bt_message_iterator_class *message_iterator_class)
Creates a filter component class named name and having the message iterator class message_iterator_cl...
bt_component_class_set_description_status
Status codes for bt_component_class_set_description().
Definition component-class-dev.h:1591
bt_component_class_get_supported_mip_versions_method_status(* bt_component_class_source_get_supported_mip_versions_method)(bt_self_component_class_source *self_component_class, const bt_value *params, void *initialize_method_data, bt_logging_level logging_level, bt_integer_range_set_unsigned *supported_versions)
Source component class "get supported Message Interchange Protocol versions" method.
Definition component-class-dev.h:700
bt_component_class_set_method_status
Status code for the bt_component_class_*_set_*_method() functions.
Definition component-class-dev.h:1693
bt_component_class_sink * bt_component_class_sink_create(const char *name, bt_component_class_sink_consume_method consume_method)
Creates a sink component class named name and having the consuming method consume_method.
bt_component_class_query_method_status(* bt_component_class_filter_query_method)(bt_self_component_class_filter *self_component_class, bt_private_query_executor *query_executor, const char *object_name, const bt_value *params, void *method_data, const bt_value **result)
Filter component class query method.
Definition component-class-dev.h:1374
bt_component_class_set_method_status bt_component_class_source_set_query_method(bt_component_class_source *component_class, bt_component_class_source_query_method method)
Sets the optional query method of the source component class component_class to method.
bt_component_class_query_method_status(* bt_component_class_sink_query_method)(bt_self_component_class_sink *self_component_class, bt_private_query_executor *query_executor, const char *object_name, const bt_value *params, void *method_data, const bt_value **result)
Sink component class query method.
Definition component-class-dev.h:1439
bt_component_class_set_method_status bt_component_class_source_set_finalize_method(bt_component_class_source *component_class, bt_component_class_source_finalize_method method)
Sets the optional finalization method of the source component class component_class to method.
static bt_component_class * bt_component_class_sink_as_component_class(bt_component_class_sink *component_class)
Upcasts the sink component class component_class to the common bt_component_class type.
Definition component-class-dev.h:2211
bt_component_class_set_method_status bt_component_class_sink_set_query_method(bt_component_class_sink *component_class, bt_component_class_sink_query_method method)
Sets the optional query method of the sink component class component_class to method.
bt_component_class_initialize_method_status
Status codes for bt_component_class_source_initialize_method, bt_component_class_filter_initialize_me...
Definition component-class-dev.h:881
bt_component_class_set_method_status bt_component_class_filter_set_get_supported_mip_versions_method(bt_component_class_filter *component_class, bt_component_class_filter_get_supported_mip_versions_method method)
Sets the "get supported Message Interchange Protocol versions" method of the filter component class c...
bt_component_class_port_connected_method_status(* bt_component_class_sink_input_port_connected_method)(bt_self_component_sink *self_component, bt_self_component_port_input *self_port, const bt_port_output *other_port)
Sink component "input port connected" method.
Definition component-class-dev.h:1206
bt_component_class_get_supported_mip_versions_method_status
Status codes for bt_component_class_source_get_supported_mip_versions_method, bt_component_class_filt...
Definition component-class-dev.h:628
bt_component_class_set_method_status bt_component_class_source_set_initialize_method(bt_component_class_source *component_class, bt_component_class_source_initialize_method method)
Sets the optional initialization method of the source component class component_class to method.
bt_component_class_set_method_status bt_component_class_sink_set_get_supported_mip_versions_method(bt_component_class_sink *component_class, bt_component_class_sink_get_supported_mip_versions_method method)
Sets the "get supported Message Interchange Protocol versions" method of the sink component class com...
bt_component_class_set_method_status bt_component_class_filter_set_output_port_connected_method(bt_component_class_filter *component_class, bt_component_class_filter_output_port_connected_method method)
Sets the optional "output port connected" method of the filter component class component_class to met...
void(* bt_component_class_sink_finalize_method)(bt_self_component_sink *self_component)
Sink component finalization method.
Definition component-class-dev.h:618
bt_component_class_port_connected_method_status(* bt_component_class_source_output_port_connected_method)(bt_self_component_source *self_component, bt_self_component_port_output *self_port, const bt_port_input *other_port)
Source component "output port connected" method.
Definition component-class-dev.h:1101
bt_component_class_set_method_status bt_component_class_filter_set_query_method(bt_component_class_filter *component_class, bt_component_class_filter_query_method method)
Sets the optional query method of the filter component class component_class to method.
static bt_component_class * bt_component_class_source_as_component_class(bt_component_class_source *component_class)
Upcasts the source component class component_class to the common bt_component_class type.
Definition component-class-dev.h:2167
bt_component_class_set_method_status bt_component_class_filter_set_input_port_connected_method(bt_component_class_filter *component_class, bt_component_class_filter_input_port_connected_method method)
Sets the optional "input port connected" method of the filter component class component_class to meth...
bt_component_class_set_description_status bt_component_class_set_description(bt_component_class *component_class, const char *description)
Sets the description of the component class component_class to a copy of description.
bt_component_class_sink_consume_method_status(* bt_component_class_sink_consume_method)(bt_self_component_sink *self_component)
Sink component consuming method.
Definition component-class-dev.h:561
bt_component_class_query_method_status(* bt_component_class_source_query_method)(bt_self_component_class_source *self_component_class, bt_private_query_executor *query_executor, const char *object_name, const bt_value *params, void *method_data, const bt_value **result)
Source component class query method.
Definition component-class-dev.h:1309
bt_component_class_set_method_status bt_component_class_source_set_output_port_connected_method(bt_component_class_source *component_class, bt_component_class_source_output_port_connected_method method)
Sets the optional "output port connected" method of the source component class component_class to met...
@ BT_COMPONENT_CLASS_SET_HELP_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:1649
@ BT_COMPONENT_CLASS_SET_HELP_STATUS_OK
Success.
Definition component-class-dev.h:1643
@ BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR
User error.
Definition component-class-dev.h:532
@ BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_END
Sink component is finished processing.
Definition component-class-dev.h:514
@ BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_AGAIN
Try again.
Definition component-class-dev.h:520
@ BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:526
@ BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:508
@ BT_COMPONENT_CLASS_PORT_CONNECTED_METHOD_STATUS_ERROR
User error.
Definition component-class-dev.h:1068
@ BT_COMPONENT_CLASS_PORT_CONNECTED_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:1062
@ BT_COMPONENT_CLASS_PORT_CONNECTED_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:1056
@ BT_COMPONENT_CLASS_SINK_GRAPH_IS_CONFIGURED_METHOD_STATUS_ERROR
User error.
Definition component-class-dev.h:845
@ BT_COMPONENT_CLASS_SINK_GRAPH_IS_CONFIGURED_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:839
@ BT_COMPONENT_CLASS_SINK_GRAPH_IS_CONFIGURED_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:833
@ BT_COMPONENT_CLASS_QUERY_METHOD_STATUS_UNKNOWN_OBJECT
Unknown object to query.
Definition component-class-dev.h:1229
@ BT_COMPONENT_CLASS_QUERY_METHOD_STATUS_AGAIN
Try again.
Definition component-class-dev.h:1235
@ BT_COMPONENT_CLASS_QUERY_METHOD_STATUS_ERROR
User error.
Definition component-class-dev.h:1247
@ BT_COMPONENT_CLASS_QUERY_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:1241
@ BT_COMPONENT_CLASS_QUERY_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:1223
@ BT_COMPONENT_CLASS_SET_DESCRIPTION_STATUS_OK
Success.
Definition component-class-dev.h:1596
@ BT_COMPONENT_CLASS_SET_DESCRIPTION_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:1602
@ BT_COMPONENT_CLASS_SET_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:1698
@ BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:892
@ BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR
User error.
Definition component-class-dev.h:898
@ BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:886
@ BT_COMPONENT_CLASS_GET_SUPPORTED_MIP_VERSIONS_METHOD_STATUS_MEMORY_ERROR
Out of memory.
Definition component-class-dev.h:639
@ BT_COMPONENT_CLASS_GET_SUPPORTED_MIP_VERSIONS_METHOD_STATUS_OK
Success.
Definition component-class-dev.h:633
@ BT_COMPONENT_CLASS_GET_SUPPORTED_MIP_VERSIONS_METHOD_STATUS_ERROR
User error.
Definition component-class-dev.h:645
struct bt_component_class_sink bt_component_class_sink
Sink component class.
Definition types.h:41
struct bt_component_class_source bt_component_class_source
Source component class.
Definition types.h:42
struct bt_component_class_filter bt_component_class_filter
Filter component class.
Definition types.h:40
struct bt_component_class bt_component_class
Component class.
Definition types.h:39
struct bt_integer_range_set_unsigned bt_integer_range_set_unsigned
Set of unsigned 64-bit integer ranges.
Definition types.h:67
bt_logging_level
Logging level enumerators.
Definition logging.h:110
struct bt_message_iterator_class bt_message_iterator_class
Message iterator class.
Definition types.h:73
struct bt_port_output bt_port_output
Output port.
Definition types.h:81
struct bt_port_input bt_port_input
Input port.
Definition types.h:80
struct bt_private_query_executor bt_private_query_executor
Private query executor.
Definition types.h:83
struct bt_self_component_class_source bt_self_component_class_source
Self source component class.
Definition types.h:89
struct bt_self_component_class_filter bt_self_component_class_filter
Self filter component class.
Definition types.h:87
struct bt_self_component_class_sink bt_self_component_class_sink
Self sink component class.
Definition types.h:88
struct bt_self_component_port_output bt_self_component_port_output
Self component output port.
Definition types.h:95
struct bt_self_component_port_input bt_self_component_port_input
Self component input port.
Definition types.h:93
struct bt_self_component_sink_configuration bt_self_component_sink_configuration
Self sink component configuration.
Definition types.h:97
struct bt_self_component_filter_configuration bt_self_component_filter_configuration
Self filter component configuration.
Definition types.h:91
struct bt_self_component_source bt_self_component_source
Self source component.
Definition types.h:98
struct bt_self_component_filter bt_self_component_filter
Self filter component.
Definition types.h:90
struct bt_self_component_sink bt_self_component_sink
Self sink component.
Definition types.h:96
struct bt_self_component_source_configuration bt_self_component_source_configuration
Self source component configuration.
Definition types.h:99
struct bt_value bt_value
Value.
Definition types.h:107