···33version = "0.1.0"
44edition = "2021"
55rust-version = "1.82"
66+readme = "README.md"
67authors = ["Lucas Baumann"]
78keywords = ["real-time", "lock-free", "data-structures", "read-write", "concurrency"]
89categories = ["concurrency"]
910license = "MIT OR APACHE-2.0"
1011repository = "https://github.com/luca3s/tracker-engine"
1111-desciption = "Lockfree, realtime safe and copy-free Synchronisation"
1212+description = "Lockfree, realtime safe and copy-free Synchronisation"
1213workspace = "../"
13141415# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
+4
simple-left-right/README.md
···11+# Simple left right
22+33+Simpler Version of [left-right](https://crates.io/crates/left-right), which only allows one reader.
44+Also allows real-time safe read operations and is designed for this use-case.
+9-1
tracker-engine/Cargo.toml
···22name = "impulse-engine"
33version = "0.1.0"
44edition = "2021"
55+authors = ["Lucas Baumann"]
56rust-version = "1.82"
67license = "GPL-2.0-only" # take a look again
88+description = "Rewrite of Schismtracker"
99+repository = "https://github.com/luca3s/tracker-engine"
1010+readme = "README.md"
1111+keywords = ["audio"]
1212+categories = ["audio"]
1313+714[dependencies]
815basedrop = "0.1.2" # miri reports Race Condition. Wait for fix or pull inside
916cpal = "0.15.3"
1010-futures = { version="0.3.30", default-features = false, features = ["std"]}
1717+rtrb = "0.3.1"
1818+# futures = { version="0.3.30", default-features = false, features = ["std"]}
1119# used for the Select API on channels, which is really useful
1220#flume = { version = "0.11.0", default-features = false, features = ["select"]}
1321simple-left-right = { path = "../simple-left-right" }
+1-1
tracker-engine/src/lib.rs
···6363 std::thread::sleep(Duration::from_secs(3));
6464 manager.play_note(note_event);
6565 std::thread::sleep(Duration::from_secs(3));
6666- while let Ok(event) = recv.try_next() {
6666+ while let Ok(event) = recv.pop() {
6767 println!("{event:?}");
6868 }
6969 }