1 /*************************************************************************** 2 * Copyright (C) 2005-2019 by the FIFE team * 3 * http://www.fifengine.net * 4 * This file is part of FIFE. * 5 * * 6 * FIFE is free software; you can redistribute it and/or * 7 * modify it under the terms of the GNU Lesser General Public * 8 * License as published by the Free Software Foundation; either * 9 * version 2.1 of the License, or (at your option) any later version. * 10 * * 11 * This library is distributed in the hope that it will be useful, * 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 14 * Lesser General Public License for more details. * 15 * * 16 * You should have received a copy of the GNU Lesser General Public * 17 * License along with this library; if not, write to the * 18 * Free Software Foundation, Inc., * 19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * 20 ***************************************************************************/ 21 22 #ifndef FIFE_MODULES_H 23 #define FIFE_MODULES_H 24 25 // Standard C++ library includes 26 27 // 3rd party library includes 28 29 // FIFE includes 30 // These includes are split up in two parts, separated by one empty line 31 // First block: files included from the FIFE root src directory 32 // Second block: files included from the same folder 33 34 /** Modules available for logging 35 */ 36 enum logmodule_t { 37 LM_CORE = -1, 38 LM_AUDIO, 39 LM_CONTROLLER, 40 LM_EVTCHANNEL, 41 LM_GUI, 42 LM_CONSOLE, 43 LM_LOADERS, 44 LM_NATIVE_LOADERS, 45 LM_FO_LOADERS, 46 LM_SAVERS, 47 LM_NATIVE_SAVERS, 48 LM_MODEL, 49 LM_STRUCTURES, 50 LM_INSTANCE, 51 LM_LOCATION, 52 LM_METAMODEL, 53 LM_CELLGRID, 54 LM_SQUAREGRID, 55 LM_HEXGRID, 56 LM_PATHFINDER, 57 LM_UTIL, 58 LM_RESMGR, 59 LM_VFS, 60 LM_VIDEO, 61 LM_VIEW, 62 LM_CAMERA, 63 LM_VIEWVIEW, 64 LM_XML, 65 LM_EXCEPTION, 66 LM_SCRIPT, 67 LM_CURSOR, 68 LM_MODULE_MAX // sentinel 69 }; 70 71 /** Module hierarchy definition + display strings 72 * format = module, module parent, module display name 73 */ 74 #define MODULE_INFO_RELATIONSHIPS \ 75 ModuleInfo moduleInfos[] = { \ 76 {LM_AUDIO, LM_CORE, "Audio"}, \ 77 {LM_CONTROLLER, LM_CORE, "Controller"}, \ 78 {LM_EVTCHANNEL, LM_CORE, "Event Channel"}, \ 79 {LM_GUI, LM_CORE, "GUI"}, \ 80 {LM_CONSOLE, LM_GUI, "Console"}, \ 81 {LM_LOADERS, LM_CORE, "Loaders"}, \ 82 {LM_NATIVE_LOADERS, LM_LOADERS, "Native loaders"}, \ 83 {LM_FO_LOADERS, LM_LOADERS, "Fallout loaders"}, \ 84 {LM_SAVERS, LM_CORE, "Savers"}, \ 85 {LM_NATIVE_SAVERS, LM_CORE, "Native savers"}, \ 86 {LM_MODEL, LM_CORE, "Model"}, \ 87 {LM_STRUCTURES, LM_MODEL, "Structures"}, \ 88 {LM_INSTANCE, LM_STRUCTURES, "Instance"}, \ 89 {LM_LOCATION, LM_STRUCTURES, "Location"}, \ 90 {LM_METAMODEL, LM_MODEL, "Metamodel"}, \ 91 {LM_CELLGRID, LM_METAMODEL, "Cellgrid"}, \ 92 {LM_SQUAREGRID, LM_METAMODEL, "Squaregrid"}, \ 93 {LM_HEXGRID, LM_METAMODEL, "Hexgrid"}, \ 94 {LM_PATHFINDER, LM_CORE, "Pathfinder"}, \ 95 {LM_UTIL, LM_CORE, "Util"}, \ 96 {LM_RESMGR, LM_UTIL, "Resource Manager"}, \ 97 {LM_VFS, LM_CORE, "VFS"}, \ 98 {LM_VIDEO, LM_CORE, "Video" }, \ 99 {LM_VIEW, LM_CORE, "View"}, \ 100 {LM_CAMERA, LM_VIEW, "Camera"}, \ 101 {LM_VIEWVIEW, LM_VIEW, "View::View"}, \ 102 {LM_XML, LM_CORE, "XML"}, \ 103 {LM_EXCEPTION, LM_CORE, "Exception"}, \ 104 {LM_SCRIPT, LM_CORE, "Script"}, \ 105 {LM_CURSOR, LM_CORE, "Cursor"} \ 106 }; 107 108 #endif 109