Wraps around database connection to provide database-related services through ROS. More...
Public Member Functions | |
ObjectsDatabaseNode () | |
~ObjectsDatabaseNode () | |
Private Member Functions | |
bool | getDescriptionCB (GetModelDescription::Request &request, GetModelDescription::Response &response) |
Callback for the get description service. | |
bool | getMeshCB (GetModelMesh::Request &request, GetModelMesh::Response &response) |
Callback for the get mesh service. | |
bool | getModelsCB (GetModelList::Request &request, GetModelList::Response &response) |
Callback for the get models service. | |
bool | getScansCB (GetModelScans::Request &request, GetModelScans::Response &response) |
bool | graspPlanningCB (GraspPlanning::Request &request, GraspPlanning::Response &response) |
Callback for the get grasps service. | |
geometry_msgs::Pose | multiplyPoses (const geometry_msgs::Pose &p1, const geometry_msgs::Pose &p2) |
virtual void | pruneGraspList (std::vector< boost::shared_ptr< DatabaseGrasp > > &grasps, double gripper_threshold, double table_clearance_threshold) |
Prune grasps that require gripper to be open all the way, or that are marked in db as colliding with table. | |
bool | saveScanCB (SaveScan::Request &request, SaveScan::Response &response) |
Private Attributes | |
ObjectsDatabase * | database_ |
The database connection itself. | |
ros::ServiceServer | get_description_srv_ |
Server for the get description service. | |
ros::ServiceServer | get_mesh_srv_ |
Server for the get mesh service. | |
ros::ServiceServer | get_models_srv_ |
Server for the get models service. | |
ros::ServiceServer | get_scans_srv_ |
Server for the get scans service. | |
ros::ServiceServer | grasp_planning_srv_ |
Server for the get grasps service. | |
tf::TransformListener | listener_ |
Transform listener. | |
ros::NodeHandle | priv_nh_ |
Node handle in the private namespace. | |
double | prune_gripper_opening_ |
Threshold for pruning grasps based on gripper opening. | |
double | prune_table_clearance_ |
Threshold for pruning grasps based on table clearance. | |
ros::NodeHandle | root_nh_ |
Node handle in the root namespace. | |
ros::ServiceServer | save_scan_srv_ |
Server for the save scan service. |
Wraps around database connection to provide database-related services through ROS.
Contains very thin wrappers for getting a list of scaled models and for getting the mesh of a model, as well as a complete server for the grasp planning service
Definition at line 132 of file objects_database_node.cpp.
ObjectsDatabaseNode::ObjectsDatabaseNode | ( | ) | [inline] |
Definition at line 437 of file objects_database_node.cpp.
ObjectsDatabaseNode::~ObjectsDatabaseNode | ( | ) | [inline] |
Definition at line 476 of file objects_database_node.cpp.
bool ObjectsDatabaseNode::getDescriptionCB | ( | GetModelDescription::Request & | request, | |
GetModelDescription::Response & | response | |||
) | [inline, private] |
Callback for the get description service.
Definition at line 211 of file objects_database_node.cpp.
bool ObjectsDatabaseNode::getMeshCB | ( | GetModelMesh::Request & | request, | |
GetModelMesh::Response & | response | |||
) | [inline, private] |
Callback for the get mesh service.
Definition at line 194 of file objects_database_node.cpp.
bool ObjectsDatabaseNode::getModelsCB | ( | GetModelList::Request & | request, | |
GetModelList::Response & | response | |||
) | [inline, private] |
Callback for the get models service.
Definition at line 172 of file objects_database_node.cpp.
bool ObjectsDatabaseNode::getScansCB | ( | GetModelScans::Request & | request, | |
GetModelScans::Response & | response | |||
) | [inline, private] |
Definition at line 235 of file objects_database_node.cpp.
bool ObjectsDatabaseNode::graspPlanningCB | ( | GraspPlanning::Request & | request, | |
GraspPlanning::Response & | response | |||
) | [inline, private] |
Callback for the get grasps service.
Definition at line 310 of file objects_database_node.cpp.
geometry_msgs::Pose ObjectsDatabaseNode::multiplyPoses | ( | const geometry_msgs::Pose & | p1, | |
const geometry_msgs::Pose & | p2 | |||
) | [inline, private] |
Definition at line 296 of file objects_database_node.cpp.
virtual void ObjectsDatabaseNode::pruneGraspList | ( | std::vector< boost::shared_ptr< DatabaseGrasp > > & | grasps, | |
double | gripper_threshold, | |||
double | table_clearance_threshold | |||
) | [inline, private, virtual] |
Prune grasps that require gripper to be open all the way, or that are marked in db as colliding with table.
Use negative value for table_clearance_threshold if no clearing should be done based on table clearance.
Definition at line 273 of file objects_database_node.cpp.
bool ObjectsDatabaseNode::saveScanCB | ( | SaveScan::Request & | request, | |
SaveScan::Response & | response | |||
) | [inline, private] |
Definition at line 249 of file objects_database_node.cpp.
ObjectsDatabase* ObjectsDatabaseNode::database_ [private] |
The database connection itself.
Definition at line 160 of file objects_database_node.cpp.
ros::ServiceServer ObjectsDatabaseNode::get_description_srv_ [private] |
Server for the get description service.
Definition at line 148 of file objects_database_node.cpp.
ros::ServiceServer ObjectsDatabaseNode::get_mesh_srv_ [private] |
Server for the get mesh service.
Definition at line 145 of file objects_database_node.cpp.
ros::ServiceServer ObjectsDatabaseNode::get_models_srv_ [private] |
Server for the get models service.
Definition at line 142 of file objects_database_node.cpp.
ros::ServiceServer ObjectsDatabaseNode::get_scans_srv_ [private] |
Server for the get scans service.
Definition at line 154 of file objects_database_node.cpp.
ros::ServiceServer ObjectsDatabaseNode::grasp_planning_srv_ [private] |
Server for the get grasps service.
Definition at line 151 of file objects_database_node.cpp.
tf::TransformListener ObjectsDatabaseNode::listener_ [private] |
Transform listener.
Definition at line 163 of file objects_database_node.cpp.
ros::NodeHandle ObjectsDatabaseNode::priv_nh_ [private] |
Node handle in the private namespace.
Definition at line 136 of file objects_database_node.cpp.
double ObjectsDatabaseNode::prune_gripper_opening_ [private] |
Threshold for pruning grasps based on gripper opening.
Definition at line 166 of file objects_database_node.cpp.
double ObjectsDatabaseNode::prune_table_clearance_ [private] |
Threshold for pruning grasps based on table clearance.
Definition at line 169 of file objects_database_node.cpp.
ros::NodeHandle ObjectsDatabaseNode::root_nh_ [private] |
Node handle in the root namespace.
Definition at line 139 of file objects_database_node.cpp.
ros::ServiceServer ObjectsDatabaseNode::save_scan_srv_ [private] |
Server for the save scan service.
Definition at line 157 of file objects_database_node.cpp.