list_instruments/
list_instruments.rs1use rusb;
2use std::error::Error;
3use std::time::Instant;
4use tmc::list_instruments;
5
6fn main() -> Result<(), Box<dyn Error>> {
7 let context = rusb::Context::new()?;
8
9 let timer = Instant::now();
10 let instruments = list_instruments(context)?;
11
12 if instruments.len() == 0 {
13 println!("no instruments found");
14 } else {
15 for mut instrument in instruments {
16 println!("Found instrument: {}", instrument.read_resource_string()?);
17
18 let handle = instrument.open()?;
19 println!(" USBTMC: {:?}", handle.usbtmc_capabilities);
20 println!(" USB488: {:?}", handle.usb488_capabilities);
21 println!(" SCPI ID: {:?}", handle.scpi_id);
22 println!(" PULSE result: {:?}", handle.pulse());
23 }
24 }
25
26 println!("Time elapsed: {:?}", timer.elapsed());
27 Ok(())
28}