lib: make it mandatory to have seek_X if can_seek_X is defined
[babeltrace.git] / src / plugins / text / plugin.c
CommitLineData
3228cc1d
PP
1/*
2 * Copyright 2017 Philippe Proulx <pproulx@efficios.com>
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a copy
5 * of this software and associated documentation files (the "Software"), to deal
6 * in the Software without restriction, including without limitation the rights
7 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 * copies of the Software, and to permit persons to whom the Software is
9 * furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
13 *
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20 * SOFTWARE.
21 */
22
3fadfbc0 23#include <babeltrace2/babeltrace.h>
3228cc1d 24#include "pretty/pretty.h"
33ec5dfa 25#include "dmesg/dmesg.h"
55478183 26#include "details/details.h"
3228cc1d 27
52238017
MJ
28#ifndef BT_BUILT_IN_PLUGINS
29BT_PLUGIN_MODULE();
30#endif
31
3228cc1d 32BT_PLUGIN(text);
602d20a2
PP
33BT_PLUGIN_DESCRIPTION("Plain text input and output");
34BT_PLUGIN_AUTHOR("EfficiOS <https://www.efficios.com/>");
3228cc1d
PP
35BT_PLUGIN_LICENSE("MIT");
36
37/* pretty sink */
38BT_PLUGIN_SINK_COMPONENT_CLASS(pretty, pretty_consume);
21a9f056 39BT_PLUGIN_SINK_COMPONENT_CLASS_INITIALIZE_METHOD(pretty, pretty_init);
3228cc1d 40BT_PLUGIN_SINK_COMPONENT_CLASS_FINALIZE_METHOD(pretty, pretty_finalize);
5badd463
PP
41BT_PLUGIN_SINK_COMPONENT_CLASS_GRAPH_IS_CONFIGURED_METHOD(pretty,
42 pretty_graph_is_configured);
3228cc1d 43BT_PLUGIN_SINK_COMPONENT_CLASS_DESCRIPTION(pretty,
d6e69534 44 "Pretty-print messages (`text` format of Babeltrace 1).");
602d20a2
PP
45BT_PLUGIN_SINK_COMPONENT_CLASS_HELP(pretty,
46 "See the babeltrace2-sink.text.pretty(7) manual page.");
33ec5dfa
PP
47
48/* dmesg source */
d6e69534 49BT_PLUGIN_SOURCE_COMPONENT_CLASS(dmesg, dmesg_msg_iter_next);
33ec5dfa 50BT_PLUGIN_SOURCE_COMPONENT_CLASS_DESCRIPTION(dmesg,
602d20a2
PP
51 "Read Linux ring buffer lines (dmesg(1) output) from a file or from standard input.");
52BT_PLUGIN_SOURCE_COMPONENT_CLASS_HELP(dmesg,
53 "See the babeltrace2-source.text.dmesg(7) manual page.");
21a9f056 54BT_PLUGIN_SOURCE_COMPONENT_CLASS_INITIALIZE_METHOD(dmesg, dmesg_init);
33ec5dfa 55BT_PLUGIN_SOURCE_COMPONENT_CLASS_FINALIZE_METHOD(dmesg, dmesg_finalize);
21a9f056 56BT_PLUGIN_SOURCE_COMPONENT_CLASS_MESSAGE_ITERATOR_INITIALIZE_METHOD(dmesg,
d6e69534
PP
57 dmesg_msg_iter_init);
58BT_PLUGIN_SOURCE_COMPONENT_CLASS_MESSAGE_ITERATOR_FINALIZE_METHOD(dmesg,
59 dmesg_msg_iter_finalize);
2e1b5615
SM
60BT_PLUGIN_SOURCE_COMPONENT_CLASS_MESSAGE_ITERATOR_SEEK_BEGINNING_METHODS(dmesg,
61 dmesg_msg_iter_seek_beginning, dmesg_msg_iter_can_seek_beginning);
55478183
PP
62
63/* details sink */
64BT_PLUGIN_SINK_COMPONENT_CLASS(details, details_consume);
21a9f056 65BT_PLUGIN_SINK_COMPONENT_CLASS_INITIALIZE_METHOD(details, details_init);
55478183
PP
66BT_PLUGIN_SINK_COMPONENT_CLASS_FINALIZE_METHOD(details, details_finalize);
67BT_PLUGIN_SINK_COMPONENT_CLASS_GRAPH_IS_CONFIGURED_METHOD(details,
68 details_graph_is_configured);
69BT_PLUGIN_SINK_COMPONENT_CLASS_DESCRIPTION(details,
70 "Print messages with details.");
602d20a2
PP
71BT_PLUGIN_SINK_COMPONENT_CLASS_HELP(details,
72 "See the babeltrace2-sink.text.details(7) manual page.");
This page took 0.049878 seconds and 4 git commands to generate.