5#ifndef __pinocchio_python_context_generic_hpp__ 6#define __pinocchio_python_context_generic_hpp__ 8#include "pinocchio/fwd.hpp" 9#include "pinocchio/spatial/fwd.hpp" 10#include "pinocchio/multibody/fwd.hpp" 11#include "pinocchio/algorithm/fwd.hpp" 12#include "pinocchio/algorithm/constraints/fwd.hpp" 14#ifdef PINOCCHIO_PYTHON_INTERFACE_WITH_OPENMP 15 #include "pinocchio/multibody/pool/fwd.hpp" 16 #ifdef PINOCCHIO_WITH_HPP_FCL 17 #include "pinocchio/collision/pool/fwd.hpp" 21#include <eigenpy/eigen-typedef.hpp> 23#include <Eigen/Sparse> 31 boost::python::object getScalarType();
32 void exposeSpecificTypeFeatures();
37 typedef PINOCCHIO_PYTHON_SCALAR_TYPE Scalar;
44 EIGENPY_MAKE_TYPEDEFS_ALL_SIZES(Scalar, Options, s);
45 typedef Eigen::SparseMatrix<Scalar> SparseMatrix;
46 typedef Eigen::SparseMatrix<Scalar, Eigen::RowMajor> RowSparseMatrix;
47 typedef Eigen::Matrix<Scalar, 1, 1, Options, 1, 1> Matrix1s;
48 typedef Eigen::Matrix<Scalar, 7, 1, Options> Vector7s;
49 typedef Eigen::Quaternion<Scalar, Options> Quaternion;
50 typedef Eigen::AngleAxis<Scalar> AngleAxis;
53 typedef SE3Tpl<Scalar, Options> SE3;
54 typedef MotionTpl<Scalar, Options> Motion;
55 typedef ForceTpl<Scalar, Options> Force;
56 typedef InertiaTpl<Scalar, Options> Inertia;
57 typedef PseudoInertiaTpl<Scalar, Options> PseudoInertia;
58 typedef LogCholeskyParametersTpl<Scalar, Options> LogCholeskyParameters;
59 typedef Symmetric3Tpl<Scalar, Options> Symmetric3;
62 typedef FrameTpl<Scalar, Options> Frame;
63 typedef ModelTpl<Scalar, Options> Model;
64 typedef DataTpl<Scalar, Options> Data;
66 typedef JointCollectionDefaultTpl<Scalar, Options> JointCollectionDefault;
69 typedef JointModelTpl<Scalar, Options> JointModel;
70 typedef JointDataTpl<Scalar, Options> JointData;
72 typedef JointDataRevoluteTpl<Scalar, Options, 0> JointDataRX;
73 typedef JointModelRevoluteTpl<Scalar, Options, 0> JointModelRX;
75 typedef JointDataRevoluteTpl<Scalar, Options, 1> JointDataRY;
76 typedef JointModelRevoluteTpl<Scalar, Options, 1> JointModelRY;
78 typedef JointDataRevoluteTpl<Scalar, Options, 2> JointDataRZ;
79 typedef JointModelRevoluteTpl<Scalar, Options, 2> JointModelRZ;
81 typedef JointModelRevoluteUnalignedTpl<Scalar> JointModelRevoluteUnaligned;
82 typedef JointDataRevoluteUnalignedTpl<Scalar> JointDataRevoluteUnaligned;
84 typedef JointDataRevoluteUnboundedTpl<Scalar, Options, 0> JointDataRUBX;
85 typedef JointModelRevoluteUnboundedTpl<Scalar, Options, 0> JointModelRUBX;
87 typedef JointDataRevoluteUnboundedTpl<Scalar, Options, 1> JointDataRUBY;
88 typedef JointModelRevoluteUnboundedTpl<Scalar, Options, 1> JointModelRUBY;
90 typedef JointDataRevoluteUnboundedTpl<Scalar, Options, 2> JointDataRUBZ;
91 typedef JointModelRevoluteUnboundedTpl<Scalar, Options, 2> JointModelRUBZ;
93 typedef JointModelRevoluteUnboundedUnalignedTpl<Scalar> JointModelRevoluteUnboundedUnaligned;
94 typedef JointDataRevoluteUnboundedUnalignedTpl<Scalar> JointDataRevoluteUnboundedUnaligned;
96 typedef JointModelSphericalTpl<Scalar> JointModelSpherical;
97 typedef JointDataSphericalTpl<Scalar> JointDataSpherical;
99 typedef JointModelSphericalZYXTpl<Scalar> JointModelSphericalZYX;
100 typedef JointDataSphericalZYXTpl<Scalar> JointDataSphericalZYX;
102 typedef JointModelEllipsoidTpl<Scalar, Options> JointModelEllipsoid;
103 typedef JointDataEllipsoidTpl<Scalar, Options> JointDataEllipsoid;
105 typedef JointDataPrismaticTpl<Scalar, Options, 0> JointDataPX;
106 typedef JointModelPrismaticTpl<Scalar, Options, 0> JointModelPX;
108 typedef JointDataPrismaticTpl<Scalar, Options, 1> JointDataPY;
109 typedef JointModelPrismaticTpl<Scalar, Options, 1> JointModelPY;
111 typedef JointDataPrismaticTpl<Scalar, Options, 2> JointDataPZ;
112 typedef JointModelPrismaticTpl<Scalar, Options, 2> JointModelPZ;
114 typedef JointModelPrismaticUnalignedTpl<Scalar> JointModelPrismaticUnaligned;
115 typedef JointDataPrismaticUnalignedTpl<Scalar> JointDataPrismaticUnaligned;
117 typedef JointDataHelicalTpl<Scalar, Options, 0> JointDataHX;
118 typedef JointModelHelicalTpl<Scalar, Options, 0> JointModelHX;
120 typedef JointDataHelicalTpl<Scalar, Options, 1> JointDataHY;
121 typedef JointModelHelicalTpl<Scalar, Options, 1> JointModelHY;
123 typedef JointDataHelicalTpl<Scalar, Options, 2> JointDataHZ;
124 typedef JointModelHelicalTpl<Scalar, Options, 2> JointModelHZ;
126 typedef JointModelHelicalUnalignedTpl<Scalar> JointModelHelicalUnaligned;
127 typedef JointDataHelicalUnalignedTpl<Scalar> JointDataHelicalUnaligned;
129 typedef JointModelFreeFlyerTpl<Scalar> JointModelFreeFlyer;
130 typedef JointDataFreeFlyerTpl<Scalar> JointDataFreeFlyer;
132 typedef JointModelPlanarTpl<Scalar> JointModelPlanar;
133 typedef JointDataPlanarTpl<Scalar> JointDataPlanar;
135 typedef JointModelUniversalTpl<Scalar> JointModelUniversal;
136 typedef JointDataUniversalTpl<Scalar> JointDataUniversal;
138 typedef JointModelTranslationTpl<Scalar> JointModelTranslation;
139 typedef JointDataTranslationTpl<Scalar> JointDataTranslation;
141 typedef JointModelCompositeTpl<Scalar> JointModelComposite;
142 typedef JointDataCompositeTpl<Scalar> JointDataComposite;
144 typedef JointModelMimicTpl<Scalar> JointModelMimic;
145 typedef JointDataMimicTpl<Scalar> JointDataMimic;
148 typedef ProximalSettingsTpl<Scalar> ProximalSettings;
149 typedef ContactCholeskyDecompositionTpl<Scalar, Options> ContactCholeskyDecomposition;
151 typedef RigidConstraintModelTpl<Scalar, Options> RigidConstraintModel;
152 typedef RigidConstraintDataTpl<Scalar, Options> RigidConstraintData;
154 typedef CoulombFrictionConeTpl<context::Scalar> CoulombFrictionCone;
155 typedef DualCoulombFrictionConeTpl<context::Scalar> DualCoulombFrictionCone;
157 typedef DelassusOperatorDenseTpl<Scalar, Options> DelassusOperatorDense;
158 typedef DelassusOperatorSparseTpl<Scalar, Options> DelassusOperatorSparse;
160 typedef PINOCCHIO_STD_VECTOR_WITH_EIGEN_ALLOCATOR(CoulombFrictionCone)
161 CoulombFrictionConeVector;
162 typedef PINOCCHIO_STD_VECTOR_WITH_EIGEN_ALLOCATOR(DualCoulombFrictionCone)
163 DualCoulombFrictionConeVector;
164 typedef PINOCCHIO_STD_VECTOR_WITH_EIGEN_ALLOCATOR(RigidConstraintModel)
165 RigidConstraintModelVector;
166 typedef PINOCCHIO_STD_VECTOR_WITH_EIGEN_ALLOCATOR(RigidConstraintData)
167 RigidConstraintDataVector;
170#ifdef PINOCCHIO_PYTHON_INTERFACE_WITH_OPENMP 171 typedef ModelPoolTpl<Scalar> ModelPool;
173 #ifdef PINOCCHIO_WITH_HPP_FCL 174 typedef GeometryPoolTpl<Scalar> GeometryPool;
Main pinocchio namespace.