moveit2
The MoveIt Motion Planning Framework for ROS 2.
Loading...
Searching...
No Matches
moveit_setup_assistant
moveit_setup_srdf_plugins
include
moveit_setup_srdf_plugins
kinematic_chain_widget.hpp
Go to the documentation of this file.
1
/*********************************************************************
2
* Software License Agreement (BSD License)
3
*
4
* Copyright (c) 2012, Willow Garage, Inc.
5
* All rights reserved.
6
*
7
* Redistribution and use in source and binary forms, with or without
8
* modification, are permitted provided that the following conditions
9
* are met:
10
*
11
* * Redistributions of source code must retain the above copyright
12
* notice, this list of conditions and the following disclaimer.
13
* * Redistributions in binary form must reproduce the above
14
* copyright notice, this list of conditions and the following
15
* disclaimer in the documentation and/or other materials provided
16
* with the distribution.
17
* * Neither the name of Willow Garage nor the names of its
18
* contributors may be used to endorse or promote products derived
19
* from this software without specific prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
26
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
27
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
28
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
29
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
31
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32
* POSSIBILITY OF SUCH DAMAGE.
33
*********************************************************************/
34
35
/* Author: Dave Coleman */
36
37
#pragma once
38
39
#include <QWidget>
40
#include <QLabel>
41
#include <QLineEdit>
42
#include <QTreeWidget>
43
#include <QTreeWidgetItem>
44
45
#include <
moveit_setup_framework/qt/rviz_panel.hpp
>
46
#include <
moveit_setup_srdf_plugins/planning_groups.hpp
>
47
48
namespace
moveit_setup
49
{
50
namespace
srdf_setup
51
{
52
class
KinematicChainWidget
:
public
QWidget
53
{
54
Q_OBJECT
55
public
:
56
// ******************************************************************************************
57
// Public Functions
58
// ******************************************************************************************
59
61
KinematicChainWidget
(QWidget* parent,
RVizPanel
* rviz_panel);
62
64
void
setAvailable
(
const
LinkNameTree
& link_name_tree);
65
67
void
setSelected
(
const
std::string& base_link,
const
std::string& tip_link);
68
69
QTreeWidgetItem*
addLinkChildRecursive
(QTreeWidgetItem* parent,
const
LinkNameTree
& link);
70
71
// ******************************************************************************************
72
// Qt Components
73
// ******************************************************************************************
74
75
QLabel*
title_
;
// specify the title from the parent widget
76
QTreeWidget*
link_tree_
;
77
QLineEdit*
base_link_field_
;
78
QLineEdit*
tip_link_field_
;
79
80
private
Q_SLOTS:
81
82
// ******************************************************************************************
83
// Slot Event Functions
84
// ******************************************************************************************
85
87
void
baseLinkTreeClick();
88
90
void
tipLinkTreeClick();
91
93
void
alterTree(
const
QString& link);
94
96
void
itemSelected();
97
98
Q_SIGNALS:
99
100
// ******************************************************************************************
101
// Emitted Signals
102
// ******************************************************************************************
103
105
void
doneEditing
();
106
108
void
cancelEditing
();
109
110
private
:
111
// ******************************************************************************************
112
// Variables
113
// ******************************************************************************************
114
116
bool
kinematic_chain_loaded_;
117
RVizPanel
* rviz_panel_;
118
119
// ******************************************************************************************
120
// Private Functions
121
// ******************************************************************************************
122
};
123
}
// namespace srdf_setup
124
}
// namespace moveit_setup
moveit_setup::RVizPanel
Definition
rviz_panel.hpp:58
moveit_setup::srdf_setup::KinematicChainWidget
Definition
kinematic_chain_widget.hpp:53
moveit_setup::srdf_setup::KinematicChainWidget::tip_link_field_
QLineEdit * tip_link_field_
Definition
kinematic_chain_widget.hpp:78
moveit_setup::srdf_setup::KinematicChainWidget::title_
QLabel * title_
Definition
kinematic_chain_widget.hpp:75
moveit_setup::srdf_setup::KinematicChainWidget::addLinkChildRecursive
QTreeWidgetItem * addLinkChildRecursive(QTreeWidgetItem *parent, const LinkNameTree &link)
Definition
kinematic_chain_widget.cpp:159
moveit_setup::srdf_setup::KinematicChainWidget::link_tree_
QTreeWidget * link_tree_
Definition
kinematic_chain_widget.hpp:76
moveit_setup::srdf_setup::KinematicChainWidget::doneEditing
void doneEditing()
Event sent when this widget is done making data changes and parent widget can save.
moveit_setup::srdf_setup::KinematicChainWidget::cancelEditing
void cancelEditing()
Event sent when user presses cancel button.
moveit_setup::srdf_setup::KinematicChainWidget::setAvailable
void setAvailable(const LinkNameTree &link_name_tree)
Loads the available data list.
Definition
kinematic_chain_widget.cpp:143
moveit_setup::srdf_setup::KinematicChainWidget::setSelected
void setSelected(const std::string &base_link, const std::string &tip_link)
Set the link field with previous value.
Definition
kinematic_chain_widget.cpp:175
moveit_setup::srdf_setup::KinematicChainWidget::base_link_field_
QLineEdit * base_link_field_
Definition
kinematic_chain_widget.hpp:77
moveit_setup::srdf_setup::LinkNameTree
Definition
planning_groups.hpp:48
moveit_setup
Definition
launch_bundle.hpp:42
planning_groups.hpp
rviz_panel.hpp
Generated by
1.9.8