Notification interfaces
[babeltrace.git] / include / babeltrace / plugin / notification / notification.h
index 2d73dcc1a79c8fe9d8e5189dfb1b1e411c9a0303..bc21a39623c9b607abc3ae081664a8334bfaf0b8 100644 (file)
  * SOFTWARE.
  */
 
-#include <stdint.h>
-
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 struct bt_notification;
 
+/**
+ * Notification types. Unhandled notification types should be ignored.
+ */
 enum bt_plugin_notification_type {
        BT_PLUGIN_NOTIFICATION_TYPE_UNKNOWN = -1,
-       BT_PLUGIN_NOTIFICATION_TYPE_EVENT = 0, /* see notification/event.h */
+
+       /** Event delivery notification, see event.h */
+       BT_PLUGIN_NOTIFICATION_TYPE_EVENT = 0,
+
+       /** New stream packet notification, see packet.h */
+       BT_PLUGIN_NOTIFICATION_TYPE_NEW_PACKET = 1,
+
+       /** End of trace notification, see eot.h */
+       BT_PLUGIN_NOTIFICATION_TYPE_EOT = 2,
 };
 
-enum bt_plugin_notification_type bt_plugin_notification_get_type(
+/**
+ * Get a notification's type.
+ *
+ * @param notification Notification instance
+ * @returns            One of #bt_plugin_notification_type
+ */
+extern enum bt_plugin_notification_type bt_plugin_notification_get_type(
+               struct bt_plugin_notification *notification);
+
+/**
+ * Increments the reference count of \p notifiaction.
+ *
+ * @param notification Notification of which to increment the reference count
+ *
+ * @see bt_plugin_notification_put()
+ */
+extern void bt_plugin_notification_get(
                struct bt_plugin_notification *notification);
 
-void bt_plugin_notification_get(struct bt_plugin_notification *notification);
-void bt_plugin_notification_put(struct bt_plugin_notification *notification);
+/**
+ * Decrements the reference count of \p notification, destroying it when this
+ * count reaches 0.
+ *
+ * @param notification Notification of which to decrement the reference count
+ *
+ * @see bt_plugin_notification_get()
+ */
+extern void bt_plugin_notification_put(
+               struct bt_plugin_notification *notification);
 
 #ifdef __cplusplus
 }
This page took 0.024797 seconds and 4 git commands to generate.