better args

This commit is contained in:
Данила Горнушко 2024-06-04 18:47:24 +03:00
parent a4ab505f49
commit 6610176f4b

View file

@ -78,15 +78,15 @@ impl PartialEq for StatsOnDetect {
}
#[derive(Parser, Debug)]
#[command(name = "Hailsens Logger", version, about, long_about = None)]
#[command(name = "Hailsens Logger", version = "1.0.0", about = None, long_about = None)]
struct Args {
#[arg(short, long, required = true)]
#[arg(short = 'p', long, required = true)]
port: String,
#[arg(short = 'i', long = "id", default_value_t = 5)]
device_id: u32,
#[arg(short, long, default_value_t = 115_200)]
#[arg(short = 'b', long, default_value_t = 115_200)]
baud_rate: u32,
#[arg(long, help = "Goertzel threshold")]
@ -98,9 +98,6 @@ struct Args {
#[arg(long)]
winsize: Option<u32>,
#[arg(short = 's', help = "Save data to wav files")]
save_to_wav: bool,
#[arg(long = "plot", help = "Plot data")]
plot_data: bool,
@ -119,14 +116,14 @@ struct Args {
#[arg(long, default_value = "waveform")]
name: String,
#[arg(long)]
#[arg(short = 'a', long = "apath")]
app_logs_path: Option<String>,
#[arg(long)]
#[arg(short = 's', long = "spath")]
stat_logs_path: Option<String>,
#[arg(long, default_value = "./out/")]
path: String,
#[arg(short = 'w', long, help = "Not saving wavs if isn't set")]
wavs_path: Option<String>,
#[arg(short, long, action = clap::ArgAction::Count)]
verbose: u8,
@ -311,7 +308,7 @@ fn main() {
let mut prev_stats: Option<StatsOnDetect> = None;
let mut err_counter: u32 = 0;
let samples_needed = args.save_to_wav || args.plot_data;
let samples_needed = args.wavs_path.is_some() || args.plot_data;
let mut needed_retry = false;
let mut last_hour_value = Local::now().hour();
@ -379,8 +376,8 @@ fn main() {
.display();
}
if args.save_to_wav {
let path = Path::new(&args.path);
if let Some(wav_path) = args.wavs_path.as_deref() {
let path = Path::new(wav_path);
let filename =
format!("{}_{}.wav", args.name, current_timestamp_ms());
let path = path.join(filename);