check-model.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2025 INRIA
3 //
4 
5 #ifndef __pinocchio_algorithm_check_model_hpp__
6 #define __pinocchio_algorithm_check_model_hpp__
7 
9 
10 #include <boost/fusion/container/list.hpp>
11 #include <boost/fusion/container/generation/make_list.hpp>
12 
13 namespace pinocchio
14 {
15 
16 #define PINOCCHIO_DEFINE_ALGO_CHECKER(NAME) \
17  struct NAME##Checker : public AlgorithmCheckerBase<NAME##Checker> \
18  { \
19  template<typename Scalar, int Options, template<typename, int> class JointCollectionTpl> \
20  bool checkModel_impl(const ModelTpl<Scalar, Options, JointCollectionTpl> &) const; \
21  }
22 
27 
28  template<class... D>
29  struct AlgorithmCheckerList : AlgorithmCheckerBase<AlgorithmCheckerList<D...>>
30  {
31  typedef typename boost::fusion::list<D...> ArgType;
32 
35  {
36  }
37 
38  // Calls model.check for each checker in the fusion::list.
39  // Each list element is supposed to implement the AlgorithmCheckerBase API.
40  template<typename Scalar, int Options, template<typename, int> class JointCollectionTpl>
42 
44  };
45 
46  template<class... T>
48  {
49  return AlgorithmCheckerList<T...>(boost::fusion::make_list(args...));
50  }
51 
52 } // namespace pinocchio
53 
54 /* --- Details -------------------------------------------------------------------- */
55 #include "pinocchio/algorithm/check-model.hxx"
56 
57 #endif // __pinocchio_algorithm_check_model_hpp__
simulation-contact-dynamics.T
int T
Definition: simulation-contact-dynamics.py:89
pinocchio::AlgorithmCheckerList::AlgorithmCheckerList
AlgorithmCheckerList(const ArgType &checkerList)
Definition: check-model.hpp:33
pinocchio::AlgorithmCheckerBase
CRTP class describing the API of the checkers.
Definition: check-base.hpp:15
pinocchio::AlgorithmCheckerList::checkModel_impl
bool checkModel_impl(const ModelTpl< Scalar, Options, JointCollectionTpl > &model) const
pinocchio::AlgorithmCheckerList::checkerList
const ArgType & checkerList
Definition: check-model.hpp:43
args
args
D
D
pinocchio::AlgorithmCheckerList
Definition: check-model.hpp:29
pinocchio::PINOCCHIO_DEFINE_ALGO_CHECKER
PINOCCHIO_DEFINE_ALGO_CHECKER(ABA)
pinocchio::makeAlgoCheckerList
AlgorithmCheckerList< T... > makeAlgoCheckerList(const T &... args)
Definition: check-model.hpp:47
check-base.hpp
pinocchio::ModelTpl
Definition: context/generic.hpp:20
pinocchio::AlgorithmCheckerList::ArgType
boost::fusion::list< D... > ArgType
Definition: check-model.hpp:31
pinocchio::model
JointCollectionTpl & model
Definition: joint-configuration.hpp:1082
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:33


pinocchio
Author(s):
autogenerated on Fri Apr 25 2025 02:41:35