13 #ifndef XBOT_DIFF_DRIVE_HPP_    14 #define XBOT_DIFF_DRIVE_HPP_    23 #include <ecl/mobile_robot.hpp>    24 #include <ecl/threads/mutex.hpp>    25 #include "../macros.hpp"    41   void update(
const unsigned int &time_stamp,
    42               const uint16_t &left_encoder,
    43               const uint16_t &right_encoder,
    45               ecl::linear_algebra::Vector3d &pose_update_rates);
    47   void getWheelJointStates(
float &wheel_left_angle, 
float &wheel_left_angle_rate,
    48                            float &wheel_right_angle, 
float &wheel_right_angle_rate);
    49   void setVelocityCommands(
const float &vx, 
const float &wz);
    50   void velocityCommands(
const float &vx, 
const float &wz);
    56   std::vector<float> velocityCommands(); 
    57   std::vector<float> pointVelocity() 
const; 
    85   short bound(
const float &value);
 std::vector< float > point_velocity
unsigned int last_timestamp
unsigned short last_tick_right
ecl::DifferentialDrive::Kinematics diff_drive_kinematics
mobile_robot::DifferentialDriveKinematics Kinematics
void velocityCommands(const std::vector< float > &cmd)
float last_velocity_right
ecl::Mutex velocity_mutex
const ecl::DifferentialDrive::Kinematics & kinematics()