sot-talos-balance  1.5.0
math/fwd.hh
Go to the documentation of this file.
1 //
2 // Copyright (c) 2017 CNRS
3 //
4 // This file is part of tsid
5 // tsid is free software: you can redistribute it
6 // and/or modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation, either version
8 // 3 of the License, or (at your option) any later version.
9 // tsid is distributed in the hope that it will be
10 // useful, but WITHOUT ANY WARRANTY; without even the implied warranty
11 // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // General Lesser Public License for more details. You should have
13 // received a copy of the GNU Lesser General Public License along with
14 // tsid If not, see
15 // <http://www.gnu.org/licenses/>.
16 //
17 
18 #ifndef __invdyn_math_fwd_hpp__
19 #define __invdyn_math_fwd_hpp__
20 
21 #include <Eigen/Core>
22 
23 #ifdef EIGEN_RUNTIME_NO_MALLOC
24  #define EIGEN_MALLOC_ALLOWED Eigen::internal::set_is_malloc_allowed(true);
25  #define EIGEN_MALLOC_NOT_ALLOWED Eigen::internal::set_is_malloc_allowed(false);
26 #else
27  #define EIGEN_MALLOC_ALLOWED
28  #define EIGEN_MALLOC_NOT_ALLOWED
29 #endif
30 namespace dynamicgraph
31 {
32  namespace sot
33  {
34  namespace talos_balance
35  {
36  namespace math
37  {
38 
39  typedef double Scalar;
40  typedef Eigen::Matrix<Scalar,Eigen::Dynamic,1> Vector;
41  typedef Eigen::Matrix<Scalar,Eigen::Dynamic,Eigen::Dynamic> Matrix;
43  typedef Eigen::Matrix<bool,Eigen::Dynamic,1> VectorXb;
44 
45  typedef Eigen::Matrix<Scalar,3,1> Vector3;
46  typedef Eigen::Matrix<Scalar,6,1> Vector6;
47  typedef Eigen::Matrix<Scalar,3,Eigen::Dynamic> Matrix3x;
48 
49  typedef Eigen::Ref<Vector3> RefVector3;
50  typedef const Eigen::Ref<const Vector3> ConstRefVector3;
51 
52  typedef Eigen::Ref<Vector> RefVector;
53  typedef const Eigen::Ref<const Vector> ConstRefVector;
54 
55  typedef Eigen::Ref<Matrix> RefMatrix;
56  typedef const Eigen::Ref<const Matrix> ConstRefMatrix;
57 
58  typedef std::size_t Index;
59 
60  // Forward declaration of constraints
61  class ConstraintBase;
62  class ConstraintEquality;
63  class ConstraintInequality;
64  class ConstraintBound;
65 
66  }
67  }
68  }
69 }
70 #endif // ifndef __invdyn_math_fwd_hpp__
Eigen::Matrix< Scalar, 3, 1 > Vector3
Definition: math/fwd.hh:45
Eigen::Matrix< Scalar, 3, Eigen::Dynamic > Matrix3x
Definition: math/fwd.hh:47
Eigen::Ref< Vector > RefVector
Definition: math/fwd.hh:52
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > Vector
Definition: math/fwd.hh:40
const Eigen::Ref< const Vector3 > ConstRefVector3
Definition: math/fwd.hh:50
Eigen::Ref< Vector3 > RefVector3
Definition: math/fwd.hh:49
const Eigen::Ref< const Matrix > ConstRefMatrix
Definition: math/fwd.hh:56
const Eigen::Ref< const Vector > ConstRefVector
Definition: math/fwd.hh:53
Eigen::Ref< Matrix > RefMatrix
Definition: math/fwd.hh:55
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > Matrix
Definition: math/fwd.hh:41
Eigen::Matrix< Scalar, 6, 1 > Vector6
Definition: math/fwd.hh:46
Eigen::Matrix< bool, Eigen::Dynamic, 1 > VectorXb
Definition: math/fwd.hh:43