#pragma once #include #include class Emulator { public: Emulator( const std::shared_ptr & window, const std::shared_ptr & renderer, const std::shared_ptr & texture ); void executeOneFrame(); void processEvents(bool & quit); private: void processKeyDown(const SDL_KeyboardEvent & key, bool & quit); void processKeyUp(const SDL_KeyboardEvent & key); void processText(const SDL_TextInputEvent & text); const std::shared_ptr myWindow; const std::shared_ptr myRenderer; const std::shared_ptr myTexture; const int myFPS; int myMultiplier; bool myFullscreen; };