All Classes Namespaces Files Functions Variables Enumerations Enumerator
programs/UrgViewer/CaptureSettingWidget.h
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 /* !CAPTURE_SETTING_WIDGET_H */