Configuration.cpp
Go to the documentation of this file.
2 
4  node.getParam("get_gyroscope_full_scale", input_command.get_gyroscope_full_scale);
5  node.getParam("get_accelerometer_full_scale", input_command.get_accelerometer_full_scale);
6  node.getParam("get_accelerometer_hdr_full_scale", input_command.get_accelerometer_hdr_full_scale);
7  node.getParam("get_magnetometer_full_scale", input_command.get_magnetometer_full_scale);
8  node.getParam("get_log_mode", input_command.get_log_mode);
9  node.getParam("get_log_frequency", input_command.get_log_frequency);
10 
11  int temp_gyr_full_scale, temp_acc_full_scale, temp_acc_hdr_full_scale, temp_mag_full_scale, temp_log_mode, temp_log_freq;
12 
13  if (node.getParam("gyroscope_full_scale", temp_gyr_full_scale))
14  input_command.gyroscope_full_scale = temp_gyr_full_scale;
15  if (node.getParam("accelerometer_full_scale", temp_acc_full_scale))
16  input_command.accelerometer_full_scale = temp_acc_full_scale;
17  if (node.getParam("accelerometer_hdr_full_scale", temp_acc_hdr_full_scale))
18  input_command.accelerometer_hdr_full_scale = temp_acc_hdr_full_scale;
19  if (node.getParam("magnetometer_full_scale", temp_mag_full_scale))
20  input_command.magnetometer_full_scale = temp_mag_full_scale;
21  if (node.getParam("log_mode", temp_log_mode))
22  input_command.log_mode = temp_log_mode;
23  if (node.getParam("log_frequency", temp_log_freq))
24  input_command.log_frequency = temp_log_freq;
25 }
26 
27 bool muse_v2_driver::Configuration::getConfigurationParams(GetConfigurationParams::Request& req, GetConfigurationParams::Response& res, MuseV2* muse_v2)
28 {
29  bool out = false;
30 
31  ROS_INFO("request: get_gyroscope_full_scale=%s, get_accelerometer_full_scale=%s, get_accelerometer_hdr_full_scale=%s, get_magnetometer_full_scale=%s, get_log_mode=%s, get_log_frequency=%s",
32  req.get_gyroscope_full_scale ? "true" : "false",
33  req.get_accelerometer_full_scale ? "true" : "false",
34  req.get_accelerometer_hdr_full_scale ? "true" : "false",
35  req.get_magnetometer_full_scale ? "true" : "false",
36  req.get_log_mode ? "true" : "false",
37  req.get_log_frequency ? "true" : "false"
38  );
39 
40  if (req.get_gyroscope_full_scale) {
41  if (!received_command.get_gyroscope_full_scale) {
42  received_command.get_gyroscope_full_scale = true;
43  ROS_INFO("Asking Gyroscope full-scale.");
44  }
45  if (muse_v2->serial->getGyroscopeFullScale() > 0) {
46  res.gyroscope_full_scale = muse_v2->serial->getGyroscopeFullScale();
47  out = true;
48  ROS_INFO("Sending back Gyroscope Full-Scale [dps]: %u", res.gyroscope_full_scale);
49  }
50  }
51  if (req.get_accelerometer_full_scale) {
52  if (!received_command.get_accelerometer_full_scale) {
53  received_command.get_accelerometer_full_scale = true;
54  ROS_INFO("Asking Accelerometer full-scale.");
55  }
56  if (muse_v2->serial->getAccFullScale()>0) {
57  res.accelerometer_full_scale = muse_v2->serial->getAccFullScale();
58  out = true;
59  ROS_INFO("Sending back Accelerometer Full-Scale [g]: %u", res.accelerometer_full_scale);
60  }
61  }
62  if (req.get_accelerometer_hdr_full_scale) {
63  if (!received_command.get_accelerometer_hdr_full_scale) {
64  received_command.get_accelerometer_hdr_full_scale = true;
65  ROS_INFO("Asking Accelerometer HDR full-scale.");
66  }
67  if (muse_v2->serial->getAccHdrFullScale()>0) {
68  res.accelerometer_hdr_full_scale = muse_v2->serial->getAccHdrFullScale();
69  out = true;
70  ROS_INFO("Sending back Accelerometer HDR Full-Scale [g]: %u", res.accelerometer_hdr_full_scale);
71  }
72  }
73  if (req.get_magnetometer_full_scale) {
74  if (!received_command.get_magnetometer_full_scale) {
75  received_command.get_magnetometer_full_scale = true;
76  ROS_INFO("Asking Magnetometer full-scale.");
77  }
78  if (muse_v2->serial->getMagnetometerFullScale()>0) {
79  res.magnetometer_full_scale = muse_v2->serial->getMagnetometerFullScale();
80  out = true;
81  ROS_INFO("Sending back Magnetometer Full-Scale [G]: %u", res.magnetometer_full_scale);
82  }
83  }
84  if (req.get_log_mode) {
85  if (!received_command.get_log_mode) {
86  received_command.get_log_mode = true;
87  ROS_INFO("Asking Log Mode.");
88  }
89  if (muse_v2->serial->getLogMode() < UINT8_MAX) {
90  res.log_mode = muse_v2->serial->getLogMode();
91  out = true;
92  ROS_INFO("Sending back Log Mode: %u", res.log_mode);
93  }
94  }
95  if (req.get_log_frequency) {
96  if (!received_command.get_log_frequency) {
97  received_command.get_log_frequency = true;
98  ROS_INFO("Asking Log Frequency.");
99  }
100  if (muse_v2->serial->getLogFrequency() < UINT8_MAX) {
101  res.log_frequency = muse_v2->serial->getLogFrequency();
102  out = true;
103  ROS_INFO("Sending back Log Frequency: %u", res.log_frequency);
104  }
105  }
106  return out;
107 }
108 
109 bool muse_v2_driver::Configuration::setConfigurationParams(SetConfigurationParams::Request& req, SetConfigurationParams::Response& res, MuseV2* muse_v2)
110 {
111  bool out = false;
112 
113  ROS_INFO("request: set_gyroscope_full_scale=%s, set_accelerometer_full_scale=%s, set_accelerometer_hdr_full_scale=%s, set_magnetometer_full_scale=%s, set_log_mode=%s, set_log_frequency=%s",
114  req.set_gyroscope_full_scale ? "true" : "false",
115  req.set_accelerometer_full_scale ? "true" : "false",
116  req.set_accelerometer_hdr_full_scale ? "true" : "false",
117  req.set_magnetometer_full_scale ? "true" : "false",
118  req.set_log_mode ? "true" : "false",
119  req.set_log_frequency ? "true" : "false"
120  );
121 
122  if (req.set_gyroscope_full_scale) {
123  if (received_command.gyroscope_full_scale == 0) {
124  received_command.gyroscope_full_scale = req.gyroscope_full_scale;
125  ROS_INFO("Setting Gyroscope Full-Scale to %u.", req.gyroscope_full_scale);
126  }
127  if (muse_v2->serial->setGyroscopeFullScale(req.gyroscope_full_scale)) {
128  out = true;
129  res.gyroscope_full_scale_changed = true;
130  ROS_INFO("Gyroscope Full-Scale value changed: %s", res.gyroscope_full_scale_changed ? "true" : "false");
131  }
132  }
133  if (req.set_accelerometer_full_scale) {
134  if (received_command.accelerometer_full_scale == 0) {
135  received_command.accelerometer_full_scale = req.accelerometer_full_scale;
136  ROS_INFO("Setting Accelerometer Full-Scale to %u.", req.accelerometer_full_scale);
137  }
138  if (muse_v2->serial->setAccelerometerFullScale(req.accelerometer_full_scale)) {
139  out = true;
140  res.accelerometer_full_scale_changed = true;
141  ROS_INFO("Accelerometer Full-Scale value changed: %s", res.accelerometer_full_scale_changed ? "true" : "false");
142  }
143  }
144  if (req.set_accelerometer_hdr_full_scale) {
145  if (received_command.accelerometer_hdr_full_scale == 0) {
146  received_command.accelerometer_hdr_full_scale = req.accelerometer_hdr_full_scale;
147  ROS_INFO("Setting Accelerometer Full-Scale to %u.", req.accelerometer_hdr_full_scale);
148  }
149  if (muse_v2->serial->setAccelerometerHDRFullScale(req.accelerometer_hdr_full_scale)) {
150  out = true;
151  res.accelerometer_hdr_full_scale_changed = true;
152  ROS_INFO("Accelerometer HDR Full-Scale value changed: %s", res.accelerometer_hdr_full_scale_changed ? "true" : "false");
153  }
154  }
155  if (req.set_magnetometer_full_scale) {
156  if (received_command.magnetometer_full_scale == 0) {
157  received_command.magnetometer_full_scale = req.magnetometer_full_scale;
158  ROS_INFO("Setting Magnetometer Full-Scale to %u.", req.magnetometer_full_scale);
159  }
160  if (muse_v2->serial->setMagnetometerFullScale(req.magnetometer_full_scale)) {
161  out = true;
162  res.magnetometer_full_scale_changed = true;
163  ROS_INFO("Magnetometer Full-Scale value changed: %s", res.magnetometer_full_scale_changed ? "true" : "false");
164  }
165  }
166  if (req.set_log_mode) {
167  if (received_command.log_mode == UINT8_MAX) {
168  received_command.log_mode = req.log_mode;
169  ROS_INFO("Setting Log Mode to %u.", req.log_mode);
170  }
171  if (muse_v2->serial->setLogMode(req.log_mode)) {
172  out = true;
173  res.log_mode_changed = true;
174  ROS_INFO("Log Mode changed: %s", res.log_mode_changed ? "true" : "false");
175  }
176  }
177  if (req.set_log_frequency) {
178  if (received_command.log_frequency == UINT8_MAX) {
179  received_command.log_frequency = req.log_frequency;
180  ROS_INFO("Setting Log Frequency to %u.", req.log_frequency);
181  }
182  if (muse_v2->serial->setLogFrequency(req.log_frequency)) {
183  out = true;
184  res.log_frequency_changed = true;
185  ROS_INFO("Log Frequency changed: %s", res.log_frequency_changed ? "true" : "false");
186  }
187  }
188  return out;
189 }
190 
muse_v2_driver::Configuration::getConfigurationParams
bool getConfigurationParams(GetConfigurationParams::Request &req, GetConfigurationParams::Response &res, MuseV2 *muse_v2)
Definition: Configuration.cpp:27
muse_v2_driver::Configuration::CommandList::get_log_mode
bool get_log_mode
Definition: Configuration.h:20
muse_v2_driver::Configuration::CommandList::gyroscope_full_scale
uint16_t gyroscope_full_scale
Definition: Configuration.h:23
muse_v2_driver::Configuration::CommandList::log_mode
uint8_t log_mode
Definition: Configuration.h:27
ros::NodeHandle::getParam
bool getParam(const std::string &key, bool &b) const
muse_v2_driver::Configuration::CommandList::log_frequency
uint8_t log_frequency
Definition: Configuration.h:28
muse_v2_driver::Configuration::CommandList::accelerometer_full_scale
uint8_t accelerometer_full_scale
Definition: Configuration.h:24
muse_v2_driver::Configuration::input_command
CommandList input_command
Definition: Configuration.h:48
muse_v2_driver::Configuration::CommandList::get_accelerometer_full_scale
bool get_accelerometer_full_scale
Definition: Configuration.h:17
muse_v2_driver::Configuration::CommandList::magnetometer_full_scale
uint8_t magnetometer_full_scale
Definition: Configuration.h:26
muse_v2_driver::Configuration::CommandList::get_log_frequency
bool get_log_frequency
Definition: Configuration.h:21
muse_v2_driver::Configuration::setupInputCommands
void setupInputCommands(ros::NodeHandle &node)
Definition: Configuration.cpp:3
muse_v2_driver::MuseV2
Definition: MuseV2.h:21
muse_v2_driver::Configuration::CommandList::get_accelerometer_hdr_full_scale
bool get_accelerometer_hdr_full_scale
Definition: Configuration.h:18
muse_v2_driver::Configuration::CommandList::get_gyroscope_full_scale
bool get_gyroscope_full_scale
Definition: Configuration.h:16
ROS_INFO
#define ROS_INFO(...)
muse_v2_driver::Configuration::CommandList::accelerometer_hdr_full_scale
uint16_t accelerometer_hdr_full_scale
Definition: Configuration.h:25
muse_v2_driver::MuseV2::serial
MuseV2_SerialConnection * serial
Definition: MuseV2.h:41
Configuration.h
muse_v2_driver::Configuration::CommandList::get_magnetometer_full_scale
bool get_magnetometer_full_scale
Definition: Configuration.h:19
ros::NodeHandle
muse_v2_driver::Configuration::setConfigurationParams
bool setConfigurationParams(SetConfigurationParams::Request &req, SetConfigurationParams::Response &res, MuseV2 *muse_v2)
Definition: Configuration.cpp:109


muse_v2_driver
Author(s): Elisa Tosello , Roberto Bortoletto
autogenerated on Thu Jan 20 2022 03:24:53