From 61ea1f20f27fd04a99ab21adf3091496eee1667d Mon Sep 17 00:00:00 2001 From: Miodrag Milanovic Date: Mon, 4 Apr 2016 14:30:54 +0200 Subject: [PATCH] move common struct to common place (nw) --- src/osd/modules/osdwindow.h | 76 ++++++++++++++++++++++++++++++++++++ src/osd/sdl/video.h | 77 ------------------------------------- src/osd/windows/video.cpp | 2 +- src/osd/windows/video.h | 68 -------------------------------- 4 files changed, 77 insertions(+), 146 deletions(-) diff --git a/src/osd/modules/osdwindow.h b/src/osd/modules/osdwindow.h index 0cca8d27d30..3286f47f358 100644 --- a/src/osd/modules/osdwindow.h +++ b/src/osd/modules/osdwindow.h @@ -211,4 +211,80 @@ private: }; + +//============================================================ +// CONSTANTS +//============================================================ + +#define MAX_VIDEO_WINDOWS (4) + +#define VIDEO_SCALE_MODE_NONE (0) + +#define GLSL_SHADER_MAX 10 + + +//============================================================ +// TYPE DEFINITIONS +//============================================================ + +struct osd_video_config +{ + // global configuration + int windowed; // start windowed? + int prescale; // prescale factor + int keepaspect; // keep aspect ratio + int numscreens; // number of screens + + // hardware options + int mode; // output mode + int waitvsync; // spin until vsync + int syncrefresh; // sync only to refresh rate + int switchres; // switch resolutions + + // d3d, accel, opengl + int filter; // enable filtering + //int filter; // enable filtering, disabled if glsl_filter>0 + + // OpenGL options + int glsl; + int glsl_filter; // glsl filtering, >0 disables filter + char * glsl_shader_mamebm[GLSL_SHADER_MAX]; // custom glsl shader set, mame bitmap + int glsl_shader_mamebm_num; // custom glsl shader set number, mame bitmap + char * glsl_shader_scrn[GLSL_SHADER_MAX]; // custom glsl shader set, screen bitmap + int glsl_shader_scrn_num; // custom glsl shader number, screen bitmap + int pbo; + int vbo; + int allowtexturerect; // allow GL_ARB_texture_rectangle, default: no + int forcepow2texture; // force power of two textures, default: no + + // dd, d3d + int triplebuf; // triple buffer + + //============================================================ + // SDL - options + //============================================================ + int novideo; // don't draw, for pure CPU benchmarking + + int centerh; + int centerv; + + // vector options + float beamwidth; // beam width + + // perftest + int perftest; // print out real video fps + + // X11 options + int restrictonemonitor; // in fullscreen, confine to Xinerama monitor 0 + + // YUV options + int scale_mode; +}; + +//============================================================ +// GLOBAL VARIABLES +//============================================================ + +extern osd_video_config video_config; + #endif /* __OSDWINDOW__ */ diff --git a/src/osd/sdl/video.h b/src/osd/sdl/video.h index 307f3a898c9..0d9d66a5e61 100644 --- a/src/osd/sdl/video.h +++ b/src/osd/sdl/video.h @@ -14,16 +14,6 @@ #include "osdsdl.h" #include "modules/osdwindow.h" -//============================================================ -// CONSTANTS -//============================================================ - -#define MAX_VIDEO_WINDOWS (4) - -#define VIDEO_SCALE_MODE_NONE (0) - -#define GLSL_SHADER_MAX 10 - //============================================================ // TYPE DEFINITIONS //============================================================ @@ -36,11 +26,6 @@ inline osd_rect SDL_Rect_to_osd_rect(const SDL_Rect &r) class sdl_monitor_info : public osd_monitor_info { public: -#if 0 - sdl_monitor_info() - : m_next(NULL), m_handle(0), m_aspect(0.0f) - {} -#endif sdl_monitor_info(const UINT64 handle, const char *monitor_device, float aspect) : osd_monitor_info(&m_handle, monitor_device, aspect), m_handle(handle) { @@ -56,66 +41,4 @@ private: UINT64 m_handle; // handle to the monitor }; -struct osd_video_config -{ - // global configuration - int windowed; // start windowed? - int prescale; // prescale factor - int keepaspect; // keep aspect ratio - int numscreens; // number of screens - - // hardware options - int mode; // output mode - int waitvsync; // spin until vsync - int syncrefresh; // sync only to refresh rate - int switchres; // switch resolutions - - int fullstretch; // FXIME: implement in windows! - - // d3d, accel, opengl - int filter; // enable filtering - //int filter; // enable filtering, disabled if glsl_filter>0 - - // OpenGL options - int glsl; - int glsl_filter; // glsl filtering, >0 disables filter - char * glsl_shader_mamebm[GLSL_SHADER_MAX]; // custom glsl shader set, mame bitmap - int glsl_shader_mamebm_num; // custom glsl shader set number, mame bitmap - char * glsl_shader_scrn[GLSL_SHADER_MAX]; // custom glsl shader set, screen bitmap - int glsl_shader_scrn_num; // custom glsl shader number, screen bitmap - int pbo; - int vbo; - int allowtexturerect; // allow GL_ARB_texture_rectangle, default: no - int forcepow2texture; // force power of two textures, default: no - - // dd, d3d - int triplebuf; // triple buffer - - //============================================================ - // SDL - options - //============================================================ - int novideo; // don't draw, for pure CPU benchmarking - - int centerh; - int centerv; - - // vector options - float beamwidth; // beam width - - // perftest - int perftest; // print out real video fps - - // X11 options - int restrictonemonitor; // in fullscreen, confine to Xinerama monitor 0 - - // YUV options - int scale_mode; -}; - -//============================================================ -// GLOBAL VARIABLES -//============================================================ - -extern osd_video_config video_config; - #endif diff --git a/src/osd/windows/video.cpp b/src/osd/windows/video.cpp index 559213657da..2da04f8b155 100644 --- a/src/osd/windows/video.cpp +++ b/src/osd/windows/video.cpp @@ -62,7 +62,7 @@ static void get_resolution(const char *defdata, const char *data, osd_window_con //============================================================ // FIXME: Temporary workaround -static osd_window_config windows[MAX_WINDOWS]; // configuration data per-window +static osd_window_config windows[MAX_VIDEO_WINDOWS]; // configuration data per-window bool windows_osd_interface::video_init() { diff --git a/src/osd/windows/video.h b/src/osd/windows/video.h index b0f0f1c88ee..f47a5260b8e 100644 --- a/src/osd/windows/video.h +++ b/src/osd/windows/video.h @@ -13,14 +13,6 @@ #include "winmain.h" #include "modules/osdwindow.h" -//============================================================ -// CONSTANTS -//============================================================ - -#define MAX_WINDOWS 4 - -#define GLSL_SHADER_MAX 10 - //============================================================ // TYPE DEFINITIONS //============================================================ @@ -52,64 +44,4 @@ private: #endif }; -struct osd_video_config -{ - // global configuration - int windowed; // start windowed? - int prescale; // prescale factor - int keepaspect; // keep aspect ratio - int numscreens; // number of screens - - // hardware options - int mode; // output mode - int waitvsync; // spin until vsync - int syncrefresh; // sync only to refresh rate - int switchres; // switch resolutions - - // d3d, accel, opengl - int filter; // enable filtering - //int filter; // enable filtering, disabled if glsl_filter>0 - - // OpenGL options - int glsl; - int glsl_filter; // glsl filtering, >0 disables filter - char * glsl_shader_mamebm[GLSL_SHADER_MAX]; // custom glsl shader set, mame bitmap - int glsl_shader_mamebm_num; // custom glsl shader set number, mame bitmap - char * glsl_shader_scrn[GLSL_SHADER_MAX]; // custom glsl shader set, screen bitmap - int glsl_shader_scrn_num; // custom glsl shader number, screen bitmap - int pbo; - int vbo; - int allowtexturerect; // allow GL_ARB_texture_rectangle, default: no - int forcepow2texture; // force power of two textures, default: no - - // dd, d3d - int triplebuf; // triple buffer - - //============================================================ - // SDL - options - //============================================================ - int novideo; // don't draw, for pure CPU benchmarking - - int centerh; - int centerv; - - // vector options - float beamwidth; // beam width - - // perftest - int perftest; // print out real video fps - - // X11 options - int restrictonemonitor; // in fullscreen, confine to Xinerama monitor 0 - - // YUV options - int scale_mode; -}; - -//============================================================ -// GLOBAL VARIABLES -//============================================================ - -extern osd_video_config video_config; - #endif