|
From: <is...@us...> - 2009-07-25 21:49:09
|
Revision: 19671
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=19671&view=rev
Author: isucan
Date: 2009-07-25 21:49:00 +0000 (Sat, 25 Jul 2009)
Log Message:
-----------
forgot to add these to previous commits
Modified Paths:
--------------
pkg/trunk/mapping/collision_map/CMakeLists.txt
pkg/trunk/motion_planning/planning_environment/include/planning_environment/util/kinematic_state_constraint_evaluator.h
pkg/trunk/motion_planning/planning_environment/src/util/kinematic_state_constraint_evaluator.cpp
pkg/trunk/world_models/collision_space/src/environmentODE.cpp
Modified: pkg/trunk/mapping/collision_map/CMakeLists.txt
===================================================================
--- pkg/trunk/mapping/collision_map/CMakeLists.txt 2009-07-25 21:44:47 UTC (rev 19670)
+++ pkg/trunk/mapping/collision_map/CMakeLists.txt 2009-07-25 21:49:00 UTC (rev 19671)
@@ -2,7 +2,7 @@
set( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE )
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
-set(ROS_BUILD_TYPE RelWithDebInfo)
+set(ROS_BUILD_TYPE Release)
rospack(collision_map)
include(CheckIncludeFile)
Modified: pkg/trunk/motion_planning/planning_environment/include/planning_environment/util/kinematic_state_constraint_evaluator.h
===================================================================
--- pkg/trunk/motion_planning/planning_environment/include/planning_environment/util/kinematic_state_constraint_evaluator.h 2009-07-25 21:44:47 UTC (rev 19670)
+++ pkg/trunk/motion_planning/planning_environment/include/planning_environment/util/kinematic_state_constraint_evaluator.h 2009-07-25 21:49:00 UTC (rev 19671)
@@ -62,6 +62,9 @@
/** \brief This function assumes the constraint has been transformed into the proper frame, if such a transform is needed */
virtual bool use(const planning_models::KinematicModel *kmodel, const ros::Message *kc) = 0;
+
+ /** \brief This function updates the kinematic model used by the constraint */
+ virtual void use(const planning_models::KinematicModel *kmodel) = 0;
/** \brief Decide whether the constraint is satisfied. The kinematic model is assumed to be at the state we want to decide. */
virtual bool decide(const double *params, const int groupID) const = 0;
@@ -84,13 +87,16 @@
m_joint = NULL;
m_kmodel = NULL;
}
-
+
/** \brief This function assumes the constraint has been transformed into the proper frame, if such a transform is needed */
virtual bool use(const planning_models::KinematicModel *kmodel, const ros::Message *kc);
/** \brief This function assumes the constraint has been transformed into the proper frame, if such a transform is needed */
bool use(const planning_models::KinematicModel *kmodel, const motion_planning_msgs::JointConstraint &jc);
+ /** \brief This function updates the kinematic model used by the constraint */
+ virtual void use(const planning_models::KinematicModel *kmodel);
+
/** \brief Decide whether the constraint is satisfied. The kinematic model is assumed to be at the state we want to decide. */
virtual bool decide(const double *params, const int groupID) const;
@@ -127,6 +133,9 @@
/** \brief This function assumes the constraint has been transformed into the proper frame, if such a transform is needed */
bool use(const planning_models::KinematicModel *kmodel, const motion_planning_msgs::PoseConstraint &pc);
+ /** \brief This function updates the kinematic model used by the constraint */
+ virtual void use(const planning_models::KinematicModel *kmodel);
+
/** \brief Clear the stored constraint */
virtual void clear(void);
@@ -177,6 +186,9 @@
/** \brief Add a set of pose constraints */
bool add(const planning_models::KinematicModel *kmodel, const std::vector<motion_planning_msgs::PoseConstraint> &pc);
+ /** \brief Update the kinematic model to be used for the constraints */
+ void use(const planning_models::KinematicModel *kmodel);
+
/** \brief Decide whether the set of constraints is satisfied */
bool decide(const double *params, int groupID) const;
Modified: pkg/trunk/motion_planning/planning_environment/src/util/kinematic_state_constraint_evaluator.cpp
===================================================================
--- pkg/trunk/motion_planning/planning_environment/src/util/kinematic_state_constraint_evaluator.cpp 2009-07-25 21:44:47 UTC (rev 19670)
+++ pkg/trunk/motion_planning/planning_environment/src/util/kinematic_state_constraint_evaluator.cpp 2009-07-25 21:49:00 UTC (rev 19671)
@@ -61,6 +61,15 @@
return true;
}
+void planning_environment::JointConstraintEvaluator::use(const planning_models::KinematicModel *kmodel)
+{
+ if (m_joint)
+ {
+ m_kmodel = kmodel;
+ m_joint = kmodel->getJoint(m_jc.joint_name);
+ }
+}
+
bool planning_environment::JointConstraintEvaluator::decide(const double *params, const int groupID) const
{
const double *val = params + (groupID >= 0 ? m_kmodel->getJointIndexInGroup(m_joint->name, groupID) : m_kmodel->getJointIndex(m_joint->name));
@@ -132,6 +141,12 @@
return true;
}
+void planning_environment::PoseConstraintEvaluator::use(const planning_models::KinematicModel *kmodel)
+{
+ if (m_link)
+ m_link = kmodel->getLink(m_pc.link_name);
+}
+
void planning_environment::PoseConstraintEvaluator::clear(void)
{
m_link = NULL;
@@ -331,6 +346,12 @@
return decide(params, -1);
}
+void planning_environment::KinematicConstraintEvaluatorSet::use(const planning_models::KinematicModel *kmodel)
+{
+ for (unsigned int i = 0 ; i < m_kce.size() ; ++i)
+ m_kce[i]->use(kmodel);
+}
+
void planning_environment::KinematicConstraintEvaluatorSet::print(std::ostream &out) const
{
out << m_kce.size() << " kinematic constraints" << std::endl;
Modified: pkg/trunk/world_models/collision_space/src/environmentODE.cpp
===================================================================
--- pkg/trunk/world_models/collision_space/src/environmentODE.cpp 2009-07-25 21:44:47 UTC (rev 19670)
+++ pkg/trunk/world_models/collision_space/src/environmentODE.cpp 2009-07-25 21:49:00 UTC (rev 19671)
@@ -53,7 +53,7 @@
ODEInitCountLock.lock();
if (ODEInitCount == 0)
{
- m_msg.inform("Initializing ODE");
+ m_msg.message("Initializing ODE");
dInitODE2(0);
}
ODEInitCount++;
@@ -69,7 +69,7 @@
ODEInitCount--;
if (ODEInitCount == 0)
{
- m_msg.inform("Closing ODE");
+ m_msg.message("Closing ODE");
dCloseODE();
}
ODEInitCountLock.unlock();
@@ -82,7 +82,7 @@
if (ODEThreadMap.find(id) == ODEThreadMap.end())
{
ODEThreadMap[id] = 1;
- m_msg.inform("Initializing new thread (%d total)", (int)ODEThreadMap.size());
+ m_msg.message("Initializing new thread (%d total)", (int)ODEThreadMap.size());
dAllocateODEDataForThread(dAllocateMaskAll);
}
ODEThreadMapLock.unlock();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|