X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=plugins%2Futils%2Fplugin.c;h=50dabf5cc3b2771d6f23b40b2d99ad1ff55990f6;hb=9d408fcae74602e3591f66623ceb85f482d948ed;hp=3f596299e8833784690b0a055dd64b711b5feb34;hpb=958f7d11c42386032407496d346a0fedf77d6950;p=babeltrace.git diff --git a/plugins/utils/plugin.c b/plugins/utils/plugin.c index 3f596299..50dabf5c 100644 --- a/plugins/utils/plugin.c +++ b/plugins/utils/plugin.c @@ -20,43 +20,55 @@ * SOFTWARE. */ -#include +#include #include "dummy/dummy.h" +#include "counter/counter.h" #include "trimmer/trimmer.h" #include "trimmer/iterator.h" #include "muxer/muxer.h" +#ifndef BT_BUILT_IN_PLUGINS +BT_PLUGIN_MODULE(); +#endif + BT_PLUGIN(utils); BT_PLUGIN_DESCRIPTION("Graph utilities"); -BT_PLUGIN_AUTHOR("Julien Desfossez, Philippe Proulx"); +BT_PLUGIN_AUTHOR("Julien Desfossez, Jérémie Galarneau, Philippe Proulx"); BT_PLUGIN_LICENSE("MIT"); -/* dummy sink */ +/* sink.utils.dummy */ BT_PLUGIN_SINK_COMPONENT_CLASS(dummy, dummy_consume); BT_PLUGIN_SINK_COMPONENT_CLASS_INIT_METHOD(dummy, dummy_init); BT_PLUGIN_SINK_COMPONENT_CLASS_FINALIZE_METHOD(dummy, dummy_finalize); BT_PLUGIN_SINK_COMPONENT_CLASS_PORT_CONNECTED_METHOD(dummy, dummy_port_connected); BT_PLUGIN_SINK_COMPONENT_CLASS_DESCRIPTION(dummy, - "Dummy sink component class: does absolutely nothing!"); + "Consume notifications and discard them."); + +/* sink.utils.counter */ +BT_PLUGIN_SINK_COMPONENT_CLASS(counter, counter_consume); +BT_PLUGIN_SINK_COMPONENT_CLASS_INIT_METHOD(counter, counter_init); +BT_PLUGIN_SINK_COMPONENT_CLASS_FINALIZE_METHOD(counter, counter_finalize); +BT_PLUGIN_SINK_COMPONENT_CLASS_PORT_CONNECTED_METHOD(counter, + counter_port_connected); +BT_PLUGIN_SINK_COMPONENT_CLASS_DESCRIPTION(counter, + "Count notifications and print the results."); -/* trimmer filter */ +/* flt.utils.trimmer */ BT_PLUGIN_FILTER_COMPONENT_CLASS(trimmer, trimmer_iterator_next); BT_PLUGIN_FILTER_COMPONENT_CLASS_DESCRIPTION(trimmer, - "Ensure that trace notifications outside of a given range are filtered-out."); + "Keep notifications that occur within a specific time range."); BT_PLUGIN_FILTER_COMPONENT_CLASS_INIT_METHOD(trimmer, trimmer_component_init); BT_PLUGIN_FILTER_COMPONENT_CLASS_FINALIZE_METHOD(trimmer, finalize_trimmer); BT_PLUGIN_FILTER_COMPONENT_CLASS_NOTIFICATION_ITERATOR_INIT_METHOD(trimmer, trimmer_iterator_init); BT_PLUGIN_FILTER_COMPONENT_CLASS_NOTIFICATION_ITERATOR_FINALIZE_METHOD(trimmer, trimmer_iterator_finalize); -BT_PLUGIN_FILTER_COMPONENT_CLASS_NOTIFICATION_ITERATOR_SEEK_TIME_METHOD(trimmer, - trimmer_iterator_seek_time); -/* muxer filter */ +/* flt.utils.muxer */ BT_PLUGIN_FILTER_COMPONENT_CLASS(muxer, muxer_notif_iter_next); BT_PLUGIN_FILTER_COMPONENT_CLASS_DESCRIPTION(muxer, - "Notification multiplexer"); + "Sort notifications from multiple input ports to a single output port by time."); BT_PLUGIN_FILTER_COMPONENT_CLASS_INIT_METHOD(muxer, muxer_init); BT_PLUGIN_FILTER_COMPONENT_CLASS_FINALIZE_METHOD(muxer, muxer_finalize); BT_PLUGIN_FILTER_COMPONENT_CLASS_PORT_DISCONNECTED_METHOD(muxer,