+enum lttng_trigger_status {
+ LTTNG_TRIGGER_STATUS_OK = 0,
+ LTTNG_TRIGGER_STATUS_ERROR = -1,
+ LTTNG_TRIGGER_STATUS_UNKNOWN = -2,
+ LTTNG_TRIGGER_STATUS_INVALID = -3,
+ LTTNG_TRIGGER_STATUS_UNSET = -4,
+ LTTNG_TRIGGER_STATUS_UNSUPPORTED = -5,
+ LTTNG_TRIGGER_STATUS_PERMISSION_DENIED = -6,
+};
+
+/*
+ * Create a trigger object associating a condition and an action.
+ *
+ * A trigger associates a condition and an action to take whenever the
+ * condition evaluates to true. Such actions can, for example, consist
+ * in the emission of a notification to clients listening through
+ * notification channels.
+ *
+ * The caller retains the ownership of both the condition and action
+ * and both must be kept alive for the lifetime of the trigger object.
+ *
+ * A trigger must be registered in order to become activate and can
+ * be destroyed after its registration.
+ *
+ * Returns a trigger object on success, NULL on error.
+ * Trigger objects must be destroyed using the lttng_trigger_destroy()
+ * function.
+ */