JaiaBot  1.20.0
JaiaBot micro-AUV software
groups.h
Go to the documentation of this file.
1 // Copyright 2021:
2 // JaiaRobotics LLC
3 // File authors:
4 // Toby Schneider <toby@gobysoft.org>
5 //
6 //
7 // This file is part of the JaiaBot Project Libraries
8 // ("The Jaia Libraries").
9 //
10 // The Jaia Libraries are free software: you can redistribute them and/or modify
11 // them under the terms of the GNU Lesser General Public License as published by
12 // the Free Software Foundation, either version 2.1 of the License, or
13 // (at your option) any later version.
14 //
15 // The Jaia Libraries are distributed in the hope that they will be useful,
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 // GNU Lesser General Public License for more details.
19 //
20 // You should have received a copy of the GNU Lesser General Public License
21 // along with the Jaia Libraries. If not, see <http://www.gnu.org/licenses/>.
22 
23 #ifndef JAIABOT_CORE_SRC_LIB_GROUPS_H
24 #define JAIABOT_CORE_SRC_LIB_GROUPS_H
25 
26 #include "goby/middleware/group.h"
27 
28 #include "jaiabot/version.h"
29 
30 namespace jaiabot
31 {
32 namespace groups
33 {
34 constexpr goby::middleware::Group example{"jaiabot::example"};
35 
36 // lora
37 constexpr goby::middleware::Group lora_rx{"jaiabot::lora_rx"};
38 constexpr goby::middleware::Group lora_tx{"jaiabot::lora_tx"};
39 constexpr goby::middleware::Group lora_report{"jaiabot::lora_report"};
40 
41 // sensors
42 constexpr goby::middleware::Group imu{"jaiabot::imu"};
43 constexpr goby::middleware::Group pressure_temperature{"jaiabot::pressure_temperature"};
44 constexpr goby::middleware::Group pressure_adjusted{"jaiabot::pressure_adjusted"};
45 constexpr goby::middleware::Group salinity{"jaiabot::salinity"};
46 constexpr goby::middleware::Group dissolved_oxygen{"jaiabot::dissolved_oxygen"};
47 constexpr goby::middleware::Group ph{"jaiabot::ph"};
48 constexpr goby::middleware::Group fluorometer{"jaiabot::fluorometer"};
49 constexpr goby::middleware::Group echo{"jaiabot::echo"};
50 constexpr goby::middleware::Group tsys01{"jaiabot::tsys01"};
51 
52 constexpr goby::middleware::Group mcu_pb_data_out{
53  "jaiabot::sensors::mcu_pb_data_out"}; // parsed SensorRequest
54 constexpr goby::middleware::Group mcu_pb_data_in{
55  "jaiabot::sensors::mcu_pb_data_in"}; // parsed SensorData
56 constexpr goby::middleware::Group mcu_command{"jaiabot_sensors::mcu_command"};
57 constexpr goby::middleware::Group mcu_calibration_command{
58  "jaiabot_sensors::mcu_calibration_command"};
59 
60 // low control
61 constexpr goby::middleware::Group low_control{"jaiabot::low_control"};
62 constexpr goby::middleware::Group control_ack{"jaiabot::control_ack"};
63 
64 // high control
65 constexpr goby::middleware::Group desired_setpoints{"jaiabot::desired_setpoints"};
66 
67 // mission manager
68 constexpr goby::middleware::Group mission_report{"jaiabot::mission_report"};
69 constexpr goby::middleware::Group mission_ivp_behavior_update{
70  "jaiabot::mission_ivp_behavior_update"};
71 constexpr goby::middleware::Group mission_ivp_behavior_report{
72  "jaiabot::mission_ivp_behavior_report"};
73 constexpr goby::middleware::Group powerstate_command{"jaiabot::powerstate_command"};
74 constexpr goby::middleware::Group mission_dive{"jaiabot::mission_dive"};
75 constexpr goby::middleware::Group self_command{"jaiabot::self_command"};
76 
77 // hub manager
78 constexpr goby::middleware::Group hub_status{"jaiabot::hub_status"};
79 
80 // health
81 constexpr goby::middleware::Group linux_hardware_status{"jaiabot::linux_hardware_status"};
82 constexpr goby::middleware::Group time_status{"jaiabot::time_status"};
83 constexpr goby::middleware::Group systemd_report{"jaiabot::systemd_report"};
84 constexpr goby::middleware::Group systemd_report_ack{"jaiabot::systemd_report_ack"};
85 constexpr goby::middleware::Group motor_udp_in{"motor_udp_in"};
86 constexpr goby::middleware::Group motor_udp_out{"motor_udp_out"};
87 constexpr goby::middleware::Group motor_status{"jaiabot::motor_status"};
88 
89 // DCCL (intervehicle)
90 // The group used is an API version integer that allows us to check for incompatible
91 // versions of Jaiabot running on various hubs/bots
92 constexpr goby::middleware::Group bot_status{"jaiabot::bot_status",
94 constexpr goby::middleware::Group hub_command{"jaiabot::hub_command"};
95 constexpr goby::middleware::Group task_packet{"jaiabot::task_packet",
97 constexpr goby::middleware::Group engineering_command{"jaiabot::engineering_command"};
98 
99 constexpr goby::middleware::Group engineering_status{"jaiabot::engineering_status",
101 
102 constexpr goby::middleware::Group contact_update{"jaiabot::contact_update",
103  goby::middleware::Group::broadcast_group};
104 
105 // DCCL (interprocess)
106 constexpr goby::middleware::Group hub_command_full{"jaiabot::hub_command_full"};
107 
108 // Arduino
109 constexpr goby::middleware::Group arduino_from_pi{"jaiabot::arduino_from_pi"};
110 constexpr goby::middleware::Group arduino_to_pi{"jaiabot::arduino_to_pi"};
111 constexpr goby::middleware::Group arduino_debug{"jaiabot::arduino_debug"};
112 
113 // Metadata
114 constexpr goby::middleware::Group metadata{"jaiabot::metadata"};
115 
116 // MOOS
117 constexpr goby::middleware::Group moos{"jaiabot::moos"};
118 constexpr goby::middleware::Group helm_ivp{"jaiabot::helm_ivp"};
119 
120 // Bot Comms
121 constexpr goby::middleware::Group intervehicle_subscribe_request{
122  "jaiabot::intervehicle_subscribe_request"};
123 
124 // simulator
125 constexpr goby::middleware::Group simulator_command{"jaiabot::simulator_command"};
126 
127 // web_portal
128 constexpr goby::middleware::Group web_portal("jaiabot::web_portal");
129 
130 // Camera
131 constexpr goby::middleware::Group camera{"jaiabot::camera"};
132 
133 // mission repeater
134 constexpr goby::middleware::Group script_step_begin{"jaiabot::script_step_begin"};
135 constexpr goby::middleware::Group script_step_end{"jaiabot::script_step_end"};
136 
137 } // namespace groups
138 } // namespace jaiabot
139 
140 #endif
constexpr goby::middleware::Group mcu_calibration_command
Definition: groups.h:57
constexpr goby::middleware::Group tsys01
Definition: groups.h:50
constexpr goby::middleware::Group intervehicle_subscribe_request
Definition: groups.h:121
constexpr goby::middleware::Group motor_udp_in
Definition: groups.h:85
constexpr goby::middleware::Group echo
Definition: groups.h:49
constexpr goby::middleware::Group helm_ivp
Definition: groups.h:118
constexpr goby::middleware::Group imu
Definition: groups.h:42
constexpr goby::middleware::Group mcu_pb_data_out
Definition: groups.h:52
constexpr goby::middleware::Group example
Definition: groups.h:34
constexpr goby::middleware::Group mission_ivp_behavior_update
Definition: groups.h:69
constexpr goby::middleware::Group hub_command_full
Definition: groups.h:106
constexpr goby::middleware::Group hub_command
Definition: groups.h:94
constexpr goby::middleware::Group script_step_end
Definition: groups.h:135
constexpr goby::middleware::Group pressure_temperature
Definition: groups.h:43
constexpr goby::middleware::Group web_portal("jaiabot::web_portal")
constexpr goby::middleware::Group time_status
Definition: groups.h:82
constexpr goby::middleware::Group task_packet
Definition: groups.h:95
constexpr goby::middleware::Group contact_update
Definition: groups.h:102
constexpr goby::middleware::Group mcu_command
Definition: groups.h:56
constexpr goby::middleware::Group motor_status
Definition: groups.h:87
constexpr goby::middleware::Group motor_udp_out
Definition: groups.h:86
constexpr goby::middleware::Group linux_hardware_status
Definition: groups.h:81
constexpr goby::middleware::Group lora_rx
Definition: groups.h:37
constexpr goby::middleware::Group arduino_to_pi
Definition: groups.h:110
constexpr goby::middleware::Group pressure_adjusted
Definition: groups.h:44
constexpr goby::middleware::Group mission_report
Definition: groups.h:68
constexpr goby::middleware::Group fluorometer
Definition: groups.h:48
constexpr goby::middleware::Group self_command
Definition: groups.h:75
constexpr goby::middleware::Group mcu_pb_data_in
Definition: groups.h:54
constexpr goby::middleware::Group systemd_report_ack
Definition: groups.h:84
constexpr goby::middleware::Group engineering_status
Definition: groups.h:99
constexpr goby::middleware::Group systemd_report
Definition: groups.h:83
constexpr goby::middleware::Group lora_report
Definition: groups.h:39
constexpr goby::middleware::Group camera
Definition: groups.h:131
constexpr goby::middleware::Group mission_ivp_behavior_report
Definition: groups.h:71
constexpr goby::middleware::Group low_control
Definition: groups.h:61
constexpr goby::middleware::Group mission_dive
Definition: groups.h:74
constexpr goby::middleware::Group salinity
Definition: groups.h:45
constexpr goby::middleware::Group powerstate_command
Definition: groups.h:73
constexpr goby::middleware::Group desired_setpoints
Definition: groups.h:65
constexpr goby::middleware::Group ph
Definition: groups.h:47
constexpr goby::middleware::Group engineering_command
Definition: groups.h:97
constexpr goby::middleware::Group arduino_debug
Definition: groups.h:111
constexpr goby::middleware::Group script_step_begin
Definition: groups.h:134
constexpr goby::middleware::Group lora_tx
Definition: groups.h:38
constexpr goby::middleware::Group control_ack
Definition: groups.h:62
constexpr goby::middleware::Group moos
Definition: groups.h:117
constexpr goby::middleware::Group bot_status
Definition: groups.h:92
constexpr goby::middleware::Group dissolved_oxygen
Definition: groups.h:46
constexpr goby::middleware::Group simulator_command
Definition: groups.h:125
constexpr goby::middleware::Group metadata
Definition: groups.h:114
constexpr goby::middleware::Group arduino_from_pi
Definition: groups.h:109
constexpr goby::middleware::Group hub_status
Definition: groups.h:78
constexpr std::uint32_t INTERVEHICLE_API_VERSION
Definition: version.h:44