Top |
Tracing modules will create instances of this class to announce the data they will log and create a log formatter.
GstTracerRecord * gst_tracer_record_new (const gchar *name
,const gchar *firstfield
,...
);
Create a new tracer record. The record instance can be used to efficiently
log entries using gst_tracer_record_log()
.
The name
without the ".class" suffix will be used for the log records.
There must be fields for each value that gets logged where the field name is
the value name. The field must be a GstStructure describing the value. The
sub structure must contain a field called 'type' of G_TYPE_GTYPE
that
contains the GType of the value. The resulting GstTracerRecord will take
ownership of the field structures.
The way to deal with optional values is to log an additional boolean before
the optional field, that if TRUE
signals that the optional field is valid
and FALSE
signals that the optional field should be ignored. One must still
log a placeholder value for the optional field though. Please also note, that
pointer type values must not be NULL - the underlying serialisation can not
handle that right now.
Please note that this is still under discussion and subject to change.
void gst_tracer_record_log (GstTracerRecord *self
,...
);
Serialzes the trace event into the log.
Right now this is using the gstreamer debug log with the level TRACE (7) and the category "GST_TRACER".
Please note that this is still under discussion and subject to change.
Flag that describe the value. These flags help applications processing the logs to understand the values.
no flags |
||
the value is optional. When using this flag
one need to have an additional boolean arg before this value in the
var-args list passed to |
||
the value is combined since the start of tracing |
Tracing record will contain fields that contain a meassured value or extra
meta-data. One such meta data are values that tell where a measurement was
taken. This enumerating declares to which scope such a meta data field
relates to. If it is e.g. GST_TRACER_VALUE_SCOPE_PAD
, then each of the log
events may contain values for different GstPads.
the value is related to the process |
||
the value is related to a thread |
||
the value is related to an GstElement |
||
the value is related to a GstPad |
Since: 1.8