29 int main(
int argc,
char **argv)
35 auto fetch = std::make_shared<FetchRobot>();
38 fetch->initialize(
false);
43 Experiment experiment(
"fetch_scenes", options, 10.0, 10);
49 const auto &scene_file =
50 log::format(
"package://robowflex_library/yaml/fetch_scenes/scene_vicon%1$04d.yaml", i);
51 const auto &request_file =
52 log::format(
"package://robowflex_library/yaml/fetch_scenes/request%1$04d.yaml", i);
56 if (not
scene->fromYAMLFile(scene_file))
58 RBX_ERROR(
"Failed to read file: %s for scene", scene_file);
63 auto planner = std::make_shared<OMPL::FetchOMPLPipelinePlanner>(
fetch);
67 settings.simplify_solutions =
false;
69 planner->initialize(settings);
72 auto request = std::make_shared<robowflex::MotionRequestBuilder>(planner,
GROUP);
73 if (not request->fromYAMLFile(request_file))
75 RBX_ERROR(
"Failed to read file: %s for request", request_file);
86 output.
dump(*dataset);
A helper class for benchmarking that controls running multiple queries.
PlanDataSetPtr benchmark(std::size_t n_threads=1) const
Run benchmarking on this experiment. Note that, for some planners, multiple threads cannot be used wi...
void addQuery(const std::string &planner_name, const SceneConstPtr &scene, const PlannerPtr &planner, const planning_interface::MotionPlanRequest &request)
Add a query to the experiment for profiling.
Benchmark outputter that saves results into OMPL benchmarking log files. If ompl_benchmark_statistics...
void dump(const PlanDataSet &results) override
Dumps results into a OMPL benchmarking log file in prefix_ named after the request name_.
Settings descriptor for settings provided by the default MoveIt! OMPL planning pipeline.
@ WAYPOINTS
Number of waypoints in path.
@ CORRECT
Is the path correct (no collisions?).
@ LENGTH
Length of the path.
RAII-pattern for starting up ROS.
int main(int argc, char **argv)
static const std::string GROUP
#define RBX_ERROR(fmt,...)
Output a error logging message.
std::string format(const std::string &fmt, Args &&... args)
Recursion base case, return string form of formatted arguments.
Main namespace. Contains all library classes and functions.
Functions for loading and animating scenes in Blender.
uint32_t metrics
Bitmask of which metrics to compute after planning.