Fawkes API  Fawkes Development Version
arm_dummy.h
1 
2 /***************************************************************************
3  * arm_dummy.h - Class for a Kinova Jaco arm, simulating a dummy arm
4  *
5  * Created: Mon Aug 04 19:58:22 2014
6  * Copyright 2014 Bahram Maleki-Fard
7  *
8  ****************************************************************************/
9 
10 /* This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Library General Public License for more details.
19  *
20  * Read the full text in the LICENSE.GPL file in the doc directory.
21  */
22 
23 #ifndef __PLUGINS_JACO_ARM_DUMMY_H_
24 #define __PLUGINS_JACO_ARM_DUMMY_H_
25 
26 #include "arm.h"
27 #include "types.h"
28 
29 
30 namespace fawkes {
31 #if 0 /* just to make Emacs auto-indent happy */
32 }
33 #endif
34 
35 //class RefPtr;
36 
37 class JacoArmDummy : public JacoArm
38 {
39  public:
40  JacoArmDummy(const char *name);
41  virtual ~JacoArmDummy();
42 
43  virtual void initialize();
44 
45  virtual bool final();
46  virtual bool initialized();
47 
48  virtual void get_joints(std::vector<float> &to) const;
49  virtual void get_coords(std::vector<float> &to);
50  virtual void get_fingers(std::vector<float> &to) const;
51 
52  virtual void stop();
53  virtual void push_joystick(unsigned int button);
54  virtual void release_joystick();
55 
56  virtual void goto_trajec(std::vector< std::vector<float> >* trajec, std::vector<float> &fingers);
57  virtual void goto_joints(std::vector<float> &joints, std::vector<float> &fingers, bool followup=false);
58  virtual void goto_coords(std::vector<float> &coords, std::vector<float> &fingers);
59  virtual void goto_ready();
60  virtual void goto_retract();
61 
62  private:
63 
64  std::vector<float> __coords;
65  std::vector<float> __joints;
66  std::vector<float> __fingers;
67 
68  std::vector<float> __pos_ready;
69  std::vector<float> __pos_retract;
70 
71 };
72 
73 
74 } // end of namespace fawkes
75 
76 #endif
virtual bool initialized()
Check if arm is initialized.
Definition: arm_dummy.cpp:102
virtual void goto_ready()
Move the arm to READY position.
Definition: arm_dummy.cpp:193
JacoArmDummy(const char *name)
Constructor.
Definition: arm_dummy.cpp:58
virtual ~JacoArmDummy()
Destructor.
Definition: arm_dummy.cpp:84
virtual void release_joystick()
Simulate releasing the joystick of the Kinova Jaco arm.
Definition: arm_dummy.cpp:138
Fawkes library namespace.
virtual void goto_retract()
Move the arm to RETRACT position.
Definition: arm_dummy.cpp:199
virtual void goto_joints(std::vector< float > &joints, std::vector< float > &fingers, bool followup=false)
Move the arm to given configuration.
Definition: arm_dummy.cpp:169
Class for simulating a dummy Kinova Jaco Arm.
Definition: arm_dummy.h:37
virtual void get_coords(std::vector< float > &to)
Get the cartesian coordinates of the arm.
Definition: arm_dummy.cpp:109
virtual void push_joystick(unsigned int button)
Simulate a push of a button on the joystick of the Kinova Jaco arm.
Definition: arm_dummy.cpp:133
virtual void stop()
Stop the current movement.
Definition: arm_dummy.cpp:128
virtual void goto_trajec(std::vector< std::vector< float > > *trajec, std::vector< float > &fingers)
Move the arm along the given trajectory.
Definition: arm_dummy.cpp:150
virtual void get_fingers(std::vector< float > &to) const
Get the position values of the fingers.
Definition: arm_dummy.cpp:121
virtual void goto_coords(std::vector< float > &coords, std::vector< float > &fingers)
Move the arm to given configuration.
Definition: arm_dummy.cpp:186
virtual void get_joints(std::vector< float > &to) const
Get the joint angles of the arm.
Definition: arm_dummy.cpp:115
Abstract class for a Kinova Jaco Arm that we want to control.
Definition: arm.h:38
virtual void initialize()
Initialize the arm.
Definition: arm_dummy.cpp:89