se2ez
se2ez::gui::PlanPanel Class Reference

#include <planpanel.h>

Inheritance diagram for se2ez::gui::PlanPanel:
[legend]

Public Slots

void updateState ()
 

Signals

void stateChanged ()
 
void newPlan ()
 

Public Member Functions

 PlanPanel (RobotPtr robot, std::string name, std::map< std::string, ompl::base::ConstraintPtr > constraints={}, QWidget *parent=0)
 
 ~PlanPanel () override
 
void draw (QPainter &painter, RenderArea *canvas) override
 
void update (boost::posix_time::ptime last, boost::posix_time::ptime current) override
 
void setPath (const std::vector< StatePtr > path)
 
const std::vector< StatePtr > & getPath () const
 
ompl::base::PlannerDataPtr getPlannerData ()
 
- Public Member Functions inherited from se2ez::gui::Panel
 Panel (const Panel &)=delete
 
Paneloperator= (const Panel &)=delete
 
 Panel (std::string panel_name, QWidget *parent=0)
 Constructor. More...
 
virtual ~Panel ()=default
 Destructor. More...
 
virtual bool click (QMouseEvent *, double, double, int, int)
 
virtual void initialize (MainWindow::PanelMapPtr p)
 

Private Slots

void setState (int index)
 
void plannerChanged (const QString &text)
 
void animate (int state)
 
void animateTime ()
 
void plan ()
 
void setConstraints (const QString &text)
 
void setEE (const QString &text)
 

Private Member Functions

void pauseAnimation ()
 
void startAnimation ()
 
StatePtr getState (const QString &s)
 

Private Attributes

Ui::PlanPanel * ui_
 
QPropertyAnimation anim_
 
RobotPtr robot_ {nullptr}
 
StatePtr pstate_ {nullptr}
 
std::vector< StatePtrpath_
 
std::string ee_
 
ompl::base::PlannerDataPtr pd_ {nullptr}
 
plan::EZPlansPtr planner_
 
ompl::base::ParamSet set_
 
std::threadplanning_ {nullptr}
 
std::mutex pathmutex_
 
std::mutex pdmutex_
 
std::mutex planmutex_
 
std::set< std::stringsnames_
 
std::set< std::stringjnames_
 
std::set< std::stringpanelnames_
 
std::map< std::string, ompl::base::ConstraintPtr > constraints_
 

Additional Inherited Members

- Public Attributes inherited from se2ez::gui::Panel
QString name
 
MainWindow::PanelMapPtr panels
 
std::recursive_mutex mutex_
 

Detailed Description

Definition at line 44 of file planpanel.h.

Constructor & Destructor Documentation

◆ PlanPanel()

gui::PlanPanel::PlanPanel ( RobotPtr  robot,
std::string  name,
std::map< std::string, ompl::base::ConstraintPtr >  constraints = {},
QWidget *  parent = 0 
)

Definition at line 22 of file planpanel.cpp.

◆ ~PlanPanel()

gui::PlanPanel::~PlanPanel ( )
override

Definition at line 88 of file planpanel.cpp.

Member Function Documentation

◆ animate

void gui::PlanPanel::animate ( int  state)
privateslot

Definition at line 283 of file planpanel.cpp.

◆ animateTime

void gui::PlanPanel::animateTime ( )
privateslot

Definition at line 297 of file planpanel.cpp.

◆ draw()

void gui::PlanPanel::draw ( QPainter &  painter,
RenderArea canvas 
)
overridevirtual

Implements se2ez::gui::Panel.

Definition at line 485 of file planpanel.cpp.

◆ getPath()

const std::vector< StatePtr > & gui::PlanPanel::getPath ( ) const

Definition at line 353 of file planpanel.cpp.

◆ getPlannerData()

ompl::base::PlannerDataPtr gui::PlanPanel::getPlannerData ( )

Definition at line 358 of file planpanel.cpp.

◆ getState()

StatePtr gui::PlanPanel::getState ( const QString &  s)
private

Definition at line 374 of file planpanel.cpp.

◆ newPlan

void se2ez::gui::PlanPanel::newPlan ( )
signal

◆ pauseAnimation()

void gui::PlanPanel::pauseAnimation ( )
private

Definition at line 307 of file planpanel.cpp.

◆ plan

void gui::PlanPanel::plan ( )
privateslot

Definition at line 392 of file planpanel.cpp.

◆ plannerChanged

void gui::PlanPanel::plannerChanged ( const QString &  text)
privateslot

Definition at line 130 of file planpanel.cpp.

◆ setConstraints

void gui::PlanPanel::setConstraints ( const QString &  text)
privateslot

Definition at line 108 of file planpanel.cpp.

◆ setEE

void gui::PlanPanel::setEE ( const QString &  text)
privateslot

Definition at line 98 of file planpanel.cpp.

◆ setPath()

void gui::PlanPanel::setPath ( const std::vector< StatePtr path)

Definition at line 328 of file planpanel.cpp.

◆ setState

void gui::PlanPanel::setState ( int  index)
privateslot

Definition at line 322 of file planpanel.cpp.

◆ startAnimation()

void gui::PlanPanel::startAnimation ( )
private

Definition at line 312 of file planpanel.cpp.

◆ stateChanged

void se2ez::gui::PlanPanel::stateChanged ( )
signal

◆ update()

void gui::PlanPanel::update ( boost::posix_time::ptime  last,
boost::posix_time::ptime  current 
)
overridevirtual

Implements se2ez::gui::Panel.

Definition at line 645 of file planpanel.cpp.

◆ updateState

void gui::PlanPanel::updateState ( )
slot

Definition at line 93 of file planpanel.cpp.

Member Data Documentation

◆ anim_

QPropertyAnimation se2ez::gui::PlanPanel::anim_
private

Definition at line 84 of file planpanel.h.

◆ constraints_

std::map<std::string, ompl::base::ConstraintPtr> se2ez::gui::PlanPanel::constraints_
private

Definition at line 106 of file planpanel.h.

◆ ee_

std::string se2ez::gui::PlanPanel::ee_
private

Definition at line 90 of file planpanel.h.

◆ jnames_

std::set<std::string> se2ez::gui::PlanPanel::jnames_
private

Definition at line 103 of file planpanel.h.

◆ panelnames_

std::set<std::string> se2ez::gui::PlanPanel::panelnames_
private

Definition at line 104 of file planpanel.h.

◆ path_

std::vector<StatePtr> se2ez::gui::PlanPanel::path_
private

Definition at line 88 of file planpanel.h.

◆ pathmutex_

std::mutex se2ez::gui::PlanPanel::pathmutex_
private

Definition at line 98 of file planpanel.h.

◆ pd_

ompl::base::PlannerDataPtr se2ez::gui::PlanPanel::pd_ {nullptr}
private

Definition at line 91 of file planpanel.h.

◆ pdmutex_

std::mutex se2ez::gui::PlanPanel::pdmutex_
private

Definition at line 99 of file planpanel.h.

◆ planmutex_

std::mutex se2ez::gui::PlanPanel::planmutex_
private

Definition at line 100 of file planpanel.h.

◆ planner_

plan::EZPlansPtr se2ez::gui::PlanPanel::planner_
private

Definition at line 93 of file planpanel.h.

◆ planning_

std::thread* se2ez::gui::PlanPanel::planning_ {nullptr}
private

Definition at line 97 of file planpanel.h.

◆ pstate_

StatePtr se2ez::gui::PlanPanel::pstate_ {nullptr}
private

Definition at line 87 of file planpanel.h.

◆ robot_

RobotPtr se2ez::gui::PlanPanel::robot_ {nullptr}
private

Definition at line 86 of file planpanel.h.

◆ set_

ompl::base::ParamSet se2ez::gui::PlanPanel::set_
private

Definition at line 95 of file planpanel.h.

◆ snames_

std::set<std::string> se2ez::gui::PlanPanel::snames_
private

Definition at line 102 of file planpanel.h.

◆ ui_

Ui::PlanPanel* se2ez::gui::PlanPanel::ui_
private

Definition at line 82 of file planpanel.h.


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