1pub mod error;
14pub mod message;
15pub mod types;
16pub mod units;
17
18#[cfg(feature = "controller")]
19pub mod accumulator;
20
21#[cfg(feature = "client")]
22pub mod client;
23
24#[cfg(feature = "server")]
25pub mod server;
26
27pub use error::FrpError;
28pub use message::{
29 DetectionMode, FrpEnvelope, FrpEvent, FrpMessage, FrpProtocolMessage, Severity,
30};
31pub use types::{BallFlight, ClubData, FaceImpact, ShotKey};
32pub use units::{Distance, Velocity};
33
34#[cfg(feature = "controller")]
35pub use accumulator::{CompletedShot, ShotAggregator};
36
37#[cfg(feature = "client")]
38pub use client::FrpClient;
39
40#[cfg(feature = "server")]
41pub use server::{FrpConnection, FrpListener};
42
43pub const DEFAULT_PORT: u16 = 5880;
45
46pub const DEFAULT_PATH: &str = "/frp";
48
49pub const DEFAULT_URL: &str = "ws://localhost:5880/frp";
51
52pub const SPEC_VERSION: &str = "0.1.0";