SimulationContactPair.h
Go to the documentation of this file.
1 /*
2  * Copyright 2015-2019 CNRS-UM LIRMM, CNRS-AIST JRL
3  */
4 
5 #ifndef _H_SIMULATIONCONTACTPAIR_H_
6 #define _H_SIMULATIONCONTACTPAIR_H_
7 
8 #include <mc_control/api.h>
9 #include <mc_rbdyn/Robot.h>
10 #include <mc_rbdyn/SCHAddon.h>
11 #include <mc_rbdyn/surface_hull.h>
12 
13 #include <memory>
14 
15 namespace mc_control
16 {
17 
19 {
20 public:
21  SimulationContactPair(const std::shared_ptr<mc_rbdyn::Surface> & robotSurface,
22  const std::shared_ptr<mc_rbdyn::Surface> & envSurface);
23 
24  double update(const mc_rbdyn::Robot & robot, const mc_rbdyn::Robot & env);
25 
26 public:
27  std::shared_ptr<mc_rbdyn::Surface> robotSurface;
28  std::shared_ptr<mc_rbdyn::Surface> envSurface;
29  std::shared_ptr<sch::S_Object> robotSch;
30  std::shared_ptr<sch::S_Object> envSch;
31  sch::CD_Pair pair;
32 
33 private:
34  void updateSCH(sch::S_Object * obj,
35  const mc_rbdyn::Robot & robot,
36  const std::shared_ptr<mc_rbdyn::Surface> & robotSurface);
37 };
38 
39 } // namespace mc_control
40 
41 #endif
#define MC_CONTROL_DLLAPI
Definition: api.h:50
Definition: CompletionCriteria.h:11
Definition: SimulationContactPair.h:19
SimulationContactPair(const std::shared_ptr< mc_rbdyn::Surface > &robotSurface, const std::shared_ptr< mc_rbdyn::Surface > &envSurface)
sch::CD_Pair pair
Definition: SimulationContactPair.h:31
std::shared_ptr< mc_rbdyn::Surface > envSurface
Definition: SimulationContactPair.h:28
std::shared_ptr< sch::S_Object > envSch
Definition: SimulationContactPair.h:30
std::shared_ptr< mc_rbdyn::Surface > robotSurface
Definition: SimulationContactPair.h:27
std::shared_ptr< sch::S_Object > robotSch
Definition: SimulationContactPair.h:29
double update(const mc_rbdyn::Robot &robot, const mc_rbdyn::Robot &env)
Definition: Robot.h:63