X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fplugin%2Fnotification%2Fnotification.h;h=5557f919b3ac3723d495871fefb687094fcd05b5;hb=78586d8a10bfb11d34d187697ae15e9255c6ddf4;hp=2d73dcc1a79c8fe9d8e5189dfb1b1e411c9a0303;hpb=90354d3a48e8659a3550bf6edf8d714323855a7d;p=babeltrace.git diff --git a/include/babeltrace/plugin/notification/notification.h b/include/babeltrace/plugin/notification/notification.h index 2d73dcc1..5557f919 100644 --- a/include/babeltrace/plugin/notification/notification.h +++ b/include/babeltrace/plugin/notification/notification.h @@ -27,24 +27,56 @@ * SOFTWARE. */ -#include - #ifdef __cplusplus extern "C" { #endif struct bt_notification; -enum bt_plugin_notification_type { - BT_PLUGIN_NOTIFICATION_TYPE_UNKNOWN = -1, - BT_PLUGIN_NOTIFICATION_TYPE_EVENT = 0, /* see notification/event.h */ -}; +/** + * Notification types. Unhandled notification types should be ignored. + */ +enum bt_notification_type { + BT_NOTIFICATION_TYPE_UNKNOWN = -1, + + /** + * All types of notifications (used to register to notification + * delivery). + */ + BT_NOTIFICATION_TYPE_ALL = 0, + + /** Event delivery notification, see event.h */ + BT_NOTIFICATION_TYPE_EVENT = 1, + + /** Start of stream packet notification, see packet.h */ + BT_NOTIFICATION_TYPE_PACKET_START = 2, + + /** End of stream packet notification, see packet.h */ + BT_NOTIFICATION_TYPE_PACKET_END = 3, -enum bt_plugin_notification_type bt_plugin_notification_get_type( - struct bt_plugin_notification *notification); + /** New trace notification, see model.h */ + BT_NOTIFICATION_TYPE_NEW_TRACE = 4, -void bt_plugin_notification_get(struct bt_plugin_notification *notification); -void bt_plugin_notification_put(struct bt_plugin_notification *notification); + /** New stream class notification, see model.h */ + BT_NOTIFICATION_TYPE_NEW_STREAM_CLASS = 5, + + /** New event class notification, see model.h */ + BT_NOTIFICATION_TYPE_NEW_EVENT_CLASS = 6, + + /** End of trace notification, see eot.h */ + BT_NOTIFICATION_TYPE_END_OF_TRACE = 7, + + BT_NOTIFICATION_TYPE_NR, /* Not part of ABI. */ +}; + +/** + * Get a notification's type. + * + * @param notification Notification instance + * @returns One of #bt_notification_type + */ +extern enum bt_notification_type bt_notification_get_type( + struct bt_notification *notification); #ifdef __cplusplus }