hpp-pinocchio  4.9.1
Wrapping of the kinematic/dynamic chain Pinocchio for HPP.
device-data.hh
Go to the documentation of this file.
1 //
2 // Copyright (c) 2016 CNRS
3 // Author: NMansard from Florent Lamiraux
4 //
5 //
6 // This file is part of hpp-pinocchio
7 // hpp-pinocchio 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-pinocchio 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-pinocchio If not, see
18 // <http://www.gnu.org/licenses/>.
19 
20 #ifndef HPP_PINOCCHIO_DEVICE_DATA_HH
21 #define HPP_PINOCCHIO_DEVICE_DATA_HH
22 
23 # include <hpp/util/debug.hh>
24 
25 # include <hpp/pinocchio/config.hh>
26 # include <hpp/pinocchio/fwd.hh>
27 
28 namespace hpp {
29  namespace pinocchio {
32  JACOBIAN = 0x2,
33  VELOCITY = 0x4,
34  ACCELERATION = 0x8,
35  COM = 0xf,
36  COMPUTE_ALL = 0Xffff
37  };
38 
41  struct DeviceData
42  {
43  DeviceData ();
44  DeviceData (const DeviceData& other);
45 
46  inline void invalidate () { upToDate_ = false; frameUpToDate_ = false; geomUpToDate_ = false; }
47 
48  void computeForwardKinematics (const ModelPtr_t& m);
50  void updateGeometryPlacements (const ModelPtr_t& m, const GeomModelPtr_t& gm);
51 
52  // Pinocchio objects
55 
61  DeviceWkPtr_t devicePtr_;
62 
66  std::vector<JointJacobian_t> jointJacobians_;
67  }; // struct DeviceData
68  } // namespace pinocchio
69 } // namespace hpp
70 
71 #endif // HPP_PINOCCHIO_DEVICE_DATA_HH
Configuration_t currentConfiguration_
Definition: device-data.hh:56
vector_t currentAcceleration_
Definition: device-data.hh:58
boost::shared_ptr< Data > DataPtr_t
Definition: fwd.hh:116
Computation_t computationFlag_
Definition: device-data.hh:60
Utility functions.
Definition: device-data.hh:34
GeomDataPtr_t geomData_
Definition: device-data.hh:54
Definition: device-data.hh:41
void computeFramesForwardKinematics(const ModelPtr_t &m)
void updateGeometryPlacements(const ModelPtr_t &m, const GeomModelPtr_t &gm)
boost::shared_ptr< GeomData > GeomDataPtr_t
Definition: fwd.hh:121
void computeForwardKinematics(const ModelPtr_t &m)
bool frameUpToDate_
Definition: device-data.hh:59
bool geomUpToDate_
Definition: device-data.hh:59
boost::shared_ptr< Model > ModelPtr_t
Definition: fwd.hh:114
Configuration_t modelConf_
Temporary variable to avoid dynamic allocation.
Definition: device-data.hh:64
Eigen::Matrix< value_type, Eigen::Dynamic, 1 > vector_t
Definition: fwd.hh:75
DataPtr_t data_
Definition: device-data.hh:53
Computation_t
Definition: device-data.hh:30
DeviceWkPtr_t devicePtr_
Definition: device-data.hh:61
Definition: device-data.hh:36
vector_t currentVelocity_
Definition: device-data.hh:57
std::vector< JointJacobian_t > jointJacobians_
Pool of joint jacobians.
Definition: device-data.hh:66
Definition: device-data.hh:35
Definition: device-data.hh:33
boost::shared_ptr< GeomModel > GeomModelPtr_t
Definition: fwd.hh:119
vector_t Configuration_t
Definition: fwd.hh:76
void invalidate()
Definition: device-data.hh:46
Definition: device-data.hh:32
Definition: device-data.hh:31
bool upToDate_
Definition: device-data.hh:59