lib: compile liblttng-ctl as C++
[lttng-tools.git] / include / lttng / action / notify.h
index 17a3e9da542ebfca4073ff2f1b39009da14cb72d..3aa55e09c8e5084cdce97a1a2f3980e9787dad76 100644 (file)
@@ -8,7 +8,10 @@
 #ifndef LTTNG_ACTION_NOTIFY_H
 #define LTTNG_ACTION_NOTIFY_H
 
+#include <lttng/lttng-export.h>
+
 struct lttng_action;
+struct lttng_rate_policy;
 
 #ifdef __cplusplus
 extern "C" {
@@ -22,10 +25,33 @@ extern "C" {
  * must have subscribed to a condition equivalent to the one paired to this
  * notify action in a trigger.
  *
+ * The default rate policy for a notify action is a "every 1" rate policy.
+ *
  * Returns a new action on success, NULL on failure. This action must be
  * destroyed using lttng_action_destroy().
  */
-extern struct lttng_action *lttng_action_notify_create(void);
+LTTNG_EXPORT extern struct lttng_action *lttng_action_notify_create(void);
+
+/*
+ * Set the rate policy of a notify action.
+ *
+ * Returns LTTNG_ACTION_STATUS_OK on success,
+ * LTTNG_ACTION_STATUS_ERROR on internal error,
+ * LTTNG_ACTION_STATUS_INVALID if invalid parameters are passed.
+ */
+LTTNG_EXPORT extern enum lttng_action_status lttng_action_notify_set_rate_policy(
+               struct lttng_action *action,
+               const struct lttng_rate_policy *policy);
+
+/*
+ * Get the rate policy of a notify action.
+ *
+ * Returns LTTNG_ACTION_STATUS_OK on success,
+ * LTTNG_ACTION_STATUS_INVALID if invalid parameters are passed.
+ */
+LTTNG_EXPORT extern enum lttng_action_status lttng_action_notify_get_rate_policy(
+               const struct lttng_action *action,
+               const struct lttng_rate_policy **policy);
 
 #ifdef __cplusplus
 }
This page took 0.022991 seconds and 4 git commands to generate.