38 lines
763 B
Rust
38 lines
763 B
Rust
use std::{path::PathBuf, time::Duration};
|
|
|
|
mod connector;
|
|
mod deck;
|
|
mod manager;
|
|
mod searcher;
|
|
|
|
use deck::Deck;
|
|
use manager::Manager;
|
|
use searcher::Searcher;
|
|
|
|
#[derive(Clone, Debug)]
|
|
enum DeckMessage {}
|
|
|
|
#[derive(Clone, Debug)]
|
|
enum ManagerMessage {
|
|
Found(PathBuf),
|
|
Connected(Deck),
|
|
Ignored(PathBuf),
|
|
}
|
|
|
|
#[tokio::main]
|
|
async fn main() -> anyhow::Result<()> {
|
|
let mut root = tokio_actors::root();
|
|
|
|
let manager = Manager::build().await?;
|
|
let manager = root.spawn_child(manager, Manager::turn).await?;
|
|
let searcher = Searcher::new(manager);
|
|
let searcher = root.spawn_child(searcher, Searcher::turn).await?;
|
|
searcher.every(Duration::from_secs(1), || ());
|
|
|
|
tokio::signal::ctrl_c().await?;
|
|
|
|
root.close().await;
|
|
|
|
Ok(())
|
|
}
|