Skip to main content

rigtop_core/
lib.rs

1//! Data collection core shared by the rigtop TUI and GUI.
2//!
3//! - [`snapshot`]: the serializable measurement types exchanged between data
4//!   sources and front-ends (also the wire format for remote monitoring).
5//! - [`source`]: the [`DataSource`] trait and the [`LocalSource`] implementation.
6//! - [`config`]: user configuration (sensor labels, SMART directory).
7//! - [`system`], [`gpu`], [`smart`], `linux`: the individual collectors;
8//!   [`fill`]: when filesystems will be full.
9//! - [`agent`], [`remote`]: remote monitoring over SSH (`rigtop --agent` and
10//!   the [`remote::RemoteSource`] that talks to it).
11//! - [`demo`]: made-up hosts for trying the interface (`--demo`).
12//! - [`snooze`]: alerts silenced for a while, shared by the front-ends.
13//! - [`worker`], [`view`], [`format`]: front-end helpers shared by the TUI
14//!   and the GUI (background polling thread, process table logic, units).
15
16pub mod agent;
17pub mod config;
18pub mod demo;
19pub mod fill;
20pub mod format;
21pub mod gpu;
22pub mod hosts;
23// Parsed (and tested) everywhere, used on Windows.
24#[cfg(any(windows, test))]
25mod lhm;
26#[cfg(target_os = "linux")]
27pub mod linux;
28pub mod remote;
29pub mod smart;
30pub mod snapshot;
31pub mod snooze;
32pub mod source;
33pub mod system;
34pub mod update;
35pub mod view;
36pub mod widget;
37#[cfg(windows)]
38mod windows;
39pub mod worker;
40
41pub use config::Config;
42pub use snapshot::Snapshot;
43pub use source::{DataSource, LocalSource, MIN_POLL_INTERVAL, ProcessSignal, SourceError};