spo/ass2/simulator/mainwindow.h
aljazbrodar. d40c23038a ch
2025-12-10 19:47:23 +01:00

50 lines
993 B
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QTimer>
#include <QThread>
#include "machine.h"
#include "loader.h"
#include "executor.h"
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_readButton_clicked();
void onLoadTriggered();
void on_runButton_clicked();
void on_stepButton_clicked();
void on_stopButton_clicked();
void updateRegisters();
void updateUI();
void setStatusLightRunning();
void setStatusLightStopped();
void setStatusLightEnded();
void on_menuVizitka_triggered();
signals:
void startExecutor();
void stopExecutor();
void stepExecutor();
private:
Ui::MainWindow *ui;
Loader loader;
Machine machine;
Executor* executor;
QThread* executorThread;
QTimer* uiUpdateTimer;
};
#endif // MAINWINDOW_H