contact-level.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2021 University of Trento
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 __tsid_contact_level_hpp__
19 #define __tsid_contact_level_hpp__
20 
21 #include "tsid/math/fwd.hpp"
23 
24 namespace tsid
25 {
26 
34  struct ContactLevel
35  {
36  EIGEN_MAKE_ALIGNED_OPERATOR_NEW
37 
39  std::shared_ptr<math::ConstraintBase> motionConstraint;
40  std::shared_ptr<math::ConstraintInequality> forceConstraint;
41  std::shared_ptr<math::ConstraintEquality> forceRegTask;
42  unsigned int index;
43 
45  };
46 
47 }
48 
49 #endif // ifndef __tsid_contact_level_hpp__
Definition: contact-level.hpp:34
std::shared_ptr< math::ConstraintBase > motionConstraint
Definition: contact-level.hpp:39
Base template of a Contact.
Definition: contact-base.hpp:34
unsigned int index
Definition: contact-level.hpp:42
ContactLevel(contacts::ContactBase &contact)
index of 1st element of associated force variable in the force vector
Definition: contact-level.cpp:24
EIGEN_MAKE_ALIGNED_OPERATOR_NEW contacts::ContactBase & contact
Definition: contact-level.hpp:38
std::shared_ptr< math::ConstraintEquality > forceRegTask
Definition: contact-level.hpp:41
Definition: constraint-bound.hpp:26
std::shared_ptr< math::ConstraintInequality > forceConstraint
Definition: contact-level.hpp:40