Skip to main content

fibertools_rs/cli/
mock_fire_opts.rs

1use crate::cli::GlobalOpts;
2use clap::Args;
3use std::fmt::Debug;
4
5#[derive(Args, Debug)]
6pub struct MockFireOptions {
7    /// Input BED file where intervals become FIRE elements.
8    /// The 4th column (name) groups intervals into the same mock read.
9    #[clap()]
10    pub bed: String,
11    /// Output BAM file
12    #[clap(short, long, default_value = "-")]
13    pub out: String,
14    /// Length of mock reads (default: auto-calculated from BED intervals)
15    #[clap(short, long)]
16    pub read_length: Option<i64>,
17    /// FIRE quality score to assign (0-255, higher = more confident FIRE call)
18    #[clap(short, long, default_value_t = 255)]
19    pub quality: u8,
20    /// Uncompressed BAM output (default: compressed)
21    #[clap(short, long)]
22    pub uncompressed: bool,
23    #[clap(flatten)]
24    pub global: GlobalOpts,
25}