hpp-python 9.0.2
python bindings for HPP, based on boost python
 
Loading...
Searching...
No Matches
device.hh
Go to the documentation of this file.
1//
2// Copyright (c) 2025, CNRS
3// Authors: Paul Sardin
4//
5
6#ifndef PYHPP_PINOCCHIO_DEVICE_HH
7#define PYHPP_PINOCCHIO_DEVICE_HH
8
9#include <hpp/manipulation/device.hh>
10#include <hpp/pinocchio/device.hh>
11#include <hpp/pinocchio/fwd.hh>
12
13namespace pyhpp {
14namespace pinocchio {
15
30
31struct Device {
33
34 Device(const DevicePtr_t& object) : obj(object) {}
35
36 const std::string& name() const { return obj->name(); }
37 const LiegroupSpacePtr_t& configSpace() const { return obj->configSpace(); }
38 Model& model() { return obj->model(); }
39 Data& data() { return obj->data(); }
40 GeomData& geomData() { return obj->geomData(); }
41 GeomModel& geomModel() { return obj->geomModel(); }
42 GeomModel& visualModel() { return obj->visualModel(); }
43 size_type configSize() const { return obj->configSize(); }
44 size_type numberDof() const { return obj->numberDof(); }
46 return obj->currentConfiguration();
47 }
49 return obj->currentConfiguration(configuration);
50 }
51 void computeForwardKinematics(int flag) {
52 obj->computeForwardKinematics(flag);
53 }
55 obj->computeFramesForwardKinematics();
56 }
57 void updateGeometryPlacements() { obj->updateGeometryPlacements(); }
58 void removeJoints(const std::vector<std::string>& jointNames,
60 obj->removeJoints(jointNames, q);
61 }
64 if (!manipDevice) {
65 throw std::runtime_error("Not a manipulation device²");
66 }
67 return manipDevice;
68 }
69};
70
71} // namespace pinocchio
72} // namespace pyhpp
73
74#endif // PYHPP_PINOCCHIO_DEVICE_HH
shared_ptr< Device > DevicePtr_t
shared_ptr< Device > DevicePtr_t
::pinocchio::DataTpl< value_type, 0, ::pinocchio::JointCollectionDefaultTpl > Data
::pinocchio::GeometryData GeomData
shared_ptr< LiegroupSpace > LiegroupSpacePtr_t
matrix_t::Index size_type
::pinocchio::SE3 Transform3s
vector_t Configuration_t
::pinocchio::JointIndex JointIndex
::pinocchio::GeometryModel GeomModel
::pinocchio::ModelTpl< value_type, 0, ::pinocchio::JointCollectionDefaultTpl > Model
shared_ptr< Model > ModelPtr_t
Eigen::Ref< const Configuration_t > ConfigurationIn_t
Definition fwd.hh:37
Definition fwd.hh:35
#define HPP_DYNAMIC_PTR_CAST(t, x)
size_type configSize() const
Definition device.hh:43
GeomModel & visualModel()
Definition device.hh:42
const LiegroupSpacePtr_t & configSpace() const
Definition device.hh:37
GeomData & geomData()
Definition device.hh:40
void computeFramesForwardKinematics()
Definition device.hh:54
hpp::manipulation::DevicePtr_t asManipulationDevice() const
Definition device.hh:62
void computeForwardKinematics(int flag)
Definition device.hh:51
bool currentConfiguration(ConfigurationIn_t configuration)
Definition device.hh:48
const Configuration_t & currentConfiguration() const
Definition device.hh:45
DevicePtr_t obj
Definition device.hh:32
void updateGeometryPlacements()
Definition device.hh:57
void removeJoints(const std::vector< std::string > &jointNames, Configuration_t q)
Definition device.hh:58
const std::string & name() const
Definition device.hh:36
GeomModel & geomModel()
Definition device.hh:41
Model & model()
Definition device.hh:38
size_type numberDof() const
Definition device.hh:44
Data & data()
Definition device.hh:39
Device(const DevicePtr_t &object)
Definition device.hh:34