Struct dp_tlm¶
Telemetry context: probe registry + SPSC record ring. More...
#include <dp_tlm_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| dp_tlm_capture_t * | capture |
| int(* | capture_drain |
| uint32_t | n_probes |
| uint64_t | now |
| dp_tlm_probe_t | probes |
| dp_tlmr_t * | ring |
Detailed Description¶
Public (not opaque) because the emit path is inline; treat the fields as read-only outside dp_tlm_core.c and dp_tlm_emit.
capture is deliberately LAST: the emit hot path touches ring, now and probes, and appending here leaves their cache layout untouched.
Public Attributes Documentation¶
variable capture¶
Open capture that dp_tlm_set_now() drains through; NULL when none.
variable capture_drain¶
Boundary drain, registered by dp_tlm_capture_open().
A function POINTER rather than a direct call, so this translation unit never references a capture symbol: the inline dp_tlm_set_now() below is pulled into every TU that includes this header, and calling dp_tlm_capture_block() by name would make the capture a link-time dependency of everything an inversion, since the capture depends on the ring and not the other way round. NULL when no capture is open.
variable n_probes¶
variable now¶
Caller-stamped sample index for records.
variable probes¶
variable ring¶
Lock-free SPSC record ring.
The documentation for this class was generated from the following file native/inc/dp_tlm/dp_tlm_core.h