23 #ifndef __PLUGINS_PANTILT_SONY_EVID100P_THREAD_H_
24 #define __PLUGINS_PANTILT_SONY_EVID100P_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);
62 protected:
virtual void run() { Thread::run(); }
69 std::string __pantilt_cfg_prefix;
70 std::string __ptu_cfg_prefix;
71 std::string __ptu_name;
72 std::string __cfg_device;
73 unsigned int __cfg_read_timeout_ms;
81 const float &pan_min,
const float &pan_max,
82 const float &tilt_min,
const float &tilt_max);
85 void goto_pantilt(
float pan,
float tilt);
86 void get_pantilt(
float &pan,
float &tilt);
87 void set_velocities(
float pan_vel,
float tilt_vel);
90 bool has_fresh_data();
96 void exec_goto_pantilt(
float pan,
float tilt);
Base class for all messages passed through interfaces in Fawkes BlackBoard.
virtual void finalize()
Finalize the thread.
virtual void once()
Execute an action exactly once.
virtual void loop()
Code to execute in the thread.
void update_sensor_values()
Update sensor values as necessary.
Thread class encapsulation of pthreads.
Base class for all Fawkes BlackBoard interfaces.
Logger * logger
This is the Logger member used to access the logger.
Sony EviD100P Visca controller.
PanTiltInterface Fawkes BlackBoard Interface.
virtual bool bb_interface_message_received(fawkes::Interface *interface, fawkes::Message *message)
BlackBoard message received notification.
PanTiltSonyEviD100PThread(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.
Mutex mutual exclusion lock.
PanTilt act thread for the PTU part of the Sony EviD100P camera.
BlackBoard interface listener.
virtual void init()
Initialize the thread.