42 #include <QFormLayout> 
   44 #include <QMessageBox> 
   45 #include <QTableWidget> 
   57   QVBoxLayout* layout = 
new QVBoxLayout();
 
   62       "Define Passive Joints",
 
   63       "Specify the set of passive joints (not actuated). Joint state is not expected to be published for these joints.",
 
   65   layout->addWidget(header);
 
   69   connect(
joints_widget_, SIGNAL(selectionUpdated()), 
this, SLOT(selectionUpdated()));
 
   70   connect(
joints_widget_, SIGNAL(previewSelected(std::vector<std::string>)), 
this,
 
   71           SLOT(previewSelectedJoints(std::vector<std::string>)));
 
   81   this->setLayout(layout);
 
   93   if (active_joints.empty())
 
   95     QMessageBox::critical(
this, 
"Error Loading", 
"No joints found for robot model");
 
  108 void PassiveJointsWidget::selectionUpdated()
 
  116 void PassiveJointsWidget::previewSelectedJoints(
const std::vector<std::string>& joints)
 
  121   for (
const std::string& joint : joints)
 
  138 #include <pluginlib/class_list_macros.hpp>   
PLUGINLIB_EXPORT_CLASS(cached_ik_kinematics_plugin::CachedIKKinematicsPlugin< kdl_kinematics_plugin::KDLKinematicsPlugin >, kinematics::KinematicsBase)
 
void highlightLink(const std::string &link_name, const QColor &color)
 
std::vector< std::string > getPassiveJoints() const
Return all passive joint names (according to srdf)
 
std::string getChildOfJoint(const std::string &joint_name) const
 
std::vector< std::string > getActiveJoints() const
Return all active (non-fixed) joint names.
 
void setPassiveJoints(const std::vector< std::string > &passive_joints)