libmove3d  3.13.0
/home/slemaign/softs-local/BioMove3D-git/lightPlanner/proto/ManipulationConfigs.hpp
00001 #ifndef __MANIPULATIONCONFIGS_HPP__
00002 #define __MANIPULATIONCONFIGS_HPP__
00003 
00004 #if defined (LIGHT_PLANNER) && defined (GRASP_PLANNING)
00005 
00006 #include "P3d-pkg.h"
00007 #include "GraspPlanning-pkg.h"
00008 
00009 #include "ManipulationStruct.h"
00010 #include "ManipulationUtils.hpp"
00011 
00012 #include <vector>
00013 
00015 class  ManipulationConfigs {
00016   public:
00017   /* ******************************* */
00018   /* ******* (Con)Destructor ******* */
00019   /* ******************************* */
00020     ManipulationConfigs(p3d_rob * robot);
00021     virtual ~ManipulationConfigs();
00022   /* ******************************* */
00023   /* ******* (Ge)Setters *********** */
00024   /* ******************************* */
00025     void setDebugMode(bool value);
00026   
00027     void setOptimizeRedundentSteps(int nbSteps);
00028     int getOptimizeRedundentSteps(void) const;
00029 
00030     void setApproachFreeOffset(double offset);
00031     double getApproachFreeOffset(void) const;
00032 
00033     void setApproachGraspOffset(double offset);
00034     double getApproachGraspOffset(void) const;
00035 
00036     inline p3d_rob* robot()  const{return _robot;}
00037   /* ******************************* */
00038   /* *********** Methods *********** */
00039   /* ******************************* */
00044     configPt getGraspConf(p3d_rob* object, int armId, gpGrasp& grasp, p3d_matrix4 tAtt, double& confCost) const;
00046     configPt getOpenGraspConf(p3d_rob* object, int armId, gpGrasp& grasp, configPt graspConf) const;
00048     configPt getApproachFreeConf(p3d_rob* object, int armId, gpGrasp& grasp, configPt graspConf, p3d_matrix4 tAtt) const;
00050     configPt getApproachGraspConf(p3d_rob* object, int armId, gpGrasp& grasp, configPt graspConf, p3d_matrix4 tAtt) const;
00052     configPt getFreeHoldingConf( p3d_rob* obj, int armId, gpGrasp& grasp, p3d_matrix4 tAtt, double& confCost, std::vector<double> &objGoto, p3d_rob* support = NULL ) const;
00054     configPt getExtractConf(int armId, configPt currentConf, p3d_matrix4 tAtt) const;
00055     
00056   private:
00058     p3d_rob * _robot;
00060     int _optimizeRedundentSteps;
00062     double _approachFreeOffset;
00064     double _approachGraspOffset;
00065 };
00066 
00067 #endif
00068 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines