X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fviewer-session.h;h=f6b5a60ef58f01e73c036ee5c57a22cf79dfbbdf;hb=b3ab5004b1b4ad1cec80cd5ef25fb6ea835e13f8;hp=4013b35874e76bca293e132ac0a7854d4da18818;hpb=7591bab11eceedc6a0d1e02fd6f85592267a63b5;p=lttng-tools.git diff --git a/src/bin/lttng-relayd/viewer-session.h b/src/bin/lttng-relayd/viewer-session.h index 4013b3587..f6b5a60ef 100644 --- a/src/bin/lttng-relayd/viewer-session.h +++ b/src/bin/lttng-relayd/viewer-session.h @@ -27,6 +27,7 @@ #include #include +#include #include "session.h" @@ -39,15 +40,22 @@ struct relay_viewer_session { */ struct cds_list_head session_list; /* RCU list. */ pthread_mutex_t session_list_lock; /* Protects list updates. */ + /* Once set, the current trace chunk of a viewer must not change. */ + struct lttng_trace_chunk *current_trace_chunk; }; struct relay_viewer_session *viewer_session_create(void); void viewer_session_destroy(struct relay_viewer_session *vsession); void viewer_session_close(struct relay_viewer_session *vsession); -int viewer_session_attach(struct relay_viewer_session *vsession, +enum lttng_viewer_attach_return_code viewer_session_attach( + struct relay_viewer_session *vsession, struct relay_session *session); int viewer_session_is_attached(struct relay_viewer_session *vsession, struct relay_session *session); +void viewer_session_close_one_session(struct relay_viewer_session *vsession, + struct relay_session *session); +int viewer_session_set_trace_chunk_copy(struct relay_viewer_session *vsession, + struct lttng_trace_chunk *relay_session_trace_chunk); #endif /* _VIEWER_SESSION_H */