CollisionCheck.h
Go to the documentation of this file.
00001 
00002 /*
00003  * CollisionCheck.h
00004  *
00005  *  Created on: Jan 18, 2012
00006  *      Author: hess
00007  */
00008 
00009 #ifndef COLLISIONCHECK_H_
00010 #define COLLISIONCHECK_H_
00011 
00012 #include <ros/ros.h>
00013 #include <vector>
00014 #include <string>
00015 #include <Eigen/Core>
00016 #include <arm_navigation_msgs/PlanningScene.h>
00017 #include <visualization_msgs/MarkerArray.h>
00018 #include <planning_environment/models/collision_models.h>
00019 using namespace std;
00020 
00021 class CollisionCheck {
00022 
00023 public:
00024     CollisionCheck(ros::NodeHandle& nh);
00025     ~CollisionCheck();
00026     bool requestPlanningScene();
00027     bool checkArmJointState(const std::vector<double>& arm_state, const std::string arm);
00028     bool checkJointStateRight(const std::vector<double>& arm_state);
00029     bool checkJointStateLeft(const std::vector<double>& arm_state);
00030 
00031 //private:
00032     ros::NodeHandle nh_;
00033     bool planning_scene_avail_;
00034         visualization_msgs::MarkerArray arr;
00035     arm_navigation_msgs::PlanningScene scene_;
00036     ros::Publisher vis_marker_array_publisher_;
00037     ros::ServiceClient get_planning_scene_client_;
00038         planning_environment::CollisionModels* collision_models_;
00039         planning_models::KinematicState* state_;
00040         std::vector<std::string> left_arm_names;
00041         std::vector<std::string> left_joint_names;
00042         std::vector<std::string> right_arm_names;
00043         std::vector<std::string> right_joint_names;
00044 
00045 };
00046 
00047 
00048 
00049 #endif /* COLLISIONCHECK_H_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Properties Friends Defines


coverage_3d_arm_navigation
Author(s): Juergen Hess
autogenerated on Wed Dec 26 2012 15:25:56