23 #ifndef _PLUGINS_PANTILT_DIRPERC_DP_THREAD_H_
24 #define _PLUGINS_PANTILT_DIRPERC_DP_THREAD_H_
26 #include "../act_thread.h"
28 #include <blackboard/interface_listener.h>
30 #ifdef USE_TIMETRACKER
31 # include <utils/time/tracker.h>
37 class PanTiltInterface;
48 std::string &ptu_cfg_prefix,
49 std::string &ptu_name);
76 std::string pantilt_cfg_prefix_;
77 std::string ptu_cfg_prefix_;
78 std::string ptu_name_;
79 std::string cfg_device_;
80 unsigned int cfg_read_timeout_ms_;
85 WorkerThread(std::string ptu_name,
90 void goto_pantilt(
float pan,
float tilt);
91 void get_pantilt(
float &pan,
float &tilt);
94 bool has_fresh_data();
100 void exec_goto_pantilt(
float pan,
float tilt);
DirectedPerception PTU implementation.
PanTilt act thread for PTUs from DirectedPerception employing the ASCII protocol.
virtual void loop()
Code to execute in the thread.
PanTiltDirectedPerceptionThread(std::string &pantilt_cfg_prefix, std::string &ptu_cfg_prefix, std::string &ptu_name)
Constructor.
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
void update_sensor_values()
Update sensor values as necessary.
virtual bool bb_interface_message_received(fawkes::Interface *interface, fawkes::Message *message) noexcept
BlackBoard message received notification.
BlackBoard interface listener.
Base class for all Fawkes BlackBoard interfaces.
JointInterface Fawkes BlackBoard Interface.
Logger * logger
This is the Logger member used to access the logger.
Base class for all messages passed through interfaces in Fawkes BlackBoard.
Mutex mutual exclusion lock.
PanTiltInterface Fawkes BlackBoard Interface.
Thread class encapsulation of pthreads.
Fawkes library namespace.