aboutsummaryrefslogtreecommitdiff
path: root/qtmips_gui/mainwindow.h
diff options
context:
space:
mode:
Diffstat (limited to 'qtmips_gui/mainwindow.h')
-rw-r--r--qtmips_gui/mainwindow.h44
1 files changed, 39 insertions, 5 deletions
diff --git a/qtmips_gui/mainwindow.h b/qtmips_gui/mainwindow.h
index a3948a9..bba1cb7 100644
--- a/qtmips_gui/mainwindow.h
+++ b/qtmips_gui/mainwindow.h
@@ -2,21 +2,55 @@
#define MAINWINDOW_H
#include <QMainWindow>
+#include <QSettings>
+#include "ui_MainWindow.h"
+#include "newdialog.h"
+#include "coreview.h"
+#include "cachecontent.h"
+#include "cachestatistics.h"
+#include "registersdock.h"
-namespace Ui {
-class MainWindow;
-}
+#include "qtmipsmachine.h"
+#include "machineconfig.h"
-class MainWindow : public QMainWindow
-{
+class MainWindow : public QMainWindow {
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
+ void start();
+ void create_core(MachineConfig *config);
+
+public slots:
+ void new_machine();
+
+ void show_cache_content();
+ void show_cache_statictics();
+ void show_registers();
+
+ bool configured();
+
+protected:
+ void closeEvent(QCloseEvent *event);
+
private:
Ui::MainWindow *ui;
+
+ NewDialog *ndialog;
+
+ CoreView *coreview;
+
+ CacheContentDock *cache_content;
+ CacheStatisticsDock *cache_statictics;
+ RegistersDock *registers;
+
+ QSettings *settings;
+
+ QtMipsMachine *machine; // Current simulated machine
+
+ void show_dockwidget(QDockWidget *w);
};
#endif // MAINWINDOW_H