KinematicsConstraint.h
Go to the documentation of this file.
1 /*
2  * Copyright 2015-2022 CNRS-UM LIRMM, CNRS-AIST JRL
3  */
4 
5 #pragma once
6 
7 #include <mc_rbdyn/Robots.h>
9 
10 #include <mc_rtc/void_ptr.h>
11 
12 namespace mc_solver
13 {
14 
20 {
21 public:
30  KinematicsConstraint(const mc_rbdyn::Robots & robots, unsigned int robotIndex, double timeStep);
31 
43  unsigned int robotIndex,
44  double timeStep,
45  const std::array<double, 3> & damper,
46  double velocityPercent = 0.5);
47 
48 protected:
50  void addToSolverImpl(mc_solver::QPSolver & solver) override;
52  void removeFromSolverImpl(mc_solver::QPSolver & solver) override;
65 };
66 
67 } // namespace mc_solver
#define MC_SOLVER_DLLAPI
Definition: api.h:50
std::unique_ptr< void, void(*)(void *)> void_ptr
Definition: void_ptr.h:14
Definition: Contact.h:18
Definition: Robots.h:16
This class is a basis to wrap Constraint functions from Tasks. The aim of such wrappers should be two...
Definition: ConstraintSet.h:21
Definition: KinematicsConstraint.h:20
void addToSolverImpl(mc_solver::QPSolver &solver) override
void removeFromSolverImpl(mc_solver::QPSolver &solver) override
mc_rtc::void_ptr constraint_
Definition: KinematicsConstraint.h:64
KinematicsConstraint(const mc_rbdyn::Robots &robots, unsigned int robotIndex, double timeStep, const std::array< double, 3 > &damper, double velocityPercent=0.5)
KinematicsConstraint(const mc_rbdyn::Robots &robots, unsigned int robotIndex, double timeStep)
Definition: QPSolver.h:86