1 #ifndef CPP3DS_EMULATOR_EMU_HPP
2 #define CPP3DS_EMULATOR_EMU_HPP
5 #include <SFML/Graphics.hpp>
6 #include <cpp3ds/Emulator/ui_emulator.h>
7 #include <cpp3ds/Emulator/SFMLWidget.hpp>
9 #define EMU_OUTLINE_THICKNESS 1
11 extern "C" int __real_main(
int argc,
char **argv);
21 class Emulator :
public QMainWindow,
private Ui::EmuWindow{
30 sf::Texture pausedFrameTexture;
31 sf::Sprite pausedFrame;
33 EmulatorState state = EMU_STOPPED;
35 bool initialized =
false;
37 void showEvent(QShowEvent *);
39 void checkThreadState();
40 void saveScreenshot();
42 void drawPausedFrame();
45 void on_actionScreenshot_triggered(
bool checked =
false);
46 void on_actionToggle_3D_triggered(
bool checked =
false);
47 void on_actionPlay_Pause_triggered(
bool checked =
false);
48 void on_actionStop_triggered(
bool checked =
false);
49 void on_toolBar_orientationChanged(Qt::Orientation orientation);
54 volatile bool isThreadRunning =
false;
63 void updatePausedFrame();
65 EmulatorState getState(){
return state; }