ENLIGHTEN
Cross-platform desktop GUI for Wasatch Photonics spectrometers
Loading...
Searching...
No Matches
mainwindow.h
Go to the documentation of this file.
1
23
24#ifndef MAINWINDOW_H
25#define MAINWINDOW_H
26
28#include "propertycontrolenum.h"
31
32#include <QGroupBox>
33#include <QLabel>
34#include <QMainWindow>
35#include <QString>
36#include <QThread>
37#include <QVBoxLayout>
38
39class BackEnd;
40class ImageView;
41
42class MainWindow : public QMainWindow
43{
44 Q_OBJECT
45
46public:
47 MainWindow(QWidget* parent = nullptr);
49
50 bool hasError();
51
52private:
53 BackEnd* m_backEnd = nullptr;
54 QWidget* m_widget = nullptr;
55 ImageView* m_imageView = nullptr;
56 QLabel* m_labelInfo = nullptr;
57 QLabel* m_errorLabel = nullptr;
58 QLabel* m_lastErrorLabel = nullptr;
59 QHBoxLayout* m_windowLayout = nullptr;
60 QVBoxLayout* m_imageLayout = nullptr;
61 QVBoxLayout* m_configLayout = nullptr;
62
69
70 QGroupBox* m_offsetYGroupBox = nullptr;
71 QGroupBox* m_triggerSoftwareGroupBox = nullptr;
72 QGroupBox* m_acquisitionLineRateGroupBox = nullptr;
73 QGroupBox* m_PWMFrequencyGroupBox = nullptr;
74 QGroupBox* m_gainGroupBox = nullptr;
75
76 QString m_lastError = "";
77
78
79 bool m_hasError = true;
80
81 void createConfigMenu();
83
84signals:
86
87private slots:
88 void updateStatusBar(unsigned int frameCounter, unsigned int errorCounter, double frameRate, double lineRate);
89 void updateLastError(QString errorText);
90 void on_aboutQt_linkActivated(const QString& link);
91 void showMessageBox(QString messageTitle, QString messageText);
92 void onCameraDisconnect();
93 void init(bool backendStarted);
94};
95#endif // MAINWINDOW_H
Definition backend.h:38
Definition imageview.h:35
Definition mainwindow.h:47
bool hasError()
BackEnd m_backEnd
Definition mainwindow.h:57
PropertyControlInteger * m_offsetY
Definition mainwindow.h:63
void updateLastError(QString errorText)
Definition mainwindow.cpp:267
QGroupBox * m_offsetYGroupBox
Definition mainwindow.h:70
QString m_lastError
Definition mainwindow.h:76
PropertyControlFloat * m_gain
Definition mainwindow.h:68
QVBoxLayout * m_imageLayout
Definition mainwindow.h:60
ImageView * m_imageView
Definition mainwindow.h:48
void init(bool backendStarted)
Definition mainwindow.cpp:86
void createConfigMenu()
Definition mainwindow.cpp:124
void on_aboutQt_linkActivated(const QString &link)
void showMessageBox(QString messageTitle, QString messageText)
bool m_hasError
Definition mainwindow.h:59
QLabel * m_lastErrorLabel
Definition mainwindow.h:58
void updateStatusBar(unsigned int frameCounter, unsigned int errorCounter, double frameRate, double lineRate)
Definition mainwindow.cpp:251
PropertyControlFloat * m_PWMFrequency
Definition mainwindow.h:66
MainWindow(QWidget *parent=nullptr)
PropertyControlEnum * m_gainSelector
Definition mainwindow.h:67
QGroupBox * m_acquisitionLineRateGroupBox
Definition mainwindow.h:72
QWidget * m_widget
Definition mainwindow.h:54
QGroupBox * m_triggerSoftwareGroupBox
Definition mainwindow.h:71
QGroupBox * m_PWMFrequencyGroupBox
Definition mainwindow.h:73
QVBoxLayout * m_configLayout
Definition mainwindow.h:61
QHBoxLayout * m_windowLayout
Definition mainwindow.h:59
PropertyControlFloat * m_acquisitionLineRate
Definition mainwindow.h:65
void initialized()
PropertyControlCommand * m_triggerSoftware
Definition mainwindow.h:64
QLabel * m_labelInfo
Definition mainwindow.h:65
QGroupBox * m_gainGroupBox
Definition mainwindow.h:74
void createStatusBar()
QLabel * m_errorLabel
Definition mainwindow.h:57
void onCameraDisconnect()
Definition mainwindow.cpp:280
Definition propertycontrolcommand.h:38
Definition propertycontrolenum.h:39
Definition propertycontrolfloat.h:53
Definition propertycontrolinteger.h:39