// license:BSD-3-Clause // copyright-holders:Nathan Woods, Miodrag Milanovic /*************************************************************************** image.h Core image interface functions and definitions. ***************************************************************************/ #ifndef MAME_EMU_IMAGE_H #define MAME_EMU_IMAGE_H #pragma once // ======================> image_manager class image_manager { public: // construction/destruction image_manager(running_machine &machine); void unload_all(); void postdevice_init(); // getters running_machine &machine() const { return m_machine; } std::string setup_working_directory(); private: void config_load(config_type cfg_type, config_level cfg_level, util::xml::data_node const *parentnode); void config_save(config_type cfg_type, util::xml::data_node *parentnode); void options_extract(); int write_config(emu_options &options, const char *filename, const game_driver *gamedrv); bool try_change_working_directory(std::string &working_directory, const std::string &subdir); // internal state running_machine & m_machine; // reference to our machine }; #endif /* MAME_EMU_IMAGE_H */