tsid 1.9.0
Efficient Task Space Inverse Dynamics for Multi-body Systems based on Pinocchio
Loading...
Searching...
No Matches
task-contact-force.hpp
Go to the documentation of this file.
1//
2// Copyright (c) 2017 CNRS
3//
4// This file is part of tsid
5// tsid is free software: you can redistribute it
6// and/or modify it under the terms of the GNU Lesser General Public
7// License as published by the Free Software Foundation, either version
8// 3 of the License, or (at your option) any later version.
9// tsid is distributed in the hope that it will be
10// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
11// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12// General Lesser Public License for more details. You should have
13// received a copy of the GNU Lesser General Public License along with
14// tsid If not, see
15// <http://www.gnu.org/licenses/>.
16//
17
18#ifndef __invdyn_task_contact_force_hpp__
19#define __invdyn_task_contact_force_hpp__
20
21#include <tsid/deprecated.hh>
24#include <memory>
25
26namespace tsid {
27namespace tasks {
28class TaskContactForce : public TaskBase {
29 public:
30 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
31
32 TaskContactForce(const std::string& name, RobotWrapper& robot);
33
40 // clang-format off
41 TSID_DISABLE_WARNING(-Woverloaded-virtual)
42 // clang-format on
43 virtual const ConstraintBase& compute(
44 const double t, ConstRefVector q, ConstRefVector v, Data& data,
45 const std::vector<std::shared_ptr<ContactLevel> >* contacts) = 0;
47
53 virtual const std::string& getAssociatedContactName() = 0;
54};
55} // namespace tasks
56} // namespace tsid
57
58#endif // ifndef __invdyn_task_contact_force_hpp__
const std::string & name() const
Definition task-base.cpp:12
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef math::ConstraintBase ConstraintBase
Definition task-base.hpp:38
math::ConstRefVector ConstRefVector
Definition task-base.hpp:39
TaskBase(const std::string &name, RobotWrapper &robot)
Definition task-base.cpp:9
pinocchio::Data Data
Definition task-base.hpp:40
robots::RobotWrapper RobotWrapper
Definition task-base.hpp:41
EIGEN_MAKE_ALIGNED_OPERATOR_NEW TaskContactForce(const std::string &name, RobotWrapper &robot)
Definition task-contact-force.cpp:11
virtual TSID_DISABLE_WARNING_PUSH const ConstraintBase & compute(const double t, ConstRefVector q, ConstRefVector v, Data &data, const std::vector< std::shared_ptr< ContactLevel > > *contacts)=0
virtual TSID_DISABLE_WARNING_POP const std::string & getAssociatedContactName()=0
#define TSID_DISABLE_WARNING_PUSH
Definition macros.hpp:27
#define TSID_DISABLE_WARNING_POP
Definition macros.hpp:28
Definition contact-6d.hpp:15
Definition fwd.hpp:9
Definition constraint-bound.hpp:25
Definition contact-level.hpp:20