IRI ROS Specific Driver Class. More...
#include <tibi_dabo_head_tracking_alg.h>
Public Types | |
typedef tibi_dabo_head_tracking::TibiDaboHeadTrackingConfig | Config |
define config type | |
Public Member Functions | |
void | compute_head_position (float target_pan, float target_tilt, float *pan, float *tilt) |
void | config_update (Config &new_cfg, uint32_t level=0) |
config update | |
void | get_current_error (float *pan_error, float *tilt_error) |
void | lock (void) |
Lock Algorithm. | |
void | set_current_head_position (float pan, float tilt) |
TibiDaboHeadTrackingAlgorithm (void) | |
constructor | |
bool | try_enter (void) |
Tries Access to Algorithm. | |
void | unlock (void) |
Unlock Algorithm. | |
~TibiDaboHeadTrackingAlgorithm (void) | |
Destructor. | |
Public Attributes | |
Config | config_ |
config variable | |
Protected Attributes | |
CMutex | alg_mutex_ |
define config type | |
float | current_pan |
float | current_tilt |
float | max_pan_angle |
float | max_tilt_angle |
float | min_pan_angle |
float | min_tilt_angle |
int | mode |
TPID | pan_control |
float | pan_error |
TPID | tilt_control |
float | tilt_error |
IRI ROS Specific Driver Class.
Definition at line 45 of file tibi_dabo_head_tracking_alg.h.
typedef tibi_dabo_head_tracking::TibiDaboHeadTrackingConfig TibiDaboHeadTrackingAlgorithm::Config |
define config type
Define a Config type with the TibiDaboHeadTrackingConfig. All driver implementations will then use the same variable type Config.
Definition at line 80 of file tibi_dabo_head_tracking_alg.h.
constructor
In this constructor parameters related to the specific driver can be initalized. Those parameters can be also set in the openDriver() function. Attributes from the main node driver class IriBaseDriver such as loop_rate, may be also overload here.
Definition at line 3 of file tibi_dabo_head_tracking_alg.cpp.
Destructor.
This destructor is called when the object is about to be destroyed.
Definition at line 24 of file tibi_dabo_head_tracking_alg.cpp.
void TibiDaboHeadTrackingAlgorithm::compute_head_position | ( | float | target_pan, |
float | target_tilt, | ||
float * | pan, | ||
float * | tilt | ||
) |
Definition at line 50 of file tibi_dabo_head_tracking_alg.cpp.
void TibiDaboHeadTrackingAlgorithm::config_update | ( | Config & | new_cfg, |
uint32_t | level = 0 |
||
) |
config update
In this function the driver parameters must be updated with the input config variable. Then the new configuration state will be stored in the Config attribute.
new_cfg | the new driver configuration state |
level | level in which the update is taken place |
Definition at line 28 of file tibi_dabo_head_tracking_alg.cpp.
void TibiDaboHeadTrackingAlgorithm::get_current_error | ( | float * | pan_error, |
float * | tilt_error | ||
) |
Definition at line 83 of file tibi_dabo_head_tracking_alg.cpp.
void TibiDaboHeadTrackingAlgorithm::lock | ( | void | ) | [inline] |
Lock Algorithm.
Locks access to the Algorithm class
Definition at line 105 of file tibi_dabo_head_tracking_alg.h.
void TibiDaboHeadTrackingAlgorithm::set_current_head_position | ( | float | pan, |
float | tilt | ||
) |
Definition at line 75 of file tibi_dabo_head_tracking_alg.cpp.
bool TibiDaboHeadTrackingAlgorithm::try_enter | ( | void | ) | [inline] |
Tries Access to Algorithm.
Tries access to Algorithm
Definition at line 121 of file tibi_dabo_head_tracking_alg.h.
void TibiDaboHeadTrackingAlgorithm::unlock | ( | void | ) | [inline] |
Unlock Algorithm.
Unlocks access to the Algorithm class
Definition at line 112 of file tibi_dabo_head_tracking_alg.h.
CMutex TibiDaboHeadTrackingAlgorithm::alg_mutex_ [protected] |
define config type
Define a Config type with the TibiDaboHeadTrackingConfig. All driver implementations will then use the same variable type Config.
Definition at line 54 of file tibi_dabo_head_tracking_alg.h.
config variable
This variable has all the driver parameters defined in the cfg config file. Is updated everytime function config_update() is called.
Definition at line 88 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::current_pan [protected] |
Definition at line 57 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::current_tilt [protected] |
Definition at line 58 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::max_pan_angle [protected] |
Definition at line 63 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::max_tilt_angle [protected] |
Definition at line 65 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::min_pan_angle [protected] |
Definition at line 64 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::min_tilt_angle [protected] |
Definition at line 66 of file tibi_dabo_head_tracking_alg.h.
int TibiDaboHeadTrackingAlgorithm::mode [protected] |
Definition at line 71 of file tibi_dabo_head_tracking_alg.h.
TPID TibiDaboHeadTrackingAlgorithm::pan_control [protected] |
Definition at line 60 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::pan_error [protected] |
Definition at line 68 of file tibi_dabo_head_tracking_alg.h.
TPID TibiDaboHeadTrackingAlgorithm::tilt_control [protected] |
Definition at line 61 of file tibi_dabo_head_tracking_alg.h.
float TibiDaboHeadTrackingAlgorithm::tilt_error [protected] |
Definition at line 69 of file tibi_dabo_head_tracking_alg.h.