ros2_client/interfaces/
basic_types_interface.rs1use serde::{Deserialize, Serialize};
2
3use crate::Message;
4
5#[derive(Debug, Clone, Serialize, Deserialize, Default)]
6pub struct BasicTypesRequest {
7 pub bool_value: bool,
8 pub byte_value: Vec<u8>,
9 pub char_value: u8,
10 pub float32_value: f32,
11 pub float64_value: f64,
12 pub int8_value: i8,
13 pub uint8_value: u8,
14 pub int16_value: i16,
15 pub uint16_value: u16,
16 pub int32_value: i32,
17 pub uint32_value: u32,
18 pub int64_value: i64,
19 pub uint64_value: u64,
20 pub string_value: String,
21}
22impl BasicTypesRequest {
23 pub fn new() -> BasicTypesRequest {
24 BasicTypesRequest {
25 bool_value: true,
26 byte_value: vec![],
27 char_value: 0,
28 float32_value: 0.0,
29 float64_value: 0.0,
30 int8_value: 0,
31 uint8_value: 0,
32 int16_value: 0,
33 uint16_value: 0,
34 int32_value: 0,
35 uint32_value: 0,
36 int64_value: 0,
37 uint64_value: 0,
38 string_value: String::from("From RustDDS service, this a Request"),
39 }
40 }
41}
42impl Message for BasicTypesRequest {}
43
44#[derive(Debug, Clone, Serialize, Deserialize, Default)]
45pub struct BasicTypesResponse {
46 pub bool_value: bool,
47 pub byte_value: Vec<u8>,
48 pub char_value: u8,
49 pub float32_value: f32,
50 pub float64_value: f64,
51 pub int8_value: i8,
52 pub uint8_value: u8,
53 pub int16_value: i16,
54 pub uint16_value: u16,
55 pub int32_value: i32,
56 pub uint32_value: u32,
57 pub int64_value: i64,
58 pub uint64_value: u64,
59 pub string_value: String,
60}
61impl BasicTypesResponse {
62 pub fn new() -> BasicTypesResponse {
63 BasicTypesResponse {
64 bool_value: true,
65 byte_value: vec![],
66 char_value: 0,
67 float32_value: 0.0,
68 float64_value: 0.0,
69 int8_value: 0,
70 uint8_value: 0,
71 int16_value: 0,
72 uint16_value: 0,
73 int32_value: 0,
74 uint32_value: 0,
75 int64_value: 0,
76 uint64_value: 0,
77 string_value: String::from("From RustDDS service, this a Response"),
78 }
79 }
80}
81impl Message for BasicTypesResponse {}