9 #include <mrpt/core/lock_helper.h> 10 #include <mrpt/maps/CPointsMap.h> 11 #include <mrpt/maps/CSimplePointsMap.h> 12 #include <mrpt/obs/CObservation.h> 13 #include <mrpt/system/datetime.h> 20 using Ptr = std::shared_ptr<ObstacleSource>;
29 virtual mrpt::maps::CPointsMap::Ptr
obstacles(
30 mrpt::system::TTimeStamp t = mrpt::system::TTimeStamp()) = 0;
32 virtual bool dynamic()
const {
return false; }
40 const mrpt::maps::CPointsMap::Ptr& staticObstacles)
41 : static_obs_(staticObstacles)
47 [[maybe_unused]] mrpt::system::TTimeStamp t =
48 mrpt::system::TTimeStamp())
override 68 const mrpt::obs::CObservation::Ptr& o,
69 const mrpt::poses::CPose3D& robotPose)
71 auto lck = mrpt::lockHelper(obsMtx_);
73 robotPoseForObs_ = robotPose;
78 auto lck = mrpt::lockHelper(obsMtx_);
83 [[maybe_unused]] mrpt::system::TTimeStamp t =
84 mrpt::system::TTimeStamp())
override 86 auto lck = mrpt::lockHelper(obsMtx_);
89 auto pts = mrpt::maps::CSimplePointsMap::Create();
90 if (obs_) { pts->insertObservation(*obs_, robotPoseForObs_); }
97 mrpt::obs::CObservation::Ptr
obs_;
Definition: ObstacleSource.h:62
virtual bool dynamic() const
Definition: ObstacleSource.h:32
mrpt::maps::CPointsMap::Ptr obstacles([[maybe_unused]] mrpt::system::TTimeStamp t=mrpt::system::TTimeStamp()) override
Definition: ObstacleSource.h:46
mrpt::obs::CObservation::Ptr get_stored_sensor_observation() const
Definition: ObstacleSource.h:76
Definition: bestTrajectory.h:15
static Ptr FromStaticPointcloud(const mrpt::maps::CPointsMap::Ptr &pc)
ObstacleSourceGenericSensor()
Definition: ObstacleSource.h:65
mrpt::poses::CPose3D robotPoseForObs_
Definition: ObstacleSource.h:98
Definition: ObstacleSource.h:17
virtual mrpt::maps::CPointsMap::Ptr obstacles(mrpt::system::TTimeStamp t=mrpt::system::TTimeStamp())=0
std::shared_ptr< ObstacleSource > Ptr
Definition: ObstacleSource.h:20
Definition: ObstacleSource.h:36
virtual ~ObstacleSource()
mrpt::maps::CPointsMap::Ptr obstacles([[maybe_unused]] mrpt::system::TTimeStamp t=mrpt::system::TTimeStamp()) override
Definition: ObstacleSource.h:82
mrpt::obs::CObservation::Ptr obs_
Definition: ObstacleSource.h:97
void set_sensor_observation(const mrpt::obs::CObservation::Ptr &o, const mrpt::poses::CPose3D &robotPose)
Definition: ObstacleSource.h:67
mrpt::maps::CPointsMap::Ptr static_obs_
Definition: ObstacleSource.h:54
ObstacleSourceStaticPointcloud(const mrpt::maps::CPointsMap::Ptr &staticObstacles)
Definition: ObstacleSource.h:39
std::mutex obsMtx_
Definition: ObstacleSource.h:96