Skip to main content

chronon::observe::TimelineStreamData

Recorded timeline slices, decoupled from their recorder. More...

#include <TimelineData.hpp>

Public Classes

Name
structEvent
POD slice; strings are [offset,len) views into the owning stream's arena.

Public Functions

Name
boolempty() const

Public Attributes

Name
std::vector< std::vector< Event > >streams
Slices per stream (lane).
std::vector< std::string >stream_names
std::stringprocess_name
int32_tpid
Synthetic pid for the timeline's process group track.
uint64_tdropped_events
std::vector< std::string >arenas
Byte arena per stream backing Event strings.

Detailed Description

struct chronon::observe::TimelineStreamData;

Recorded timeline slices, decoupled from their recorder.

Wall-clock duration events grouped into per-stream lanes, with strings stored as [offset,len) slices into a per-stream byte arena (zero per-event allocation at record time). Recorders (e.g. the scheduler timeline) build this in place and move it to the ObservationBackend at shutdown, so the unified timeline.pftrace export has no lifetime coupling to the recorder.

Public Functions Documentation

function empty

inline bool empty() const

Public Attributes Documentation

variable streams

std::vector< std::vector< Event > > streams;

Slices per stream (lane).

variable stream_names

std::vector< std::string > stream_names;

variable process_name

std::string process_name = "Chronon Scheduler";

variable pid

int32_t pid = 2;

Synthetic pid for the timeline's process group track.

variable dropped_events

uint64_t dropped_events = 0;

variable arenas

std::vector< std::string > arenas;

Byte arena per stream backing Event strings.


Updated on 2026-06-12 at 02:36:09 +0000