peat-tak 0.0.2

TAK (Cursor-on-Target) transport adapter for the Peat mesh protocol
Documentation
//! # peat-tak — TAK Transport Adapter
//!
//! Cursor-on-Target (CoT) transport for the Peat mesh protocol.
//! Supports TAK Server (TCP/TLS) and Mesh SA (UDP multicast) modes.
//!
//! ## Crate layout
//!
//! - **Transport layer**: [`TakServerTransport`], [`MeshSaTransport`] — TCP/TLS
//!   and UDP multicast radios implementing the [`TakTransport`] trait.
//! - **Codec layer** (feature `mesh-translator`): [`CotTranslator`] — the
//!   [`peat_mesh::transport::Translator`] impl that converts between mesh
//!   documents and CoT XML bytes. Gated so consumers without peat-mesh can
//!   still use the transport layer.

mod config;
mod error;
mod metrics;
mod queue;
mod reconnect;
mod traits;

#[cfg(feature = "mesh-translator")]
mod cot_translator;
#[cfg(feature = "mesh-translator")]
pub mod mesh_transport;

pub mod mesh;
pub mod server;

pub use config::{
    PriorityQueueLimits, ProtocolConfig, QueueConfig, ReconnectPolicy, TakCredentials, TakIdentity,
    TakProtocolVersion, TakTransportConfig, TakTransportMode, XmlEncodingOptions,
};
pub use error::TakError;
pub use metrics::{QueueDepthMetrics, TakMetrics};
pub use queue::TakMessageQueue;
pub use reconnect::ReconnectionManager;
pub use traits::{CotEventStream, CotFilter, TakTransport};

#[cfg(feature = "mesh-translator")]
pub use cot_translator::{CotTranslator, CotTranslatorConfig};
pub use mesh::MeshSaTransport;
#[cfg(feature = "mesh-translator")]
pub use mesh_transport::{PeatTakTransport, TakMeshConfig, TakOutboundSink};
pub use server::TakServerTransport;