task_sequence_planning_node.cpp
Go to the documentation of this file.
1 //
2 // Created by yijiangh on 12/21/17.
3 //
4 
5 #include <ros/ros.h>
6 
7 // choreo dependencies
11 
12 // srv
13 #include <choreo_msgs/TaskSequencePlanning.h>
14 
15 // Globals
16 const static std::string DEFAULT_TASK_SEQUENCE_PLANNING_SERVICE = "task_sequence_planning";
17 
18 int main(int argc, char** argv)
19 {
20  ros::init(argc, argv, "choreo_task_sequence_planning");
21  ros::NodeHandle nh, pnh("~");
22 
23  std::string world_frame, hotend_group, hotend_tcp, hotend_base, robot_model_plugin;
24  pnh.param<std::string>("world_frame", world_frame, "");
25  pnh.param<std::string>("hotend_group", hotend_group, "");
26  pnh.param<std::string>("hotend_tcp", hotend_tcp, "");
27  pnh.param<std::string>("hotend_base", hotend_base, "");
28  pnh.param<std::string>("robot_model_plugin", robot_model_plugin, "");
29 
30  // IK Plugin parameter must be specified
31  if (robot_model_plugin.empty())
32  {
33  ROS_ERROR_STREAM("MUST SPECIFY PARAMETER 'robot_model_plugin' for choreo_process_planning node");
34  return -1;
35  }
36 
37  FiberPrintPlugIn fiber_print_plugin(world_frame, hotend_group, hotend_tcp, world_frame, robot_model_plugin);
38 
39  ros::ServiceServer task_sequence_planning_server =
41  &FiberPrintPlugIn::handleTaskSequencePlanning, &fiber_print_plugin);
42 
43  // Serve and wait for shutdown
44  ROS_INFO_STREAM("[tsp] sequence task planning server online");
45  ros::spin();
46 
47  return 0;
48 }
ROSCPP_DECL void init(int &argc, char **argv, const std::string &name, uint32_t options=0)
ServiceServer advertiseService(const std::string &service, bool(T::*srv_func)(MReq &, MRes &), T *obj)
ROSCPP_DECL void spin(Spinner &spinner)
bool handleTaskSequencePlanning(choreo_msgs::TaskSequencePlanning::Request &req, choreo_msgs::TaskSequencePlanning::Response &res)
bool param(const std::string &param_name, T &param_val, const T &default_val) const
static const std::string DEFAULT_TASK_SEQUENCE_PLANNING_SERVICE
int main(int argc, char **argv)
#define ROS_INFO_STREAM(args)
#define ROS_ERROR_STREAM(args)


choreo_task_sequence_planner
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 04:03:14