TinyURDF 1.0.0
Loading...
Searching...
No Matches
sensor_base.h
Go to the documentation of this file.
1#ifndef INCLUDE_TINYURDF_COMMON_SENSOR_BASE_H_
2#define INCLUDE_TINYURDF_COMMON_SENSOR_BASE_H_
3
4// Copyright 2025 Wissem CHIHA
5
6#include <memory>
7
9#include "core/pose.h"
10
24template <class T>
25class SensorBase : public ObjectBase
26{
27 public:
28 virtual void setRange(T& r) = 0;
29 virtual void getRange(T& r) = 0;
30 virtual void setUpdateRate(double ur) = 0;
31 virtual void getUpdateRate(double& ur) const = 0;
32 virtual void setOrigin(std::shared_ptr<Pose> o) = 0;
33 virtual void getOrigin(double* xyz) const = 0;
34
35 protected:
38 virtual void update() {};
39 virtual void reset() {};
40 virtual void get(T& o) const = 0;
41};
42#endif // INCLUDE_TINYURDF_COMMON_SENSOR_BASE_H_
Definition object_base.h:9
Base class for all sensors.
Definition sensor_base.h:26
virtual void getUpdateRate(double &ur) const =0
~SensorBase()
Definition sensor_base.h:37
virtual void setUpdateRate(double ur)=0
virtual void setOrigin(std::shared_ptr< Pose > o)=0
virtual void get(T &o) const =0
virtual void getOrigin(double *xyz) const =0
virtual void setRange(T &r)=0
virtual void reset()
Definition sensor_base.h:39
virtual void getRange(T &r)=0
virtual void update()
Definition sensor_base.h:38