Make getters of the Settings class const
[oweals/minetest.git] / src / main.h
index 3118e5f52263d43736605eaeaa9984828ef069d2..191b418873096abc447e358d723cf2703b532847 100644 (file)
@@ -1,25 +1,48 @@
 /*
-(c) 2010 Perttu Ahola <celeron55@gmail.com>
+Minetest
+Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public License along
+with this program; if not, write to the Free Software Foundation, Inc.,
+51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
 
 #ifndef MAIN_HEADER
 #define MAIN_HEADER
 
 #include <string>
-extern std::string getTimestamp();
-#define DTIME (getTimestamp()+": ")
 
-#include <jmutex.h>
+// Settings
+class Settings;
+extern Settings *g_settings;
+extern std::string g_settings_path;
 
-extern JMutex g_range_mutex;
-extern s16 g_forcedfetch_range_nodes;
-extern s16 g_viewing_range_nodes;
-//extern s16 g_actual_viewing_range_nodes;
-extern bool g_viewing_range_all;
+// Global profiler
+class Profiler;
+extern Profiler *g_profiler;
 
-#include <fstream>
+// Menu clouds
+class Clouds;
+extern Clouds *g_menuclouds;
+
+// Scene manager used for menu clouds
+namespace irr{namespace scene{class ISceneManager;}}
+extern irr::scene::ISceneManager *g_menucloudsmgr;
 
 // Debug streams
+
+#include <fstream>
+
 extern std::ostream *dout_con_ptr;
 extern std::ostream *derr_con_ptr;
 extern std::ostream *dout_client_ptr;
@@ -34,17 +57,5 @@ extern std::ostream *derr_server_ptr;
 #define dout_server (*dout_server_ptr)
 #define derr_server (*derr_server_ptr)
 
-// TODO: Move somewhere else? materials.h?
-// This header is only for MATERIALS_COUNT
-#include "mapnode.h"
-extern video::SMaterial g_materials[MATERIALS_COUNT];
-//extern video::SMaterial g_mesh_materials[3];
-
-extern IrrlichtDevice *g_device;
-
-// Settings
-#include "map.h"
-extern MapgenParams g_mapgen_params;
-
 #endif