12 #include <mrpt/obs/CObservationGPS.h>
13 #include <mrpt/poses/CPose3D.h>
14 #include <mrpt/random.h>
15 #include <mvsim/Sensors/SensorBase.h>
29 DECLARES_REGISTER_SENSOR(
GNSS)
36 GNSS& operator=(
const GNSS&) =
delete;
49 void internalGuiUpdate(
50 const mrpt::optional_ref<mrpt::opengl::COpenGLScene>& viz,
51 [[maybe_unused]]
const mrpt::optional_ref<mrpt::opengl::COpenGLScene>& physical,
52 [[maybe_unused]]
bool childrenOnly)
override;
54 void notifySimulableSetPose(
const mrpt::math::TPose3D& newPose)
override;
56 mrpt::math::TPose3D
getRelativePose()
const override {
return obs_model_.sensorPose.asTPose(); }
59 obs_model_.sensorPose = mrpt::poses::CPose3D(p);
69 mrpt::obs::CObservationGPS obs_model_;
71 std::mutex last_obs_cs_;
76 mrpt::opengl::CSetOfObjects::Ptr gl_sensor_origin_, gl_sensor_origin_corner_;
78 mrpt::random::CRandomGenerator rng_;
double vertical_std_noise_
[m]
Definition: GNSS.h:65
mrpt::obs::CObservationGPS::Ptr last_obs_
Definition: GNSS.h:74
virtual void simul_pre_timestep(const TSimulContext &context) override
mrpt::math::TPose3D getRelativePose() const override
Definition: GNSS.h:56
virtual void loadConfigFrom(const rapidxml::xml_node< char > *root) override
void setRelativePose(const mrpt::math::TPose3D &p) override
Definition: GNSS.h:57
double horizontal_std_noise_
[m]
Definition: GNSS.h:64
virtual void simul_post_timestep(const TSimulContext &context) override
Virtual base class for all sensors.
Definition: SensorBase.h:35
Definition: Simulable.h:40
Definition: basic_types.h:58