1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
//! Helios laser DAC protocol implementation.
//!
//! Helios is a USB-based laser DAC that uses libusb for communication.
//!
//! # Example
//!
//! ```no_run
//! use laser_dac::protocols::helios::{HeliosDacController, Frame, Point, Coordinate, Color};
//!
//! fn main() -> Result<(), Box<dyn std::error::Error>> {
//! let controller = HeliosDacController::new()?;
//! let dacs = controller.list_devices()?;
//!
//! if let Some(dac) = dacs.into_iter().next() {
//! let mut dac = dac.open()?;
//!
//! let points = vec![
//! Point {
//! coordinate: Coordinate { x: 0, y: 0 },
//! color: Color::new(255, 0, 0),
//! intensity: 255,
//! },
//! ];
//!
//! let frame = Frame::new(30000, points);
//! dac.write_frame(frame)?;
//! }
//!
//! Ok(())
//! }
//! ```
pub use HeliosBackend;
pub use HeliosDiscoverer;
pub use *;
pub use *;
use crate;
/// Returns the default capabilities for Helios DACs.
/// Device status returned by the Helios DAC.