ros2_interfaces_rolling/phidgets_msgs/srv/
set_analog_output.rs

1use serde::{Deserialize, Serialize};
2
3
4#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
5pub struct SetAnalogOutputRequest {
6    pub index: u16,
7    pub voltage: f64,
8}
9
10impl Default for SetAnalogOutputRequest {
11    fn default() -> Self {
12        SetAnalogOutputRequest {
13            index: 0,
14            voltage: 0.0,
15        }
16    }
17}
18
19impl ros2_client::Message for SetAnalogOutputRequest {}
20
21
22
23#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
24pub struct SetAnalogOutputResponse {
25    pub success: bool,
26}
27
28impl Default for SetAnalogOutputResponse {
29    fn default() -> Self {
30        SetAnalogOutputResponse {
31            success: false,
32        }
33    }
34}
35
36impl ros2_client::Message for SetAnalogOutputResponse {}
37
38
39pub struct SetAnalogOutput;
40impl ros2_client::Service for SetAnalogOutput {
41    type Request = SetAnalogOutputRequest;
42    type Response = SetAnalogOutputResponse;
43
44    fn request_type_name(&self) -> &str { "SetAnalogOutputRequest" }
45    fn response_type_name(&self) -> &str { "SetAnalogOutputResponse" }
46}