Babeltrace 2 C API  2.0.3
Open-source trace manipulation framework
 All Functions Variables Typedefs Enumerations Enumerator Modules Pages
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
34 extern "C" {
35 #endif
36 
509 
515 
521 
527 
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 
634 
640 
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 
834 
840 
847 
872  bt_self_component_sink *self_component);
873 
887 
893 
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,
1040  bt_self_component_sink_configuration *configuration,
1041  const bt_value *params, void *initialize_method_data);
1042 
1057 
1063 
1070 
1102  bt_self_component_source *self_component,
1103  bt_self_component_port_output *self_port,
1104  const bt_port_input *other_port);
1105 
1137  bt_self_component_filter *self_component,
1138  bt_self_component_port_input *self_port,
1139  const bt_port_output *other_port);
1140 
1172  bt_self_component_filter *self_component,
1173  bt_self_component_port_output *self_port,
1174  const bt_port_input *other_port);
1175 
1207  bt_self_component_sink *self_component,
1208  bt_self_component_port_input *self_port,
1209  const bt_port_output *other_port);
1210 
1224 
1230 
1236 
1242 
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 
1491 extern
1493  const char *name,
1494  bt_message_iterator_class *message_iterator_class);
1495 
1535 extern
1537  const char *name,
1538  bt_message_iterator_class *message_iterator_class);
1539 
1575 extern
1577  const char *name,
1579 
1597 
1604 
1632  const char *description);
1633 
1644 
1649  BT_COMPONENT_CLASS_SET_HELP_STATUS_MEMORY_ERROR = __BT_FUNC_STATUS_MEMORY_ERROR,
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 
1771 extern
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 
1877 extern
1880  bt_component_class_sink *component_class,
1882 
1905  bt_component_class_source *component_class,
1907 
1930  bt_component_class_filter *component_class,
1932 
1953 extern
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 
2062 extern
2065  bt_component_class_sink *component_class,
2067 
2090  bt_component_class_source *component_class,
2092 
2115  bt_component_class_filter *component_class,
2117 
2138 extern
2141  bt_component_class_sink *component_class,
2143 
2166 static inline
2168  bt_component_class_source *component_class)
2169 {
2170  return __BT_UPCAST(bt_component_class, component_class);
2171 }
2172 
2188 static inline
2190  bt_component_class_filter *component_class)
2191 {
2192  return __BT_UPCAST(bt_component_class, component_class);
2193 }
2194 
2210 static 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_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_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_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...
struct bt_integer_range_set_unsigned bt_integer_range_set_unsigned
Set of unsigned 64-bit integer ranges.
Definition: types.h:67
struct bt_self_component_filter bt_self_component_filter
Self filter component.
Definition: types.h:90
struct bt_component_class_source bt_component_class_source
Source component class.
Definition: types.h:42
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
struct bt_self_component_source_configuration bt_self_component_source_configuration
Self source component configuration.
Definition: types.h:99
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
User error.
Definition: component-class-dev.h:898
Out of memory.
Definition: component-class-dev.h:839
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...
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_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...
Success.
Definition: component-class-dev.h:1056
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_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_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_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
struct bt_port_input bt_port_input
Input port.
Definition: types.h:80
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_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
struct bt_component_class_filter bt_component_class_filter
Filter component class.
Definition: types.h:40
struct bt_port_output bt_port_output
Output port.
Definition: types.h:81
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
struct bt_self_component_sink_configuration bt_self_component_sink_configuration
Self sink component configuration.
Definition: types.h:97
User error.
Definition: component-class-dev.h:1247
Out of memory.
Definition: component-class-dev.h:1602
bt_component_class_query_method_status
Status codes for bt_component_class_source_query_method, bt_component_class_filter_query_method, and bt_component_class_sink_query_method.
Definition: component-class-dev.h:1218
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_sink_consume_method_status
Status codes for bt_component_class_sink_consume_method.
Definition: component-class-dev.h:503
Out of memory.
Definition: component-class-dev.h:1062
Success.
Definition: component-class-dev.h:833
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...
struct bt_private_query_executor bt_private_query_executor
Private query executor.
Definition: types.h:83
Try again.
Definition: component-class-dev.h:1235
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_set_description_status
Status codes for bt_component_class_set_description().
Definition: component-class-dev.h:1591
void(* bt_component_class_filter_finalize_method)(bt_self_component_filter *self_component)
Filter component finalization method.
Definition: component-class-dev.h:599
Out of memory.
Definition: component-class-dev.h:639
bt_component_class_set_help_status
Status codes for bt_component_class_set_help().
Definition: component-class-dev.h:1638
struct bt_component_class bt_component_class
Component class.
Definition: types.h:39
struct bt_self_component_sink bt_self_component_sink
Self sink component.
Definition: types.h:96
Out of memory.
Definition: component-class-dev.h:1241
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.
Out of memory.
Definition: component-class-dev.h:1649
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_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...
Try again.
Definition: component-class-dev.h:520
User error.
Definition: component-class-dev.h:1068
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_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_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_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_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...
struct bt_self_component_class_source bt_self_component_class_source
Self source component class.
Definition: types.h:89
struct bt_self_component_port_input bt_self_component_port_input
Self component input port.
Definition: types.h:93
Success.
Definition: component-class-dev.h:1643
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
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_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...
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
struct bt_self_component_class_filter bt_self_component_class_filter
Self filter component class.
Definition: types.h:87
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_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
Success.
Definition: component-class-dev.h:886
struct bt_value bt_value
Value.
Definition: types.h:107
bt_logging_level
Logging level enumerators.
Definition: logging.h:110
Out of memory.
Definition: component-class-dev.h:892
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...
struct bt_component_class_sink bt_component_class_sink
Sink component class.
Definition: types.h:41
Sink component is finished processing.
Definition: component-class-dev.h:514
Success.
Definition: component-class-dev.h:1223
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_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
Success.
Definition: component-class-dev.h:633
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_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
struct bt_self_component_class_sink bt_self_component_class_sink
Self sink component class.
Definition: types.h:88
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
struct bt_self_component_source bt_self_component_source
Self source component.
Definition: types.h:98
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...
Out of memory.
Definition: component-class-dev.h:526
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_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
Success.
Definition: component-class-dev.h:508
User error.
Definition: component-class-dev.h:532
Success.
Definition: component-class-dev.h:1698
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...
Success.
Definition: component-class-dev.h:1596
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_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_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.
struct bt_message_iterator_class bt_message_iterator_class
Message iterator class.
Definition: types.h:73
struct bt_self_component_port_output bt_self_component_port_output
Self component output port.
Definition: types.h:95
User error.
Definition: component-class-dev.h:645
User error.
Definition: component-class-dev.h:845
Unknown object to query.
Definition: component-class-dev.h:1229
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
struct bt_self_component_filter_configuration bt_self_component_filter_configuration
Self filter component configuration.
Definition: types.h:91
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...