Initial work for kernel tracing support
[lttng-tools.git] / include / lttng / lttng.h
index 71c5e820805e2d9db11a3a7c61c532e760f1ba06..a1ccc451ee7a85786be12113597356cc001b363c 100644 (file)
@@ -20,6 +20,7 @@
 #define _LIBLTTNGCTL_H
 
 #include <limits.h>
+#include <stdint.h>
 #include <uuid/uuid.h>
 
 /* Default unix group name for tracing.
  */
 #define LTTNG_SESSIOND_PATH_ENV "LTTNG_SESSIOND_PATH"
 
-/* From libuuid
- */
+/* UUID string length (including \0) */
 #define UUID_STR_LEN 37
+/* UUID short string version length (including \0) */
+#define UUID_SHORT_STR_LEN 9
 
 /* Trace type for lttng_trace.
  */
@@ -45,7 +47,7 @@ enum lttng_trace_type {
  */
 struct lttng_session {
        char name[NAME_MAX];
-       char uuid[UUID_STR_LEN];
+       uuid_t uuid;
 };
 
 /* Simple trace representation.
@@ -56,7 +58,7 @@ struct lttng_trace {
        enum lttng_trace_type type;
 };
 
-extern int lttng_create_session(char *name, uuid_t *session_id);
+extern int lttng_create_session(char *name);
 extern int lttng_destroy_session(uuid_t *uuid);
 extern int lttng_connect_sessiond(void);
 extern int lttng_disconnect_sessiond(void);
@@ -66,9 +68,21 @@ extern const char *lttng_get_readable_code(int code);
 extern int lttng_ust_list_apps(pid_t **pids);
 extern int lttng_list_sessions(struct lttng_session **sessions);
 extern int lttng_list_traces(uuid_t *uuid, struct lttng_trace **traces);
-extern void lttng_set_current_session_uuid(char *uuid);
+extern void lttng_set_current_session_uuid(uuid_t *uuid);
 extern int lttng_ust_create_trace(pid_t pid);
 extern int lttng_ust_start_trace(pid_t pid);
 extern int lttng_ust_stop_trace(pid_t pid);
 
+/*
+ * Kernel tracer control
+ */
+extern int lttng_kernel_enable_event(char *event_name);
+extern int lttng_kernel_disable_event(char *event_name);
+extern int lttng_kernel_create_session(void);
+extern int lttng_kernel_start_tracing(void);
+extern int lttng_kernel_stop_tracing(void);
+extern int lttng_kernel_create_channel(void);
+extern int lttng_kernel_create_stream(void);
+extern int lttng_kernel_open_metadata(void);
+
 #endif /* _LIBLTTNGCTL_H */
This page took 0.028003 seconds and 4 git commands to generate.