Rename lttng_event_rule_syscall_(set, get)_pattern to lttng_event_rule_syscall_(set...
[lttng-tools.git] / include / lttng / event-rule / syscall.h
index c581b809cf18a5a67993c11043e748525424aa1a..bb114778cc3bd9e11de050ea87fd1cdf399855be 100644 (file)
 extern "C" {
 #endif
 
+enum lttng_event_rule_syscall_emission_site_type {
+       LTTNG_EVENT_RULE_SYSCALL_EMISSION_SITE_ENTRY_EXIT = 0,
+       LTTNG_EVENT_RULE_SYSCALL_EMISSION_SITE_ENTRY = 1,
+       LTTNG_EVENT_RULE_SYSCALL_EMISSION_SITE_EXIT = 2,
+       LTTNG_EVENT_RULE_SYSCALL_EMISSION_SITE_UNKNOWN = -1,
+};
+
 /*
  * Create a newly allocated syscall event rule.
  *
  * The default pattern is '*'.
+ * The default emission site type is LTTNG_EVENT_RULE_SYSCALL_EMISSION_SITE_ENTRY_EXIT.
  *
  * Returns a new event rule on success, NULL on failure. This event rule must be
  * destroyed using lttng_event_rule_destroy().
  */
-extern struct lttng_event_rule *lttng_event_rule_syscall_create(void);
+extern struct lttng_event_rule *lttng_event_rule_syscall_create(enum
+               lttng_event_rule_syscall_emission_site_type emission_site_type);
 
 /*
- * Set the pattern of a syscall event rule.
+ * Set the name pattern of a syscall event rule.
  *
  * Pattern can contain wildcard '*'. See man lttng-enable-event.
  *
@@ -34,11 +43,11 @@ extern struct lttng_event_rule *lttng_event_rule_syscall_create(void);
  * Returns LTTNG_EVENT_RULE_STATUS_OK on success, LTTNG_EVENT_RULE_STATUS_INVALID
  * if invalid parameters are passed.
  */
-extern enum lttng_event_rule_status lttng_event_rule_syscall_set_pattern(
+extern enum lttng_event_rule_status lttng_event_rule_syscall_set_name_pattern(
                struct lttng_event_rule *rule, const char *pattern);
 
 /*
- * Get the pattern of a syscall event rule.
+ * Get the name pattern of a syscall event rule.
  *
  * The caller does not assume the ownership of the returned pattern. The
  * pattern shall only only be used for the duration of the event rule's
@@ -49,7 +58,7 @@ extern enum lttng_event_rule_status lttng_event_rule_syscall_set_pattern(
  * parameter is passed, or LTTNG_EVENT_RULE_STATUS_UNSET if a pattern
  * was not set prior to this call.
  */
-extern enum lttng_event_rule_status lttng_event_rule_syscall_get_pattern(
+extern enum lttng_event_rule_status lttng_event_rule_syscall_get_name_pattern(
                const struct lttng_event_rule *rule, const char **pattern);
 
 /*
@@ -78,6 +87,15 @@ extern enum lttng_event_rule_status lttng_event_rule_syscall_set_filter(
 extern enum lttng_event_rule_status lttng_event_rule_syscall_get_filter(
                const struct lttng_event_rule *rule, const char **expression);
 
+/*
+ * Get the emission site type of a syscall event rule.
+ *
+ * Returns a enum lttng_event_rule_syscall_emission_site_type.
+ */
+extern enum lttng_event_rule_syscall_emission_site_type
+lttng_event_rule_syscall_get_emission_site_type(
+               const struct lttng_event_rule *rule);
+
 #ifdef __cplusplus
 }
 #endif
This page took 0.023914 seconds and 4 git commands to generate.