1 个稳定版本
1.0.6 | 2024年7月12日 |
---|---|
1.0.2 |
|
#714 在 解析器实现
每月 366 次下载
用于 shr_parser_py
35KB
672 行
Signal Hound Spike 频谱分析仪 SHR 解析器
此 Rust 库提供了强大的工具,用于解析和处理 Signal Hound Spike 软件生成的 SHR 文件。SHR 文件格式包括文件头和多个扫描,每个扫描都有自己的头和数据。此库利用内存映射进行高效的文件读取,并使用 Rayon 进行扫描的并行处理,确保高性能和可扩展性。
特性
- 解析 SHR 文件:读取和解释 SHR 文件,包括头部和扫描。
- 验证文件:通过验证签名和版本确保 SHR 文件的完整性。
- 扫描指标计算:从扫描数据计算关键指标,如峰值、平均值和低值。
- 序列化和反序列化:使用 Serde 进行 SHR 数据的无缝序列化和反序列化。
- CSV 导出:将解析的 SHR 数据导出为 CSV 格式,以便于分析和报告。
安装
要将此库包含到您的项目中,请在您的 Cargo.toml
文件中添加以下依赖项
[dependencies]
shr_parser = "1.0.5"
用法
以下是一个使用 SHR 文件解析器的示例
use std::path::PathBuf;
use shr_parser::{SHRParser, SHRParsingType};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let file_path = PathBuf::from("path/to/your/shrfile.shr");
let parser = SHRParser::new(file_path, SHRParsingType::Peak)?;
println!("{}", parser.to_str());
parser.to_csv(PathBuf::from("output.csv"))?;
Ok(())
}
文档
完整的文档可在 docs.rs 上找到。要本地生成文档,请运行
cargo doc --open
贡献
欢迎贡献!如果您遇到任何问题或对改进有建议,请打开一个问题或提交一个拉取请求。
许可
本项目采用 GPL-3 许可证。有关详细信息,请参阅 LICENSE
文件。
依赖关系
~3–4MB
~78K SLoC