| 1 | /* |
| 2 | * Copyright (C) 2023 Kienan Stewart <kstewart@efficios.com> |
| 3 | * |
| 4 | * SPDX-License-Identifier: LGPL-2.1-only |
| 5 | * |
| 6 | */ |
| 7 | |
| 8 | #include "event_name/event_name.hpp" |
| 9 | #include "field_stats/field_stats.hpp" |
| 10 | |
| 11 | #include <babeltrace2/babeltrace.h> |
| 12 | |
| 13 | BT_PLUGIN_MODULE(); |
| 14 | |
| 15 | BT_PLUGIN(lttngtest); |
| 16 | BT_PLUGIN_DESCRIPTION("Filter and sink used in lttng-tools test suite"); |
| 17 | BT_PLUGIN_AUTHOR("Kienan Stewart"); |
| 18 | BT_PLUGIN_LICENSE("LGPL-2.1-only"); |
| 19 | |
| 20 | /* flt.lttngtest.event_name */ |
| 21 | /* Filter class to pass events matching given names */ |
| 22 | BT_PLUGIN_FILTER_COMPONENT_CLASS(event_name, event_name_message_iterator_next); |
| 23 | BT_PLUGIN_FILTER_COMPONENT_CLASS_DESCRIPTION(event_name, "Filter events by tracepoint name(s)"); |
| 24 | BT_PLUGIN_FILTER_COMPONENT_CLASS_INITIALIZE_METHOD(event_name, event_name_initialize); |
| 25 | BT_PLUGIN_FILTER_COMPONENT_CLASS_FINALIZE_METHOD(event_name, event_name_finalize); |
| 26 | BT_PLUGIN_FILTER_COMPONENT_CLASS_MESSAGE_ITERATOR_CLASS_INITIALIZE_METHOD( |
| 27 | event_name, event_name_message_iterator_initialize); |
| 28 | BT_PLUGIN_FILTER_COMPONENT_CLASS_MESSAGE_ITERATOR_CLASS_FINALIZE_METHOD( |
| 29 | event_name, event_name_message_iterator_finalize); |
| 30 | |
| 31 | /* sink.lttngtest.field_stats */ |
| 32 | /* Sink class to produce certain statistics for seen fields */ |
| 33 | BT_PLUGIN_SINK_COMPONENT_CLASS(field_stats, field_stats_consume); |
| 34 | BT_PLUGIN_SINK_COMPONENT_CLASS_DESCRIPTION(field_stats, |
| 35 | "Track minimum and maxiumum values of seen fields"); |
| 36 | BT_PLUGIN_SINK_COMPONENT_CLASS_INITIALIZE_METHOD(field_stats, field_stats_initialize); |
| 37 | BT_PLUGIN_SINK_COMPONENT_CLASS_FINALIZE_METHOD(field_stats, field_stats_finalize); |
| 38 | BT_PLUGIN_SINK_COMPONENT_CLASS_GRAPH_IS_CONFIGURED_METHOD(field_stats, |
| 39 | field_stats_graph_is_configured); |