X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=ltt-sessiond%2Fsession.h;h=1e274b41103f4f278954beab41d357191db367f0;hp=5bfe16ac04122a0e9c079ef02512a1cea54bc1c4;hb=2e0ac66c6c13c670bca92e7a333358554769f638;hpb=5b74c7b1ca96399ba5c8bd0ce6974aea671198eb diff --git a/ltt-sessiond/session.h b/ltt-sessiond/session.h index 5bfe16ac0..1e274b411 100644 --- a/ltt-sessiond/session.h +++ b/ltt-sessiond/session.h @@ -1,4 +1,4 @@ -/* +/* * Copyright (C) 2011 - David Goulet * * This program is free software; you can redistribute it and/or @@ -19,30 +19,39 @@ #ifndef _LTT_SESSION_H #define _LTT_SESSION_H +#include +#include +#include + /* Global session list */ struct ltt_session_list { struct cds_list_head head; }; +extern struct ltt_session_list ltt_session_list; + /* ltt-session - This data structure contains information needed * to identify a tracing session for both LTTng and UST. */ struct ltt_session { - char *name; struct cds_list_head list; + char *name; + char *path; uuid_t uuid; struct cds_list_head ust_traces; - struct cds_list_head lttng_traces; + struct ltt_kernel_session *kernel_session; + unsigned int ust_trace_count; + unsigned int kern_session_count; pid_t ust_consumer; - pid_t lttng_consumer; }; /* Prototypes */ -int create_session(char *name, uuid_t *session_id); -int destroy_session(uuid_t *uuid); -void get_lttng_session(struct lttng_session *lt); +int create_session(char *name, char *path); +int destroy_session(char *name); +void get_lttng_session(struct lttng_session *sessions); struct ltt_session *find_session_by_uuid(uuid_t session_id); struct ltt_session *find_session_by_name(char *name); unsigned int get_session_count(void); +struct ltt_session_list *get_session_list(void); #endif /* _LTT_SESSION_H */