23#ifndef _PLUGINS_JACO_OPENRAVE_THREAD_H_
24#define _PLUGINS_JACO_OPENRAVE_THREAD_H_
26#include "openrave_base_thread.h"
29# include <openrave/openrave.h>
30# include <plugins/openrave/aspect/openrave.h>
48 add_target(
float x,
float y,
float z,
float e1,
float e2,
float e3,
bool plan =
true);
50 add_target_ang(
float j1,
float j2,
float j3,
float j4,
float j5,
float j6,
bool plan =
true);
52 set_target(
float x,
float y,
float z,
float e1,
float e2,
float e3,
bool plan =
true);
54 set_target_ang(
float j1,
float j2,
float j3,
float j4,
float j5,
float j6,
bool plan =
true);
74 std::string cfg_manipname_;
78 fawkes::jaco_openrave_set_t planner_env_;
80 OpenRAVE::RobotBasePtr robot_;
81 OpenRAVE::RobotBase::ManipulatorPtr manip_;
82 std::vector<OpenRAVE::dReal> joints_;
84 std::vector<OpenRAVE::GraphHandlePtr> graph_handle_;
85 std::vector<OpenRAVE::GraphHandlePtr> graph_current_;
87 std::vector<OpenRAVE::KinBody::LinkPtr> links_;
89 bool plotted_current_;
Base Jaco Arm thread, integrating OpenRAVE.
Jaco Arm thread for single-arm setup, integrating OpenRAVE.
virtual void loop()
Mani loop.
JacoOpenraveThread(const char *name, fawkes::jaco_arm_t *arm, bool load_robot=true)
Constructor.
virtual bool add_target(float x, float y, float z, float e1, float e2, float e3, bool plan=true)
Solve IK and add target to the queue.
virtual bool add_target_ang(float j1, float j2, float j3, float j4, float j5, float j6, bool plan=true)
Add target joint values to the queue.
virtual bool set_target_ang(float j1, float j2, float j3, float j4, float j5, float j6, bool plan=true)
Flush the target_queue and add this one.
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual bool set_target(float x, float y, float z, float e1, float e2, float e3, bool plan=true)
Flush the target_queue and add this one.
virtual void update_openrave()
Update the openrave environment to represent the current situation.
virtual void finalize()
Finalize the thread.
virtual void plot_first()
Plot the first target of the queue in the viewer_env.
RefPtr<> is a reference-counting shared smartpointer.
const char * name() const
Get name of thread.
Jaco struct containing all components required for one arm.