C/C++ timestamp configuration object
Constructors and updateProperties() methods for transport and codec plug-ins take the following argument: IAF_TimestampConfig.
A timestamp configuration object contains a set of fields that a plug-in can use to decide whether to record and/or log timestamp information. Although timestamp configuration objects are passed to all transport and codec plug-ins, it is up to the authors of a plug-ins to write the code that makes use of them.
The fields in the object are:
recordUpstream — If true, the plug-in should record timestamps for all upstream events it processes, and pass these along to the upstream component, if any.
recordDownstream — If true, the plug-in should record timestamps for all downstream events it processes, and pass these along to the downstream component, if any.
logUpstream — If true, the plug-in should log the latency for all upstream events it processes, at the logging level given by the
logLevel member. A plug-in may implicitly enable upstream timestamp recording if upstream logging is enabled.
logDownstream — If true, the plug-in should log the latency for all downstream events it processes, at the logging level given by the
logLevel member. A plug-in may implicitly enable downstream timestamp recording if downstream logging is enabled.
logRoundtrip — If true, the plug-in should log the “round trip” latency for all events it processes in either direction, if possible. At its simplest, the round trip latency can just be the difference between the largest and smallest timestamps passed to the plug-in, or an individual plug-in may choose to present some more plug-in-specific latency number. As with the other logging options, the logging level given by the
logLevel member should be used.
logLevel — The logging verbosity level to use if any of the timestamp logging options are enabled.