29 #ifndef HPP_CORE_PLUGIN_HH
30 #define HPP_CORE_PLUGIN_HH
44 const std::string&
name()
const {
return name_; }
46 const std::string&
version()
const {
return version_; }
49 if (initialized_)
return true;
60 : name_(
name), version_(
version), initialized_(false) {}
63 std::string name_, version_;
75 #define HPP_CORE_DEFINE_PLUGIN(PluginClassName) \
77 ::hpp::core::ProblemSolverPlugin* createProblemSolverPlugin() { \
78 return new PluginClassName(); \
Plugin mechanism to declare new features in ProblemSolver class.
Definition: plugin.hh:42
bool initialize(ProblemSolverPtr_t ps)
Definition: plugin.hh:48
virtual ~ProblemSolverPlugin()
Definition: plugin.hh:54
const std::string & version() const
Definition: plugin.hh:46
virtual bool impl_initialize(ProblemSolverPtr_t ps)=0
const std::string & name() const
Definition: plugin.hh:44
ProblemSolverPlugin(const std::string &name, const std::string &version)
Definition: plugin.hh:59
Definition: problem-solver.hh:78
std::string findPluginLibrary(const std::string &name)
bool loadPlugin(const std::string &lib, ProblemSolverPtr_t ps)
Definition: bi-rrt-planner.hh:35