ed_sensor_integration
src
laser
laser_plugin.h
Go to the documentation of this file.
1
#ifndef ED_SENSOR_INTEGRATION_LASER_PLUGIN_H_
2
#define ED_SENSOR_INTEGRATION_LASER_PLUGIN_H_
3
4
#include "
ed/laser/updater.h
"
5
6
#include <
ed/plugin.h
>
7
#include <
ed/convex_hull.h
>
8
9
#include <
geolib/sensors/LaserRangeFinder.h
>
10
11
#include <ros/subscriber.h>
12
#include <ros/callback_queue.h>
13
#include <sensor_msgs/LaserScan.h>
14
15
#include <
queue
>
16
#include <
map
>
17
#include <
memory
>
18
19
class
LaserPlugin
:
public
ed::Plugin
20
{
21
22
public
:
23
24
LaserPlugin
();
25
26
virtual
~LaserPlugin
();
27
28
// initialise plugin
29
void
initialize
(
ed::InitData
& init);
30
31
// process plugin
32
void
process
(
const
ed::WorldModel
& world,
ed::UpdateRequest
&
req
);
33
34
private
:
35
ros::CallbackQueue
cb_queue_
;
36
37
ros::Subscriber
sub_scan_
;
38
39
std::queue<sensor_msgs::LaserScan::ConstPtr>
scan_buffer_
;
40
41
LaserUpdater
updater_
;
42
43
void
scanCallback
(
const
sensor_msgs::LaserScan::ConstPtr& msg);
44
53
void
update
(
const
ed::WorldModel
& world,
const
sensor_msgs::LaserScan::ConstPtr& scan,
54
const
geo::Pose3D
& sensor_pose,
ed::UpdateRequest
& req);
55
};
56
57
58
#endif
ed::Plugin
ed::UpdateRequest
LaserPlugin::LaserPlugin
LaserPlugin()
Definition:
laser_plugin.cpp:48
updater.h
LaserPlugin
Definition:
laser_plugin.h:19
convex_hull.h
LaserPlugin::updater_
LaserUpdater updater_
Definition:
laser_plugin.h:41
geo::Transform3T
ed::InitData
queue
LaserRangeFinder.h
LaserPlugin::sub_scan_
ros::Subscriber sub_scan_
Definition:
laser_plugin.h:37
LaserPlugin::scanCallback
void scanCallback(const sensor_msgs::LaserScan::ConstPtr &msg)
Definition:
laser_plugin.cpp:152
req
string req
map
ed::WorldModel
memory
plugin.h
LaserPlugin::cb_queue_
ros::CallbackQueue cb_queue_
Definition:
laser_plugin.h:35
LaserUpdater
Definition:
laser/updater.h:17
ed::Plugin::initialize
virtual void initialize()
LaserPlugin::scan_buffer_
std::queue< sensor_msgs::LaserScan::ConstPtr > scan_buffer_
Definition:
laser_plugin.h:39
LaserPlugin::~LaserPlugin
virtual ~LaserPlugin()
Definition:
laser_plugin.cpp:52
LaserPlugin::process
void process(const ed::WorldModel &world, ed::UpdateRequest &req)
Definition:
laser_plugin.cpp:74
LaserPlugin::update
void update(const ed::WorldModel &world, const sensor_msgs::LaserScan::ConstPtr &scan, const geo::Pose3D &sensor_pose, ed::UpdateRequest &req)
Update the worldmodel based on a novel laserscan message.
Definition:
laser_plugin.cpp:129
Generated on Sun Feb 23 2025 04:34:57 for ed_sensor_integration by
1.8.17