//! Disk benchmark result aggregation

use std::path::PathBuf;

use super::iops::IOPSResult;
use super::latency::DiskLatencyResult;
use super::random::RandomResult;
use super::sequential::SequentialResult;

/// Complete disk benchmark result
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct DiskBenchmarkResult {
    pub path: PathBuf,
    pub sequential_read: SequentialResult,
    pub sequential_write: SequentialResult,
    pub random_read: RandomResult,
    pub random_write: RandomResult,
    pub iops: IOPSResult,
    pub latency: DiskLatencyResult,
}
