diff options
Diffstat (limited to 'src/osd/mac/osdmac.h')
-rw-r--r-- | src/osd/mac/osdmac.h | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/src/osd/mac/osdmac.h b/src/osd/mac/osdmac.h new file mode 100644 index 00000000000..1ed9e6b8a5b --- /dev/null +++ b/src/osd/mac/osdmac.h @@ -0,0 +1,86 @@ +// license:BSD-3-Clause +// copyright-holders:R. Belmont +#ifndef _osdmac_h_ +#define _osdmac_h_ + +#include "modules/lib/osdobj_common.h" +#include "modules/osdmodule.h" +#include "modules/font/font_module.h" + +//============================================================ +// Defines +//============================================================ + +#define MACOPTION_INIPATH "inipath" + +#define MACOPTVAL_OPENGL "opengl" +#define MACOPTVAL_BGFX "bgfx" +#define MACOPTVAL_METAL "metal" + +#define MACOPTVAL_GLLIB "/System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib" + +//============================================================ +// TYPE DEFINITIONS +//============================================================ + +class mac_options : public osd_options +{ +public: + // construction/destruction + mac_options(); + +private: + static const options_entry s_option_entries[]; +}; + + +class mac_osd_interface : public osd_common_t +{ +public: + // construction/destruction + mac_osd_interface(mac_options &options); + virtual ~mac_osd_interface(); + + // general overridables + virtual void init(running_machine &machine) override; + virtual void update(bool skip_redraw) override; + + // input overridables + virtual void customize_input_type_list(simple_list<input_type_entry> &typelist) override; + + virtual void video_register() override; + + virtual bool video_init() override; + virtual bool window_init() override; + + virtual void video_exit() override; + virtual void window_exit() override; + + // sdl specific + void poll_inputs(running_machine &machine); + void release_keys(); + bool should_hide_mouse(); + void process_events_buf(); + + virtual mac_options &options() override { return m_options; } + +protected: + virtual void build_slider_list() override; + virtual void update_slider_list() override; + +private: + virtual void osd_exit() override; + + void extract_video_config(); + void output_oslog(const char *buffer); + + mac_options &m_options; +}; + +//============================================================ +// macwork.cpp +//============================================================ + +extern int osd_num_processors; + +#endif |