#ifndef LTTNG_NOTIFICATION_H
#define LTTNG_NOTIFICATION_H
+#include <lttng/lttng-export.h>
+
#ifdef __cplusplus
extern "C" {
#endif
*
* Returns an lttng_condition object on success, NULL on error.
*/
-extern const struct lttng_condition *lttng_notification_get_condition(
+LTTNG_EXPORT extern const struct lttng_condition *lttng_notification_get_condition(
struct lttng_notification *notification);
/*
*
* Returns an lttng_evaluation object on success, NULL on error.
*/
-extern const struct lttng_evaluation *lttng_notification_get_evaluation(
+LTTNG_EXPORT extern const struct lttng_evaluation *lttng_notification_get_evaluation(
+ struct lttng_notification *notification);
+
+/*
+ * Get a notification's origin trigger.
+ *
+ * The notification retains the ownership of the trigger object. Hence, it is
+ * not valid to access that object after the destruction of its associated
+ * notification.
+ *
+ * Returns an lttng_trigger object on success, NULL on error.
+ */
+LTTNG_EXPORT extern const struct lttng_trigger *lttng_notification_get_trigger(
struct lttng_notification *notification);
/*
* Destroys (frees) a notification. The notification's condition and evaluation
* are destroyed as a side-effect.
*/
-extern void lttng_notification_destroy(struct lttng_notification *notification);
+LTTNG_EXPORT extern void lttng_notification_destroy(struct lttng_notification *notification);
#ifdef __cplusplus
}