SEPIA
Software documentation for the APEX SEPIA receivers
scandialog.h
1 /* Copyright 2017 Michael Olberg <michael.olberg@chalmers.se> */
2 #ifndef SCANDIALOG_H
3 #define SCANDIALOG_H
4 
5 #include <QDialog>
6 #include <QPushButton>
7 #include <QDoubleValidator>
8 #include <QRadioButton>
9 #include <QButtonGroup>
10 #include <QLineEdit>
11 #include <QDialogButtonBox>
12 #include <QSpinBox>
13 
14 #include "../constants.h"
15 #include "mixer.h"
16 
17 class ScanDialog : public QDialog
18 {
19  Q_OBJECT
20 
21  public:
29  explicit ScanDialog(QWidget *parent = 0, double from = -2.0, double to = 2.0, int steps = 50);
30  ~ScanDialog();
31  Mixer::Polarization polarization() const;
32  Mixer::Element element() const;
33  double startValue() const { return m_beg; }
34  double stopValue() const { return m_end; }
35  int noOfSteps() const { return m_steps; }
36 
37  private slots:
38  void enableOkButton();
39 
40  private:
41  QLineEdit *fromEdit;
42  QLineEdit *toEdit;
43  QSpinBox *stepBox;
44  QButtonGroup *polGroup;
45  QButtonGroup *sisGroup;
46  QRadioButton *pol0Button;
47  QRadioButton *pol1Button;
48  QRadioButton *sis1Button;
49  QRadioButton *sis2Button;
50  QDialogButtonBox *buttonBox;
51  QDoubleValidator *rangeValidator;
52 
53  double m_beg;
54  double m_end;
55  int m_steps;
56 };
57 
58 #endif // TUNEDIALOG_H
A QWidget presenting a dialog for tracing and IV/TP curve.
Definition: scandialog.h:17
Polarization
An enumeration for the two polarizations.
Definition: constants.h:9
Element
An enumeration for the two mixer elements in each polarization.
Definition: constants.h:17