SCL  1.0
Standard Control Library : Control, dynamics, physics, and simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Groups Pages
CTaskOpPosNoGravity.hpp
1 /* This file is part of scl, a control and simulation library
2 for robots and biomechanical models.
3 
4 scl is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 3 of the License, or (at your option) any later version.
8 
9 Alternatively, you can redistribute it and/or
10 modify it under the terms of the GNU General Public License as
11 published by the Free Software Foundation; either version 2 of
12 the License, or (at your option) any later version.
13 
14 scl is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU Lesser General Public
20 License and a copy of the GNU General Public License along with
21 scl. If not, see <http://www.gnu.org/licenses/>.
22 */
23 /* \file CTaskOpPosNoGravity.hpp
24  *
25  * Created on: Aug 19, 2010
26  *
27  * Copyright (C) 2010
28  *
29  * Author: Samir Menon <smenon@stanford.edu>
30  */
31 
32 #ifndef CTASKOPPOSNOGRAVITY_HPP_
33 #define CTASKOPPOSNOGRAVITY_HPP_
34 
35 #include <string>
36 #include <vector>
37 
38 #include <scl/DataTypes.hpp>
39 
40 #include <scl/control/task/tasks/data_structs/STaskOpPosNoGravity.hpp>
41 
42 #include <scl/control/task/tasks/CTaskOpPos.hpp>
43 
44 #include <Eigen/Dense>
45 #include <Eigen/SVD>
46 
47 
48 namespace scl
49 {
63 {
64 public:
65  /********************************
66  * CTaskBase API
67  *********************************/
70  virtual bool init(STaskBase* arg_task_data,
71  CDynamicsBase* arg_dynamics)
72  { return scl::CTaskOpPos::init(arg_task_data, arg_dynamics); }
73 
76  { return scl::CTaskOpPos::getTaskData(); }
77 
80  virtual void reset()
81  { return scl::CTaskOpPos::reset(); }
82 
84  virtual bool computeServo(const SRobotSensors* arg_sensors)
85  { return scl::CTaskOpPos::computeServo(arg_sensors); }
86 
89  virtual bool computeModel(const SRobotSensors* arg_sensors)
90  { return scl::CTaskOpPos::computeModel(arg_sensors); }
91 
92  /********************************
93  * CTaskOpPosNoGravity specific functions
94  *********************************/
97  { flag_compute_gravity_= false; }
98 
101 };
102 
103 }
104 
105 #endif /* CMARKERTRACKTASK_HPP_ */
Definition: STaskBase.hpp:69
virtual ~CTaskOpPosNoGravity()
Definition: CTaskOpPosNoGravity.hpp:100
CTaskOpPosNoGravity()
Definition: CTaskOpPosNoGravity.hpp:96
virtual bool computeServo(const SRobotSensors *arg_sensors)
Definition: CTaskOpPos.cpp:173
virtual bool init(STaskBase *arg_task_data, CDynamicsBase *arg_dynamics)
Definition: CTaskOpPos.cpp:63
virtual bool computeModel(const SRobotSensors *arg_sensors)
Definition: CTaskOpPosNoGravity.hpp:89
virtual STaskBase * getTaskData()
Definition: CTaskOpPosNoGravity.hpp:75
Definition: CDynamicsBase.hpp:55
virtual void reset()
Definition: CTaskOpPosNoGravity.hpp:80
virtual bool computeModel(const SRobotSensors *arg_sensors)
Definition: CTaskOpPos.cpp:221
Definition: CTaskOpPosNoGravity.hpp:62
virtual bool computeServo(const SRobotSensors *arg_sensors)
Definition: CTaskOpPosNoGravity.hpp:84
virtual void reset()
Definition: CTaskOpPos.cpp:165
virtual STaskBase * getTaskData()
Definition: CTaskOpPos.cpp:105
Definition: CTaskOpPos.hpp:62
virtual bool init(STaskBase *arg_task_data, CDynamicsBase *arg_dynamics)
Definition: CTaskOpPosNoGravity.hpp:70
Definition: SRobotIO.hpp:49