22 #ifndef __PLUGINS_PANTILT_SONY_EVID100P_THREAD_H_ 23 #define __PLUGINS_PANTILT_SONY_EVID100P_THREAD_H_ 25 #include "../act_thread.h" 27 #include <blackboard/interface_listener.h> 28 #include <interfaces/CameraControlInterface.h> 30 #ifdef USE_TIMETRACKER 31 # include <utils/time/tracker.h> 37 class PanTiltInterface;
39 class SwitchInterface;
50 std::string &ptu_cfg_prefix,
51 std::string &ptu_name);
64 protected:
virtual void run() { Thread::run(); }
75 std::string __pantilt_cfg_prefix;
76 std::string __ptu_cfg_prefix;
77 std::string __ptu_name;
78 std::string __cfg_device;
79 unsigned int __cfg_read_timeout_ms;
86 const float &pan_min,
const float &pan_max,
87 const float &tilt_min,
const float &tilt_max);
90 void set_power(
bool powered);
91 void goto_pantilt(
float pan,
float tilt);
92 void get_pantilt(
float &pan,
float &tilt);
93 void set_velocities(
float pan_vel,
float tilt_vel);
94 void set_mirror(
bool enabled);
95 void set_zoom(
unsigned int zoom_value);
96 unsigned int get_zoom();
100 bool has_fresh_data();
106 void exec_goto_pantilt(
float pan,
float tilt);
107 void exec_set_zoom(
unsigned int zoom);
109 void exec_set_mirror(
bool mirror);
117 bool __power_pending;
118 bool __power_desired;
138 bool __effect_pending;
142 bool __mirror_pending;
143 bool __target_mirror;
148 unsigned int __cur_zoom;
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.
Fawkes library namespace.
void update_sensor_values()
Update sensor values as necessary.
Thread class encapsulation of pthreads.
CameraControlInterface Fawkes BlackBoard Interface.
Base class for all Fawkes BlackBoard interfaces.
Logger * logger
This is the Logger member used to access the logger.
SwitchInterface Fawkes BlackBoard Interface.
Effect
Enumeration defining the possible effects.
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.
JointInterface Fawkes BlackBoard Interface.
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.