Skip to main content

Mountain/IPC/Enhanced/MessageCompressor/
BatchConfig.rs

1//! Compressor / batcher tunables - max batch size, max delay
2//! before flushing, the size threshold below which messages
3//! pass through uncompressed, and the algorithm + level pair.
4
5use serde::{Deserialize, Serialize};
6
7use crate::IPC::Enhanced::MessageCompressor::{CompressionAlgorithm, CompressionLevel};
8
9#[derive(Debug, Clone, Serialize, Deserialize)]
10pub struct Struct {
11	pub MaxBatchSize:usize,
12
13	pub MaxBatchDelayMs:u64,
14
15	pub CompressionThresholdBytes:usize,
16
17	pub CompressionLevel:CompressionLevel::Enum,
18
19	pub Algorithm:CompressionAlgorithm::Enum,
20}
21
22impl Default for Struct {
23	fn default() -> Self {
24		Self {
25			MaxBatchSize:100,
26
27			MaxBatchDelayMs:100,
28
29			CompressionThresholdBytes:1024,
30
31			CompressionLevel:CompressionLevel::Enum::Balanced,
32
33			Algorithm:CompressionAlgorithm::Enum::Brotli,
34		}
35	}
36}