meteor_detect/Cargo.toml

80 lines
2.7 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[package]
name = "meteor_detect"
version = "0.1.0"
edition = "2021"
authors = ["Meteor Detection Team"]
description = "A Raspberry Pi based meteor detection system"
[features]
# 默认features在Linux上自动包含gpio
default = []
# 如果在Linux上运行则默认启用GPIO support
# 这确保rppal和embedded-hal依赖会被编译进来
[target.'cfg(target_os = "linux")'.features]
default = ["gpio"]
# 定义常规的features (全平台通用)
gpio = ["rppal", "embedded-hal"] # Feature to enable GPIO functionality
opencv-4-11-plus = [] # For OpenCV 4.11 and newer versions
[dependencies]
# Hardware interfaces
rppal = { version = "0.22.1", optional = true } # Raspberry Pi hardware access
serialport = "4.2.0" # Serial port for GPS
embedded-hal = { version = "0.2.7", optional = true } # Hardware abstraction layer
# Video processing
opencv = { version = "0.94.2" } # OpenCV bindings
image = "0.25.5" # Image processing
clang-sys = { version = "=1.4.0", features = ["runtime", "clang_14_0"] }
# Concurrency and async
tokio = { version = "1.28.0", features = ["full"] } # Async runtime
async-trait = "0.1.68" # Async traits
futures = "0.3.28" # Future utilities
# Data handling
dirs = "6.0.0"
toml = "0.8.20"
serde = { version = "1.0.160", features = ["derive"] } # Serialization
serde_json = "1.0.96" # JSON support
chrono = { version = "0.4.24", features = ["serde"] } # Date and time
rusqlite = { version = "0.34.0", features = ["bundled"] } # SQLite
# Networking and communication
rumqttc = "0.24.0" # MQTT client
actix-web = "4.3.1" # Web framework for REST API
reqwest = { version = "0.12.14", features = ["json"] } # HTTP client
gstreamer = "0.23.5" # GStreamer bindings for media streaming
gstreamer-rtsp-server = "0.23.5" # RTSP server
# Logging and monitoring
log = "0.4.17" # Logging facade
env_logger = "0.11.7" # Logger implementation
sysinfo = "0.33.1" # System information
# Utilities
anyhow = "1.0.70" # Error handling
thiserror = "1.0.40" # Error definitions
config = "0.13.3" # Configuration management
uuid = { version = "1.3.3", features = ["v4", "serde"] } # UUIDs
clap = { version = "4.2.5", features = ["derive"] } # Command line argument parsing
rand = "0.8.5" # Random number generation for sensor simulation
[dev-dependencies]
criterion = "0.4.0" # Benchmarking
mockall = "0.11.4" # Mocking for tests
[[example]]
name = "cams_detector_demo"
path = "examples/cams_detector_demo.rs"
[[example]]
name = "camera_demo"
path = "examples/camera_demo.rs"
[[example]]
name = "meteor_detection_system"
path = "examples/meteor_detection_system.rs"