-#ifndef BABELTRACE2_GRAPH_COMPONENT_CLASS_H
-#define BABELTRACE2_GRAPH_COMPONENT_CLASS_H
-
/*
- * Copyright (c) 2010-2019 EfficiOS Inc. and Linux Foundation
- *
- * 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
- * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
- * copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
+ * SPDX-License-Identifier: MIT
*
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
+ * Copyright (C) 2010-2019 EfficiOS Inc. and Linux Foundation
*/
+#ifndef BABELTRACE2_GRAPH_COMPONENT_CLASS_H
+#define BABELTRACE2_GRAPH_COMPONENT_CLASS_H
+
+/* IWYU pragma: private, include <babeltrace2/babeltrace.h> */
+
#ifndef __BT_IN_BABELTRACE_H
# error "Please include <babeltrace2/babeltrace.h> instead."
#endif
@image html component.png
@attention
- This module (component class API) offers basic, read-only functions
- to get component class properties. To \em create a component class,
- see \ref api-comp-cls-dev or \ref api-plugin-dev.
+ This API (component class API) offers basic,
+ read-only functions to get component class properties. To \em create
+ a component class, see \ref api-comp-cls-dev or \ref api-plugin-dev.
You can instantiate a given component class many times, with different
initialization parameters, to create many components with the
There are two ways to obtain a component class:
-- Create one programatically: see \ref api-comp-cls-dev.
+- Create one programmatically: see \ref api-comp-cls-dev.
- Borrow one from a \bt_plugin.
Returns whether or not a component class is a \bt_sink_comp_cls.
*/
extern bt_component_class_type bt_component_class_get_type(
- const bt_component_class *component_class);
+ const bt_component_class *component_class) __BT_NOEXCEPT;
/*!
@brief
*/
static inline
bt_bool bt_component_class_is_source(
- const bt_component_class *component_class)
+ const bt_component_class *component_class) __BT_NOEXCEPT
{
return bt_component_class_get_type(component_class) ==
BT_COMPONENT_CLASS_TYPE_SOURCE;
*/
static inline
bt_bool bt_component_class_is_filter(
- const bt_component_class *component_class)
+ const bt_component_class *component_class) __BT_NOEXCEPT
{
return bt_component_class_get_type(component_class) ==
BT_COMPONENT_CLASS_TYPE_FILTER;
*/
static inline
bt_bool bt_component_class_is_sink(
- const bt_component_class *component_class)
+ const bt_component_class *component_class) __BT_NOEXCEPT
{
return bt_component_class_get_type(component_class) ==
BT_COMPONENT_CLASS_TYPE_SINK;
@bt_pre_not_null{component_class}
*/
extern const char *bt_component_class_get_name(
- const bt_component_class *component_class);
+ const bt_component_class *component_class) __BT_NOEXCEPT;
/*!
@brief
@bt_pre_not_null{component_class}
*/
extern const char *bt_component_class_get_description(
- const bt_component_class *component_class);
+ const bt_component_class *component_class) __BT_NOEXCEPT;
/*!
@brief
@bt_pre_not_null{component_class}
*/
extern const char *bt_component_class_get_help(
- const bt_component_class *component_class);
+ const bt_component_class *component_class) __BT_NOEXCEPT;
/*! @} */
Decrements the reference count of a component class.
*/
extern void bt_component_class_get_ref(
- const bt_component_class *component_class);
+ const bt_component_class *component_class) __BT_NOEXCEPT;
/*!
@brief
Increments the reference count of a component class.
*/
extern void bt_component_class_put_ref(
- const bt_component_class *component_class);
+ const bt_component_class *component_class) __BT_NOEXCEPT;
/*!
@brief
static inline
const bt_component_class *
bt_component_class_source_as_component_class_const(
- const bt_component_class_source *component_class)
+ const bt_component_class_source *component_class) __BT_NOEXCEPT
{
return __BT_UPCAST_CONST(bt_component_class, component_class);
}
Decrements the reference count of a source component class.
*/
extern void bt_component_class_source_get_ref(
- const bt_component_class_source *component_class);
+ const bt_component_class_source *component_class) __BT_NOEXCEPT;
/*!
@brief
Increments the reference count of a source component class.
*/
extern void bt_component_class_source_put_ref(
- const bt_component_class_source *component_class);
+ const bt_component_class_source *component_class) __BT_NOEXCEPT;
/*!
@brief
static inline
const bt_component_class *
bt_component_class_filter_as_component_class_const(
- const bt_component_class_filter *component_class)
+ const bt_component_class_filter *component_class) __BT_NOEXCEPT
{
return __BT_UPCAST_CONST(bt_component_class, component_class);
}
Decrements the reference count of a filter component class.
*/
extern void bt_component_class_filter_get_ref(
- const bt_component_class_filter *component_class);
+ const bt_component_class_filter *component_class) __BT_NOEXCEPT;
/*!
@brief
Increments the reference count of a filter component class.
*/
extern void bt_component_class_filter_put_ref(
- const bt_component_class_filter *component_class);
+ const bt_component_class_filter *component_class) __BT_NOEXCEPT;
/*!
@brief
static inline
const bt_component_class *
bt_component_class_sink_as_component_class_const(
- const bt_component_class_sink *component_class)
+ const bt_component_class_sink *component_class) __BT_NOEXCEPT
{
return __BT_UPCAST_CONST(bt_component_class, component_class);
}
Decrements the reference count of a sink component class.
*/
extern void bt_component_class_sink_get_ref(
- const bt_component_class_sink *component_class);
+ const bt_component_class_sink *component_class) __BT_NOEXCEPT;
/*!
@brief
Increments the reference count of a sink component class.
*/
extern void bt_component_class_sink_put_ref(
- const bt_component_class_sink *component_class);
+ const bt_component_class_sink *component_class) __BT_NOEXCEPT;
/*!
@brief