rtime_core/lib.rs
1//! Core types, traits, and algorithms shared across the
2//! [rTime](https://github.com/ZerosAndOnesLLC/rTime) NTP/PTP time synchronization daemon.
3//!
4//! This crate is protocol-agnostic: it defines timestamp arithmetic, clock abstractions,
5//! the configuration model, and the source-selection and clock-discipline algorithms that
6//! the transport crates (`rtime-ntp`, `rtime-ptp`, `rtime-nts`) and the daemon build on.
7//!
8//! # Modules
9//!
10//! - [`timestamp`] — NTP/PTP timestamp and duration types with fixed-point arithmetic.
11//! - [`clock`] — clock traits, stratum, and leap-indicator types.
12//! - [`config`] — the `rtime.toml` configuration model ([`config::RtimeConfig`]).
13//! - [`filter`] — the clock filter that selects the best sample from a poll burst.
14//! - [`marzullo`] — Marzullo's interval-intersection algorithm.
15//! - [`selection`] — truechimer/falseticker source selection and clustering.
16//! - [`servo`] — the PI servo loop that drives clock discipline.
17//! - [`source`] — per-source measurement and identity types.
18
19pub mod clock;
20pub mod config;
21pub mod filter;
22pub mod marzullo;
23pub mod selection;
24pub mod servo;
25pub mod source;
26pub mod timestamp;