File map

Every public header of the reference C++ implementation, the module page that documents it, and the header’s own one-line purpose (its @file @brief). The page is generated by tools/gen_file_map.py, and CI fails when a public header has no row or the page drifts. To place a new header, add it to PAGES in that script and run it.

Header

Module page

Purpose

backends/cuda/include/libtracer/mem_cuda.hpp

backends

An L0 backend over CUDA device memory: device-space segments for opaque VALUE payloads (ADR-0024).

core/include/libtracer/acl_ace.hpp

security-acl

tr::graph ACE records — the ACL data model (ADR-0020, docs/reference/05 §0x0A).

core/include/libtracer/app_fields.hpp

graph

tr::graph application-property field tables (RFC-0010 §A.2/§B, ADR-0058).

core/include/libtracer/backend.hpp

backends

L0 (tr::mem) memory-backend interface and its DMA/allocation enums.

core/include/libtracer/batch.hpp

frame-codec

The BATCH record (0x80) — folding N sample frames into ONE written value, with per-sample time DERIVED rather than transmitted (RFC-0025 §4.2.1 / §4.1.2).

core/include/libtracer/builtin_transports.hpp

transport

Internal glue: the built-in socket transport-factory registrations, one per selected transport.

core/include/libtracer/byteorder.hpp

frame-codec

Little-endian integer (de)serialization — the one place bytes become integers and back.

core/include/libtracer/can.hpp

can

CAN transport-plane (tr::net::can) ID codec + advertise frame codec.

core/include/libtracer/can_reassembly.hpp

can

tr::net multi-frame CAN reassembly buffer: can_reassembly_t.

core/include/libtracer/can_tx_pool.hpp

can

tr::net::can_tx_pool_t — the owned in-flight TX slot pool behind asynchronous can_link_t write paths (#383).

core/include/libtracer/child_registry.hpp

fwd-router

The connection registry: this node’s NAME to transport-link table (the ADR-0037 compositor demux).

core/include/libtracer/config.hpp

config

Per-target build configuration as plain C++ (ADR-0068): every compile-time knob is an inline constexpr constant or a using policy binding — never a preprocessor definition.

core/include/libtracer/config_reader.hpp

connection-config

The pair-consuming NAME-key / typed-value walk: wire::config_reader_t (aliased as tr::net::config_reader_t for the transport plane).

core/include/libtracer/conn_spec.hpp

connection-config

tr::net connection-creation SPEC builder: @ref tr::net::conn_spec_t and the @ref tr::net::conn_spec one-liner.

core/include/libtracer/crc.hpp

frame-codec

The trailer_t frame checks: CRC-32C by default and CRC-16-CCITT for opt.CW=1, header-only.

core/include/libtracer/edge_pin.hpp

graph

The EDGE-PIN domain (#635): a bounded, per-participant announcement registry that lets a publisher copy a vertex’s published edge array out without taking any lock, and lets the control plane free a displaced array without waiting for anybody.

core/include/libtracer/error.hpp

status

The RFC-0002 protocol error registry: the frozen tr::<concept>::<error> codes with severity and disposition.

core/include/libtracer/frame.hpp

frame-codec

The frame codec: decode wire bytes into a borrowed, zero-copy TLV tree and encode one back.

core/include/libtracer/fwd_frame_view.hpp

fwd-router

The FWD forward-plane offset-dispatch frame view (ADR-0038 / ADR-0053 ④b).

core/include/libtracer/fwd_router.hpp

fwd-router

Multi-hop FWD forwarding and zero-copy src accumulation across transports (RFC-0004).

core/include/libtracer/grammar.hpp

frame-codec

The shared L2/L3 (tr::wire) TLV header/trailer grammar (ADR-0048 §1).

core/include/libtracer/graph.hpp

graph

The L4 in-process graph runtime: the composite vertex tree and the read / write / await API.

core/include/libtracer/guard.hpp

config

The critical-section concepts (tr::lockable, tr::guard), the no-op guard, the RAII scope and rmw_counter_t — the freestanding half of the guard vocabulary.

core/include/libtracer/guard_mutex.hpp

config

tr::mutex_guard_t, the host’s address-striped guard — the HOSTED half of the guard vocabulary, apart from guard.hpp because its contender sleeps (<thread>).

core/include/libtracer/hook.hpp

graph

hook_t — the ONE callback idiom of the graph’s user seams (RFC-0028 D10, slice 7): a {fn, ctx} pair, 16 B on the host, and thunk, the helper that points one at a callable the caller keeps alive.

core/include/libtracer/iov_table.hpp

transport

@ref tr::net::iov_table_t — the nothrow scatter-gather entry table shared by the WS, TCP and UDP egress paths (#848).

core/include/libtracer/key_view.hpp

frame-codec

L2/L3 (tr::wire) canonical-key navigation key_view_t.

core/include/libtracer/length_prefix_framer.hpp

frame-codec

tr::net u32-length-prefix stream reassembler: length_prefix_framer.

core/include/libtracer/link_id.hpp

graph

The node-scoped interned link identity that keys the subscriber index.

core/include/libtracer/lkv_slot.hpp

graph

The LKV slot policy (ADR-0069 §1): how a vertex publishes and reads its last-known value.

core/include/libtracer/loopback.hpp

transport

An in-process loopback transport for development and tests.

core/include/libtracer/mem_borrowed.hpp

backends

The mem_borrowed L0 backend (tr::mem) and its L1 borrow helpers (tr::view).

core/include/libtracer/mem_heap.hpp

backends

The mem_heap L0 backend (tr::mem) and its L1 alloc helper (tr::view), plus the nothrow std::vector growth primitives (tr::detail).

core/include/libtracer/mem_pool.hpp

backends

The bounded mem_pool L0 backend (tr::mem) over a caller-owned slab.

core/include/libtracer/mem_source.hpp

backends

The nothrow failable-block seam (tr::mem::block_source_t), the process-wide platform-heap source that backs it by default, and the two companions the migrated call sites need: a bump source over a caller buffer and a nothrow growable array.

core/include/libtracer/mem_source_alloc.hpp

backends

A C++ Allocator over @ref tr::mem::block_source_t (@ref tr::mem::source_allocator_t) and the std::vector alias the migrated growth sites spell (@ref tr::mem::source_vector_t).

core/include/libtracer/mem_source_backend.hpp

backends

A @ref tr::mem::mem_backend_t whose bytes come from an injected @ref tr::mem::block_source_t — need C (refcounted segments + DMA hooks) re-expressed as a wrapper over the substrate.

core/include/libtracer/mem_source_pmr.hpp

backends

A std::pmr::memory_resource whose bytes come from an injected @ref tr::mem::block_source_t — the adapter ADR-0079 leaves std::pmr alive as.

core/include/libtracer/mem_source_sync.hpp

backends

A std::mutex-backed synchronization policy for @ref tr::mem::pool_source_t.

core/include/libtracer/op_resolve.hpp

fwd-router

Local operation resolution and the zero-copy FWD{REPLY} builder over the terminus arena.

core/include/libtracer/packed_path.hpp

frame-codec

L2/L3 (tr::wire) — THE packed PATH body grammar (RFC-0018).

core/include/libtracer/path.hpp

path

L4 addressing: path_t, the canonical PATH-payload bytes that key a vertex, and the field-path tail.

core/include/libtracer/path_element.hpp

frame-codec

The RFC-0027 §5 mixed-element codec over a packed PATH body: classify, walk, splice.

core/include/libtracer/path_label.hpp

fwd-router

The RFC-0027 §4 path-label value: (u16 index, u16 generation) as a u32 LE, and the §5.3 element that carries it — RFC-0018’s escape record at kind = 0x16.

core/include/libtracer/path_label_table.hpp

fwd-router

The RFC-0027 mint table: (peer, resolution) -> path label, ceilinged and injected.

core/include/libtracer/path_ref.hpp

frame-codec

The PATH_REF (0x14) element layout and structural rules (RFC-0024 §4).

core/include/libtracer/peer_handle.hpp

transport

The interned per-peer link identity and its constants, without the transport seam that mints it.

core/include/libtracer/pin_instrument.hpp

instrumentation

The RFC-0022 §6 reachability instrument: how many WRITE stores actually took the pinned subview branch versus the one-copy branch.

core/include/libtracer/playout.hpp

frame-codec

The REFERENCE PLAYOUT helper — the receiver-side derivation RFC-0025 §4.7 asks the library to ship, and nothing else.

core/include/libtracer/posix_endpoint.hpp

transport

The receive-thread and endpoint scaffold every POSIX socket transport shares.

core/include/libtracer/qsbr.hpp

graph

The QSBR domain (#1376): the cross-thread grace period behind @ref tr::graph::reclaim_qsbr_t, ADR-0080’s third reclamation policy.

core/include/libtracer/reader_guard.hpp

config

Deprecated: the tr::graph spellings of the guard vocabulary, kept as aliases for one release (#1703). Include guard.hpp / guard_mutex.hpp and name tr:: instead.

core/include/libtracer/receiver_slot.hpp

transport

The one home of the transport delivery-tier mechanism: receiver storage, snapshot and tier select.

core/include/libtracer/reclaim.hpp

config

tr::graph reclamation policies (ADR-0080): the build-time-closed grace point at which a retired subscription’s {fn, ctx} pair becomes safe to free.

core/include/libtracer/rope.hpp

views

L1 (tr::view) rope_t: the transport-agnostic scatter-gather chain.

core/include/libtracer/rope_decode.hpp

frame-codec

The rope byte-source cursor + wire::validate_rope (ADR-0048 §1).

core/include/libtracer/route_handle.hpp

fwd-router

The route handle: WebSocket delivery compaction (RFC-0004, ADR-0035 slice 4).

core/include/libtracer/security_acl.hpp

security-acl

tr::graph ACL policy seam (ADR-0050): pure ACE evaluation + typed ACE parse/build.

core/include/libtracer/segment.hpp

segment

L1 (tr::view) refcounted segment_t and its owning segment_ptr_t.

core/include/libtracer/self_heal_link.hpp

transport

The RFC-0014 link-liveness engine for an owned dial connection: dormant, dial on demand, self-heal, close.

core/include/libtracer/sink_slot.hpp

fwd-router

The one home of the “one observer pair, set from anywhere, read on every frame” shape.

core/include/libtracer/status.hpp

status

The L4 graph result and status types the read / write / await surface returns.

core/include/libtracer/subscriber.hpp

graph

tr::graph subscription edges: slot table, dispatch snapshots and the published edge array (M3b, #380 §3, #635).

core/include/libtracer/thread_id.hpp

graph

tr::detail::thread_id_t — the current execution context’s identity, on every supported target INCLUDING a bare RTOS task (#1532).

core/include/libtracer/tls_profile.hpp

connection-config

tls_profile_t — app-owned TLS trust material for the TLS transport kinds (quic, webtransport), selected by name from a creation SPEC.

core/include/libtracer/tlv.hpp

frame-codec

The type_t codes and the opt options bitfield: the L2/L3 surface of the wire format.

core/include/libtracer/tlv_arena.hpp

frame-codec

The terminus arena decoder: a frame parsed into a flat pre-order node array, bytes left in place.

core/include/libtracer/tlv_emit.hpp

frame-codec

Emit one TLV as raw wire bytes without building a tlv_t model object.

core/include/libtracer/tlv_view.hpp

frame-codec

The lazy rope-backed decode view tr::wire::tlv_view_t (ADR-0053).

core/include/libtracer/tracer.hpp

index

Umbrella header for the libtracer protocol-v1 reference implementation — the L0 substrate, L1 views, the L2/L3 wire codec, the L4 graph runtime and its forwarding plane, and the UDP/TCP/loopback transports.

core/include/libtracer/transport.hpp

transport

The transport seam: one wire technology behind a uniform send / receive interface.

core/include/libtracer/transport_can.hpp

can

The SocketCAN binding tr::net::transport_can, its raw-frame seam can_link_t, and the production socketcan_link_t.

core/include/libtracer/transport_quic.hpp

transport

The msquic-based QUIC transport (ADR-0043 Phase A), in the separate libtracer_quic module.

core/include/libtracer/transport_tcp.hpp

transport

A reliable TCP stream transport with a 4-byte little-endian length prefix per frame.

core/include/libtracer/transport_udp.hpp

transport

A UDP socket transport: one datagram carries one whole frame.

core/include/libtracer/transport_vertex.hpp

fwd-router

A transport and each connection inside it as a first-class /net vertex (ADR-0027).

core/include/libtracer/transport_webtransport.hpp

transport

The WebTransport-over-HTTP/3 endpoint (ADR-0043 Phase B), in the separate libtracer_quic module.

core/include/libtracer/transport_ws.hpp

transport

The WebSocket server transport: many inbound connections multiplexed on one poll thread.

core/include/libtracer/tx_handoff.hpp

transport

Enqueue-then-write for a link that must serialize its writes (RFC 0028 §4.7, #1619).

core/include/libtracer/value.hpp

graph

value_t — the one block a publish costs (RFC-0028 §5.1, slice 3), and value_ref_t, the owning handle over it.

core/include/libtracer/vertex.hpp

graph

An L4 graph vertex: a named, addressable position holding a value, a bounded history or a handler.

core/include/libtracer/vertex_stripe.hpp

graph

tr::graph shared vertex lock stripes (#361 §2, ADR-0068 knobs).

core/include/libtracer/view.hpp

views

L1 (tr::view) zero-copy window view_t.

core/include/libtracer/view_can.hpp

can

L1 (tr::view) header-elided CAN framing: can_frame_count / can_frame_at.

core/include/libtracer/ws.hpp

transport

tr::net::ws — the socket-free RFC 6455 handshake and frame codec.