humanoid-path-planner / hpp-rbprm

"Implementation of RB-PRM planner using hpp."
5 stars 7 forks source link

Update to changes in ConfigurationShooter in hpp-core #71

Closed nim65s closed 4 years ago

nim65s commented 4 years ago

Hi,

Since https://github.com/humanoid-path-planner/hpp-core/commit/7e6f8efb6dfbbe85ad84a3133b28d6e127b63519 we must implement impl_shoot to inherit from ConfigurationShooter, so this is not working:

https://github.com/humanoid-path-planner/hpp-rbprm/blob/ec6737f6a9a166c019309d0123010ceb82b12154/src/rbprm-shooter.cc#L234

[  1%] Building CXX object CMakeFiles/hpp-rbprm.dir/src/rbprm-shooter.cc.o
…/hpp-rbprm/src/rbprm-shooter.cc: In static member function 'static hpp::rbprm::RbPrmShooterPtr_t hpp::rbprm::RbPrmShooter::create(const RbPrmDevicePtr_t&, const ObjectStdVector_t&, const affMap_t&, const std::vector<std::__cxx11::basic_string<char> >&, const std::map<std::__cxx11::basic_string<char>, std::vector<std::__cxx11::basic_string<char> > >&, std::size_t, std::size_t)':
…/hpp-rbprm/src/rbprm-shooter.cc:235:94: error: invalid new-expression of abstract class type 'hpp::rbprm::RbPrmShooter'
  235 |                                             filter, affFilters, shootLimit, displacementLimit);
      |                                                                                              ^
In file included from …/hpp-rbprm/src/rbprm-shooter.cc:18:
…/hpp-rbprm/include/hpp/rbprm/rbprm-shooter.hh:45:28: note:   because the following virtual functions are pure within 'hpp::rbprm::RbPrmShooter':
   45 |     class HPP_RBPRM_DLLAPI RbPrmShooter : public core::ConfigurationShooter{
      |                            ^~~~~~~~~~~~
In file included from …/hpp-rbprm/include/hpp/rbprm/rbprm-shooter.hh:26,
                 from …/hpp-rbprm/src/rbprm-shooter.cc:18:
…/include/hpp/core/configuration-shooter.hh:64:20: note:    'virtual void hpp::core::ConfigurationShooter::impl_shoot(hpp::core::Configuration_t&) const'
   64 |       virtual void impl_shoot (Configuration_t& q) const = 0;
      |                    ^~~~~~~~~~make[2]: *** [CMakeFiles/hpp-rbprm.dir/build.make:86: CMakeFiles/hpp-rbprm.dir/src/rbprm-shooter.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:179: CMakeFiles/hpp-rbprm.dir/all] Error 2
make: *** [Makefile:164: all] Error 2
jmirabel commented 4 years ago

Solved by https://github.com/humanoid-path-planner/hpp-rbprm/pull/72

nim65s commented 4 years ago

Thanks a lot !