Path: blob/master/libmupen64plus/mupen64plus-video-glide64mk2/src/Glide64/m64p.h
2 views
/******************************************************************************1* Glide64 - Glide video plugin for Nintendo 64 emulators.2* http://bitbucket.org/richard42/mupen64plus-video-glide64mk2/3*4* Copyright (C) 2010 Jon Ring5*6* This program is free software; you can redistribute it and/or7* modify it under the terms of the GNU General Public License8* as published by the Free Software Foundation; either version 29* of the License, or (at your option) any later version.10*11* This program is distributed in the hope that it will be useful,12* but WITHOUT ANY WARRANTY; without even the implied warranty of13* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the14* GNU General Public License for more details.15*16* You should have received a copy of the GNU General Public License17* along with this program; if not, write to the Free Software18* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.19*****************************************************************************/2021#ifndef M64P_H22#define M64P_H2324#ifndef OLDAPI2526#include "m64p_types.h"27#include "m64p_plugin.h"28#include "m64p_common.h"29#include "m64p_config.h"30#include "m64p_vidext.h"31#include "winlnxdefs.h"32#include <stdio.h>3334#define PLUGIN_NAME "Glide64mk2 Video Plugin"35#define PLUGIN_VERSION 0x02000036#define VIDEO_PLUGIN_API_VERSION 0x02020037#define CONFIG_API_VERSION 0x02000038#define VIDEXT_API_VERSION 0x0300003940void WriteLog(m64p_msg_level level, const char *msg, ...);4142//The Glide API originally used an integer to pick an enumerated resolution.43//To accomodate arbitrary resolutions, pack it into a 32-bit struct44//so we don't have to change function signatures45union PackedScreenResolution46{47struct48{49int width : 16;50int height : 15;51int fullscreen : 1;52};53int resolution;54};555657/* definitions of pointers to Core config functions */58extern ptr_ConfigOpenSection ConfigOpenSection;59extern ptr_ConfigSetParameter ConfigSetParameter;60extern ptr_ConfigGetParameter ConfigGetParameter;61extern ptr_ConfigGetParameterHelp ConfigGetParameterHelp;62extern ptr_ConfigSetDefaultInt ConfigSetDefaultInt;63extern ptr_ConfigSetDefaultFloat ConfigSetDefaultFloat;64extern ptr_ConfigSetDefaultBool ConfigSetDefaultBool;65extern ptr_ConfigSetDefaultString ConfigSetDefaultString;66extern ptr_ConfigGetParamInt ConfigGetParamInt;67extern ptr_ConfigGetParamFloat ConfigGetParamFloat;68extern ptr_ConfigGetParamBool ConfigGetParamBool;69extern ptr_ConfigGetParamString ConfigGetParamString;7071extern ptr_ConfigGetSharedDataFilepath ConfigGetSharedDataFilepath;72extern ptr_ConfigGetUserConfigPath ConfigGetUserConfigPath;73extern ptr_ConfigGetUserDataPath ConfigGetUserDataPath;74extern ptr_ConfigGetUserCachePath ConfigGetUserCachePath;757677extern ptr_VidExt_Init CoreVideo_Init;78extern ptr_VidExt_Quit CoreVideo_Quit;79extern ptr_VidExt_ListFullscreenModes CoreVideo_ListFullscreenModes;80extern ptr_VidExt_SetVideoMode CoreVideo_SetVideoMode;81extern ptr_VidExt_SetCaption CoreVideo_SetCaption;82extern ptr_VidExt_ToggleFullScreen CoreVideo_ToggleFullScreen;83extern ptr_VidExt_ResizeWindow CoreVideo_ResizeWindow;84extern ptr_VidExt_GL_GetProcAddress CoreVideo_GL_GetProcAddress;85extern ptr_VidExt_GL_SetAttribute CoreVideo_GL_SetAttribute;86extern ptr_VidExt_GL_SwapBuffers CoreVideo_GL_SwapBuffers;8788#else8990#include <wx/wx.h>91#include <wx/fileconf.h>92#include <wx/wfstream.h>939495#endif9697#endif9899100