#include <kinematics_plugin_factory.h>
Public Member Functions | |
void | addFwdKinPlugin (const std::string &group_name, const std::string &solver_name, tesseract_common::PluginInfo plugin_info) |
Add a forward kinematics plugin to the manager. More... | |
void | addInvKinPlugin (const std::string &group_name, const std::string &solver_name, tesseract_common::PluginInfo plugin_info) |
Add a inverse kinematics plugin to the manager. More... | |
void | addSearchLibrary (const std::string &library_name) |
Add a library to search for plugin name. More... | |
void | addSearchPath (const std::string &path) |
Add location for the plugin loader to search. More... | |
std::unique_ptr< ForwardKinematics > | createFwdKin (const std::string &group_name, const std::string &solver_name, const tesseract_scene_graph::SceneGraph &scene_graph, const tesseract_scene_graph::SceneState &scene_state) const |
Get forward kinematics object given group name and solver name. More... | |
std::unique_ptr< ForwardKinematics > | createFwdKin (const std::string &solver_name, const tesseract_common::PluginInfo &plugin_info, const tesseract_scene_graph::SceneGraph &scene_graph, const tesseract_scene_graph::SceneState &scene_state) const |
Get forward kinematics object given plugin info. More... | |
std::unique_ptr< InverseKinematics > | createInvKin (const std::string &group_name, const std::string &solver_name, const tesseract_scene_graph::SceneGraph &scene_graph, const tesseract_scene_graph::SceneState &scene_state) const |
Get inverse kinematics object given group name and solver name. More... | |
std::unique_ptr< InverseKinematics > | createInvKin (const std::string &solver_name, const tesseract_common::PluginInfo &plugin_info, const tesseract_scene_graph::SceneGraph &scene_graph, const tesseract_scene_graph::SceneState &scene_state) const |
Get inverse kinematics object given plugin info. More... | |
YAML::Node | getConfig () const |
Get the plugin information config as a yaml node. More... | |
std::string | getDefaultFwdKinPlugin (const std::string &group_name) const |
Get the default forward kinematics solver for a group. More... | |
std::string | getDefaultInvKinPlugin (const std::string &group_name) const |
Get the default forward inverse solver for a group. More... | |
std::map< std::string, tesseract_common::PluginInfoContainer > | getFwdKinPlugins () const |
Get the map of forward kinematic plugins. More... | |
std::map< std::string, tesseract_common::PluginInfoContainer > | getInvKinPlugins () const |
Get the map of inverse kinematic plugins. More... | |
std::set< std::string > | getSearchLibraries () const |
Get the plugin search libraries. More... | |
std::set< std::string > | getSearchPaths () const |
Get the plugin search paths. More... | |
KinematicsPluginFactory () | |
KinematicsPluginFactory (const KinematicsPluginFactory &)=default | |
KinematicsPluginFactory (const std::filesystem::path &config, const tesseract_common::ResourceLocator &locator) | |
Load plugins from file path. More... | |
KinematicsPluginFactory (const std::string &config, const tesseract_common::ResourceLocator &locator) | |
Load plugins from string. More... | |
KinematicsPluginFactory (KinematicsPluginFactory &&)=default | |
KinematicsPluginFactory (YAML::Node config, const tesseract_common::ResourceLocator &locator) | |
Load plugins from yaml node. More... | |
KinematicsPluginFactory & | operator= (const KinematicsPluginFactory &)=default |
KinematicsPluginFactory & | operator= (KinematicsPluginFactory &&)=default |
void | removeFwdKinPlugin (const std::string &group_name, const std::string &solver_name) |
remove forward kinematics plugin from the manager More... | |
void | removeInvKinPlugin (const std::string &group_name, const std::string &solver_name) |
remove inverse kinematics plugin from the manager More... | |
void | saveConfig (const std::filesystem::path &file_path) const |
Save the plugin information to a yaml config file. More... | |
void | setDefaultFwdKinPlugin (const std::string &group_name, const std::string &solver_name) |
Set a groups default forward kinematics solver. More... | |
void | setDefaultInvKinPlugin (const std::string &group_name, const std::string &solver_name) |
Set a groups default inverse kinematics solver. More... | |
~KinematicsPluginFactory () | |
Private Member Functions | |
void | loadConfig (const YAML::Node &config) |
Private Attributes | |
std::map< std::string, FwdKinFactory::Ptr > | fwd_kin_factories_ |
std::map< std::string, tesseract_common::PluginInfoContainer > | fwd_plugin_info_ |
std::map< std::string, InvKinFactory::Ptr > | inv_kin_factories_ |
std::map< std::string, tesseract_common::PluginInfoContainer > | inv_plugin_info_ |
boost_plugin_loader::PluginLoader | plugin_loader_ |
Definition at line 116 of file kinematics_plugin_factory.h.
tesseract_kinematics::KinematicsPluginFactory::KinematicsPluginFactory | ( | ) |
Definition at line 54 of file kinematics_plugin_factory.cpp.
|
default |
|
default |
|
default |
tesseract_kinematics::KinematicsPluginFactory::KinematicsPluginFactory | ( | YAML::Node | config, |
const tesseract_common::ResourceLocator & | locator | ||
) |
Load plugins from yaml node.
config | The config node |
Definition at line 76 of file kinematics_plugin_factory.cpp.
tesseract_kinematics::KinematicsPluginFactory::KinematicsPluginFactory | ( | const std::filesystem::path & | config, |
const tesseract_common::ResourceLocator & | locator | ||
) |
Load plugins from file path.
config | The config file path |
Definition at line 83 of file kinematics_plugin_factory.cpp.
tesseract_kinematics::KinematicsPluginFactory::KinematicsPluginFactory | ( | const std::string & | config, |
const tesseract_common::ResourceLocator & | locator | ||
) |
Load plugins from string.
config | The config string |
Definition at line 90 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::addFwdKinPlugin | ( | const std::string & | group_name, |
const std::string & | solver_name, | ||
tesseract_common::PluginInfo | plugin_info | ||
) |
Add a forward kinematics plugin to the manager.
group_name | The group name |
solver_name | The solver name |
plugin_info | The plugin information |
Definition at line 112 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::addInvKinPlugin | ( | const std::string & | group_name, |
const std::string & | solver_name, | ||
tesseract_common::PluginInfo | plugin_info | ||
) |
Add a inverse kinematics plugin to the manager.
group_name | The group name |
solver_name | The solver name |
plugin_info | The plugin information |
Definition at line 172 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::addSearchLibrary | ( | const std::string & | library_name | ) |
Add a library to search for plugin name.
library_name | The library name without the prefix or suffix |
Definition at line 105 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::addSearchPath | ( | const std::string & | path | ) |
Add location for the plugin loader to search.
path | The full path to the directory |
Definition at line 101 of file kinematics_plugin_factory.cpp.
std::unique_ptr< ForwardKinematics > tesseract_kinematics::KinematicsPluginFactory::createFwdKin | ( | const std::string & | group_name, |
const std::string & | solver_name, | ||
const tesseract_scene_graph::SceneGraph & | scene_graph, | ||
const tesseract_scene_graph::SceneState & | scene_state | ||
) | const |
Get forward kinematics object given group name and solver name.
This looks for kinematics plugin info added using addFwdKinPlugin. If not found nullptr is returned.
group_name | The group name |
solver_name | The solver |
scene_graph | The scene graph |
scene_state | The scene state |
Definition at line 233 of file kinematics_plugin_factory.cpp.
std::unique_ptr< ForwardKinematics > tesseract_kinematics::KinematicsPluginFactory::createFwdKin | ( | const std::string & | solver_name, |
const tesseract_common::PluginInfo & | plugin_info, | ||
const tesseract_scene_graph::SceneGraph & | scene_graph, | ||
const tesseract_scene_graph::SceneState & | scene_state | ||
) | const |
Get forward kinematics object given plugin info.
plugin_info | The plugin information to create kinematics object |
scene_graph | The scene graph |
scene_state | The scene state |
Definition at line 262 of file kinematics_plugin_factory.cpp.
std::unique_ptr< InverseKinematics > tesseract_kinematics::KinematicsPluginFactory::createInvKin | ( | const std::string & | group_name, |
const std::string & | solver_name, | ||
const tesseract_scene_graph::SceneGraph & | scene_graph, | ||
const tesseract_scene_graph::SceneState & | scene_state | ||
) | const |
Get inverse kinematics object given group name and solver name.
This looks for kinematics plugin info added using addInvKinPlugin. If not found nullptr is returned.
group_name | The group name |
solver_name | The solver |
scene_graph | The scene graph |
scene_state | The scene state |
Definition at line 290 of file kinematics_plugin_factory.cpp.
std::unique_ptr< InverseKinematics > tesseract_kinematics::KinematicsPluginFactory::createInvKin | ( | const std::string & | solver_name, |
const tesseract_common::PluginInfo & | plugin_info, | ||
const tesseract_scene_graph::SceneGraph & | scene_graph, | ||
const tesseract_scene_graph::SceneState & | scene_state | ||
) | const |
Get inverse kinematics object given plugin info.
plugin_info | The plugin information to create kinematics object |
scene_graph | The scene graph |
scene_state | The scene state |
Definition at line 319 of file kinematics_plugin_factory.cpp.
YAML::Node tesseract_kinematics::KinematicsPluginFactory::getConfig | ( | ) | const |
Get the plugin information config as a yaml node.
Definition at line 353 of file kinematics_plugin_factory.cpp.
std::string tesseract_kinematics::KinematicsPluginFactory::getDefaultFwdKinPlugin | ( | const std::string & | group_name | ) | const |
Get the default forward kinematics solver for a group.
group_name | The group |
Definition at line 159 of file kinematics_plugin_factory.cpp.
std::string tesseract_kinematics::KinematicsPluginFactory::getDefaultInvKinPlugin | ( | const std::string & | group_name | ) | const |
Get the default forward inverse solver for a group.
group_name | The group |
Definition at line 219 of file kinematics_plugin_factory.cpp.
std::map< std::string, tesseract_common::PluginInfoContainer > tesseract_kinematics::KinematicsPluginFactory::getFwdKinPlugins | ( | ) | const |
Get the map of forward kinematic plugins.
Definition at line 119 of file kinematics_plugin_factory.cpp.
std::map< std::string, tesseract_common::PluginInfoContainer > tesseract_kinematics::KinematicsPluginFactory::getInvKinPlugins | ( | ) | const |
Get the map of inverse kinematic plugins.
Definition at line 179 of file kinematics_plugin_factory.cpp.
std::set< std::string > tesseract_kinematics::KinematicsPluginFactory::getSearchLibraries | ( | ) | const |
Get the plugin search libraries.
Definition at line 110 of file kinematics_plugin_factory.cpp.
std::set< std::string > tesseract_kinematics::KinematicsPluginFactory::getSearchPaths | ( | ) | const |
Get the plugin search paths.
Definition at line 103 of file kinematics_plugin_factory.cpp.
|
private |
Definition at line 63 of file kinematics_plugin_factory.cpp.
|
default |
|
default |
void tesseract_kinematics::KinematicsPluginFactory::removeFwdKinPlugin | ( | const std::string & | group_name, |
const std::string & | solver_name | ||
) |
remove forward kinematics plugin from the manager
group_name | The group name |
solver_name | The solver name |
Definition at line 124 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::removeInvKinPlugin | ( | const std::string & | group_name, |
const std::string & | solver_name | ||
) |
remove inverse kinematics plugin from the manager
group_name | The group name |
solver_name | The solver name |
Definition at line 184 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::saveConfig | ( | const std::filesystem::path & | file_path | ) | const |
Save the plugin information to a yaml config file.
file_path | The file path |
Definition at line 346 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::setDefaultFwdKinPlugin | ( | const std::string & | group_name, |
const std::string & | solver_name | ||
) |
Set a groups default forward kinematics solver.
A group can have multiple inverse kinematics solvers
group_name | The group name |
solver_name | The solver name |
Definition at line 144 of file kinematics_plugin_factory.cpp.
void tesseract_kinematics::KinematicsPluginFactory::setDefaultInvKinPlugin | ( | const std::string & | group_name, |
const std::string & | solver_name | ||
) |
Set a groups default inverse kinematics solver.
A group can have multiple inverse kinematics solvers
group_name | The group name |
solver_name | The solver name |
Definition at line 204 of file kinematics_plugin_factory.cpp.
|
mutableprivate |
Definition at line 305 of file kinematics_plugin_factory.h.
|
private |
Definition at line 307 of file kinematics_plugin_factory.h.
|
mutableprivate |
Definition at line 306 of file kinematics_plugin_factory.h.
|
private |
Definition at line 308 of file kinematics_plugin_factory.h.
|
private |
Definition at line 309 of file kinematics_plugin_factory.h.