QXRD  0.11.16
qxrddetectorcontrolwindow.h
Go to the documentation of this file.
1 #ifndef QXRDDETECTORCONTROLWINDOW_H
2 #define QXRDDETECTORCONTROLWINDOW_H
3 
4 #include "qxrdmainwindow.h"
6 #include "ui_qxrddetectorcontrolwindow.h"
7 #include "qxrdacquisition-ptr.h"
10 #include "qxrdexperiment-ptr.h"
11 #include "qxrddetector-ptr.h"
12 #include <QTimer>
13 
14 class QxrdDetectorControlWindow : public QxrdMainWindow, public Ui::QxrdDetectorControlWindow
15 {
16  Q_OBJECT
17 
18 public:
22  QxrdDetectorWPtr det,
24  QWidget *parent = 0);
26 
27 public slots:
28  void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime());
29 
30 public:
33 
34 protected:
35  void changeEvent(QEvent *e);
36 
37 private slots:
38  void doAppendROI();
39  void doDeleteROI();
40  void doMoveROIDown();
41  void doMoveROIUp();
42 
43  void updateImageDisplay();
44  void onUpdateIntervalMsecChanged(int newVal);
45  void updateWindowTitle();
46 
47  void updateROIDisplay(bool show);
48 
49  void doBrowseMask();
50  void doClearMask();
51 
52  void doBrowseDark();
53  void doClearDark();
54 
55  void doBrowseBadPixels();
56  void doClearBadPixels();
57 
59  void doClearGainCorrection();
60 
61  void doRecalculate();
62  void doVisualizeBackground();
63  void doVisualizePeak();
64 
65 private:
66  QVector<int> selectedROIs();
67 
68 private:
75 
76  QMutex m_UpdateMutex;
77  QTimer m_UpdateTimer;
78 
82 
86 
87  QAtomicInt m_NewDataAvailable;
88  QAtomicInt m_NewMaskAvailable;
89 };
90 
91 #endif // QXRDDETECTORCONTROLWINDOW_H
QxrdDetectorControlWindow(QcepSettingsSaverWPtr saver, QxrdExperimentWPtr exp, QxrdAcquisitionWPtr acq, QxrdDetectorWPtr det, QxrdDetectorProcessorWPtr proc, QWidget *parent=0)
QWeakPointer< QxrdDetectorProcessor > QxrdDetectorProcessorWPtr
void displayNewData(QcepImageDataBasePtr img, QcepMaskDataPtr overflow)
void displayNewMask(QcepMaskDataPtr mask)
void printMessage(QString msg, QDateTime ts=QDateTime::currentDateTime())
QWeakPointer< QxrdExperiment > QxrdExperimentWPtr
QxrdDetectorProcessorWPtr m_Processor
QxrdROICoordinatesListModelPtr m_ROIModel
QWeakPointer< QxrdDetector > QxrdDetectorWPtr
QcepImageDataBasePtr m_DisplayedImage
QWeakPointer< QxrdAcquisition > QxrdAcquisitionWPtr
QSharedPointer< QcepImageDataBase > QcepImageDataBasePtr
QSharedPointer< QcepMaskData > QcepMaskDataPtr
QSharedPointer< QxrdROICoordinatesListModel > QxrdROICoordinatesListModelPtr
QWeakPointer< QcepSettingsSaver > QcepSettingsSaverWPtr