Changeset 2685 for code/branches/buildsystem3/src/orxonox
- Timestamp:
- Feb 20, 2009, 5:32:04 PM (16 years ago)
- Location:
- code/branches/buildsystem3/src/orxonox
- Files:
-
- 2 deleted
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/buildsystem3/src/orxonox/CMakeLists.txt
r2673 r2685 25 25 PawnManager.cc 26 26 PlayerManager.cc 27 Settings.cc28 27 ) 29 28 ADD_SUBDIRECTORY(gamestates) … … 43 42 IF(GCC_NO_SYSTEM_HEADER_SUPPORT) 44 43 # Get around displaying a few hundred lines of warning code 45 SET_SOURCE_FILES_PROPERTIES(gamestates/GSGraphics.cc PROPERTIES COMPILE_FLAGS "-w") 44 SET_SOURCE_FILES_PROPERTIES( 45 gamestates/GSGraphics.cc 46 gui/GUIManager.cc 47 PROPERTIES COMPILE_FLAGS "-Wno-sign-compare" 48 ) 46 49 ENDIF() 47 50 -
code/branches/buildsystem3/src/orxonox/Main.cc
r2664 r2685 30 30 /** 31 31 @file 32 @brief Entry point of the program. Platform specific code.32 @brief Entry point of the program. 33 33 */ 34 34 … … 37 37 #include <exception> 38 38 #include <cassert> 39 #include <fstream> 39 40 40 41 #include "OrxonoxConfig.h" … … 85 86 86 87 87 //#ifdef __cplusplus88 //extern "C" {89 //#endif90 91 88 SetCommandLineArgument(settingsFile, "orxonox.ini"); 89 SetCommandLineArgument(configFileDirectory, ""); 92 90 93 91 int main(int argc, char** argv) … … 95 93 using namespace orxonox; 96 94 97 // create a signal handler (only works for linux) 95 // First, determine whether we have an installed or a binary dir run 96 // The latter occurs when simply running from the build directory 97 std::ifstream probe; 98 probe.open("orxonox_dev_build.keep_me"); 99 if (probe) 100 { 101 Core::setDevBuild(); 102 probe.close(); 103 } 104 105 // create a signal handler (only active for linux) 98 106 SignalHandler signalHandler; 99 signalHandler.doCatch(argv[0], "orxonox.log");107 signalHandler.doCatch(argv[0], Core::getLogPath() + "orxonox_crash.log"); 100 108 101 109 // Parse command line arguments … … 157 165 return 0; 158 166 } 159 160 //#ifdef __cplusplus161 //}162 //#endif -
code/branches/buildsystem3/src/orxonox/gamestates/GSGraphics.cc
r2664 r2685 61 61 #include "gui/GUIManager.h" 62 62 #include "tools/WindowEventListener.h" 63 #include "Settings.h"64 63 65 64 // for compatibility … … 138 137 // load debug overlay 139 138 COUT(3) << "Loading Debug Overlay..." << std::endl; 140 this->debugOverlay_ = new XMLFile( Settings::getDataPath() + "overlay/debug.oxo");139 this->debugOverlay_ = new XMLFile(Core::getMediaPath() + "overlay/debug.oxo"); 141 140 Loader::open(debugOverlay_); 142 141 … … 211 210 delete this->ogreRoot_; 212 211 213 //#ifdef ORXONOX_PLATFORM_WINDOWS214 212 // delete the ogre log and the logManager (since we have created it). 215 213 this->ogreLogger_->getDefaultLog()->removeListener(this); 216 214 this->ogreLogger_->destroyLog(Ogre::LogManager::getSingleton().getDefaultLog()); 217 215 delete this->ogreLogger_; 218 //#endif219 216 220 217 delete graphicsEngine_; … … 287 284 COUT(3) << "Setting up Ogre..." << std::endl; 288 285 289 // TODO: LogManager doesn't work on oli platform. The why is yet unknown. 290 //#ifdef ORXONOX_PLATFORM_WINDOWS 286 if (ogreConfigFile_ == "") 287 { 288 COUT(2) << "Warning: Ogre config file set to \"\". Defaulting to config.cfg" << std::endl; 289 ModifyConfigValue(ogreConfigFile_, tset, "config.cfg"); 290 } 291 if (ogreLogFile_ == "") 292 { 293 COUT(2) << "Warning: Ogre log file set to \"\". Defaulting to ogre.log" << std::endl; 294 ModifyConfigValue(ogreLogFile_, tset, "ogre.log"); 295 } 296 297 boost::filesystem::path ogreConfigFilepath(Core::getConfigPath() + ogreConfigFile_); 298 boost::filesystem::path ogreLogFilepath(Core::getLogPath() + ogreLogFile_); 299 291 300 // create a new logManager 301 // Ogre::Root will detect that we've already created a Log 292 302 ogreLogger_ = new Ogre::LogManager(); 293 303 COUT(4) << "Ogre LogManager created" << std::endl; … … 295 305 // create our own log that we can listen to 296 306 Ogre::Log *myLog; 297 if (this->ogreLogFile_ == "") 298 myLog = ogreLogger_->createLog("ogre.log", true, false, true); 299 else 300 myLog = ogreLogger_->createLog(this->ogreLogFile_, true, false, false); 307 myLog = ogreLogger_->createLog(ogreLogFilepath.native_file_string(), true, false, false); 301 308 COUT(4) << "Ogre Log created" << std::endl; 302 309 303 310 myLog->setLogDetail(Ogre::LL_BOREME); 304 311 myLog->addListener(this); 305 //#endif 306 307 // Root will detect that we've already created a Log 312 308 313 COUT(4) << "Creating Ogre Root..." << std::endl; 309 310 if (ogreConfigFile_ == "")311 {312 COUT(2) << "Warning: Ogre config file set to \"\". Defaulting to config.cfg" << std::endl;313 ModifyConfigValue(ogreConfigFile_, tset, "config.cfg");314 }315 if (ogreLogFile_ == "")316 {317 COUT(2) << "Warning: Ogre log file set to \"\". Defaulting to ogre.log" << std::endl;318 ModifyConfigValue(ogreLogFile_, tset, "ogre.log");319 }320 314 321 315 // check for config file existence because Ogre displays (caught) exceptions if not 322 316 std::ifstream probe; 323 probe.open(ogreConfigFile _.c_str());317 probe.open(ogreConfigFilepath.native_file_string().c_str()); 324 318 if (!probe) 325 319 { 326 320 // create a zero sized file 327 321 std::ofstream creator; 328 creator.open(ogreConfigFile _.c_str());322 creator.open(ogreConfigFilepath.native_file_string().c_str()); 329 323 creator.close(); 330 324 } … … 333 327 334 328 // Leave plugins file empty. We're going to do that part manually later 335 ogreRoot_ = new Ogre::Root("", ogreConfigFile_, ogreLogFile_); 336 337 #if 0 // Ogre 1.4.3 doesn't yet support setDebugOutputEnabled(.) 338 #ifndef ORXONOX_PLATFORM_WINDOWS 339 // tame the ogre ouput so we don't get all the mess in the console 340 Ogre::Log* defaultLog = Ogre::LogManager::getSingleton().getDefaultLog(); 341 defaultLog->setDebugOutputEnabled(false); 342 defaultLog->setLogDetail(Ogre::LL_BOREME); 343 defaultLog->addListener(this); 344 #endif 345 #endif 329 ogreRoot_ = new Ogre::Root("", ogreConfigFilepath.native_file_string(), ogreLogFilepath.native_file_string()); 346 330 347 331 COUT(3) << "Ogre set up done." << std::endl; … … 377 361 try 378 362 { 379 cf.load( Settings::getDataPath() + resourceFile_);363 cf.load(Core::getMediaPath() + resourceFile_); 380 364 } 381 365 catch (...) … … 403 387 404 388 Ogre::ResourceGroupManager::getSingleton().addResourceLocation( 405 std::string( Settings::getDataPath() + archName), typeName, secName);389 std::string(Core::getMediaPath() + archName), typeName, secName); 406 390 } 407 391 } -
code/branches/buildsystem3/src/orxonox/gamestates/GSLevel.cc
r2662 r2685 46 46 #include "LevelManager.h" 47 47 #include "PlayerManager.h" 48 #include "Settings.h"49 48 50 49 namespace orxonox … … 205 204 std::string levelName; 206 205 CommandLine::getValue("level", &levelName); 207 startFile_ = new XMLFile( Settings::getDataPath() + std::string("levels/") + levelName);206 startFile_ = new XMLFile(Core::getMediaPath() + std::string("levels/") + levelName); 208 207 Loader::open(startFile_); 209 208 } -
code/branches/buildsystem3/src/orxonox/gamestates/GSRoot.cc
r2664 r2685 44 44 #include "tools/Timer.h" 45 45 #include "objects/Tickable.h" 46 #include "Settings.h"47 46 48 47 #ifdef ORXONOX_PLATFORM_WINDOWS 49 # ifndef WIN32_LEAN_AND_MEAN 50 # define WIN32_LEAN_AND_MEAN 51 # endif 52 # include "windows.h" 53 54 //Get around Windows hackery 55 # ifdef max 56 # undef max 57 # endif 58 # ifdef min 59 # undef min 60 # endif 48 # include <winbase.h> 61 49 #endif 62 50 63 51 namespace orxonox 64 52 { 65 SetCommandLineArgument(dataPath, "").information("PATH");66 53 SetCommandLineArgument(limitToCPU, 1).information("0: off | #cpu"); 67 54 … … 71 58 , bPaused_(false) 72 59 , timeFactorPauseBackup_(1.0f) 73 , settings_(0)74 60 , tclBind_(0) 75 61 , tclThreadManager_(0) … … 113 99 this->luaBind_ = new LuaBind(); 114 100 115 // instantiate Settings class116 this->settings_ = new Settings();117 118 std::string dataPath = CommandLine::getValue("dataPath");119 if (dataPath != "")120 {121 if (*dataPath.end() != '/' && *dataPath.end() != '\\')122 Settings::tsetDataPath(dataPath + "/");123 else124 Settings::tsetDataPath(dataPath);125 }126 127 101 // initialise TCL 128 this->tclBind_ = new TclBind( Settings::getDataPath());102 this->tclBind_ = new TclBind(Core::getMediaPath()); 129 103 this->tclThreadManager_ = new TclThreadManager(tclBind_->getTclInterpreter()); 130 104 … … 182 156 delete this->tclBind_; 183 157 184 delete this->settings_;185 158 delete this->luaBind_; 186 159 -
code/branches/buildsystem3/src/orxonox/gamestates/GSRoot.h
r2662 r2685 81 81 bool bPaused_; 82 82 float timeFactorPauseBackup_; 83 Settings* settings_;84 83 TclBind* tclBind_; 85 84 TclThreadManager* tclThreadManager_; -
code/branches/buildsystem3/src/orxonox/gui/GUIManager.cc
r2664 r2685 36 36 #include "GUIManager.h" 37 37 38 #include <boost/filesystem.hpp> 38 39 #include <OgreRenderWindow.h> 39 40 #include <OgreRoot.h> 40 41 #include <CEGUI.h> 42 #include <CEGUIDefaultLogger.h> 41 43 #include <ogreceguirenderer/OgreCEGUIRenderer.h> 42 44 #ifdef CEGUILUA_USE_INTERNAL_LIBRARY … … 148 150 this->luaState_ = this->scriptModule_->getLuaState(); 149 151 152 // Create our own logger to specify the filepath 153 boost::filesystem::path ceguiLogFilepath(Core::getLogPath() + "cegui.log"); 154 this->ceguiLogger_ = new DefaultLogger(); 155 this->ceguiLogger_->setLogFilename(ceguiLogFilepath.native_file_string()); 156 // set the log level according to ours (translate by subtracting 1) 157 this->ceguiLogger_->setLoggingLevel( 158 (LoggingLevel)(Core::getSoftDebugLevel(OutputHandler::LD_Logfile) - 1)); 159 150 160 // create the CEGUI system singleton 151 161 this->guiSystem_ = new System(this->guiRenderer_, this->resourceProvider_, 0, this->scriptModule_); 152 153 // set the log level according to ours (translate by subtracting 1)154 Logger::getSingleton().setLoggingLevel(155 (LoggingLevel)(Core::getSoftDebugLevel(OutputHandler::LD_Logfile) - 1));156 162 157 163 // do this after 'new CEGUI::Sytem' because that creates the lua state in the first place -
code/branches/buildsystem3/src/orxonox/gui/GUIManager.h
r2664 r2685 41 41 #include <CEGUISystem.h> 42 42 #include "core/input/InputInterfaces.h" 43 44 // Forward declaration 45 namespace CEGUI { class DefaultLogger; } 43 46 44 47 // tolua_begin … … 119 122 CEGUI::ResourceProvider* resourceProvider_; 120 123 CEGUI::LuaScriptModule* scriptModule_; 124 CEGUI::DefaultLogger* ceguiLogger_; 121 125 CEGUI::System* guiSystem_; 122 126 CEGUI::Imageset* backgroundImage_; -
code/branches/buildsystem3/src/orxonox/objects/Level.cc
r2664 r2685 35 35 #include "core/XMLFile.h" 36 36 #include "core/Template.h" 37 #include "core/Core.h" 37 38 38 #include "Settings.h"39 39 #include "LevelManager.h" 40 40 #include "objects/infos/PlayerInfo.h" … … 55 55 this->xmlfilename_ = this->getFilename(); 56 56 57 if (this->xmlfilename_.length() >= Settings::getDataPath().length())58 this->xmlfilename_ = this->xmlfilename_.substr( Settings::getDataPath().length());57 if (this->xmlfilename_.length() >= Core::getMediaPath().length()) 58 this->xmlfilename_ = this->xmlfilename_.substr(Core::getMediaPath().length()); 59 59 } 60 60 … … 97 97 mask.include(Class(OverlayGroup)); // HACK to include the ChatOverlay 98 98 99 this->xmlfile_ = new XMLFile( Settings::getDataPath() + this->xmlfilename_, mask);99 this->xmlfile_ = new XMLFile(Core::getMediaPath() + this->xmlfilename_, mask); 100 100 101 101 Loader::open(this->xmlfile_); -
code/branches/buildsystem3/src/orxonox/objects/gametypes/Gametype.cc
r2662 r2685 43 43 #include "objects/worldentities/SpawnPoint.h" 44 44 #include "objects/worldentities/Camera.h" 45 #include "Settings.h"46 45 47 46 #include "network/Host.h"
Note: See TracChangeset
for help on using the changeset viewer.