diff --git a/src-slider_io/Cargo.toml b/src-slider_io/Cargo.toml new file mode 100644 index 0000000..a24f8a8 --- /dev/null +++ b/src-slider_io/Cargo.toml @@ -0,0 +1,44 @@ +[package] +name = "slider_io" +version = "0.1.0" +edition = "2021" + +[dependencies] +# logging +log = "0.4.14" +env_logger = "0.9.0" + +# threads +parking_lot = "0.12.0" +atomic_float = "0.1.0" + +# async +futures = "0.3.19" +futures-util = "0.3.19" +async-trait = "0.1.52" +tokio = { version="1.16.1", features= ["rt-multi-thread","macros"] } +tokio-util = "0.6.9" + +# UI +serde_json = "1.0" +serde = { version = "1.0", features = ["derive"] } +directories = "4.0.1" +image = "0.23.14" + +# device and system +rusb = "0.9.0" +serialport = "4.0.1" +vigem-client = "0.1.1" +winapi = "0.3.9" +ipconfig = "0.3.0" + +# webserver +hyper = { version="0.14.16", features= ["server", "http1", "http2", "tcp", "stream", "runtime"] } +phf = { version = "0.10.1", features = ["macros"] } +tungstenite = { version="0.16.0", default-features=false } +tokio-tungstenite = "0.16.1" + +# webserver utils +base64 = "0.13.0" +palette = "0.6.0" +qrcode = { version="0.12.0", features= ["image"] } \ No newline at end of file diff --git a/src-slider_io/rustfmt.toml b/src-slider_io/rustfmt.toml new file mode 100644 index 0000000..136f5f3 --- /dev/null +++ b/src-slider_io/rustfmt.toml @@ -0,0 +1,14 @@ +max_width = 100 +hard_tabs = false +tab_spaces = 2 +newline_style = "Auto" +use_small_heuristics = "Default" +reorder_imports = true +reorder_modules = true +remove_nested_parens = true +edition = "2018" +merge_derives = true +use_try_shorthand = false +use_field_init_shorthand = false +force_explicit_abi = true +imports_granularity = "Crate" diff --git a/src-tauri/src/oldbin/test_async.rs b/src-slider_io/src/bin/test_async.rs similarity index 74% rename from src-tauri/src/oldbin/test_async.rs rename to src-slider_io/src/bin/test_async.rs index 303424b..ca685db 100644 --- a/src-tauri/src/oldbin/test_async.rs +++ b/src-slider_io/src/bin/test_async.rs @@ -1,4 +1,4 @@ -extern crate slidershim; +extern crate slider_io; use async_trait::async_trait; use std::{future::Future, io, time::Duration}; @@ -35,11 +35,11 @@ use tokio::{select, time::sleep}; // } fn main() { - env_logger::Builder::new() - .filter_level(log::LevelFilter::Debug) - .init(); + env_logger::Builder::new() + .filter_level(log::LevelFilter::Debug) + .init(); - // let worker = AsyncWorker::new("counter", CounterJob); - let mut input = String::new(); - let string = io::stdin().read_line(&mut input).unwrap(); + // let worker = AsyncWorker::new("counter", CounterJob); + let mut input = String::new(); + let string = io::stdin().read_line(&mut input).unwrap(); } diff --git a/src-slider_io/src/bin/test_brokenithm.rs b/src-slider_io/src/bin/test_brokenithm.rs new file mode 100644 index 0000000..a1276d7 --- /dev/null +++ b/src-slider_io/src/bin/test_brokenithm.rs @@ -0,0 +1,19 @@ +extern crate slider_io; + +use std::{io, time::Duration}; + +use tokio::time::sleep; + +// use slidershim::slider_io::{ +// brokenithm::BrokenithmJob, controller_state::FullState, worker::AsyncWorker, +// }; + +fn main() { + env_logger::Builder::new() + .filter_level(log::LevelFilter::Debug) + .init(); + + // let worker = AsyncWorker::new("brokenithm", BrokenithmJob::new(FullState::new())); + let mut input = String::new(); + let string = io::stdin().read_line(&mut input).unwrap(); +} diff --git a/src-slider_io/src/bin/test_serial.rs b/src-slider_io/src/bin/test_serial.rs new file mode 100644 index 0000000..8ab7d74 --- /dev/null +++ b/src-slider_io/src/bin/test_serial.rs @@ -0,0 +1,11 @@ +extern crate slider_io; + +use serialport::available_ports; +use std::io; + +fn main() { + let res = available_ports(); + println!("{:?}", res); + let mut input = String::new(); + let string = io::stdin().read_line(&mut input).unwrap(); +} diff --git a/src-slider_io/src/bin/test_usb.rs b/src-slider_io/src/bin/test_usb.rs new file mode 100644 index 0000000..ec1be49 --- /dev/null +++ b/src-slider_io/src/bin/test_usb.rs @@ -0,0 +1,64 @@ +extern crate slider_io; + +use std::io; + +// use slidershim::slider_io::{Config, Context}; + +fn main() { + env_logger::Builder::new() + .filter_level(log::LevelFilter::Debug) + .init(); + + // voltex? + // let config = Config::from_str( + // r#"{ + // "deviceMode": "yuancon", + // "outputMode": "gamepad-voltex", + // "keyboardSensitivity": 50, + // "ledMode": "reactive-voltex", + // "ledSensitivity": 50 + // }"#, + // ) + // .unwrap(); + + // serial? + // let config = Config::from_str( + // r#"{ + // "deviceMode": "yuancon", + // "outputMode": "kb-32-tasoller", + // "keyboardSensitivity": 50, + // "ledMode": "serial", + // "ledSerialPort": "COM5" + // }"#, + // ) + // .unwrap(); + + // basic + // let config = Config::from_str( + // r#"{ + // "deviceMode": "yuancon", + // "outputMode": "kb-32-tasoller", + // "keyboardSensitivity": 50,fdwdfp1 + // "ledMode": "reactive-8", + // "ledSensitivity": 50 + // }"#, + // ) + // .unwrap(); + + // tasoller/ + // let config = Config::from_str( + // r#"{ + // "deviceMode": "tasoller-two", + // "outputMode": "kb-32-tasoller", + // "keyboardSensitivity": 50, + // "ledMode": "reactive-8", + // "ledSensitivity": 50 + // }"#, + // ) + // .unwrap(); + + // let manager = Context::new(config); + + let mut input = String::new(); + let string = io::stdin().read_line(&mut input).unwrap(); +} diff --git a/src-tauri/src/oldbin/test_worker.rs b/src-slider_io/src/bin/test_worker.rs similarity index 72% rename from src-tauri/src/oldbin/test_worker.rs rename to src-slider_io/src/bin/test_worker.rs index e3847c1..0fd9aca 100644 --- a/src-tauri/src/oldbin/test_worker.rs +++ b/src-slider_io/src/bin/test_worker.rs @@ -1,4 +1,4 @@ -extern crate slidershim; +extern crate slider_io; use std::io; @@ -24,8 +24,8 @@ use std::io; // } fn main() { - // let worker = Worker::new(TestJob { data: 1 }); + // let worker = Worker::new(TestJob { data: 1 }); - let mut input = String::new(); - let string = io::stdin().read_line(&mut input).unwrap(); + let mut input = String::new(); + let string = io::stdin().read_line(&mut input).unwrap(); } diff --git a/src-slider_io/src/lib.rs b/src-slider_io/src/lib.rs new file mode 100644 index 0000000..5cf62c6 --- /dev/null +++ b/src-slider_io/src/lib.rs @@ -0,0 +1,12 @@ +#![cfg_attr( + all(not(debug_assertions), target_os = "windows"), + windows_subsystem = "windows" +)] +#![feature(div_duration)] +#![feature(more_qualified_paths)] + +mod slider_io; + +pub use slider_io::list_ips; +pub use slider_io::Config; +pub use slider_io::Manager; diff --git a/src-tauri/src/slider_io/acio.rs b/src-slider_io/src/slider_io/acio.rs similarity index 100% rename from src-tauri/src/slider_io/acio.rs rename to src-slider_io/src/slider_io/acio.rs diff --git a/src-tauri/src/slider_io/brokenithm-www/app.js b/src-slider_io/src/slider_io/brokenithm-www/app.js similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/app.js rename to src-slider_io/src/slider_io/brokenithm-www/app.js diff --git a/src-tauri/src/slider_io/brokenithm-www/config.js b/src-slider_io/src/slider_io/brokenithm-www/config.js similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/config.js rename to src-slider_io/src/slider_io/brokenithm-www/config.js diff --git a/src-tauri/src/slider_io/brokenithm-www/favicon.ico b/src-slider_io/src/slider_io/brokenithm-www/favicon.ico similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/favicon.ico rename to src-slider_io/src/slider_io/brokenithm-www/favicon.ico diff --git a/src-tauri/src/slider_io/brokenithm-www/icon.png b/src-slider_io/src/slider_io/brokenithm-www/icon.png similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/icon.png rename to src-slider_io/src/slider_io/brokenithm-www/icon.png diff --git a/src-tauri/src/slider_io/brokenithm-www/index-go.html b/src-slider_io/src/slider_io/brokenithm-www/index-go.html similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/index-go.html rename to src-slider_io/src/slider_io/brokenithm-www/index-go.html diff --git a/src-tauri/src/slider_io/brokenithm-www/index.html b/src-slider_io/src/slider_io/brokenithm-www/index.html similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/index.html rename to src-slider_io/src/slider_io/brokenithm-www/index.html diff --git a/src-tauri/src/slider_io/brokenithm-www/src.js b/src-slider_io/src/slider_io/brokenithm-www/src.js similarity index 100% rename from src-tauri/src/slider_io/brokenithm-www/src.js rename to src-slider_io/src/slider_io/brokenithm-www/src.js diff --git a/src-tauri/src/slider_io/brokenithm.rs b/src-slider_io/src/slider_io/brokenithm.rs similarity index 100% rename from src-tauri/src/slider_io/brokenithm.rs rename to src-slider_io/src/slider_io/brokenithm.rs diff --git a/src-tauri/src/slider_io/config.rs b/src-slider_io/src/slider_io/config.rs similarity index 100% rename from src-tauri/src/slider_io/config.rs rename to src-slider_io/src/slider_io/config.rs diff --git a/src-tauri/src/slider_io/context.rs b/src-slider_io/src/slider_io/context.rs similarity index 100% rename from src-tauri/src/slider_io/context.rs rename to src-slider_io/src/slider_io/context.rs diff --git a/src-tauri/src/slider_io/controller_state.rs b/src-slider_io/src/slider_io/controller_state.rs similarity index 100% rename from src-tauri/src/slider_io/controller_state.rs rename to src-slider_io/src/slider_io/controller_state.rs diff --git a/src-tauri/src/slider_io/device.rs b/src-slider_io/src/slider_io/device.rs similarity index 100% rename from src-tauri/src/slider_io/device.rs rename to src-slider_io/src/slider_io/device.rs diff --git a/src-tauri/src/slider_io/gamepad.rs b/src-slider_io/src/slider_io/gamepad.rs similarity index 100% rename from src-tauri/src/slider_io/gamepad.rs rename to src-slider_io/src/slider_io/gamepad.rs diff --git a/src-tauri/src/slider_io/keyboard.rs b/src-slider_io/src/slider_io/keyboard.rs similarity index 100% rename from src-tauri/src/slider_io/keyboard.rs rename to src-slider_io/src/slider_io/keyboard.rs diff --git a/src-tauri/src/slider_io/led.rs b/src-slider_io/src/slider_io/led.rs similarity index 100% rename from src-tauri/src/slider_io/led.rs rename to src-slider_io/src/slider_io/led.rs diff --git a/src-tauri/src/slider_io/manager.rs b/src-slider_io/src/slider_io/manager.rs similarity index 100% rename from src-tauri/src/slider_io/manager.rs rename to src-slider_io/src/slider_io/manager.rs diff --git a/src-tauri/src/slider_io/mod.rs b/src-slider_io/src/slider_io/mod.rs similarity index 100% rename from src-tauri/src/slider_io/mod.rs rename to src-slider_io/src/slider_io/mod.rs diff --git a/src-tauri/src/slider_io/output.rs b/src-slider_io/src/slider_io/output.rs similarity index 100% rename from src-tauri/src/slider_io/output.rs rename to src-slider_io/src/slider_io/output.rs diff --git a/src-tauri/src/slider_io/utils.rs b/src-slider_io/src/slider_io/utils.rs similarity index 100% rename from src-tauri/src/slider_io/utils.rs rename to src-slider_io/src/slider_io/utils.rs diff --git a/src-tauri/src/slider_io/voltex.rs b/src-slider_io/src/slider_io/voltex.rs similarity index 100% rename from src-tauri/src/slider_io/voltex.rs rename to src-slider_io/src/slider_io/voltex.rs diff --git a/src-tauri/src/slider_io/worker.rs b/src-slider_io/src/slider_io/worker.rs similarity index 100% rename from src-tauri/src/slider_io/worker.rs rename to src-slider_io/src/slider_io/worker.rs diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 79844e3..8278fd5 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -1382,9 +1382,9 @@ checksum = "eee9694f83d9b7c09682fdb32213682939507884e5bcf227be9aff5d644b90dc" [[package]] name = "httparse" -version = "1.5.1" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503" +checksum = "9100414882e15fb7feccb4897e5f0ff0ff1ca7d1a86a23208ada4d7a18e6c6c4" [[package]] name = "httpdate" @@ -1400,9 +1400,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.14.16" +version = "0.14.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7ec3e62bdc98a2f0393a5048e4c30ef659440ea6e0e572965103e72bd836f55" +checksum = "043f0e083e9901b6cc658a77d1eb86f4fc650bbb977a4337dd63192826aa85dd" dependencies = [ "bytes", "futures-channel", @@ -1413,7 +1413,7 @@ dependencies = [ "http-body", "httparse", "httpdate", - "itoa 0.4.8", + "itoa 1.0.1", "pin-project-lite", "socket2", "tokio", @@ -1906,9 +1906,9 @@ checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" [[package]] name = "ntapi" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44" +checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f" dependencies = [ "winapi", ] @@ -2955,8 +2955,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" [[package]] -name = "slidershim" -version = "0.1.4" +name = "slider_io" +version = "0.1.0" dependencies = [ "async-trait", "atomic_float", @@ -2969,7 +2969,6 @@ dependencies = [ "image", "ipconfig", "log", - "open", "palette", "parking_lot 0.12.0", "phf 0.10.1", @@ -2978,10 +2977,6 @@ dependencies = [ "serde", "serde_json", "serialport", - "simple-logging", - "spin_sleep", - "tauri", - "tauri-build", "tokio", "tokio-tungstenite", "tokio-util", @@ -2990,6 +2985,20 @@ dependencies = [ "winapi", ] +[[package]] +name = "slidershim" +version = "0.1.4" +dependencies = [ + "env_logger", + "log", + "open", + "parking_lot 0.12.0", + "simple-logging", + "slider_io", + "tauri", + "tauri-build", +] + [[package]] name = "smallvec" version = "1.8.0" @@ -3021,16 +3030,6 @@ dependencies = [ "system-deps 1.3.2", ] -[[package]] -name = "spin_sleep" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a98101bdc3833e192713c2af0b0dd2614f50d1cf1f7a97c5221b7aac052acc7" -dependencies = [ - "once_cell", - "winapi", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 3421817..8023141 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -13,49 +13,16 @@ build = "src/build.rs" tauri-build = { version = "1.0.0-beta.4" } [dependencies] - -# logging log = "0.4.14" -env_logger = "0.9.0" simple-logging = "2.0.2" +env_logger = "0.9.0" -# threads parking_lot = "0.12.0" -atomic_float = "0.1.0" -spin_sleep = "1.0.0" -# async -futures = "0.3.19" -futures-util = "0.3.19" -async-trait = "0.1.52" -tokio = { version="1.16.1", features= ["rt-multi-thread","macros"] } -tokio-util = "0.6.9" - -# UI tauri = { version = "1.0.0-beta.8", features = ["shell-open", "system-tray"] } -serde_json = "1.0" -serde = { version = "1.0", features = ["derive"] } open = "2.0.2" -directories = "4.0.1" -image = "0.23.14" -# device and system -rusb = "0.9.0" -serialport = "4.0.1" -vigem-client = "0.1.1" -winapi = "0.3.9" -ipconfig = "0.3.0" - -# webserver -hyper = { version="0.14.16", features= ["server", "http1", "http2", "tcp", "stream", "runtime"] } -phf = { version = "0.10.1", features = ["macros"] } -tungstenite = { version="0.16.0", default-features=false } -tokio-tungstenite = "0.16.1" - -# webserver utils -base64 = "0.13.0" -palette = "0.6.0" -qrcode = { version="0.12.0", features= ["image"] } +slider_io = {path = "../src-slider_io" } [features] default = [ "custom-protocol" ] diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index a6707dd..ea02110 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -5,7 +5,7 @@ #![feature(div_duration)] #![feature(more_qualified_paths)] -mod slider_io; +use slider_io; use parking_lot::Mutex; use std::sync::Arc; diff --git a/src-tauri/src/oldbin/test_brokenithm.rs b/src-tauri/src/oldbin/test_brokenithm.rs deleted file mode 100644 index 086d09b..0000000 --- a/src-tauri/src/oldbin/test_brokenithm.rs +++ /dev/null @@ -1,19 +0,0 @@ -extern crate slidershim; - -use std::{io, time::Duration}; - -use tokio::time::sleep; - -// use slidershim::slider_io::{ -// brokenithm::BrokenithmJob, controller_state::FullState, worker::AsyncWorker, -// }; - -fn main() { - env_logger::Builder::new() - .filter_level(log::LevelFilter::Debug) - .init(); - - // let worker = AsyncWorker::new("brokenithm", BrokenithmJob::new(FullState::new())); - let mut input = String::new(); - let string = io::stdin().read_line(&mut input).unwrap(); -} diff --git a/src-tauri/src/oldbin/test_serial.rs b/src-tauri/src/oldbin/test_serial.rs deleted file mode 100644 index e328361..0000000 --- a/src-tauri/src/oldbin/test_serial.rs +++ /dev/null @@ -1,11 +0,0 @@ -// extern crate slidershim; - -use serialport::available_ports; -use std::io; - -fn main() { - let res = available_ports(); - println!("{:?}", res); - let mut input = String::new(); - let string = io::stdin().read_line(&mut input).unwrap(); -} diff --git a/src-tauri/src/oldbin/test_usb.rs b/src-tauri/src/oldbin/test_usb.rs deleted file mode 100644 index d0e38f6..0000000 --- a/src-tauri/src/oldbin/test_usb.rs +++ /dev/null @@ -1,64 +0,0 @@ -extern crate slidershim; - -use std::io; - -// use slidershim::slider_io::{Config, Context}; - -fn main() { - env_logger::Builder::new() - .filter_level(log::LevelFilter::Debug) - .init(); - - // voltex? - // let config = Config::from_str( - // r#"{ - // "deviceMode": "yuancon", - // "outputMode": "gamepad-voltex", - // "keyboardSensitivity": 50, - // "ledMode": "reactive-voltex", - // "ledSensitivity": 50 - // }"#, - // ) - // .unwrap(); - - // serial? - // let config = Config::from_str( - // r#"{ - // "deviceMode": "yuancon", - // "outputMode": "kb-32-tasoller", - // "keyboardSensitivity": 50, - // "ledMode": "serial", - // "ledSerialPort": "COM5" - // }"#, - // ) - // .unwrap(); - - // basic - // let config = Config::from_str( - // r#"{ - // "deviceMode": "yuancon", - // "outputMode": "kb-32-tasoller", - // "keyboardSensitivity": 50,fdwdfp1 - // "ledMode": "reactive-8", - // "ledSensitivity": 50 - // }"#, - // ) - // .unwrap(); - - // tasoller/ - // let config = Config::from_str( - // r#"{ - // "deviceMode": "tasoller-two", - // "outputMode": "kb-32-tasoller", - // "keyboardSensitivity": 50, - // "ledMode": "reactive-8", - // "ledSensitivity": 50 - // }"#, - // ) - // .unwrap(); - - // let manager = Context::new(config); - - let mut input = String::new(); - let string = io::stdin().read_line(&mut input).unwrap(); -} diff --git a/src-tauri/src/oldlib.rs b/src-tauri/src/oldlib.rs deleted file mode 100644 index 1bcc806..0000000 --- a/src-tauri/src/oldlib.rs +++ /dev/null @@ -1,8 +0,0 @@ -#![cfg_attr( - all(not(debug_assertions), target_os = "windows"), - windows_subsystem = "windows" -)] -#![feature(div_duration)] -#![feature(more_qualified_paths)] - -pub mod slider_io;