lsnes/include/core/mainloop.hpp

39 lines
1.3 KiB
C++
Raw Normal View History

#ifndef _mainloop__hpp__included__
#define _mainloop__hpp__included__
2013-07-29 22:16:23 +03:00
#include "settings.hpp"
#include "rom.hpp"
2013-09-22 17:39:52 +03:00
#include "romloader.hpp"
#include "moviefile.hpp"
#include "movie.hpp"
/**
* \brief Emulator main loop.
*/
2011-09-20 22:05:49 +03:00
void main_loop(struct loaded_rom& rom, struct moviefile& settings, bool load_has_to_succeed = false)
throw(std::bad_alloc, std::runtime_error);
2011-11-19 08:10:50 +02:00
std::vector<std::string> get_jukebox_names();
void set_jukebox_names(const std::vector<std::string>& newj);
void update_movie_state();
extern std::string msu1_base_path;
/**
* Signal that fast rewind operation is needed.
*
* Parameter ptr: If NULL, saves a state and calls lua_callback_do_unsafe_rewind() with quicksave, movie and NULL.
* If non-NULL, calls lua_callback_do_unsafe_rewind() with movie and this parameter, but without quicksave.
*/
void mainloop_signal_need_rewind(void* ptr);
2013-02-07 17:40:32 +02:00
void set_stop_at_frame(uint64_t frame = 0);
void switch_projects(const std::string& newproj);
2013-05-23 01:00:23 +03:00
void close_rom();
2013-09-22 17:39:52 +03:00
void load_new_rom(const romload_request& req);
void reload_current_rom();
2013-02-07 17:40:32 +02:00
extern settingvar::variable<settingvar::model_bool<settingvar::yes_no>> jukebox_dflt_binary;
extern settingvar::variable<settingvar::model_bool<settingvar::yes_no>> movie_dflt_binary;
extern settingvar::variable<settingvar::model_bool<settingvar::yes_no>> save_dflt_binary;
2013-07-29 22:16:23 +03:00
#endif