Public Types | Public Member Functions | Private Slots | Private Member Functions | Private Attributes | List of all members
moveit_setup_assistant::DefaultCollisionsWidget Class Reference

User interface for editing the default collision matrix list in an SRDF. More...

#include <default_collisions_widget.h>

Inheritance diagram for moveit_setup_assistant::DefaultCollisionsWidget:
Inheritance graph
[legend]

Public Types

enum  ViewMode { MATRIX_MODE = 0, LINEAR_MODE = 1 }
 

Public Member Functions

 DefaultCollisionsWidget (QWidget *parent, const MoveItConfigDataPtr &config_data)
 User interface for editing the default collision matrix list in an SRDF. More...
 
 ~DefaultCollisionsWidget () override
 
- Public Member Functions inherited from SetupScreenWidget
virtual void focusGiven ()
 function called when widget is activated, allows to update/initialize GUI More...
 
virtual bool focusLost ()
 function called when widget lost focus, allows to accept/reject changes and to reject switching (returning false) More...
 
 SetupScreenWidget (QWidget *parent)
 

Private Slots

void changeNumSamples (int value)
 GUI func for showing number of samples. value will be rounded in 1000s. More...
 
void checkedFilterChanged ()
 Change filter settings to show/hide enabled collisions. More...
 
void collisionsChanged (const QModelIndex &index)
 Collision model changed. More...
 
void finishGeneratingCollisionTable ()
 finish generating collision matrix after worker thread has finished More...
 
void focusGiven () override
 Called when setup assistant navigation switches to this screen. More...
 
bool focusLost () override
 Called when setup assistant navigation switches away from this screen. More...
 
void hideOtherSections ()
 
void hideSections ()
 
void interruptGeneratingCollisionTable ()
 interrupt generating collision matrix More...
 
void loadCollisionTable ()
 Update view and data model for the link_pairs data structure. More...
 
void previewSelectedLinear (const QModelIndex &index)
 
void previewSelectedMatrix (const QModelIndex &index)
 Called when current row has changed. More...
 
void revertChanges ()
 Revert current changes to collision matrix. More...
 
void showHeaderContextMenu (const QPoint &p)
 
void showSections ()
 
void startGeneratingCollisionTable ()
 start generating collision matrix in a worker thread More...
 

Private Member Functions

void disableControls (bool disable)
 Helper function to disable parts of GUI during computation. More...
 
bool eventFilter (QObject *object, QEvent *event) override
 
void generateCollisionTable (unsigned int *collision_progress)
 The thread that is called to allow the GUI to update. Calls an external function to do calcs. More...
 
QList< int > selectedSections (QHeaderView *&header) const
 
void setDefaults (bool enabled)
 
void showSections (QHeaderView *header, const QList< int > &logicalIndexes)
 
void toggleSelection (QItemSelection selection)
 

Private Attributes

QPushButton * btn_generate_
 
QPushButton * btn_interrupt_
 
QPushButton * btn_revert_
 
Qt::Orientations clicked_headers_
 
int clicked_section_
 
QCheckBox * collision_checkbox_
 
QTableView * collision_table_
 
moveit_setup_assistant::MoveItConfigDataPtr config_data_
 Contains all the configuration data for the setup assistant. More...
 
QGroupBox * controls_box_
 
QLabel * fraction_label_
 
QSpinBox * fraction_spinbox_
 
QList< QAction * > header_actions_
 
QVBoxLayout * layout_
 
QLineEdit * link_name_filter_
 
QAbstractItemModel * model_
 
QLabel * page_title_
 
QProgressBar * progress_bar_
 
QLabel * progress_label_
 
QSlider * sample_slider_
 
QSpinBox * sample_spinbox_
 
QItemSelectionModel * selection_model_
 
QButtonGroup * view_mode_buttons_
 
srdf::SRDFWriterPtr wip_srdf_
 Working copy of SRDF config. More...
 
MonitorThreadworker_
 

Additional Inherited Members

- Signals inherited from SetupScreenWidget
void highlightGroup (const std::string &name)
 Event for telling rviz to highlight a group of the robot. More...
 
void highlightLink (const std::string &name, const QColor &)
 Event for telling rviz to highlight a link of the robot. More...
 
void isModal (bool isModal)
 Event for when the current screen is in modal view. Essential disabled the left navigation. More...
 
void unhighlightAll ()
 Event for telling rviz to unhighlight all links of the robot. More...
 

Detailed Description

User interface for editing the default collision matrix list in an SRDF.

Definition at line 74 of file default_collisions_widget.h.

Member Enumeration Documentation

◆ ViewMode

Enumerator
MATRIX_MODE 
LINEAR_MODE 

Definition at line 79 of file default_collisions_widget.h.

Constructor & Destructor Documentation

◆ DefaultCollisionsWidget()

moveit_setup_assistant::DefaultCollisionsWidget::DefaultCollisionsWidget ( QWidget *  parent,
const MoveItConfigDataPtr &  config_data 
)

User interface for editing the default collision matrix list in an SRDF.

Parameters
urdf_fileString srdf file location. It will create a new file or will edit an existing one

Definition at line 99 of file default_collisions_widget.cpp.

◆ ~DefaultCollisionsWidget()

moveit_setup_assistant::DefaultCollisionsWidget::~DefaultCollisionsWidget ( )
override

Definition at line 270 of file default_collisions_widget.cpp.

Member Function Documentation

◆ changeNumSamples

void moveit_setup_assistant::DefaultCollisionsWidget::changeNumSamples ( int  value)
privateslot

GUI func for showing number of samples. value will be rounded in 1000s.

Parameters
valueNumber of samples

Definition at line 713 of file default_collisions_widget.cpp.

◆ checkedFilterChanged

void moveit_setup_assistant::DefaultCollisionsWidget::checkedFilterChanged ( )
privateslot

Change filter settings to show/hide enabled collisions.

Definition at line 756 of file default_collisions_widget.cpp.

◆ collisionsChanged

void moveit_setup_assistant::DefaultCollisionsWidget::collisionsChanged ( const QModelIndex &  index)
privateslot

Collision model changed.

Definition at line 454 of file default_collisions_widget.cpp.

◆ disableControls()

void moveit_setup_assistant::DefaultCollisionsWidget::disableControls ( bool  disable)
private

Helper function to disable parts of GUI during computation.

Parameters
disableA command

Definition at line 732 of file default_collisions_widget.cpp.

◆ eventFilter()

bool moveit_setup_assistant::DefaultCollisionsWidget::eventFilter ( QObject *  object,
QEvent *  event 
)
overrideprivate

Allow toggling of all checkboxes in selection by filtering <space> keypresses

Definition at line 637 of file default_collisions_widget.cpp.

◆ finishGeneratingCollisionTable

void moveit_setup_assistant::DefaultCollisionsWidget::finishGeneratingCollisionTable ( )
privateslot

finish generating collision matrix after worker thread has finished

Definition at line 310 of file default_collisions_widget.cpp.

◆ focusGiven

void moveit_setup_assistant::DefaultCollisionsWidget::focusGiven ( )
overrideprivateslot

Called when setup assistant navigation switches to this screen.

Definition at line 812 of file default_collisions_widget.cpp.

◆ focusLost

bool moveit_setup_assistant::DefaultCollisionsWidget::focusLost ( )
overrideprivateslot

Called when setup assistant navigation switches away from this screen.

Definition at line 825 of file default_collisions_widget.cpp.

◆ generateCollisionTable()

void moveit_setup_assistant::DefaultCollisionsWidget::generateCollisionTable ( unsigned int *  collision_progress)
private

The thread that is called to allow the GUI to update. Calls an external function to do calcs.

Parameters
collision_progressA shared pointer between 3 threads to allow progress bar to update. See declaration location for more details and warning.

Definition at line 329 of file default_collisions_widget.cpp.

◆ hideOtherSections

void moveit_setup_assistant::DefaultCollisionsWidget::hideOtherSections ( )
privateslot

Definition at line 540 of file default_collisions_widget.cpp.

◆ hideSections

void moveit_setup_assistant::DefaultCollisionsWidget::hideSections ( )
privateslot

Definition at line 531 of file default_collisions_widget.cpp.

◆ interruptGeneratingCollisionTable

void moveit_setup_assistant::DefaultCollisionsWidget::interruptGeneratingCollisionTable ( )
privateslot

interrupt generating collision matrix

Definition at line 293 of file default_collisions_widget.cpp.

◆ loadCollisionTable

void moveit_setup_assistant::DefaultCollisionsWidget::loadCollisionTable ( )
privateslot

Update view and data model for the link_pairs data structure.

Definition at line 358 of file default_collisions_widget.cpp.

◆ previewSelectedLinear

void moveit_setup_assistant::DefaultCollisionsWidget::previewSelectedLinear ( const QModelIndex &  index)
privateslot

Definition at line 791 of file default_collisions_widget.cpp.

◆ previewSelectedMatrix

void moveit_setup_assistant::DefaultCollisionsWidget::previewSelectedMatrix ( const QModelIndex &  index)
privateslot

Called when current row has changed.

Definition at line 765 of file default_collisions_widget.cpp.

◆ revertChanges

void moveit_setup_assistant::DefaultCollisionsWidget::revertChanges ( )
privateslot

Revert current changes to collision matrix.

Definition at line 630 of file default_collisions_widget.cpp.

◆ selectedSections()

QList< int > moveit_setup_assistant::DefaultCollisionsWidget::selectedSections ( QHeaderView *&  header) const
private

Return list of selected sections

Definition at line 507 of file default_collisions_widget.cpp.

◆ setDefaults()

void moveit_setup_assistant::DefaultCollisionsWidget::setDefaults ( bool  enabled)
private

Enable/Disable selected sections by default

Definition at line 580 of file default_collisions_widget.cpp.

◆ showHeaderContextMenu

void moveit_setup_assistant::DefaultCollisionsWidget::showHeaderContextMenu ( const QPoint &  p)
privateslot

Definition at line 474 of file default_collisions_widget.cpp.

◆ showSections [1/2]

void moveit_setup_assistant::DefaultCollisionsWidget::showSections ( )
privateslot

Definition at line 550 of file default_collisions_widget.cpp.

◆ showSections() [2/2]

void moveit_setup_assistant::DefaultCollisionsWidget::showSections ( QHeaderView *  header,
const QList< int > &  logicalIndexes 
)
private

Show header's sections in logicalIndexes and everything in between

Definition at line 568 of file default_collisions_widget.cpp.

◆ startGeneratingCollisionTable

void moveit_setup_assistant::DefaultCollisionsWidget::startGeneratingCollisionTable ( )
privateslot

start generating collision matrix in a worker thread

Definition at line 278 of file default_collisions_widget.cpp.

◆ toggleSelection()

void moveit_setup_assistant::DefaultCollisionsWidget::toggleSelection ( QItemSelection  selection)
private

Toggle enabled status of selection

Definition at line 661 of file default_collisions_widget.cpp.

Member Data Documentation

◆ btn_generate_

QPushButton* moveit_setup_assistant::DefaultCollisionsWidget::btn_generate_
private

Definition at line 173 of file default_collisions_widget.h.

◆ btn_interrupt_

QPushButton* moveit_setup_assistant::DefaultCollisionsWidget::btn_interrupt_
private

Definition at line 176 of file default_collisions_widget.h.

◆ btn_revert_

QPushButton* moveit_setup_assistant::DefaultCollisionsWidget::btn_revert_
private

Definition at line 182 of file default_collisions_widget.h.

◆ clicked_headers_

Qt::Orientations moveit_setup_assistant::DefaultCollisionsWidget::clicked_headers_
private

Definition at line 186 of file default_collisions_widget.h.

◆ clicked_section_

int moveit_setup_assistant::DefaultCollisionsWidget::clicked_section_
private

Definition at line 187 of file default_collisions_widget.h.

◆ collision_checkbox_

QCheckBox* moveit_setup_assistant::DefaultCollisionsWidget::collision_checkbox_
private

Definition at line 179 of file default_collisions_widget.h.

◆ collision_table_

QTableView* moveit_setup_assistant::DefaultCollisionsWidget::collision_table_
private

Definition at line 167 of file default_collisions_widget.h.

◆ config_data_

moveit_setup_assistant::MoveItConfigDataPtr moveit_setup_assistant::DefaultCollisionsWidget::config_data_
private

Contains all the configuration data for the setup assistant.

Definition at line 195 of file default_collisions_widget.h.

◆ controls_box_

QGroupBox* moveit_setup_assistant::DefaultCollisionsWidget::controls_box_
private

Definition at line 174 of file default_collisions_widget.h.

◆ fraction_label_

QLabel* moveit_setup_assistant::DefaultCollisionsWidget::fraction_label_
private

Definition at line 180 of file default_collisions_widget.h.

◆ fraction_spinbox_

QSpinBox* moveit_setup_assistant::DefaultCollisionsWidget::fraction_spinbox_
private

Definition at line 181 of file default_collisions_widget.h.

◆ header_actions_

QList<QAction*> moveit_setup_assistant::DefaultCollisionsWidget::header_actions_
private

Definition at line 185 of file default_collisions_widget.h.

◆ layout_

QVBoxLayout* moveit_setup_assistant::DefaultCollisionsWidget::layout_
private

Definition at line 170 of file default_collisions_widget.h.

◆ link_name_filter_

QLineEdit* moveit_setup_assistant::DefaultCollisionsWidget::link_name_filter_
private

Definition at line 178 of file default_collisions_widget.h.

◆ model_

QAbstractItemModel* moveit_setup_assistant::DefaultCollisionsWidget::model_
private

Definition at line 168 of file default_collisions_widget.h.

◆ page_title_

QLabel* moveit_setup_assistant::DefaultCollisionsWidget::page_title_
private

Definition at line 166 of file default_collisions_widget.h.

◆ progress_bar_

QProgressBar* moveit_setup_assistant::DefaultCollisionsWidget::progress_bar_
private

Definition at line 175 of file default_collisions_widget.h.

◆ progress_label_

QLabel* moveit_setup_assistant::DefaultCollisionsWidget::progress_label_
private

Definition at line 177 of file default_collisions_widget.h.

◆ sample_slider_

QSlider* moveit_setup_assistant::DefaultCollisionsWidget::sample_slider_
private

Definition at line 172 of file default_collisions_widget.h.

◆ sample_spinbox_

QSpinBox* moveit_setup_assistant::DefaultCollisionsWidget::sample_spinbox_
private

Definition at line 171 of file default_collisions_widget.h.

◆ selection_model_

QItemSelectionModel* moveit_setup_assistant::DefaultCollisionsWidget::selection_model_
private

Definition at line 169 of file default_collisions_widget.h.

◆ view_mode_buttons_

QButtonGroup* moveit_setup_assistant::DefaultCollisionsWidget::view_mode_buttons_
private

Definition at line 183 of file default_collisions_widget.h.

◆ wip_srdf_

srdf::SRDFWriterPtr moveit_setup_assistant::DefaultCollisionsWidget::wip_srdf_
private

Working copy of SRDF config.

Definition at line 197 of file default_collisions_widget.h.

◆ worker_

MonitorThread* moveit_setup_assistant::DefaultCollisionsWidget::worker_
private

Definition at line 192 of file default_collisions_widget.h.


The documentation for this class was generated from the following files:


moveit_setup_assistant
Author(s): Dave Coleman
autogenerated on Sat May 3 2025 02:28:05