hpp-constraints  4.9.1
Definition of basic geometric constraints for motion planning
fwd.hh
Go to the documentation of this file.
1 // This file is part of hpp-constraints.
7 // hpp-constraints is free software: you can redistribute it
8 // and/or modify it under the terms of the GNU Lesser General Public
9 // License as published by the Free Software Foundation, either version
10 // 3 of the License, or (at your option) any later version.
11 //
12 // hpp-constraints is distributed in the hope that it will be
13 // useful, but WITHOUT ANY WARRANTY; without even the implied warranty
14 // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 // General Lesser Public License for more details. You should have
16 // received a copy of the GNU Lesser General Public License along with
17 // hpp-constraints. If not, see
18 // <http://www.gnu.org/licenses/>.
19 
20 #ifndef HPP_CONSTRAINTS_FWD_HH
21 # define HPP_CONSTRAINTS_FWD_HH
22 
23 # include <hpp/pinocchio/fwd.hh>
24 # include <hpp/constraints/deprecated.hh>
25 
26 namespace Eigen {
27  struct BlockIndex;
28 } // namespace Eigen
29 
30 namespace hpp {
31  namespace constraints {
32  HPP_PREDEF_CLASS (DifferentiableFunction);
33  HPP_PREDEF_CLASS (DifferentiableFunctionSet);
34  HPP_PREDEF_CLASS (ActiveSetDifferentiableFunction);
41  typedef Eigen::Matrix<value_type, 6, 6> matrix6_t;
43  typedef Eigen::Ref <const matrix_t> matrixIn_t;
44  typedef Eigen::Ref <matrix_t> matrixOut_t;
56  namespace eigen {
57  typedef Eigen::Matrix <value_type, 3, 3> matrix3_t;
58  typedef Eigen::Matrix <value_type, 3, 1> vector3_t;
59  } // namespace eigen
60  typedef Eigen::Matrix <value_type, 5, 1> vector5_t;
61  typedef Eigen::Matrix <value_type, 6, 1> vector6_t;
62  typedef Eigen::Matrix <value_type, 7, 1> vector7_t;
63  typedef Eigen::Quaternion<value_type> Quaternion_t;
64 
66  typedef ArrayXb bool_array_t;
67 
68  typedef std::pair<size_type, size_type> segment_t;
69  typedef std::vector < segment_t > segments_t;
70 
83 
94  typedef boost::shared_ptr <DifferentiableFunction>
96  typedef boost::shared_ptr <DifferentiableFunctionSet>
98  typedef DifferentiableFunctionSet DifferentiableFunctionStack
100  typedef boost::shared_ptr <ActiveSetDifferentiableFunction>
102  typedef boost::shared_ptr <DistanceBetweenBodies>
104  typedef boost::shared_ptr <DistanceBetweenPointsInBodies>
106  typedef boost::shared_ptr<RelativeCom> RelativeComPtr_t;
107  typedef boost::shared_ptr<ComBetweenFeet> ComBetweenFeetPtr_t;
108  typedef boost::shared_ptr<ConvexShapeContact>
110  typedef boost::shared_ptr<ConvexShapeContactComplement>
112  typedef boost::shared_ptr<StaticStability> StaticStabilityPtr_t;
113  typedef boost::shared_ptr<QPStaticStability> QPStaticStabilityPtr_t;
114  typedef boost::shared_ptr<ConfigurationConstraint>
116  typedef boost::shared_ptr<Identity> IdentityPtr_t;
117  typedef boost::shared_ptr<AffineFunction> AffineFunctionPtr_t;
118  typedef boost::shared_ptr<ConstantFunction> ConstantFunctionPtr_t;
119 
126 
127  template <int _Options> class GenericTransformation;
128 
130  const int RelativeBit = 0x1;
131  const int PositionBit = 0x2;
132  const int OrientationBit = 0x4;
133  const int OutputSE3Bit = 0x8;
145 
146  typedef boost::shared_ptr<Position> PositionPtr_t;
147  typedef boost::shared_ptr<Orientation> OrientationPtr_t;
148  typedef boost::shared_ptr<Transformation> TransformationPtr_t;
149  typedef boost::shared_ptr<RelativePosition> RelativePositionPtr_t;
150  typedef boost::shared_ptr<RelativeOrientation> RelativeOrientationPtr_t;
151  typedef boost::shared_ptr<RelativeTransformation>
153 
155 
157  typedef boost::shared_ptr <Implicit> ImplicitPtr_t;
158  typedef boost::shared_ptr <const Implicit> ImplicitConstPtr_t;
159  typedef std::vector < constraints::ImplicitPtr_t > NumericalConstraints_t;
161  typedef boost::shared_ptr <ImplicitConstraintSet>
163 
169  };
170  typedef std::vector<ComparisonType> ComparisonTypes_t;
171 
173  typedef boost::shared_ptr <Explicit> ExplicitPtr_t;
174  typedef boost::shared_ptr <const Explicit> ExplicitConstPtr_t;
175 
176  class ExplicitConstraintSet;
177  namespace solver {
178  class HierarchicalIterative;
179  class BySubstitution;
180  } // namespace solver
181 
182  namespace implicit {
184  typedef boost::shared_ptr <RelativePose> RelativePosePtr_t;
185  typedef boost::shared_ptr <const RelativePose> RelativePoseConstPtr_t;
186  } // namespace implicit
187 
188  namespace explicit_ {
189  class Function;
191  typedef boost::shared_ptr <RelativePose> RelativePosePtr_t;
192  HPP_PREDEF_CLASS (RelativeTransformation);
193  typedef boost::shared_ptr <RelativeTransformation>
196  typedef boost::shared_ptr <ImplicitFunction> ImplicitFunctionPtr_t;
197  } // namespace explicit
198 
200  typedef boost::shared_ptr <LockedJoint> LockedJointPtr_t;
201  typedef boost::shared_ptr <const LockedJoint> LockedJointConstPtr_t;
202  typedef std::vector <LockedJointPtr_t> LockedJoints_t;
203 
204  namespace function {
205  HPP_PREDEF_CLASS (OfParameterSubset);
206  typedef boost::shared_ptr <OfParameterSubset> OfParameterSubsetPtr_t;
207  } // namespace function
208  typedef ExplicitConstraintSet ExplicitSolver HPP_CONSTRAINTS_DEPRECATED;
209  typedef solver::HierarchicalIterative HierarchicalIterativeSolver
212  } // namespace constraints
213 } // namespace hpp
214 
215 #endif // HPP_CONSTRAINTS_FWD_HH
GenericTransformation< PositionBit|OrientationBit|OutputSE3Bit > TransformationSE3
Definition: fwd.hh:141
boost::shared_ptr< RelativeOrientation > RelativeOrientationPtr_t
Definition: fwd.hh:150
Definition: static-stability.hh:34
Definition: distance-between-bodies.hh:40
pinocchio::vector_t vector_t
Definition: fwd.hh:45
ComparisonType
Definition: fwd.hh:164
pinocchio::vectorIn_t vectorIn_t
Definition: fwd.hh:46
pinocchio::ConfigurationOut_t ConfigurationOut_t
Definition: fwd.hh:89
Definition: implicit-constraint-set.hh:34
pinocchio::CenterOfMassComputation CenterOfMassComputation
Definition: fwd.hh:92
Definition: convex-shape-contact.hh:194
pinocchio::JointJacobian_t JointJacobian_t
Definition: fwd.hh:49
boost::shared_ptr< Device > DevicePtr_t
Definition: distance-between-points-in-bodies.hh:36
Definition: matrix-view.hh:37
boost::shared_ptr< Position > PositionPtr_t
Definition: fwd.hh:146
DEVEL typedef GenericTransformation< PositionBit|OrientationBit > Transformation
Definition: fwd.hh:127
pinocchio::LiegroupSpacePtr_t LiegroupSpacePtr_t
Definition: fwd.hh:54
Definition: fwd.hh:166
boost::shared_ptr< ComBetweenFeet > ComBetweenFeetPtr_t
Definition: fwd.hh:107
GenericTransformation< RelativeBit|PositionBit > RelativePosition
Definition: fwd.hh:139
pinocchio::CollisionObjectPtr_t CollisionObjectPtr_t
Definition: fwd.hh:85
ArrayXb bool_array_t
Definition: fwd.hh:66
Definition: locked-joint.hh:56
boost::shared_ptr< ConvexShapeContactComplement > ConvexShapeContactComplementPtr_t
Definition: fwd.hh:111
pinocchio::DevicePtr_t DevicePtr_t
Definition: fwd.hh:91
Definition: com-between-feet.hh:57
Eigen::Ref< const matrix_t > matrixIn_t
Definition: fwd.hh:43
HPP_CONSTRAINTS_DEPRECATED ConvexShapeContactPtr_t StaticStabilityGravityPtr_t
Definition: fwd.hh:123
GenericTransformation< RelativeBit|PositionBit|OrientationBit > RelativeTransformation
Definition: fwd.hh:138
boost::shared_ptr< CollisionObject > CollisionObjectPtr_t
Eigen::Ref< vector_t > vectorOut_t
Definition: affine-function.hh:64
Square distance between input configuration and reference configuration.
Definition: configuration-constraint.hh:33
GenericTransformation< OrientationBit > Orientation
Definition: fwd.hh:137
Eigen::Matrix< value_type, 6, Eigen::Dynamic > JointJacobian_t
Eigen::Matrix< value_type, 3, 3 > matrix3_t
Definition: fwd.hh:168
Definition: fwd.hh:26
void eigen(const Eigen::MatrixBase< Derived > &m, typename Derived::Scalar dout[3], Vector *vout)
pinocchio::matrix3_t matrix3_t
Definition: fwd.hh:40
std::vector< segment_t > segments_t
Definition: fwd.hh:69
std::pair< size_type, size_type > segment_t
Definition: fwd.hh:68
Definition: explicit.hh:124
Definition: fwd.hh:167
Definition: qp-static-stability.hh:33
pinocchio::matrix_t matrix_t
Definition: fwd.hh:42
pinocchio::ArrayXb ArrayXb
Definition: fwd.hh:65
matrix_t::Index size_type
Eigen::Ref< Configuration_t > ConfigurationOut_t
Eigen::Matrix< value_type, 5, 1 > vector5_t
Definition: fwd.hh:60
boost::shared_ptr< ActiveSetDifferentiableFunction > ActiveSetDifferentiableFunctionPtr_t
Definition: fwd.hh:101
Definition: differentiable-function-set.hh:33
pinocchio::Device Device
Definition: fwd.hh:90
boost::shared_ptr< ImplicitFunction > ImplicitFunctionPtr_t
Definition: fwd.hh:196
pinocchio::ComJacobian_t ComJacobian_t
Definition: fwd.hh:48
Eigen::BlockIndex BlockIndex
Definition: fwd.hh:154
GenericTransformation< OrientationBit|OutputSE3Bit > OrientationSO3
Definition: fwd.hh:143
pinocchio::vector3_t vector3_t
Definition: fwd.hh:39
Definition: implicit-function.hh:37
boost::shared_ptr< const Explicit > ExplicitConstPtr_t
Definition: fwd.hh:174
pinocchio::LiegroupSpace LiegroupSpace
Definition: fwd.hh:53
boost::shared_ptr< ConfigurationConstraint > ConfigurationConstraintPtr_t
Definition: fwd.hh:115
pinocchio::Configuration_t Configuration_t
Definition: fwd.hh:87
Eigen::Matrix< value_type, 3, Eigen::Dynamic > ComJacobian_t
pinocchio::ConfigurationIn_t ConfigurationIn_t
Definition: fwd.hh:88
std::vector< ComparisonType > ComparisonTypes_t
Definition: fwd.hh:170
Eigen::Array< bool, Eigen::Dynamic, 1 > ArrayXb
boost::shared_ptr< ImplicitConstraintSet > ImplicitConstraintSetPtr_t
Definition: fwd.hh:162
pinocchio::JointPtr_t JointPtr_t
Definition: fwd.hh:37
pinocchio::CollisionObjectConstPtr_t CollisionObjectConstPtr_t
Definition: fwd.hh:86
Eigen::Matrix< value_type, Eigen::Dynamic, 1 > vector_t
pinocchio::JointConstPtr_t JointConstPtr_t
Definition: fwd.hh:38
Definition: fwd.hh:165
boost::shared_ptr< Explicit > ExplicitPtr_t
Definition: fwd.hh:173
boost::shared_ptr< ConstantFunction > ConstantFunctionPtr_t
Definition: fwd.hh:118
pinocchio::ObjectVector_t ObjectVector_t
Definition: fwd.hh:84
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > matrix_t
boost::shared_ptr< const LiegroupSpace > LiegroupSpaceConstPtr_t
boost::shared_ptr< DifferentiableFunction > DifferentiableFunctionPtr_t
Definition: fwd.hh:95
Definition: convex-shape-contact.hh:75
boost::shared_ptr< Transformation > TransformationPtr_t
Definition: fwd.hh:148
Constraint of relative pose between two frames on a kinematic chain.
Definition: relative-pose.hh:26
boost::shared_ptr< const RelativePose > RelativePoseConstPtr_t
Definition: fwd.hh:185
std::vector< LockedJointPtr_t > LockedJoints_t
Definition: fwd.hh:202
GenericTransformation< RelativeBit|OrientationBit > RelativeOrientation
Definition: fwd.hh:140
boost::shared_ptr< RelativeTransformation > RelativeTransformationPtr_t
Definition: fwd.hh:194
boost::shared_ptr< DistanceBetweenPointsInBodies > DistanceBetweenPointsInBodiesPtr_t
Definition: fwd.hh:105
Definition: affine-function.hh:113
pinocchio::LiegroupSpaceConstPtr_t LiegroupSpaceConstPtr_t
Definition: fwd.hh:55
ObjectVector ObjectVector_t
Definition: relative-com.hh:57
HPP_CONSTRAINTS_DEPRECATED ConvexShapeContactComplementPtr_t StaticStabilityGravityComplementPtr_t
Definition: fwd.hh:125
boost::shared_ptr< const Implicit > ImplicitConstPtr_t
Definition: fwd.hh:158
Eigen::Ref< const Configuration_t > ConfigurationIn_t
Eigen::Matrix< value_type, 6, 1 > vector6_t
Definition: fwd.hh:61
Definition: by-substitution.hh:62
Eigen::Matrix< value_type, 7, 1 > vector7_t
Definition: fwd.hh:62
boost::shared_ptr< QPStaticStability > QPStaticStabilityPtr_t
Definition: fwd.hh:113
boost::shared_ptr< CenterOfMassComputation > CenterOfMassComputationPtr_t
GenericTransformation< RelativeBit|OrientationBit|OutputSE3Bit > RelativeOrientationSO3
Definition: fwd.hh:144
pinocchio::vectorOut_t vectorOut_t
Definition: fwd.hh:47
boost::shared_ptr< StaticStability > StaticStabilityPtr_t
Definition: fwd.hh:112
::pinocchio::SE3 Transform3f
GenericTransformation< RelativeBit|PositionBit|OrientationBit|OutputSE3Bit > RelativeTransformationSE3
Definition: fwd.hh:142
boost::shared_ptr< ConvexShapeContact > ConvexShapeContactPtr_t
Definition: fwd.hh:109
pinocchio::size_type size_type
Definition: fwd.hh:35
boost::shared_ptr< AffineFunction > AffineFunctionPtr_t
Definition: fwd.hh:117
Eigen::Quaternion< value_type > Quaternion_t
Definition: fwd.hh:63
Eigen::Ref< matrix_t > matrixOut_t
Definition: fwd.hh:44
Eigen::Ref< const vector_t > vectorIn_t
boost::shared_ptr< RelativeCom > RelativeComPtr_t
Definition: fwd.hh:106
HPP_PREDEF_CLASS(OfParameterSubset)
boost::shared_ptr< LockedJoint > LockedJointPtr_t
Definition: fwd.hh:200
boost::shared_ptr< OfParameterSubset > OfParameterSubsetPtr_t
Definition: fwd.hh:206
boost::shared_ptr< RelativePosition > RelativePositionPtr_t
Definition: fwd.hh:149
boost::shared_ptr< const Joint > JointConstPtr_t
GenericTransformation< PositionBit > Position
Definition: fwd.hh:136
boost::shared_ptr< Identity > IdentityPtr_t
Definition: fwd.hh:116
pinocchio::value_type value_type
Definition: fwd.hh:36
Definition: implicit.hh:96
boost::shared_ptr< const CollisionObject > CollisionObjectConstPtr_t
boost::shared_ptr< LiegroupSpace > LiegroupSpacePtr_t
boost::shared_ptr< DistanceBetweenBodies > DistanceBetweenBodiesPtr_t
Definition: fwd.hh:103
boost::shared_ptr< Implicit > ImplicitPtr_t
Definition: fwd.hh:157
vector_t Configuration_t
HPP_CONSTRAINTS_DEPRECATED ConvexShapeContactComplement StaticStabilityGravityComplement
Definition: fwd.hh:121
Definition: hierarchical-iterative.hh:165
Eigen::Matrix< value_type, 6, 6 > matrix6_t
Definition: fwd.hh:41
boost::shared_ptr< const LockedJoint > LockedJointConstPtr_t
Definition: fwd.hh:201
DifferentiableFunctionSet DifferentiableFunctionStack HPP_CONSTRAINTS_DEPRECATED
Definition: fwd.hh:99
Eigen::Matrix< value_type, 3, 1 > vector3_t
boost::shared_ptr< DifferentiableFunctionSet > DifferentiableFunctionSetPtr_t
Definition: fwd.hh:97
boost::shared_ptr< Joint > JointPtr_t
std::vector< constraints::ImplicitPtr_t > NumericalConstraints_t
Definition: fwd.hh:159
Definition: explicit-constraint-set.hh:93
Definition: affine-function.hh:35
pinocchio::CenterOfMassComputationPtr_t CenterOfMassComputationPtr_t
Definition: fwd.hh:93
pinocchio::Transform3f Transform3f
Definition: fwd.hh:50
boost::shared_ptr< RelativePose > RelativePosePtr_t
Definition: fwd.hh:191
boost::shared_ptr< Orientation > OrientationPtr_t
Definition: fwd.hh:147
HPP_CONSTRAINTS_DEPRECATED ConvexShapeContact StaticStabilityGravity
Definition: fwd.hh:120