pub mod antenna;
pub mod frequency;
pub mod pcv;
pub mod record;
pub use pcv::Pcv;
pub use antenna::{
Antenna, AntennaMatcher, AntennaSpecific, Calibration, CalibrationMethod, RxAntenna, SvAntenna,
};
pub use record::{FrequencyDependentData, Record};
use crate::prelude::FormattingError;
use std::io::{BufWriter, Write};
#[cfg(feature = "serde")]
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Default, PartialEq)]
#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))]
pub struct HeaderFields {
pub pcv_type: pcv::Pcv,
pub reference_ant_sn: Option<String>,
}
impl HeaderFields {
pub(crate) fn format<W: Write>(&self, _w: &mut BufWriter<W>) -> Result<(), FormattingError> {
Ok(())
}
pub fn with_pcv_type(&self, pcv: Pcv) -> Self {
let mut s = self.clone();
s.pcv_type = pcv;
s
}
pub fn with_reference_antenna_sn(&self, sn: &str) -> Self {
let mut s = self.clone();
s.reference_ant_sn = Some(sn.to_string());
s
}
}