diff options
Diffstat (limited to 'trace2/tr2_dst.h')
-rw-r--r-- | trace2/tr2_dst.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/trace2/tr2_dst.h b/trace2/tr2_dst.h new file mode 100644 index 0000000000..b1a8c144e0 --- /dev/null +++ b/trace2/tr2_dst.h @@ -0,0 +1,38 @@ +#ifndef TR2_DST_H +#define TR2_DST_H + +struct strbuf; +#include "trace2/tr2_sysenv.h" + +struct tr2_dst { + enum tr2_sysenv_variable sysenv_var; + int fd; + unsigned int initialized : 1; + unsigned int need_close : 1; + unsigned int too_many_files : 1; +}; + +/* + * Disable TRACE2 on the destination. In TRACE2 a destination (DST) + * wraps a file descriptor; it is associated with a TARGET which + * defines the formatting. + */ +void tr2_dst_trace_disable(struct tr2_dst *dst); + +/* + * Return the file descriptor for the DST. + * If 0, the dst is closed or disabled. + */ +int tr2_dst_get_trace_fd(struct tr2_dst *dst); + +/* + * Return true if the DST is opened for writing. + */ +int tr2_dst_trace_want(struct tr2_dst *dst); + +/* + * Write a single line/message to the trace file. + */ +void tr2_dst_write_line(struct tr2_dst *dst, struct strbuf *buf_line); + +#endif /* TR2_DST_H */ |