uORB::Subscription subscribe directly to uORB device node object

This commit is contained in:
Daniel Agar
2019-06-03 17:06:21 -04:00
parent 2d1c60bc85
commit 2c63e335e9
37 changed files with 766 additions and 270 deletions
@@ -210,7 +210,7 @@ void BlockLocalPositionEstimator::update()
if (!armedState && (_sub_lidar == nullptr || _sub_sonar == nullptr)) {
// detect distance sensors
for (size_t i = 0; i < N_DIST_SUBS; i++) {
uORB::Subscription<distance_sensor_s> *s = _dist_subs[i];
uORB::SubscriptionPollable<distance_sensor_s> *s = _dist_subs[i];
if (s == _sub_lidar || s == _sub_sonar) { continue; }
@@ -9,7 +9,7 @@
#include <matrix/Matrix.hpp>
// uORB Subscriptions
#include <uORB/Subscription.hpp>
#include <uORB/SubscriptionPollable.hpp>
#include <uORB/topics/vehicle_status.h>
#include <uORB/topics/actuator_armed.h>
#include <uORB/topics/vehicle_land_detected.h>
@@ -246,24 +246,24 @@ private:
// ----------------------------
// subscriptions
uORB::Subscription<actuator_armed_s> _sub_armed;
uORB::Subscription<vehicle_land_detected_s> _sub_land;
uORB::Subscription<vehicle_attitude_s> _sub_att;
uORB::Subscription<optical_flow_s> _sub_flow;
uORB::Subscription<sensor_combined_s> _sub_sensor;
uORB::Subscription<parameter_update_s> _sub_param_update;
uORB::Subscription<vehicle_gps_position_s> _sub_gps;
uORB::Subscription<vehicle_odometry_s> _sub_visual_odom;
uORB::Subscription<vehicle_odometry_s> _sub_mocap_odom;
uORB::Subscription<distance_sensor_s> _sub_dist0;
uORB::Subscription<distance_sensor_s> _sub_dist1;
uORB::Subscription<distance_sensor_s> _sub_dist2;
uORB::Subscription<distance_sensor_s> _sub_dist3;
uORB::Subscription<distance_sensor_s> *_dist_subs[N_DIST_SUBS];
uORB::Subscription<distance_sensor_s> *_sub_lidar;
uORB::Subscription<distance_sensor_s> *_sub_sonar;
uORB::Subscription<landing_target_pose_s> _sub_landing_target_pose;
uORB::Subscription<vehicle_air_data_s> _sub_airdata;
uORB::SubscriptionPollable<actuator_armed_s> _sub_armed;
uORB::SubscriptionPollable<vehicle_land_detected_s> _sub_land;
uORB::SubscriptionPollable<vehicle_attitude_s> _sub_att;
uORB::SubscriptionPollable<optical_flow_s> _sub_flow;
uORB::SubscriptionPollable<sensor_combined_s> _sub_sensor;
uORB::SubscriptionPollable<parameter_update_s> _sub_param_update;
uORB::SubscriptionPollable<vehicle_gps_position_s> _sub_gps;
uORB::SubscriptionPollable<vehicle_odometry_s> _sub_visual_odom;
uORB::SubscriptionPollable<vehicle_odometry_s> _sub_mocap_odom;
uORB::SubscriptionPollable<distance_sensor_s> _sub_dist0;
uORB::SubscriptionPollable<distance_sensor_s> _sub_dist1;
uORB::SubscriptionPollable<distance_sensor_s> _sub_dist2;
uORB::SubscriptionPollable<distance_sensor_s> _sub_dist3;
uORB::SubscriptionPollable<distance_sensor_s> *_dist_subs[N_DIST_SUBS];
uORB::SubscriptionPollable<distance_sensor_s> *_sub_lidar;
uORB::SubscriptionPollable<distance_sensor_s> *_sub_sonar;
uORB::SubscriptionPollable<landing_target_pose_s> _sub_landing_target_pose;
uORB::SubscriptionPollable<vehicle_air_data_s> _sub_airdata;
// publications
uORB::Publication<vehicle_local_position_s> _pub_lpos;