19 #ifndef HPP_RBPRM_SAMPLE_HH
20 #define HPP_RBPRM_SAMPLE_HH
22 #include <Eigen/StdVector>
25 #include <hpp/pinocchio/device.hh>
43 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
52 Sample(
const pinocchio::JointPtr_t limb,
const pinocchio::Frame effector,
53 const fcl::Vec3f& offset = fcl::Vec3f(0, 0, 0),
const fcl::Vec3f& limbOffset = fcl::Vec3f(0, 0, 0),
54 const std::size_t
id = 0);
56 Sample(
const std::size_t
id,
const std::size_t length,
const std::size_t startRank,
const double staticValue,
57 const fcl::Vec3f& effectorPosition,
const fcl::Vec3f& effectorPositionInLimbFrame,
58 const pinocchio::ConfigurationIn_t configuration,
const Eigen::MatrixXd& jacobian,
59 const Eigen::Matrix<pinocchio::value_type, 6, 6>& jacobianProduct);
67 Sample(
const pinocchio::JointPtr_t limb,
const pinocchio::Frame effector, pinocchio::ConfigurationIn_t configuration,
68 const fcl::Vec3f& offset = fcl::Vec3f(0, 0, 0),
const fcl::Vec3f& limbOffset = fcl::Vec3f(0, 0, 0),
69 const std::size_t
id = 0);
93 typedef std::vector<Sample, Eigen::aligned_allocator<Sample> >
SampleVector_t;
102 const std::size_t nbSamples,
const fcl::Vec3f& offset = fcl::Vec3f(0, 0, 0),
103 const fcl::Vec3f& limbOffset = fcl::Vec3f(0, 0, 0));
108 void Load(
const Sample& sample, pinocchio::ConfigurationOut_t robot);
double staticValue_
Definition: sample.hh:85
std::size_t length_
Definition: sample.hh:75
fcl::Vec3f effectorPosition_
Position relative to robot root (ie, robot base at 0 everywhere)
Definition: sample.hh:78
~Sample()
Definition: sample.hh:71
Sample(const pinocchio::JointPtr_t limb, const pinocchio::Frame effector, const fcl::Vec3f &offset=fcl::Vec3f(0, 0, 0), const fcl::Vec3f &limbOffset=fcl::Vec3f(0, 0, 0), const std::size_t id=0)
std::size_t id_
id in sample container
Definition: sample.hh:84
std::size_t startRank_
Definition: sample.hh:74
Sample(const pinocchio::JointPtr_t limb, const pinocchio::Frame effector, pinocchio::ConfigurationIn_t configuration, const fcl::Vec3f &offset=fcl::Vec3f(0, 0, 0), const fcl::Vec3f &limbOffset=fcl::Vec3f(0, 0, 0), const std::size_t id=0)
Sample(const std::size_t id, const std::size_t length, const std::size_t startRank, const double staticValue, const fcl::Vec3f &effectorPosition, const fcl::Vec3f &effectorPositionInLimbFrame, const pinocchio::ConfigurationIn_t configuration, const Eigen::MatrixXd &jacobian, const Eigen::Matrix< pinocchio::value_type, 6, 6 > &jacobianProduct)
Eigen::MatrixXd jacobian_
Definition: sample.hh:80
fcl::Vec3f effectorPositionInLimbFrame_
Definition: sample.hh:79
Eigen::Matrix< pinocchio::value_type, 6, 6 > jacobianProduct_
Product of the jacobian by its transpose.
Definition: sample.hh:82
Sample(const Sample &clone)
pinocchio::Configuration_t configuration_
Definition: sample.hh:76
#define HPP_RBPRM_DLLAPI
Definition: config.hh:64
SampleVector_t GenerateSamples(const pinocchio::JointPtr_t limb, const std::string &effector, const std::size_t nbSamples, const fcl::Vec3f &offset=fcl::Vec3f(0, 0, 0), const fcl::Vec3f &limbOffset=fcl::Vec3f(0, 0, 0))
std::shared_ptr< Sample > SamplePtr_t
Definition: sample.hh:37
std::vector< Sample, Eigen::aligned_allocator< Sample > > SampleVector_t
Definition: sample.hh:93
void Load(const Sample &sample, pinocchio::ConfigurationOut_t robot)
HPP_PREDEF_CLASS(OctreeNode)
Definition: algorithm.hh:27
bool operator()(const Sample &lhs, const Sample &rhs) const
Definition: sample.hh:90