00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _contactexaminerdlg_h_
00027 #define _contactexaminerdlg_h_
00028
00029 #include "ui_contactExaminerDlg.h"
00030
00031 #include <QDialog>
00032 #include <vector>
00033
00034 class Hand;
00035 class World;
00036 class Contact;
00037 class QualityMeasure;
00038 class GraspableBody;
00039 class Grasp;
00040
00041
00042
00044
00064 class ContactExaminerDlg : public QDialog, public Ui::ContactExaminerDlgUI
00065 {
00066 Q_OBJECT
00067 private:
00068 World *mWorld;
00069 Hand *mHand;
00070 GraspableBody * mObject;
00071 Grasp* mGrasp;
00072 std::vector<Contact*> mMarkedContacts;
00073 QualityMeasure *mQual;
00074
00075 void init();
00076 void destroy();
00077 void updateButtons();
00078 void showQuality();
00079 void collectHandContacts();
00080 void collectObjectContacts();
00081
00082 public:
00083 ContactExaminerDlg(QWidget *parent = 0) : QDialog(parent), mObject(NULL),
00084 mQual(NULL), mHand(NULL), mWorld(NULL),
00085 mGrasp(NULL) {
00086 setupUi(this);
00087 init();
00088 QObject::connect(handRadioButton, SIGNAL(clicked()), this, SLOT(modeSelected()));
00089 QObject::connect(objectRadioButton, SIGNAL(clicked()), this, SLOT(modeSelected()));
00090 }
00091 ~ContactExaminerDlg(){destroy();}
00092
00093 public slots:
00094
00095 void markButton_clicked();
00096 void loadButton_clicked();
00097 void saveButton_clicked();
00098 void exitButton_clicked();
00099 void updateQualityButton_clicked();
00100 void clearButton_clicked();
00101 void showGWSButton_clicked();
00102 void modeSelected();
00103 };
00104 #endif