X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fviewer-stream.h;h=a3262e24241d51cd72bda1ee1453bd17e03a27bd;hb=23f940ff5d6e5440b9c8bd2ede61e1761e4b51fe;hp=5dc135dc6c4972eb104aec630ca088cbd8ed62fc;hpb=a44ca2ca85e4b64729f7b88b1919fd6737dfff8a;p=lttng-tools.git diff --git a/src/bin/lttng-relayd/viewer-stream.h b/src/bin/lttng-relayd/viewer-stream.h index 5dc135dc6..a3262e242 100644 --- a/src/bin/lttng-relayd/viewer-stream.h +++ b/src/bin/lttng-relayd/viewer-stream.h @@ -45,15 +45,17 @@ struct relay_stream; */ struct relay_viewer_stream { struct urcu_ref ref; - pthread_mutex_t reflock; /* Back ref to stream. */ struct relay_stream *stream; - /* FD from which to read the stream data. */ - struct stream_fd *stream_fd; - /* FD from which to read the index data. */ - struct stream_fd *index_fd; + struct { + /* FD from which to read the stream data. */ + struct stream_fd *fd; + struct lttng_trace_chunk *trace_chunk; + } stream_file; + /* index file from which to read the index data. */ + struct lttng_index_file *index_file; char *path_name; char *channel_name; @@ -79,6 +81,7 @@ struct relay_viewer_stream { }; struct relay_viewer_stream *viewer_stream_create(struct relay_stream *stream, + struct lttng_trace_chunk *viewer_trace_chunk, enum lttng_viewer_seek seek_t); struct relay_viewer_stream *viewer_stream_get_by_id(uint64_t id); @@ -88,5 +91,7 @@ int viewer_stream_rotate(struct relay_viewer_stream *vstream); bool viewer_stream_is_tracefile_seq_readable(struct relay_viewer_stream *vstream, uint64_t seq); void print_viewer_streams(void); +void viewer_stream_close_files(struct relay_viewer_stream *vstream); +void viewer_stream_sync_tracefile_array_tail(struct relay_viewer_stream *vstream); #endif /* _VIEWER_STREAM_H */