Goby3  3.1.5a
2024.05.23
iFrontSeat_config.proto
Go to the documentation of this file.
1 syntax = "proto2";
2 
3 import "dccl/option_extensions.proto";
4 import "goby/protobuf/option_extensions.proto";
5 import "goby/moos/protobuf/goby_moos_app.proto";
6 import "goby/middleware/protobuf/frontseat_config.proto";
7 
8 package goby.apps.moos.protobuf;
9 
10 message iFrontSeatConfig
11 {
12  option (dccl.msg).unit_system = "si";
13 
14  optional goby.moos.protobuf.GobyMOOSAppConfig common = 1;
15 
16  required goby.middleware.frontseat.protobuf.Config frontseat_cfg = 2;
17 
18  message MOOSVariables
19  {
20  optional string prefix = 1 [
21  default = "IFS_",
22  (goby.field).description =
23  "Prefix all MOOS variable names with this string"
24  ];
25 
26  optional string raw_out = 10 [default = "RAW_OUT"];
27  optional string raw_in = 11 [default = "RAW_IN"];
28 
29  optional string command_request = 12 [default = "COMMAND_REQUEST"];
30  optional string command_response = 13 [default = "COMMAND_RESPONSE"];
31 
32  optional string data_from_frontseat = 14 [default = "DATA_IN"];
33  optional string data_to_frontseat = 15 [default = "DATA_OUT"];
34 
35  optional string status = 16 [default = "STATUS"];
36 
37  optional string node_status = 17 [default = "NODE_STATUS"];
38  }
39  optional MOOSVariables moos_var = 20;
40 
41  message LegacyOperations
42  {
43  optional bool subscribe_desired = 1 [
44  default = true,
45  (goby.field).description =
46  "Convert the IvP Helm DESIRED_HEADING, DESIRED_SPEED, "
47  "DESIRED_DEPTH variables into a CommandRequest::desired_course "
48  "message."
49  ];
50 
51  optional bool subscribe_ctd = 2 [
52  default = false,
53  (goby.field).description =
54  "Convert the individual CTD_CONDUCTIVITY, CTD_TEMPERATURE, "
55  "CTD_PRESSURE, CTD_SALINITY variables into a "
56  "FrontSeatInterfaceData::ctd_sample message."
57  ];
58 
59  optional bool subscribe_acomms_raw = 3 [
60  default = false,
61  (goby.field).description =
62  "Convert the individual ACOMMS_RAW_INCOMING, "
63  "ACOMMS_RAW_OUTGOING variables into a FrontSeatInterfaceData "
64  "message with extensions BluefinExtraData::micro_modem_raw_out "
65  "and BluefinExtraData::micro_mdoem_raw_in set."
66  ];
67 
68  optional bool pub_sub_bf_commands = 4 [
69  default = false,
70  (goby.field).description =
71  "Convert all of the following MOOS variables into "
72  "corresponding enumerations of the BluefinExtraCommands "
73  "extension of the CommandRequest message: BUOYANCY_CONTROL to "
74  "BluefinExtraCommands::BUOYANCY_ADJUST, TRIM_CONTROL to "
75  "BluefinExtraCommands::TRIM_ADJUST, FRONTSEAT_BHVOFF to "
76  "BluefinExtraCommands::CANCEL_CURRENT_BEHAVIOR, "
77  "FRONTSEAT_SILENT to BluefinExtraCommands::SILENT_MODE, "
78  "BACKSEAT_ABORT to BluefinExtraCommands::ABORT_MISSION. Also, "
79  "use the MOOS variable PENDING_SURFACE to trigger the "
80  "BluefinExtraCommands::GPS_REQUEST."
81  ];
82 
83  optional bool publish_nav = 12 [
84  default = true,
85  (goby.field).description =
86  "Publish NAV_X, NAV_Y, NAV_LAT, NAV_LONG, NAV_Z, NAV_DEPTH, "
87  "NAV_YAW, NAV_HEADING, NAV_SPEED, NAV_PITCH, NAV_ROLL and "
88  "NAV_ALTITUDE from the NodeStatus message within "
89  "FrontSeatInterfaceData"
90  ];
91 
92  optional bool publish_fs_bs_ready = 11 [
93  default = false,
94  (goby.field).description =
95  "Publish the MOOS variable FRONTSEAT_READY=1 when the "
96  "frontseat state is FRONTSEAT_ACCEPTING_COMMANDS, and "
97  "FRONTSEAT_READY=0 otherwise. Publish BACKSEAT_READY=1 when "
98  "the helm state is HELM_DRIVE, and BACKSEAT_READY=0 "
99  "otherwise."
100  ];
101  }
102 
103  optional LegacyOperations legacy_cfg = 30
104  [(goby.field).description =
105  "Numerous options to automatically convert legacy variables "
106  "(e.g., from iHuxley) into the iFrontSeat messages. Generally new "
107  "projects will not use any of these options and thus this "
108  "configuration block can be omitted."];
109 }