35 if ((msg->bumper & kobuki_msgs::SensorState::BUMPER_LEFT) ||
36 (msg->cliff & kobuki_msgs::SensorState::CLIFF_LEFT))
47 if ((msg->bumper & kobuki_msgs::SensorState::BUMPER_CENTRE) ||
48 (msg->cliff & kobuki_msgs::SensorState::CLIFF_CENTRE))
57 if ((msg->bumper & kobuki_msgs::SensorState::BUMPER_RIGHT) ||
58 (msg->cliff & kobuki_msgs::SensorState::CLIFF_RIGHT))
82 std::string base_link_frame;
86 nh.
param(
"side_point_angle", angle, 0.34906585);
87 nh.
param<std::string>(
"base_link_frame", base_link_frame,
"/base_link");
107 for (
size_t d = 0;
d <
pointcloud_.fields.size(); ++
d, offset += 4)
111 pointcloud_.fields[
d].datatype = sensor_msgs::PointField::FLOAT32;
ros::Subscriber core_sensor_sub_
void publish(const boost::shared_ptr< M > &message) const
Subscriber subscribe(const std::string &topic, uint32_t queue_size, void(T::*fp)(M), T *obj, const TransportHints &transport_hints=TransportHints())
ros::NodeHandle & getPrivateNodeHandle() const
sensor_msgs::PointCloud2 pointcloud_
PLUGINLIB_EXPORT_CLASS(kobuki_bumper2pc::Bumper2PcNodelet, nodelet::Nodelet)
bool param(const std::string ¶m_name, T ¶m_val, const T &default_val) const
Publisher advertise(const std::string &topic, uint32_t queue_size, bool latch=false)
Bumper2PcNodelet class declaration.
void coreSensorCB(const kobuki_msgs::SensorState::ConstPtr &msg)
Core sensors state structure callback.
uint32_t getNumSubscribers() const
ros::Publisher pointcloud_pub_
Bumper/cliff to pointcloud nodelet class declaration.