ros2_interfaces_iron/mavros_msgs/srv/
file_open.rs

1use serde::{Deserialize, Serialize};
2
3
4#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
5pub struct FileOpenRequest {
6    pub file_path: ::std::string::String,
7    pub mode: u8,
8}
9
10impl FileOpenRequest {
11    pub const MODE_READ: u8 = 0;
12    pub const MODE_WRITE: u8 = 1;
13    pub const MODE_CREATE: u8 = 2;
14}
15
16impl Default for FileOpenRequest {
17    fn default() -> Self {
18        FileOpenRequest {
19            file_path: ::std::string::String::new(),
20            mode: 0,
21        }
22    }
23}
24
25impl ros2_client::Message for FileOpenRequest {}
26
27
28
29#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
30pub struct FileOpenResponse {
31    pub size: u32,
32    pub success: bool,
33    pub r_errno: i32,
34}
35
36impl Default for FileOpenResponse {
37    fn default() -> Self {
38        FileOpenResponse {
39            size: 0,
40            success: false,
41            r_errno: 0,
42        }
43    }
44}
45
46impl ros2_client::Message for FileOpenResponse {}
47
48
49pub struct FileOpen;
50impl ros2_client::Service for FileOpen {
51    type Request = FileOpenRequest;
52    type Response = FileOpenResponse;
53
54    fn request_type_name(&self) -> &str { "FileOpenRequest" }
55    fn response_type_name(&self) -> &str { "FileOpenResponse" }
56}