use std::collections::HashSet;
use std::sync::{Arc, Mutex};
pub mod acceptor;
pub mod config;
pub mod conn;
pub mod factory;
pub mod framing;
pub mod source;
pub mod worker;
pub mod zc;
pub use acceptor::TcpAcceptor;
pub use factory::{TcpSourceFactory, register_tcp_factory};
pub use framing::FramingMode;
pub use source::TcpSource;
pub use zc::types::{
BatchConfig, BufferPoolMetrics, BufferStats, MessageBatch, ZcpConfig, ZcpMessage, ZcpResult,
ZeroCopyError,
};
pub(crate) type ConnectionRegistry = Arc<Mutex<HashSet<u64>>>;
pub(crate) const TCP_READER_BATCH_CAP_DEFAULT: usize = 32;
pub(crate) fn tcp_reader_batch_channel_cap() -> usize {
TCP_READER_BATCH_CAP_DEFAULT
}