18 #ifndef GZ_GUI_PLUGINS_TELEOP_HH_
19 #define GZ_GUI_PLUGINS_TELEOP_HH_
23 #include <gz/transport/Node.hh>
29 # define Teleop_EXPORTS_API
31 # if (defined(Teleop_EXPORTS))
32 # define Teleop_EXPORTS_API __declspec(dllexport)
34 # define Teleop_EXPORTS_API __declspec(dllimport)
38 namespace gz::gui::plugins
64 WRITE SetMaxForwardVel
65 NOTIFY MaxForwardVelChanged
72 WRITE SetMaxVerticalVel
73 NOTIFY MaxVerticalVelChanged
81 NOTIFY MaxYawVelChanged
91 public: virtual
void LoadConfig(const
tinyxml2::XMLElement *) override;
94 protected:
bool eventFilter(
QObject *_obj,
QEvent *_event) override;
100 public slots:
void OnTeleopTwist(
double _forwardVel,
double _verticalVel,
106 public: Q_INVOKABLE
QString Topic() const;
111 public slots:
void SetTopic(const
QString &_topic);
114 signals:
void TopicChanged();
118 public: Q_INVOKABLE
double MaxForwardVel() const;
122 public slots:
void SetMaxForwardVel(
double _velocity);
125 signals:
void MaxForwardVelChanged();
129 public: Q_INVOKABLE
double MaxVerticalVel() const;
133 public slots:
void SetMaxVerticalVel(
double _velocity);
136 signals:
void MaxVerticalVelChanged();
140 public: Q_INVOKABLE
double MaxYawVel() const;
144 public slots:
void SetMaxYawVel(
double _velocity);
147 signals:
void MaxYawVelChanged();
151 public slots:
void OnKeySwitch(
bool _checked);
154 public:
void SetKeyScale();
158 private:
std::unique_ptr<TeleopPrivate> dataPtr;
163 #endif // GZ_GUI_PLUGINS_TELEOP_HH_