30 #include <type_traits> 51 std::vector<std::string> solvers =
Instance()->solvers_.getDeclaredClasses();
52 for (
const std::string&
s : solvers)
57 std::vector<std::string> problems =
Instance()->problems_.GetDeclaredClasses();
58 for (
const std::string&
s : problems)
63 std::vector<std::string> maps =
Instance()->maps_.getDeclaredClasses();
64 for (
const std::string&
s : maps)
68 HIGHLIGHT(
"Registered collision scenes:");
69 std::vector<std::string> scenes =
Instance()->collision_scenes_.getDeclaredClasses();
70 for (
const std::string&
s : scenes)
74 HIGHLIGHT(
"Registered dynamics solvers:");
75 std::vector<std::string> dynamics_solvers =
Instance()->dynamics_solvers_.getDeclaredClasses();
76 for (
const std::string&
s : dynamics_solvers)
84 std::vector<Initializer> temps = it->GetAllTemplates();
90 if (i.GetName() == j.GetName())
106 std::vector<std::string> solvers =
Instance()->solvers_.getDeclaredClasses();
107 for (
const std::string&
s : solvers)
113 catch (std::exception& e)
115 WARNING_NAMED(
"Setup::GetInitializers",
"Solver '" <<
s <<
"' not built. Won't be able to instantiate.");
119 std::vector<std::string> maps =
Instance()->maps_.getDeclaredClasses();
120 for (
const std::string&
s : maps)
126 catch (std::exception& e)
128 WARNING_NAMED(
"Setup::GetInitializers",
"TaskMap '" <<
s <<
"' not built. Won't be able to instantiate.");
132 std::vector<std::string> collision_scenes =
Instance()->collision_scenes_.getDeclaredClasses();
133 for (
const std::string&
s : collision_scenes)
139 catch (std::exception& e)
141 WARNING_NAMED(
"Setup::GetInitializers",
"CollisionScene '" <<
s <<
"' not built. Won't be able to instantiate.");
145 std::vector<std::string> dynamics_solvers =
Instance()->dynamics_solvers_.getDeclaredClasses();
146 for (
const std::string&
s : dynamics_solvers)
152 catch (std::exception& e)
154 WARNING_NAMED(
"Setup::GetInitializers",
"DynamicsSolver '" <<
s <<
"' not built. Won't be able to instantiate.");
167 maps_(
"exotica_core",
"exotica::TaskMap"),
static std::vector< std::string > GetDynamicsSolvers()
static std::shared_ptr< exotica::CollisionScene > CreateCollisionScene(const std::string &type, bool prepend=true)
PlanningProblemFac problems_
#define WARNING_NAMED(name, x)
void AppendInitializer(std::shared_ptr< InstantiableBase > it, std::vector< Initializer > &ret)
static std::shared_ptr< exotica::MotionSolver > CreateSolver(const std::string &type, bool prepend=true)
std::vector< Initializer > GetAllTemplates() const override
pluginlib::ClassLoader< exotica::TaskMap > maps_
pluginlib::ClassLoader< exotica::DynamicsSolver > dynamics_solvers_
static std::shared_ptr< Setup > singleton_initialiser_
static std::vector< Initializer > GetInitializers()
static std::vector< std::string > GetCollisionScenes()
std::shared_ptr< Setup > SetupPtr
static void PrintSupportedClasses()
The class of EXOTica Scene.
static std::shared_ptr< exotica::DynamicsSolver > CreateDynamicsSolver(const std::string &type, bool prepend=true)
static std::vector< std::string > GetProblems()
pluginlib::ClassLoader< exotica::MotionSolver > solvers_
static std::vector< std::string > GetMaps()
static std::vector< std::string > GetSolvers()
pluginlib::ClassLoader< exotica::CollisionScene > collision_scenes_
static std::shared_ptr< Setup > Instance()
static std::shared_ptr< exotica::TaskMap > CreateMap(const std::string &type, bool prepend=true)