Go to the documentation of this file.00001 #ifndef CAPTURE_SETTING_WIDGET_H
00002 #define CAPTURE_SETTING_WIDGET_H
00003
00013 #include "ui_CaptureSettingWidgetForm.h"
00014 #include "CaptureSettings.h"
00015 #include <memory>
00016
00017 namespace qrk
00018 {
00019 class RangeSensor;
00020 }
00021
00022
00026 class CaptureSettingWidget
00027 : public QWidget, private Ui::CaptureSettingWidgetForm
00028 {
00029 Q_OBJECT;
00030
00031 public:
00032 enum {
00033 InfinityTimes = 100,
00034 };
00035
00036 CaptureSettingWidget(const qrk::RangeSensor& sensor, QWidget* parent = 0);
00037 ~CaptureSettingWidget(void);
00038
00039 void setIntensityMode(bool enable_cluster = true);
00040
00041 void setMode(qrk::CaptureType type);
00042 void setTimes(size_t times);
00043 void setApplyEnabled(bool enable);
00044 void setConnected(bool connection);
00045
00046 public slots:
00047 void loadPressed(void);
00048 void reconnectCompleted(void);
00049
00050 signals:
00051 void setCaptureSettings(const qrk::CaptureSettings& settings);
00052 void reconnectRequest(void);
00053 void widgetClose(const std::string& widget_name);
00054 void quit(void);
00055 void rangeChanged(int first_index, int last_index);
00056
00057 protected slots:
00058 void applyPressed(void);
00059 void firstFinished(void);
00060 void lastFinished(void);
00061 void isRangeChanged(void);
00062 void modeChanged(int type);
00063 void timesChanged(void);
00064 void quitPressed(void);
00065 void closeEvent(QCloseEvent* event);
00066 void lineGroupsChanged(void);
00067 void frameSkipsChanged(void);
00068 void captureTimesChanged(void);
00069
00070 private:
00071 CaptureSettingWidget(const CaptureSettingWidget& rhs);
00072 CaptureSettingWidget& operator = (const CaptureSettingWidget& rhs);
00073
00074 struct pImpl;
00075 std::auto_ptr<pImpl> pimpl;
00076 };
00077
00078 #endif