Skip to main content

nanonis_rs/client/
user_in.rs

1use super::NanonisClient;
2use crate::error::NanonisError;
3use crate::types::NanonisValue;
4
5impl NanonisClient {
6    // ==================== User Inputs ====================
7
8    /// Set the calibration of a user input.
9    ///
10    /// # Arguments
11    /// * `input_index` - Input index (1 to available inputs)
12    /// * `calibration_per_volt` - Calibration value per volt
13    /// * `offset_physical_units` - Offset in physical units
14    ///
15    /// # Errors
16    /// Returns `NanonisError` if communication fails.
17    pub fn user_in_calibr_set(
18        &mut self,
19        input_index: i32,
20        calibration_per_volt: f32,
21        offset_physical_units: f32,
22    ) -> Result<(), NanonisError> {
23        self.quick_send(
24            "UserIn.CalibrSet",
25            vec![
26                NanonisValue::I32(input_index),
27                NanonisValue::F32(calibration_per_volt),
28                NanonisValue::F32(offset_physical_units),
29            ],
30            vec!["i", "f", "f"],
31            vec![],
32        )?;
33        Ok(())
34    }
35}