Arachnoid GLESv1.1 plugin. Compile and run (a bit glitchy and no frameskip) on the...
[mupen64plus-pandora.git] / source / mupen64plus-video-arachnoid / src / config / Config.h
CommitLineData
22726e4d 1/******************************************************************************
2 * Arachnoid Graphics Plugin for Mupen64Plus
3 * http://bitbucket.org/wahrhaft/mupen64plus-video-arachnoid/
4 *
5 * Copyright (C) 2009 Jon Ring
6 * Copyright (C) 2007 Kristofer Karlsson, Rickard Niklasson
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21 *****************************************************************************/
22
23#ifndef CONFIG_H_
24#define CONFIG_H_
25
26#include "m64p.h"
27#include "ConfigMap.h"
28
29//Forward declaration
30class GraphicsPlugin;
31
32//*****************************************************************************
33//* Config
34//! Manages configuration of graphics plugin
35//!
36//! Responability:
37//! * Loads config data from core
38//! * Sets default config values
39//!
40//! @see ConfigMap
41//*****************************************************************************
42class Config
43{
44public:
45
46 //Constructor / Destructor
47 Config(GraphicsPlugin* graphicsPlugin);
48 ~Config();
49
50 bool initialize();
51
52 //Loads settings from core
53 void load();
54
55 //Tell Graphics plugin that config has changed
56 void updateGraphics();
57
58public:
59
60 //Get configuration
61 ConfigMap* getConfig() { return &m_cfg; }
62
63private:
64
65 ConfigMap m_cfg; //!< Config map with all settings
66 GraphicsPlugin* m_graphicsPlugin; //!< Pointer to graphics plugin
67
68 m64p_handle m_videoGeneralSection;
69 m64p_handle m_videoArachnoidSection;
70};
71
72enum
73{
74 SCREEN_UPDATE_VI = 1,
75 SCREEN_UPDATE_CI = 2
76};
77
78#endif