23 #ifndef __PLUGINS_NAO_DCM_THREAD_H_ 24 #define __PLUGINS_NAO_DCM_THREAD_H_ 26 #include <core/threading/thread.h> 27 #include <aspect/clock.h> 28 #include <aspect/logging.h> 29 #include <aspect/configurable.h> 30 #include <aspect/blackboard.h> 31 #include <aspect/blocked_timing.h> 32 #include <plugins/nao/aspect/naoqi.h> 34 #include <core/utils/lock_vector.h> 36 #include <interfaces/NaoJointPositionInterface.h> 37 #include <interfaces/NaoSensorInterface.h> 39 #include <althread/alprocesssignals.h> 40 #include <alcommon/alproxy.h> 45 class ALMemoryFastAccess;
48 class NaoJointStiffnessInterface;
66 virtual void finalize();
69 protected:
virtual void run() { Thread::run(); }
77 void process_messages();
78 std::vector<std::string> parse_servo_bitfield(
unsigned int servos);
81 void send_commands(
unsigned int servos, std::string what,
82 float value,
int time_offset);
83 void send_command(std::string name,
float value,
84 std::string kind,
int time_offset);
92 AL::ALPtr<AL::DCMProxy> __dcm;
93 AL::ALPtr<AL::ALMotionProxy> __almotion;
94 AL::ALPtr<AL::ALMemoryFastAccess> __memfa;
95 bool __robocup_version;
97 AL::ALProcessSignals::ProcessSignalConnection __dcm_sigconn;
109 uint8_t __robot_version[4];
111 int __usboard_version;
113 AL::ALValue __alljoint_names;
NaoJointPositionInterface Fawkes BlackBoard Interface.
Thread aspect to access to BlackBoard.
Thread aspect that allows to obtain the current time from the clock.
Fawkes library namespace.
Thread class encapsulation of pthreads.
NaoSensorInterface Fawkes BlackBoard Interface.
NaoJointStiffnessInterface Fawkes BlackBoard Interface.
Thread aspect to use blocked timing.
UltrasonicDirection
This determines the chosen sender/receiver.
Thread to provide DCM to Fawkes.
Thread aspect to log output.
Thread aspect to get access to NaoQi broker.
Thread aspect to access configuration data.
virtual void run()
Stub to see name in backtrace for easier debugging.
Thread to write data at full DCM frequency.
RobotType
Enumeration describing the actual version of the robot that's being used.