solana_tpu_tools_common/lib.rs
1//! Shared building blocks for Solana TPU benchmarking tools.
2//!
3//! This crate contains the account setup, blockhash refresh, command-line
4//! parsing, and leader tracking code used by `solana-transaction-bench` and
5//! `solana-rate-latency-tool`.
6//!
7//! Most users should run those binaries directly. Use this crate when building
8//! related TPU tooling that needs the same runtime behavior.
9//!
10//! # Main Modules
11//!
12//! - [`accounts_file`]: read and write payer account files, and create
13//! ephemeral or file-persisted payer accounts.
14//! - [`accounts_creator`]: RPC-backed payer account creation.
15//! - [`cli`]: shared Clap argument structs and parsers.
16//! - [`blockhash_updater`]: background RPC polling for fresh blockhashes.
17//! - [`leader_updater`]: leader tracking traits and factory function.
18//! - [`yellowstone_leader_tracker`]: Yellowstone gRPC slot-event adapter for
19//! `solana-tpu-client-next`.
20//!
21//! # Stability
22//!
23//! APIs follow the TPU tools release cadence and may change as Solana/Agave
24//! release candidate dependencies evolve.
25
26pub mod accounts_creator;
27pub mod accounts_file;
28pub mod blockhash_updater;
29pub mod cli;
30mod custom_geyser_node_address_service;
31pub mod leader_updater;
32pub mod yellowstone_leader_tracker;