chiark / gitweb /
Describe custom interface.
[mLib] / man / trace.3
index 68d87ad..1312b19 100644 (file)
@@ -5,6 +5,7 @@ trace \- configurable tracing output
 .\" @trace
 .\" @trace_block
 .\" @trace_on
+.\" @trace_custom
 .\" @trace_level
 .\" @tracing
 .\" @traceopt
@@ -20,10 +21,13 @@ trace \- configurable tracing output
 .BI "                 const void *" b ", size_t " sz );
 
 .BI "void trace_on(FILE *" fp ", unsigned " l );
+.BI "void trace_custom(void (*" func ")(const char *" buf ,
+.BI "                               size_t " sz ", void *" v ),
+.BI "                  void *" v );
 .BI "void trace_level(unsigned " l );
 .BI "unsigned tracing(void);"
 
-.BI "unsigned traceopt(trace_opt *" t ", const char *" p ,
+.BI "unsigned traceopt(const trace_opt *" t ", const char *" p ,
 .BI "                  unsigned " f ", unsigned " bad );
 
 .BI T( statements\fR... )
@@ -72,6 +76,11 @@ which takes the new level as its single argument.  The function
 .B tracing
 returns the current trace level, or zero if there is no trace
 destination set.
+.PP
+For more advanced programs, a custom output function may be provided by
+.B trace_custom
+and passing a function which will write a buffer of data somewhere
+sensible.
 .SS "Parsing user trace options"
 The function
 .B traceopt