task_sequence_processing_state.h
Go to the documentation of this file.
1 #ifndef MODEL_INPUT_STATE_H
2 #define MODEL_INPUT_STATE_H
3 
4 #include <ros/ros.h>
5 #include <choreo_gui/gui_state.h>
6 
8 #include <choreo_msgs/ModelInputParameters.h>
9 #include <choreo_msgs/TaskSequenceInputParameters.h>
10 #include <choreo_msgs/TaskSequenceProcessingAction.h>
11 #include <choreo_msgs/TaskSequencePlanningAction.h>
12 
13 namespace choreo_gui
14 {
15 
16 // In this ui state, core node will try to check if there is a saved assembly sequence
17 // in the input task sequence file path
18 // Then, depending on the reading result, users are asked to choose between
19 // (1) use saved task sequence (if found) (2) call task sequence planner to recompute a new one
20 //
21 // TODO: the task sequence call is only available for spatial printing task.
22 // general task sequence searching is still work in progress.
24 {
25  Q_OBJECT
26  public:
29 
30  public:
31  // Entry and exit classes
32  virtual void onStart(ChoreoWidget& gui);
33  virtual void onExit(ChoreoWidget& gui);
34 
35  // Handlers for the fixed buttons
36  virtual void onNext(ChoreoWidget& gui);
37  virtual void onBack(ChoreoWidget& gui);
38  virtual void onReset(ChoreoWidget& gui);
39 
40  private:
42  const choreo_msgs::TaskSequenceProcessingResultConstPtr& result);
44  void taskSequenceProcessingFeedbackCallback(const choreo_msgs::TaskSequenceProcessingFeedbackConstPtr& feedback);
45 
47  const choreo_msgs::TaskSequencePlanningResultConstPtr& result);
49  void taskSequencePlanningFeedbackCallback(const choreo_msgs::TaskSequencePlanningFeedbackConstPtr& feedback);
50 
51  private:
53  bool makeTaskSequenceProcessingRequest(const choreo_msgs::ModelInputParameters& model_params,
54  const choreo_msgs::TaskSequenceInputParameters& task_sequence_params,
55  std::string& assembly_type);
56  bool makeTaskSequencePlanningRequest(const choreo_msgs::ModelInputParameters& model_params,
57  const choreo_msgs::TaskSequenceInputParameters& task_sequence_params);
58 
59  Q_SIGNALS:
60  void feedbackReceived(QString feedback);
61 
62  protected Q_SLOTS:
63  void setFeedbackText(QString feedback);
64  void toNextState();
66 
67  private:
72 };
73 }
74 
75 #endif
void taskSequencePlanningDoneCallback(const actionlib::SimpleClientGoalState &state, const choreo_msgs::TaskSequencePlanningResultConstPtr &result)
void taskSequenceProcessingDoneCallback(const actionlib::SimpleClientGoalState &state, const choreo_msgs::TaskSequenceProcessingResultConstPtr &result)
The ChoreoWidget class works in states:
Definition: choreo_widget.h:34
bool makeTaskSequenceProcessingRequest(const choreo_msgs::ModelInputParameters &model_params, const choreo_msgs::TaskSequenceInputParameters &task_sequence_params, std::string &assembly_type)
void taskSequenceProcessingFeedbackCallback(const choreo_msgs::TaskSequenceProcessingFeedbackConstPtr &feedback)
actionlib::SimpleActionClient< choreo_msgs::TaskSequencePlanningAction > task_sequence_planning_action_client_
void feedbackReceived(QString feedback)
actionlib::SimpleActionClient< choreo_msgs::TaskSequenceProcessingAction > task_sequence_processing_action_client_
void taskSequencePlanningFeedbackCallback(const choreo_msgs::TaskSequencePlanningFeedbackConstPtr &feedback)
bool makeTaskSequencePlanningRequest(const choreo_msgs::ModelInputParameters &model_params, const choreo_msgs::TaskSequenceInputParameters &task_sequence_params)


choreo_gui
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 03:58:56