Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 5693 for code/trunk/src


Ignore:
Timestamp:
Aug 29, 2009, 10:19:38 PM (15 years ago)
Author:
landauf
Message:

merged libraries branch back to trunk

Location:
code/trunk
Files:
6 deleted
130 edited
35 copied

Legend:

Unmodified
Added
Removed
  • code/trunk

  • code/trunk/src/SpecialConfig.h.in

    r3370 r5693  
    7474    // INSTALLATION PATHS
    7575    const char ORXONOX_RUNTIME_INSTALL_PATH[] = "@ORXONOX_RUNTIME_INSTALL_PATH@";
     76    const char ORXONOX_MODULE_INSTALL_PATH[]  = "@ORXONOX_MODULE_INSTALL_PATH@";
    7677    const char ORXONOX_MEDIA_INSTALL_PATH[]   = "@ORXONOX_MEDIA_INSTALL_PATH@";
    7778    /* Config and Log path might be relative because they could be user and therefore runtime dependent */
     
    8283    const char ORXONOX_MEDIA_DEV_PATH[]       = "@CMAKE_MEDIA_OUTPUT_DIRECTORY@";
    8384#ifdef CMAKE_CONFIGURATION_TYPES
     85    const char ORXONOX_MODULE_DEV_PATH[]      = "@CMAKE_MODULE_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE);
    8486    const char ORXONOX_CONFIG_DEV_PATH[]      = "@CMAKE_CONFIG_OUTPUT_DIRECTORY@/" BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE);
    8587    const char ORXONOX_LOG_DEV_PATH[]         = "@CMAKE_LOG_OUTPUT_DIRECTORY@/"    BOOST_PP_STRINGIZE(CMAKE_BUILD_TYPE);
    8688#else
     89    const char ORXONOX_MODULE_DEV_PATH[]      = "@CMAKE_MODULE_OUTPUT_DIRECTORY@";
    8790    const char ORXONOX_CONFIG_DEV_PATH[]      = "@CMAKE_CONFIG_OUTPUT_DIRECTORY@";
    8891    const char ORXONOX_LOG_DEV_PATH[]         = "@CMAKE_LOG_OUTPUT_DIRECTORY@";
     
    9194    const char ORXONOX_DEP_LIB_PATH[]         = "@DEP_LIBRARY_DIR@";
    9295#endif
     96
     97    // Module extension
     98    const char ORXONOX_MODULE_EXTENSION[]     = "@ORXONOX_MODULE_EXTENSION@";
    9399
    94100    // OGRE PLUGINS
  • code/trunk/src/core/CMakeLists.txt

    r3370 r5693  
    2323  ConfigValueContainer.cc
    2424  Core.cc
     25  DynLib.cc
     26  DynLibManager.cc
    2527  Event.cc
    2628  Game.cc
  • code/trunk/src/core/Core.cc

    r3370 r5693  
    4040#include <cstdlib>
    4141#include <cstdio>
     42#include <boost/version.hpp>
    4243#include <boost/filesystem.hpp>
    4344#include <OgreRenderWindow.h>
     
    6869#include "ConfigValueIncludes.h"
    6970#include "CoreIncludes.h"
     71#include "DynLibManager.h"
    7072#include "Factory.h"
    7173#include "GameMode.h"
     
    8082#include "input/InputManager.h"
    8183
     84// Boost 1.36 has some issues with deprecated functions that have been omitted
     85#if (BOOST_VERSION == 103600)
     86#  define BOOST_LEAF_FUNCTION filename
     87#else
     88#  define BOOST_LEAF_FUNCTION leaf
     89#endif
     90
    8291namespace orxonox
    8392{
     
    241250        boost::filesystem::path rootPath_;
    242251        boost::filesystem::path executablePath_;        //!< Path to the executable
     252        boost::filesystem::path modulePath_;            //!< Path to the modules
    243253        boost::filesystem::path mediaPath_;             //!< Path to the media file folder
    244254        boost::filesystem::path configPath_;            //!< Path to the config file folder
     
    256266        , bGraphicsLoaded_(false)
    257267    {
    258         // Parse command line arguments first
     268        // Set the hard coded fixed paths
     269        this->setFixedPaths();
     270
     271        // Create a new dynamic library manager
     272        this->dynLibManager_.reset(new DynLibManager());
     273
     274        // Load modules
     275        try
     276        {
     277            // We search for helper files with the following extension
     278            std::string moduleextension = ORXONOX_MODULE_EXTENSION;
     279            size_t moduleextensionlength = moduleextension.size();
     280
     281            // Search in the directory of our executable
     282            boost::filesystem::path searchpath = this->configuration_->modulePath_;
     283
     284            // Add that path to the PATH variable in case a module depends on another one
     285            std::string pathVariable = getenv("PATH");
     286            putenv(const_cast<char*>(("PATH=" + pathVariable + ";" + configuration_->modulePath_.string()).c_str()));
     287
     288            boost::filesystem::directory_iterator file(searchpath);
     289            boost::filesystem::directory_iterator end;
     290
     291            // Iterate through all files
     292            while (file != end)
     293            {
     294                std::string filename = file->BOOST_LEAF_FUNCTION();
     295
     296                // Check if the file ends with the exension in question
     297                if (filename.size() > moduleextensionlength)
     298                {
     299                    if (filename.substr(filename.size() - moduleextensionlength) == moduleextension)
     300                    {
     301                        // We've found a helper file - now load the library with the same name
     302                        std::string library = filename.substr(0, filename.size() - moduleextensionlength);
     303                        boost::filesystem::path librarypath = searchpath / library;
     304
     305                        try
     306                        {
     307                            DynLibManager::getInstance().load(librarypath.string());
     308                        }
     309                        catch (const std::exception& e)
     310                        {
     311                            COUT(1) << "Couldn't load module \"" << librarypath.string() << "\": " << e.what() << std::endl;
     312                        }
     313                        catch (...)
     314                        {
     315                            COUT(1) << "Couldn't load module \"" << librarypath.string() << "\"" << std::endl;
     316                        }
     317                    }
     318                }
     319
     320                ++file;
     321            }
     322        }
     323        catch (const std::exception& e)
     324        {
     325            COUT(1) << "An error occurred while loading modules: " << e.what() << std::endl;
     326        }
     327        catch (...)
     328        {
     329            COUT(1) << "An error occurred while loading modules." << std::endl;
     330        }
     331
     332        // Parse command line arguments AFTER the modules have been loaded (static code!)
    259333        CommandLine::parseCommandLine(cmdLine);
    260334
    261         // Determine and set the location of the executable
    262         setExecutablePath();
    263 
    264         // Determine whether we have an installed or a binary dir run
    265         // The latter occurs when simply running from the build directory
    266         checkDevBuild();
    267 
    268         // Make sure the directories we write in exist or else make them
    269         createDirectories();
     335        // Set configurable paths like log, config and media
     336        this->setConfigurablePaths();
    270337
    271338        // create a signal handler (only active for linux)
     
    507574    /**
    508575    @brief
    509         Compares the executable path with the working directory
    510     */
    511     void Core::setExecutablePath()
    512     {
     576        Retrievs the executable path and sets all hard coded fixed path (currently only the module path)
     577        Also checks for "orxonox_dev_build.keep_me" in the executable diretory.
     578        If found it means that this is not an installed run, hence we
     579        don't write the logs and config files to ~/.orxonox
     580    @throw
     581        GeneralException
     582    */
     583    void Core::setFixedPaths()
     584    {
     585        //////////////////////////
     586        // FIND EXECUTABLE PATH //
     587        //////////////////////////
     588
    513589#ifdef ORXONOX_PLATFORM_WINDOWS
    514590        // get executable module
     
    553629        configuration_->executablePath_ = configuration_->executablePath_.branch_path(); // remove executable name
    554630#endif
    555     }
    556 
    557     /**
    558     @brief
    559         Checks for "orxonox_dev_build.keep_me" in the executable diretory.
    560         If found it means that this is not an installed run, hence we
    561         don't write the logs and config files to ~/.orxonox
    562     @throws
    563         GeneralException
    564     */
    565     void Core::checkDevBuild()
    566     {
     631
     632        /////////////////////
     633        // SET MODULE PATH //
     634        /////////////////////
     635
    567636        if (boost::filesystem::exists(configuration_->executablePath_ / "orxonox_dev_build.keep_me"))
    568637        {
    569638            COUT(1) << "Running from the build tree." << std::endl;
    570639            Core::bDevRun_ = true;
    571             configuration_->mediaPath_  = ORXONOX_MEDIA_DEV_PATH;
    572             configuration_->configPath_ = ORXONOX_CONFIG_DEV_PATH;
    573             configuration_->logPath_    = ORXONOX_LOG_DEV_PATH;
     640            configuration_->modulePath_ = ORXONOX_MODULE_DEV_PATH;
    574641        }
    575642        else
    576643        {
     644
    577645#ifdef INSTALL_COPYABLE // --> relative paths
     646
    578647            // Also set the root path
    579648            boost::filesystem::path relativeExecutablePath(ORXONOX_RUNTIME_INSTALL_PATH);
     
    585654                ThrowException(General, "Could not derive a root directory. Might the binary installation directory contain '..' when taken relative to the installation prefix path?");
    586655
     656            // Module path is fixed as well
     657            configuration_->modulePath_ = configuration_->rootPath_ / ORXONOX_MODULE_INSTALL_PATH;
     658
     659#else
     660
     661            // There is no root path, so don't set it at all
     662            // Module path is fixed as well
     663            configuration_->modulePath_ = ORXONOX_MODULE_INSTALL_PATH;
     664
     665#endif
     666        }
     667    }
     668
     669    /**
     670    @brief
     671        Sets config, log and media path and creates folders if necessary.
     672    @throws
     673        GeneralException
     674    */
     675    void Core::setConfigurablePaths()
     676    {
     677        if (Core::isDevelopmentRun())
     678        {
     679            configuration_->mediaPath_  = ORXONOX_MEDIA_DEV_PATH;
     680            configuration_->configPath_ = ORXONOX_CONFIG_DEV_PATH;
     681            configuration_->logPath_    = ORXONOX_LOG_DEV_PATH;
     682        }
     683        else
     684        {
     685
     686#ifdef INSTALL_COPYABLE // --> relative paths
     687
    587688            // Using paths relative to the install prefix, complete them
    588689            configuration_->mediaPath_  = configuration_->rootPath_ / ORXONOX_MEDIA_INSTALL_PATH;
    589690            configuration_->configPath_ = configuration_->rootPath_ / ORXONOX_CONFIG_INSTALL_PATH;
    590691            configuration_->logPath_    = configuration_->rootPath_ / ORXONOX_LOG_INSTALL_PATH;
     692
    591693#else
    592             // There is no root path, so don't set it at all
    593694
    594695            configuration_->mediaPath_  = ORXONOX_MEDIA_INSTALL_PATH;
     
    607708            configuration_->configPath_ = userDataPath / ORXONOX_CONFIG_INSTALL_PATH;
    608709            configuration_->logPath_    = userDataPath / ORXONOX_LOG_INSTALL_PATH;
    609 #endif
     710
     711#endif
     712
    610713        }
    611714
     
    617720            configuration_->logPath_    = configuration_->logPath_    / directory;
    618721        }
    619     }
    620 
    621     /*
    622     @brief
    623         Checks for the log and the config directory and creates them
    624         if necessary. Otherwise me might have problems opening those files.
    625     @throws
    626         orxonox::GeneralException if the directory to be created is a file.
    627     */
    628     void Core::createDirectories()
    629     {
     722
     723        // Create directories to avoid problems when opening files in non existent folders.
    630724        std::vector<std::pair<boost::filesystem::path, std::string> > directories;
    631725        directories.push_back(std::make_pair(boost::filesystem::path(configuration_->configPath_), "config"));
  • code/trunk/src/core/Core.h

    r3370 r5693  
    114114            Core(const Core&); //!< Don't use (undefined symbol)
    115115
    116             void checkDevBuild();
    117             void setExecutablePath();
    118             void createDirectories();
     116            void setFixedPaths();
     117            void setConfigurablePaths();
    119118            void setThreadAffinity(int limitToCPU);
    120119
    121120            // Mind the order for the destruction!
     121            scoped_ptr<DynLibManager>     dynLibManager_;
    122122            scoped_ptr<SignalHandler>     signalHandler_;
    123123            SimpleScopeGuard              identifierDestroyer_;
  • code/trunk/src/core/CorePrereqs.h

    r3370 r5693  
    112112    class ConsoleCommand;
    113113    class Core;
     114    class DynLib;
     115    class DynLibManager;
    114116    struct Event;
    115117    class EventContainer;
  • code/trunk/src/core/GUIManager.h

    r3370 r5693  
    5050namespace orxonox
    5151{
     52    class PlayerInfo; // Forward declaration
     53
    5254    /**
    5355    @class GUIManager
     
    7779        static GUIManager* getInstancePtr() { return singletonPtr_s; }
    7880
     81        inline void setPlayer(const std::string& guiname, PlayerInfo* player)
     82            { this->players_[guiname] = player; }
     83        inline PlayerInfo* getPlayer(const std::string& guiname) const
     84            { std::map<std::string, PlayerInfo*>::const_iterator it = this->players_.find(guiname); return (it != this->players_.end()) ? it->second : 0; }
     85
    7986    private:
    8087        GUIManager(const GUIManager& instance); //!< private and undefined copy c'tor (this is a singleton class)
     
    9299        void mouseScrolled (int abs, int rel);
    93100
    94         boost::scoped_ptr<CEGUI::OgreCEGUIRenderer> guiRenderer_;  //!< CEGUI's interface to the Ogre Engine
    95         boost::scoped_ptr<CEGUI::LuaScriptModule>   scriptModule_; //!< CEGUI's script module to use Lua
    96         boost::scoped_ptr<CEGUI::System>            guiSystem_;    //!< CEGUI's main system
    97         Ogre::RenderWindow*      renderWindow_;     //!< Ogre's render window to give CEGUI access to it
    98         CEGUI::ResourceProvider* resourceProvider_; //!< CEGUI's resource provider
    99         CEGUI::Logger*           ceguiLogger_;      //!< CEGUI's logger to be able to log CEGUI errors in our log
    100         lua_State*               luaState_;         //!< Lua state, access point to the Lua engine
     101        boost::scoped_ptr<CEGUI::OgreCEGUIRenderer> guiRenderer_;       //!< CEGUI's interface to the Ogre Engine
     102        boost::scoped_ptr<CEGUI::LuaScriptModule>   scriptModule_;      //!< CEGUI's script module to use Lua
     103        boost::scoped_ptr<CEGUI::System>            guiSystem_;         //!< CEGUI's main system
     104        Ogre::RenderWindow*                         renderWindow_;      //!< Ogre's render window to give CEGUI access to it
     105        CEGUI::ResourceProvider*                    resourceProvider_;  //!< CEGUI's resource provider
     106        CEGUI::Logger*                              ceguiLogger_;       //!< CEGUI's logger to be able to log CEGUI errors in our log
     107        lua_State*                                  luaState_;          //!< Lua state, access point to the Lua engine
     108        std::map<std::string, PlayerInfo*>          players_;           //!< Stores the player (owner) for each gui
    101109
    102         static GUIManager*       singletonPtr_s;    //!< Singleton reference to GUIManager
     110        static GUIManager*                          singletonPtr_s;     //!< Singleton reference to GUIManager
    103111
    104112    };
  • code/trunk/src/core/Game.cc

    r3370 r5693  
    113113    */
    114114    Game::Game(const std::string& cmdLine)
     115        // Destroy factories before the Core!
     116        : gsFactoryDestroyer_(Game::GameStateFactory::factories_s, &std::map<std::string, shared_ptr<GameStateFactory> >::clear)
    115117    {
    116118        this->bAbort_ = false;
  • code/trunk/src/core/Game.h

    r3370 r5693  
    4848
    4949#include "util/Debug.h"
     50#include "util/ScopeGuard.h"
    5051#include "util/Singleton.h"
    5152
     
    8586        typedef std::map<std::string, shared_ptr<GameState> > GameStateMap;
    8687        typedef boost::shared_ptr<GameStateTreeNode> GameStateTreeNodePtr;
     88
    8789    public:
    8890        Game(const std::string& cmdLine);
     
    118120            static void createFactory(const std::string& className)
    119121                { factories_s[className].reset(new TemplateGameStateFactory<T>()); }
    120         private:
     122
    121123            virtual shared_ptr<GameState> fabricateInternal(const GameStateInfo& info) = 0;
    122124            static std::map<std::string, shared_ptr<GameStateFactory> > factories_s;
     
    129131                { return shared_ptr<GameState>(new T(info)); }
    130132        };
     133        // For the factory destruction
     134        typedef Loki::ObjScopeGuardImpl0<std::map<std::string, shared_ptr<GameStateFactory> >, void (std::map<std::string, shared_ptr<GameStateFactory> >::*)()> ObjScopeGuard;
    131135
    132136        struct StatisticsTickInfo
     
    156160        scoped_ptr<Clock>                  gameClock_;
    157161        scoped_ptr<Core>                   core_;
     162        ObjScopeGuard                      gsFactoryDestroyer_;
    158163        scoped_ptr<GameConfiguration>      configuration_;
    159164
  • code/trunk/src/core/TclThreadList.h

    • Property svn:eol-style set to native
  • code/trunk/src/core/Thread.cc

    • Property svn:eol-style set to native
  • code/trunk/src/core/Thread.h

    • Property svn:eol-style set to native
  • code/trunk/src/core/ThreadPool.cc

    • Property svn:eol-style set to native
  • code/trunk/src/core/ThreadPool.h

    • Property svn:eol-style set to native
  • code/trunk/src/network/TODO

    • Property svn:mergeinfo changed (with no actual effect on merging)
  • code/trunk/src/orxonox/CMakeLists.txt

    r3370 r5693  
    1919
    2020SET_SOURCE_FILES(ORXONOX_SRC_FILES
     21  Main.cc
     22
    2123  CameraManager.cc
    2224  LevelManager.cc
    23   Main.cc
    2425  PawnManager.cc
    2526  PlayerManager.cc
     27
     28  InGameConsole.cc
     29  Map.cc
    2630)
    2731ADD_SUBDIRECTORY(gamestates)
    2832ADD_SUBDIRECTORY(interfaces)
     33ADD_SUBDIRECTORY(overlays)
    2934ADD_SUBDIRECTORY(objects)
    30 ADD_SUBDIRECTORY(overlays)
    3135ADD_SUBDIRECTORY(sound)
    3236ADD_SUBDIRECTORY(tools)
     
    3741ENDIF()
    3842
    39 ORXONOX_ADD_EXECUTABLE(orxonox
     43ORXONOX_ADD_LIBRARY(orxonox
    4044  FIND_HEADER_FILES
    4145  TOLUA_FILES
     
    4347    objects/pickup/BaseItem.h
    4448    objects/pickup/PickupInventory.h
    45     objects/quest/QuestDescription.h
    46     objects/quest/QuestManager.h
     49  DEFINE_SYMBOL
     50    "ORXONOX_SHARED_BUILD"
    4751  PCH_FILE
    4852    OrxonoxPrecompiledHeaders.h
    49   # When defined as WIN32 this removes the console window on Windows
    50   ${ORXONOX_WIN32}
    5153  LINK_LIBRARIES
    5254    ${Boost_FILESYSTEM_LIBRARY}
     
    6668    core
    6769    network
     70    tools
    6871  SOURCE_FILES ${ORXONOX_SRC_FILES}
    6972)
    7073
    71 GET_TARGET_PROPERTY(_exec_loc orxonox LOCATION)
     74ORXONOX_ADD_EXECUTABLE(orxonox-main
     75  # When defined as WIN32 this removes the console window on Windows
     76  ${ORXONOX_WIN32}
     77  LINK_LIBRARIES
     78    orxonox
     79  SOURCE_FILES
     80    Orxonox.cc
     81  OUTPUT_NAME orxonox
     82)
     83
     84GET_TARGET_PROPERTY(_exec_loc orxonox-main LOCATION)
    7285GET_FILENAME_COMPONENT(_exec_name ${_exec_loc} NAME)
    7386SET(ORXONOX_EXECUTABLE_NAME ${_exec_name} CACHE INTERNAL "")
     
    89102  STRING(REGEX REPLACE "^Visual Studio ([0-9][0-9]?) .*$" "\\1"
    90103         VISUAL_STUDIO_VERSION_SIMPLE "${CMAKE_GENERATOR}")
    91   CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox.vcproj.user.in" "${CMAKE_CURRENT_BINARY_DIR}/orxonox.vcproj.user")
     104  CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/orxonox-main.vcproj.user.in" "${CMAKE_CURRENT_BINARY_DIR}/orxonox-main.vcproj.user")
    92105ENDIF(MSVC)
  • code/trunk/src/orxonox/Main.cc

    r3370 r5693  
    2727 *
    2828 */
    29  
     29
    3030/**
    3131@file
    3232@brief
    33     Entry point of the program.
     33    The main function of Orxonox.
    3434*/
    3535
     
    3737#include "SpecialConfig.h"
    3838
    39 #ifdef ORXONOX_USE_WINMAIN
    40 # ifndef WIN32_LEAN_AND_MEAN
    41 #  define WIN32_LEAN_AND_MEAN
    42 # endif
    43 #include <windows.h>
    44 #endif
    45 
    46 #include "util/Debug.h"
    4739#include "util/Exception.h"
    4840#include "core/CommandLine.h"
    4941#include "core/Game.h"
     42#include "Main.h"
    5043
    5144SetCommandLineSwitch(console).information("Start in console mode (text IO only)");
     
    5649SetCommandLineSwitch(standalone).information("Start in standalone mode");
    5750
    58 /*
    59 @brief
    60     Main method. Game starts here (except for static initialisations).
    61 */
    62 #ifdef ORXONOX_USE_WINMAIN
    63 INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT)
    64 #else
    65 int main(int argc, char** argv)
    66 #endif
     51namespace orxonox
    6752{
    68     using namespace orxonox;
    69 
    70     Game* game = 0;
    71     try
     53    /**
     54    @brief
     55        Main method. Game starts here (except for static initialisations).
     56    */
     57    int main(const std::string& strCmdLine)
    7258    {
    73 #ifndef ORXONOX_USE_WINMAIN
    74         std::string strCmdLine;
    75         for (int i = 1; i < argc; ++i)
    76             strCmdLine += argv[i] + std::string(" ");
    77 #endif
    78         game = new Game(strCmdLine);
     59        Game* game = new Game(strCmdLine);
    7960
    8061        game->setStateHierarchy(
     
    10889        else
    10990            Game::getInstance().requestStates("graphics, mainMenu");
     91
     92        game->run();
     93        delete game;
     94
     95        return 0;
    11096    }
    111     catch (const std::exception& ex)
    112     {
    113         COUT(0) << "Orxonox failed to initialise: " << ex.what() << std::endl;
    114         COUT(0) << "Terminating program." << std::endl;
    115         return 1;
    116     }
    117     catch (...)
    118     {
    119         COUT(0) << "Orxonox failed to initialise: " << std::endl;
    120         COUT(0) << "Terminating program." << std::endl;
    121         return 1;
    122     }
    123 
    124     game->run();
    125     delete game;
    126 
    127     return 0;
    12897}
  • code/trunk/src/orxonox/OrxonoxPrereqs.h

    r3370 r5693  
    3737#include "OrxonoxConfig.h"
    3838
     39#include "tools/ToolsPrereqs.h"
     40
    3941//-----------------------------------------------------------------------
    4042// Shared library settings
    4143//-----------------------------------------------------------------------
    42 #define ORXONOX_NO_EXPORTS // This is an executable that needs no exports
    43 #if defined(ORXONOX_PLATFORM_WINDOWS) && !(defined(ORXONOX_STATIC_BUILD) || defined(ORXONOX_NO_EXPORTS))
     44#if defined(ORXONOX_PLATFORM_WINDOWS) && !defined(ORXONOX_STATIC_BUILD)
    4445#  ifdef ORXONOX_SHARED_BUILD
    4546#    define _OrxonoxExport __declspec(dllexport)
     
    6364namespace orxonox
    6465{
    65     namespace LODParticle
    66     {
    67         enum Value
    68         {
    69             Off = 0,
    70             Low = 1,
    71             Normal = 2,
    72             High = 3
    73         };
    74     }
    75 
    76     class RadarViewable;
    77     class Radar;
    78     class RadarListener;
    79 
    80     class Teamcolourable;
    81 
     66    // manager
    8267    class CameraManager;
    8368    class LevelManager;
     
    8570    class PlayerManager;
    8671
     72    // interfaces
     73    class GametypeMessageListener;
     74    class NotificationListener;
     75    class PawnListener;
     76    class RadarListener;
     77    class RadarViewable;
     78    class Rewardable;
     79    class Teamcolourable;
     80
    8781    // objects
    8882    class Level;
     
    9084    class Tickable;
    9185
    92     class AddQuest;
    93     class AddQuestHint;
    94     class AddReward;
    95     class ChangeQuestStatus;
    96     class CompleteQuest;
    97     class FailQuest;
    98     class GlobalQuest;
    99     class LocalQuest;
    100     class Quest;
    101     class QuestDescription;
    102     class QuestEffect;
    103     class QuestEffectBeacon;
    104     class QuestHint;
    105     class QuestItem;
    106     class QuestListener;
    107     class QuestManager;
    108     class QuestNotification;
    109     class Rewardable;
    110 
     86    // worldentities
    11187    class WorldEntity;
    11288    class StaticEntity;
     
    11490    class ControllableEntity;
    11591    class MovableEntity;
    116     class Sublevel;
    117     class ForceField;
    118     class Attacher;
    119 
     92
     93    // graphics
    12094    class Model;
    12195    class Billboard;
     
    129103    class ParticleEmitter;
    130104    class ParticleSpawner;
    131 
     105    class Camera;
     106
     107    // mixed
    132108    class PongCenterpoint;
    133109    class PongBall;
    134110    class PongBat;
    135111
    136     class Camera;
    137     class CameraPosition;
     112    class EventListener;
     113    class EventDispatcher;
     114    class EventTarget;
     115
    138116    class SpawnPoint;
    139117    class TeamSpawnPoint;
     118
     119    class Attacher;
     120    class CameraPosition;
     121    class Sublevel;
     122    class ForceField;
     123    class Radar;
     124
    140125    class Test;
    141126
     127    // pawns
    142128    class Spectator;
    143129    class Pawn;
     
    146132    class Destroyer;
    147133
     134    // gametypes
     135    class Gametype;
     136    class Deathmatch;
     137    class TeamDeathmatch;
     138    class Asteroids;
     139    class TeamBaseMatch;
     140    class UnderAttack;
     141    class Pong;
     142
     143    // pickups
    148144    class BaseItem;
    149145    class DroppedItem;
     
    160156    class PassiveItem;
    161157
     158    // items
    162159    class Item;
    163160    class Engine;
     
    165162    class RotatingEngine;
    166163
     164    // trigger
    167165    class Trigger;
    168166    class DistanceTrigger;
     
    171169    class CheckPoint;
    172170
     171    // weaponsystem
    173172    class WeaponSystem;
    174173    class WeaponSet;
     
    178177    class WeaponMode;
    179178    class DefaultWeaponmodeLink;
    180     class MuzzleFlash;
    181 
    182     class LaserFire;
    183     class FusionFire;
    184     class HsW01;
    185     class LightningGun;
    186     class EnergyDrink;
    187 
    188     class ReplenishingMunition;
    189179    class Munition;
    190     class LaserMunition;
    191     class FusionMunition;
    192 
    193     class Projectile;
    194     class BillboardProjectile;
    195     class ParticleProjectile;
    196     class LightningGunProjectile;
    197 
    198     class EventListener;
    199     class EventDispatcher;
    200     class EventTarget;
    201 
     180
     181    // controller
    202182    class Controller;
    203183    class HumanController;
     
    209189    class PongAI;
    210190
     191    // infos
    211192    class Info;
    212193    class PlayerInfo;
     
    216197    class GametypeInfo;
    217198
    218     class Gametype;
    219     class Deathmatch;
    220     class TeamDeathmatch;
    221     class Asteroids;
    222     class TeamBaseMatch;
    223     class UnderAttack;
    224     class Pong;
    225 
    226     class Scores;
    227     class CreateLines;
    228     class Scoreboard;
    229     class Stats;
    230 
    231199    // collision
    232200    class CollisionShape;
     
    236204    class WorldEntityCollisionShape;
    237205
    238     // tools
    239     class BillboardSet;
    240     class Light;
    241     class Mesh;
    242     class ParticleInterface;
    243     class Shader;
    244     template <class T>
    245     class Timer;
    246 
    247206    // overlays
    248     class BarColour;
    249     class DebugFPSText;
    250     class DebugRTRText;
    251     class GUIOverlay;
    252     class HUDBar;
    253     class HUDNavigation;
    254     class HUDRadar;
    255     class HUDSpeedBar;
    256     class HUDHealthBar;
    257     class HUDTimer;
    258     class InGameConsole;
     207    class OverlayGroup;
     208    class OrxonoxOverlay;
    259209    class Notification;
    260210    class NotificationManager;
    261     class NotificationOverlay;
    262     class NotificationQueue;
    263     class OrxonoxOverlay;
    264     class OverlayGroup;
    265     class OverlayText;
    266     class FadeoutText;
    267     class GametypeStatus;
    268     class AnnounceMessage;
    269     class KillMessage;
    270     class DeathMessage;
    271     class CreateLines;
    272     class Scoreboard;
     211    class InGameConsole;
    273212    class Map;
    274213
     
    279218}
    280219
    281 namespace Ogre
    282 {
    283     // OGRE Wiki adapted code
    284     class DynamicLines;
    285     class DynamicRenderable;
    286 }
    287 
    288220// Bullet Physics Engine
    289221class btTransform;
  • code/trunk/src/orxonox/PawnManager.h

    r3370 r5693  
    3333
    3434#include "util/Singleton.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636
    3737namespace orxonox
  • code/trunk/src/orxonox/gamestates/CMakeLists.txt

    r2896 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1SET_SOURCE_FILES(GAMESTATES_SRC_FILES
    22  GSClient.cc
    33  GSDedicated.cc
     
    1010  GSStandalone.cc
    1111)
     12
     13ORXONOX_ADD_LIBRARY(gamestates
     14  MODULE
     15  DEFINE_SYMBOL
     16    "GAMESTATES_SHARED_BUILD"
     17  LINK_LIBRARIES
     18    orxonox
     19  SOURCE_FILES ${GAMESTATES_SRC_FILES}
     20)
  • code/trunk/src/orxonox/gamestates/GSClient.cc

    r3370 r5693  
    4040    DeclareGameState(GSClient, "client", false, true);
    4141
    42     SetCommandLineArgument(ip, "127.0.0.1").information("Sever IP as strin in the form #.#.#.#");
     42    SetCommandLineArgument(ip, "127.0.0.1").information("Sever IP as string in the form #.#.#.#");
    4343
    4444    GSClient::GSClient(const GameStateInfo& info)
  • code/trunk/src/orxonox/gamestates/GSClient.h

    r3370 r5693  
    3030#define _GSClient_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333
    3434#include "core/GameState.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport GSClient : public GameState
     39    class _GameStatesExport GSClient : public GameState
    4040    {
    4141    public:
  • code/trunk/src/orxonox/gamestates/GSDedicated.h

    r3370 r5693  
    3030#define _GSDedicated_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333
    3434#include "core/GameState.h"
     
    4444namespace orxonox
    4545{
    46    
    47     class _OrxonoxExport GSDedicated : public GameState
     46
     47    class _GameStatesExport GSDedicated : public GameState
    4848    {
    4949    public:
     
    6161        void setTerminalMode();
    6262        static void resetTerminalMode();
    63        
     63
    6464        void insertCharacter( unsigned int position, char c );
    6565        void deleteCharacter( unsigned int position );
    66        
     66
    6767        Server*                 server_;
    68        
     68
    6969        boost::thread           *inputThread_;
    7070        boost::recursive_mutex  inputLineMutex_;
     
    7676        std::queue<std::string> commandQueue_;
    7777        static termios*         originalTerminalSettings_;
    78        
     78
    7979        unsigned int            cursorX_;
    8080        unsigned int            cursorY_;
  • code/trunk/src/orxonox/gamestates/GSGraphics.cc

    r3370 r5693  
    4747#include "core/Loader.h"
    4848#include "core/XMLFile.h"
    49 #include "overlays/console/InGameConsole.h"
     49#include "InGameConsole.h"
    5050#include "sound/SoundManager.h"
    5151
    5252// HACK:
    53 #include "overlays/map/Map.h"
     53#include "Map.h"
    5454
    5555namespace orxonox
  • code/trunk/src/orxonox/gamestates/GSGraphics.h

    r3370 r5693  
    3636#define _GSGraphics_H__
    3737
    38 #include "OrxonoxPrereqs.h"
     38#include "gamestates/GameStatesPrereqs.h"
    3939#include "core/GameState.h"
    4040
     
    4747        This game state is only left out if we start a dedicated server where no graphics are present.
    4848    */
    49     class _OrxonoxExport GSGraphics : public GameState
     49    class _GameStatesExport GSGraphics : public GameState
    5050    {
    5151    public:
  • code/trunk/src/orxonox/gamestates/GSIOConsole.h

    r3370 r5693  
    3030#define _GSIOConsole_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333#include "core/GameState.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport GSIOConsole : public GameState
     37    class _GameStatesExport GSIOConsole : public GameState
    3838    {
    3939    public:
  • code/trunk/src/orxonox/gamestates/GSLevel.cc

    r3370 r5693  
    4545#include "core/XMLFile.h"
    4646
    47 #include "interfaces/Tickable.h"
     47#include "tools/interfaces/Tickable.h"
    4848#include "objects/Radar.h"
    49 #include "objects/quest/QuestManager.h"
    50 #include "overlays/notifications/NotificationManager.h"
    5149#include "CameraManager.h"
    5250#include "LevelManager.h"
     
    110108        this->playerManager_ = new PlayerManager();
    111109
    112         this->questManager_ = new QuestManager();
    113 
    114         this->notificationManager_ = new NotificationManager();
     110        this->scope_GSLevel_ = new Scope<ScopeID::GSLevel>();
    115111
    116112        if (GameMode::isMaster())
     
    201197        }
    202198
    203         if (this->questManager_)
    204         {
    205             delete this->questManager_;
    206             this->questManager_ = NULL;
    207         }
    208 
    209         if (this->notificationManager_)
    210         {
    211             delete this->notificationManager_;
    212             this->notificationManager_ = NULL;
     199        if (this->scope_GSLevel_)
     200        {
     201            delete this->scope_GSLevel_;
     202            this->scope_GSLevel_ = NULL;
    213203        }
    214204
  • code/trunk/src/orxonox/gamestates/GSLevel.h

    r3370 r5693  
    3030#define _GSLevel_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333
    3434#include <string>
     35#include "util/Scope.h"
    3536#include "core/OrxonoxClass.h"
    3637#include "core/GameState.h"
     
    3839namespace orxonox
    3940{
    40     class _OrxonoxExport GSLevel : public GameState, public OrxonoxClass
     41    class _GameStatesExport GSLevel : public GameState, public OrxonoxClass
    4142    {
    4243    public:
     
    6263        void keybindInternal(const std::string& command, bool bTemporary);
    6364
    64         KeyBinder*            keyBinder_;               //!< tool that loads and manages the input bindings
    65         InputState*           gameInputState_;          //!< input state for normal ingame playing
    66         InputState*           guiMouseOnlyInputState_;  //!< input state if we only need the mouse to use the GUI
    67         InputState*           guiKeysOnlyInputState_;   //!< input state if we only need the keys to use the GUI
    68         Radar*                radar_;                   //!< represents the Radar (not the HUD part)
    69         CameraManager*        cameraManager_;           //!< camera manager for this level
    70         PlayerManager*        playerManager_;           //!< player manager for this level
    71         QuestManager*         questManager_;
    72         NotificationManager*  notificationManager_;
     65        KeyBinder*               keyBinder_;               //!< tool that loads and manages the input bindings
     66        InputState*              gameInputState_;          //!< input state for normal ingame playing
     67        InputState*              guiMouseOnlyInputState_;  //!< input state if we only need the mouse to use the GUI
     68        InputState*              guiKeysOnlyInputState_;   //!< input state if we only need the keys to use the GUI
     69        Radar*                   radar_;                   //!< represents the Radar (not the HUD part)
     70        CameraManager*           cameraManager_;           //!< camera manager for this level
     71        PlayerManager*           playerManager_;           //!< player manager for this level
     72        Scope<ScopeID::GSLevel>* scope_GSLevel_;
    7373
    7474        //##### ConfigValues #####
  • code/trunk/src/orxonox/gamestates/GSMainMenu.h

    r3370 r5693  
    3030#define _GSMainMenu_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333
    3434#include "util/OgreForwardRefs.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport GSMainMenu : public GameState
     39    class _GameStatesExport GSMainMenu : public GameState
    4040    {
    4141    public:
  • code/trunk/src/orxonox/gamestates/GSRoot.cc

    r3370 r5693  
    3838#include "ToluaBindOrxonox.h"
    3939#include "tools/Timer.h"
    40 #include "interfaces/TimeFactorListener.h"
    41 #include "interfaces/Tickable.h"
     40#include "tools/interfaces/TimeFactorListener.h"
     41#include "tools/interfaces/Tickable.h"
    4242#include "LevelManager.h"
    4343
  • code/trunk/src/orxonox/gamestates/GSRoot.h

    r3370 r5693  
    3030#define _GSRoot_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333#include "core/GameState.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport GSRoot : public GameState
     37    class _GameStatesExport GSRoot : public GameState
    3838    {
    3939    public:
  • code/trunk/src/orxonox/gamestates/GSServer.h

    r3370 r5693  
    3030#define _GSServer_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333
    3434#include "core/GameState.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport GSServer : public GameState
     39    class _GameStatesExport GSServer : public GameState
    4040    {
    4141    public:
  • code/trunk/src/orxonox/gamestates/GSStandalone.h

    r3370 r5693  
    3030#define _GSStandalone_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "gamestates/GameStatesPrereqs.h"
    3333#include "core/GameState.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport GSStandalone : public GameState
     37    class _GameStatesExport GSStandalone : public GameState
    3838    {
    3939    public:
  • code/trunk/src/orxonox/interfaces/InterfaceCompilation.cc

    r3327 r5693  
    3030@file
    3131@brief
    32     Compiles all the interfaces (except RadarViewable) with mostly just a constructor.
     32    Compiles all the interfaces in the orxonox library with mostly just a constructor.
    3333*/
    3434
     
    3838#include "Rewardable.h"
    3939#include "TeamColourable.h"
    40 #include "Tickable.h"
    41 #include "TimeFactorListener.h"
     40#include "NotificationListener.h"
    4241
    4342#include "core/CoreIncludes.h"
     
    8180
    8281    //----------------------------
    83     // TimeFactorListener
    84     //----------------------------
    85     float TimeFactorListener::timefactor_s = 1.0f;
    86 
    87     TimeFactorListener::TimeFactorListener()
    88     {
    89         RegisterRootObject(TimeFactorListener);
    90     }
    91 
    92     //----------------------------
    93     // Tickable
    94     //----------------------------
    95     /**
    96         @brief Constructor: Registers the object in the Tickable-list
    97     */
    98     Tickable::Tickable()
    99     {
    100         RegisterRootObject(Tickable);
    101     }
    102 
    103     //----------------------------
    10482    // Rewardable
    10583    //----------------------------
     
    10886        RegisterObject(Rewardable);
    10987    }
     88
     89    //----------------------------
     90    // NotificationListener
     91    //----------------------------
     92    NotificationListener::NotificationListener()
     93    {
     94        RegisterObject(NotificationListener);
     95    }
    11096}
  • code/trunk/src/orxonox/interfaces/RadarViewable.cc

    r3300 r5693  
    3838#include "objects/worldentities/WorldEntity.h"
    3939#include "objects/Radar.h"
    40 #include "overlays/map/Map.h"
     40#include "Map.h"
    4141
    4242namespace orxonox
  • code/trunk/src/orxonox/objects/Radar.h

    r3196 r5693  
    4242#include "core/ObjectListIterator.h"
    4343#include "interfaces/RadarViewable.h"
    44 #include "interfaces/Tickable.h"
     44#include "tools/interfaces/Tickable.h"
    4545
    4646namespace orxonox
  • code/trunk/src/orxonox/objects/Scene.h

    r3196 r5693  
    4141#include "core/BaseObject.h"
    4242#include "network/synchronisable/Synchronisable.h"
    43 #include "interfaces/Tickable.h"
     43#include "tools/interfaces/Tickable.h"
    4444
    4545namespace orxonox
  • code/trunk/src/orxonox/objects/Test.h

    r3196 r5693  
    3333#include "core/BaseObject.h"
    3434#include "network/synchronisable/Synchronisable.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636
    3737
     
    5050      void setConfigValues();
    5151      void registerVariables();
    52      
     52
    5353      static void call(unsigned int clientID);
    5454      void call2(unsigned int clientID, std::string s1, std::string s2, std::string s3, std::string s4);
     
    6565      void checkU3();
    6666      void checkU4();
    67      
     67
    6868      //signed functions
    6969      void setS1(TYPE value){ s1 = value; }
     
    7575      void checkS3();
    7676      void checkS4();
    77      
     77
    7878      static void printV1(){ instance_->checkU1(); }
    7979      static void printV2(){ instance_->checkU2(); }
    8080      static void printV3(){ instance_->checkU3(); }
    8181      static void printV4(){ instance_->checkU4(); }
    82      
     82
    8383      void printBlaBla(std::string s1, std::string s2, std::string s3, std::string s4, std::string s5);
    8484
     
    8888      UTYPE u3;
    8989      UTYPE u4;
    90      
     90
    9191      TYPE s1;
    9292      TYPE s2;
    9393      TYPE s3;
    9494      TYPE s4;
    95      
     95
    9696      static Test* instance_;
    9797  };
  • code/trunk/src/orxonox/objects/controllers/AIController.h

    r3196 r5693  
    3333
    3434#include "tools/Timer.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "ArtificialController.h"
    3737
  • code/trunk/src/orxonox/objects/controllers/HumanController.cc

    r3325 r5693  
    3535#include "objects/gametypes/Gametype.h"
    3636#include "objects/infos/PlayerInfo.h"
    37 #include "overlays/map/Map.h"
     37#include "Map.h"
    3838
    3939namespace orxonox
  • code/trunk/src/orxonox/objects/controllers/PongAI.h

    r3196 r5693  
    3434#include <list>
    3535#include "util/Math.h"
    36 #include "interfaces/Tickable.h"
     36#include "tools/interfaces/Tickable.h"
    3737#include "Controller.h"
    3838
  • code/trunk/src/orxonox/objects/controllers/WaypointController.h

    r3196 r5693  
    3333
    3434#include <vector>
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "ArtificialController.h"
    3737
  • code/trunk/src/orxonox/objects/gametypes/Gametype.h

    r3280 r5693  
    3838#include "core/BaseObject.h"
    3939#include "core/Identifier.h"
    40 #include "interfaces/Tickable.h"
     40#include "tools/interfaces/Tickable.h"
    4141#include "objects/infos/GametypeInfo.h"
    4242
     
    133133
    134134            inline  void startTimer()
    135             { 
     135            {
    136136                this->time_ = this->timeLimit_;
    137137                this->timerIsActive_ = true;
  • code/trunk/src/orxonox/objects/items/Engine.h

    r3196 r5693  
    3232#include "OrxonoxPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "Item.h"
    3636
  • code/trunk/src/orxonox/objects/pickup/DroppedItem.h

    r3196 r5693  
    3838
    3939#include "tools/Timer.h"
    40 #include "interfaces/Tickable.h"
     40#include "tools/interfaces/Tickable.h"
    4141#include "objects/worldentities/StaticEntity.h"
    4242
  • code/trunk/src/orxonox/objects/pickup/PickupSpawner.h

    r3196 r5693  
    3939#include <string>
    4040#include "tools/Timer.h"
    41 #include "interfaces/Tickable.h"
     41#include "tools/interfaces/Tickable.h"
    4242#include "objects/worldentities/StaticEntity.h"
    4343
  • code/trunk/src/orxonox/objects/quest/AddQuest.h

    r3196 r5693  
    3535#define _AddQuest_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838#include "ChangeQuestStatus.h"
    3939
     
    4343    @brief
    4444        Adds a Quest, resp. changes the quests status to active for the player invoking the Quest.
    45        
     45
    4646        Creating a AddQuest through XML goes as follows:
    47        
     47
    4848        <AddQuest questId="id" />  //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the Quest that should be added.
    4949    @author
    5050        Damian 'Mozork' Frick
    5151    */
    52     class _OrxonoxExport AddQuest : public ChangeQuestStatus
     52    class _QuestExport AddQuest : public ChangeQuestStatus
    5353    {
    5454        public:
    5555        AddQuest(BaseObject* creator);
    5656        virtual ~AddQuest();
    57    
     57
    5858        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a AddQuest object through XML.
    59    
     59
    6060        virtual bool invoke(PlayerInfo* player); //!< Invokes the QuestEffect.
    6161
  • code/trunk/src/orxonox/objects/quest/AddQuestHint.h

    r3196 r5693  
    3535#define _AddQuestHint_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <string>
     
    4545    @brief
    4646        Adds a QuestHint, resp. activates the QuestHint of the given id for the player the QuestEffect is invoked on.
    47        
     47
    4848    Creating a AddQuestHint through XML goes as follows:
    49        
     49
    5050        <AddQuestHint hintId="id" />  //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the QuestHint that should be added.
    5151    @author
    5252        Damian 'Mozork' Frick
    5353    */
    54     class _OrxonoxExport AddQuestHint : public QuestEffect
     54    class _QuestExport AddQuestHint : public QuestEffect
    5555    {
    5656        public:
     
    7171            inline const std::string & getHintId(void) const
    7272                { return this->hintId_; }
    73            
     73
    7474            bool setHintId(const std::string & id); //!< Sets the id of the QuestHint.
    7575
  • code/trunk/src/orxonox/objects/quest/AddReward.h

    r3196 r5693  
    3535#define _AddReward_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <list>
     
    4545    @brief
    4646        Adds a list of Rewardables to a player.
    47        
     47
    4848        Creating a AddReward through XML goes as follows:
    49        
     49
    5050        <AddReward>
    5151            <Rewardable /> //A list of Rewardable objects to be rewarded the player, see the specific Rewardables for their respective XML representations.
     
    5656        Damian 'Mozork' Frick
    5757    */
    58     class _OrxonoxExport AddReward : public QuestEffect
     58    class _QuestExport AddReward : public QuestEffect
    5959    {
    6060        public:
     
    7575            inline void addRewardable(Rewardable* reward)
    7676                { this->rewards_.push_back(reward); }
    77        
     77
    7878            const Rewardable* getRewardables(unsigned int index) const; //!< Returns the Rewardable object at the given index.
    7979
  • code/trunk/src/orxonox/objects/quest/CMakeLists.txt

    r3196 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1SET_SOURCE_FILES(QUEST_SRC_FILES
    22  AddQuest.cc
    33  AddQuestHint.cc
     
    1818  QuestNotification.cc
    1919)
     20
     21ADD_SUBDIRECTORY(notifications)
     22
     23# add the parent directory for tolua (TODO: remove this if the quest module is moved somewhere else)
     24INCLUDE_DIRECTORIES(..)
     25
     26ORXONOX_ADD_LIBRARY(quest
     27  MODULE
     28  TOLUA_FILES
     29    QuestDescription.h
     30    QuestManager.h
     31  DEFINE_SYMBOL
     32    "QUEST_SHARED_BUILD"
     33  LINK_LIBRARIES
     34    orxonox
     35    overlays
     36  SOURCE_FILES ${QUEST_SRC_FILES}
     37)
  • code/trunk/src/orxonox/objects/quest/ChangeQuestStatus.h

    r3196 r5693  
    3535#define _ChangeQuestStatus_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <string>
     
    4848        Damian 'Mozork' Frick
    4949    */
    50     class _OrxonoxExport ChangeQuestStatus : public QuestEffect
     50    class _QuestExport ChangeQuestStatus : public QuestEffect
    5151    {
    5252        public:
     
    6868        private:
    6969            std::string questId_; //!< The id of the Quest the status should be changed of.
    70            
     70
    7171            bool setQuestId(const std::string & id); //!< Sets the id of the Quest.
    7272
  • code/trunk/src/orxonox/objects/quest/CompleteQuest.h

    r3196 r5693  
    3535#define _CompleteQuest_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838#include "ChangeQuestStatus.h"
    3939
     
    4343    @brief
    4444        Completes a Quest (with a specified id) for the player invoking the QuestEffect.
    45        
     45
    4646        Creating a CompleteQuest through XML goes as follows:
    47        
     47
    4848        <CompleteQuest questId="id" />  //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the Quest that should be completed.
    4949    @author
    5050        Damian 'Mozork' Frick
    5151    */
    52     class _OrxonoxExport CompleteQuest : public ChangeQuestStatus
     52    class _QuestExport CompleteQuest : public ChangeQuestStatus
    5353    {
    5454        public:
  • code/trunk/src/orxonox/objects/quest/FailQuest.h

    r3196 r5693  
    3535#define _FailQuest_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838#include "ChangeQuestStatus.h"
    3939
     
    4343    @brief
    4444        Fails a quest (with a specified id) for the player invoking the QuestEffect.
    45        
     45
    4646        Creating a FailQuest through XML goes as follows:
    47        
     47
    4848        <FailQuest questId="id" />  //Where id is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information, and identifies the Quest that should be failed.
    4949    @author
    5050        Damian 'Mozork' Frick
    5151    */
    52     class _OrxonoxExport FailQuest : public ChangeQuestStatus
     52    class _QuestExport FailQuest : public ChangeQuestStatus
    5353    {
    5454        public:
  • code/trunk/src/orxonox/objects/quest/GlobalQuest.h

    r3280 r5693  
    2626 *
    2727 */
    28  
     28
    2929/**
    3030    @file
     
    3535#define _GlobalQuest_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <list>
     
    4747        GlobalQuests are Quests, that have the same status for all players.
    4848        This means, that when a player successfully completes a GlobalQuest, it is completed for all players that have it.
    49        
     49
    5050        Creating a GlobalQuest through XML goes as follows:
    51        
     51
    5252        <GlobalQuest id="questId"> //Where questId is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information
    5353            <QuestDescription title="Title" description="Description." /> //The description of the quest.
     
    8181        Damian 'Mozork' Frick
    8282    */
    83     class _OrxonoxExport GlobalQuest : public Quest
     83    class _QuestExport GlobalQuest : public Quest
    8484    {
    8585        public:
     
    8888
    8989            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a GlobalQuest object through XML.
    90            
     90
    9191            virtual bool fail(PlayerInfo* player); //!< Fails the Quest.
    9292            virtual bool complete(PlayerInfo* player); //!< Completes the Quest.
     
    9898
    9999            virtual QuestStatus::Value getStatus(const PlayerInfo* player) const; //!< Returns the status of the Quest for a specific player.
    100            
     100
    101101            virtual bool setStatus(PlayerInfo* player, const QuestStatus::Value & status); //!< Sets the status for a specific player.
    102102
     
    105105            QuestStatus::Value status_; //!< The status of this Quest.
    106106            std::list<QuestEffect*> rewards_; //!< Reward QuestEffects only invoked on the player completing the Quest.
    107            
     107
    108108            bool addRewardEffect(QuestEffect* effect); //!< Adds a reward QuestEffect to the list of reward QuestEffects.
    109109            const QuestEffect* getRewardEffects(unsigned int index) const; //!< Returns the reward QuestEffect at the given index.
  • code/trunk/src/orxonox/objects/quest/LocalQuest.h

    r3280 r5693  
    2626 *
    2727 */
    28  
     28
    2929/**
    3030    @file
     
    3535#define _LocalQuest_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <map>
     
    4646        Handles Quests which have different states for different players.
    4747        LocalQuests have (as opposed to GlobalQuests) a different state for each player, that means if for one player the status of the Quest changes it does not for all the other players which also possess this quest.
    48        
     48
    4949        Creating a LocalQuest through XML goes as follows:
    50        
     50
    5151        <LocalQuest id="questId"> //Where questId is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information
    5252            <QuestDescription title="Title" description="Description." /> //The description of the quest.
     
    7575        Damian 'Mozork' Frick
    7676    */
    77     class _OrxonoxExport LocalQuest : public Quest
     77    class _QuestExport LocalQuest : public Quest
    7878    {
    7979        public:
     
    8282
    8383            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a LocalQuest object through XML.
    84            
     84
    8585            virtual bool fail(PlayerInfo* player); //!< Fails the Quest.
    8686            virtual bool complete(PlayerInfo* player); //!< Completes the Quest.
  • code/trunk/src/orxonox/objects/quest/Quest.h

    r3280 r5693  
    2626 *
    2727 */
    28  
     28
    2929/**
    3030    @file
     
    3232        The Quest is the parent class of LocalQuest and GlobalQuest.
    3333*/
    34  
     34
    3535#ifndef _Quest_H__
    3636#define _Quest_H__
    3737
    38 #include "OrxonoxPrereqs.h"
     38#include "objects/quest/QuestPrereqs.h"
    3939
    4040#include <list>
     
    6262        A Quest has several hints (QuestHint) that can be unlocked through QuestEffects and then display aid in solving the Quest.
    6363        A Quest has a list of QuestEffects that are invoked when the quest is failed and also a list of QuestEffects that are invoked, when the Quest is completed.
    64        
     64
    6565        Quest itself should not be instantiated, if you want to create a quest either go for LocalQuest or GlobalQuest, whichever suits you needs better.
    6666    @author
    6767        Damian 'Mozork' Frick
    6868    */
    69     class _OrxonoxExport Quest : public QuestItem
     69    class _QuestExport Quest : public QuestItem
    7070    {
    7171        public:
     
    8181            inline Quest* getParentQuest(void) const
    8282                { return this->parentQuest_; }
    83                
     83
    8484            /**
    8585            @brief Returns the list of subquests.
     
    9595            inline const std::list<QuestHint*> & getHintsList(void) const
    9696                { return this->hints_; }
    97        
     97
    9898            bool isInactive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'inactive'.
    9999            bool isActive(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'active'.
    100100            bool isFailed(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'failed'.
    101101            bool isCompleted(const PlayerInfo* player) const; //!< Returns true if the quest status for the specific player is 'completed'.
    102        
     102
    103103            bool start(PlayerInfo* player); //!< Sets a Quest to active.
    104104            virtual bool fail(PlayerInfo* player); //!< Fails the Quest.
    105105            virtual bool complete(PlayerInfo* player); //!< Completes the Quest.
    106        
     106
    107107            bool addListener(QuestListener* listener); //!< Adds a QuestListener to the list of QuestListeners listening to this Quest.
    108108
     
    116116            const QuestEffect* getFailEffect(unsigned int index) const; //!< Returns the fail QuestEffect at the given index.
    117117            const QuestEffect* getCompleteEffect(unsigned int index) const; //!< Returns the complete QuestEffect at the given index.
    118            
     118
    119119            /**
    120120            @brief Returns the list of fail QuestEffects.
     
    123123            inline std::list<QuestEffect*> & getFailEffectList(void)
    124124                { return this->failEffects_; }
    125                
     125
    126126            /**
    127127            @brief Returns the list of complete QuestEffects.
     
    133133            virtual QuestStatus::Value getStatus(const PlayerInfo* player) const = 0; //!< Returns the status of the Quest for a specific player.
    134134            virtual bool setStatus(PlayerInfo* player, const QuestStatus::Value & status) = 0; //!< Changes the status for a specific player.
    135            
     135
    136136        private:
    137137            Quest* parentQuest_; //!< Pointer to the parentquest.
     
    142142            std::list<QuestEffect*> failEffects_; //!< A list of all QuestEffects to be invoked, when the Quest has been failed.
    143143            std::list<QuestEffect*> completeEffects_; //!< A list of QuestEffects to be invoked, when the Quest has been completed.
    144            
     144
    145145            std::list<QuestListener*> listeners_; //!< A list of QuestListeners, that listen to what exactly happens with this Quest.
    146            
     146
    147147            bool setParentQuest(Quest* quest); //!< Sets the parentquest of the Quest.
    148148            bool addSubQuest(Quest* quest); //!< Adds a subquest to the Quest.
  • code/trunk/src/orxonox/objects/quest/QuestDescription.h

    r3370 r5693  
    3535#define _QuestDescription_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <string>
     
    4747        This class is a description of a QuestItem.
    4848        It holds a title and a description.
    49        
     49
    5050        Creating a QuestDescription through XML goes as follows:
    51        
     51
    5252        <QuestDescription title="Title" description="Description Text" failMessage="You fail." completeMessage="You win!" />
    5353    @author
    5454        Damian 'Mozork' Frick
    5555    */
    56     class _OrxonoxExport QuestDescription : public BaseObject
     56    class _QuestExport QuestDescription : public BaseObject
    5757    {
    5858// tolua_end
     
    7070            inline const std::string & getTitle(void) const
    7171                { return this->title_; }
    72        
     72
    7373            /**
    7474            @brief Returns the description text.
     
    7878                { return this->description_; }
    7979// tolua_end
    80        
     80
    8181            /**
    8282            @brief Returns the fail message.
     
    8585            inline const std::string & getFailMessage(void) const
    8686                { return this->failMessage_; }
    87        
     87
    8888            /**
    8989            @brief Returns the complete message.
     
    9292            inline const std::string & getCompleteMessage(void) const
    9393                { return this->completeMessage_; }
    94        
     94
    9595            /**
    9696            @brief Sends a Notification displaying that a QuestHint was added.
     
    9999            inline bool sendAddHintNotification(void) const
    100100                { return notificationHelper("hint", ""); }
    101        
     101
    102102            /**
    103103            @brief Sends a Notification displaying that a Quest was added.
     
    106106            inline bool sendAddQuestNotification(void) const
    107107                { return notificationHelper("quest", "start"); }
    108        
     108
    109109            /**
    110110            @brief Sends a Notification displaying that a Quest was failed.
     
    113113            inline bool sendFailQuestNotification(void) const
    114114                { return notificationHelper("quest", "fail"); }
    115        
     115
    116116            /**
    117117            @brief Sends a Notification displaying that a Quest was completed.
     
    135135            inline void setTitle(const std::string & title)
    136136                { this->title_ = title; }
    137                
     137
    138138            /**
    139139            @brief Sets the description text.
     
    149149            inline void setFailMessage(const std::string & message)
    150150                { this->failMessage_ = message; }
    151                
     151
    152152            /**
    153153            @brief Sets the complete message.
  • code/trunk/src/orxonox/objects/quest/QuestEffect.h

    r3196 r5693  
    2626 *
    2727 */
    28  
     28
    2929/**
    3030    @file
     
    3535#define _QuestEffect_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <list>
     
    4949        Damian 'Mozork' Frick
    5050    */
    51     class _OrxonoxExport QuestEffect : public BaseObject
     51    class _QuestExport QuestEffect : public BaseObject
    5252    {
    5353        public:
  • code/trunk/src/orxonox/objects/quest/QuestEffectBeacon.h

    r3280 r5693  
    3535#define _QuestEffectBeacon_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <list>
     
    5858        A QuestEffectBeacon can be executed a defined number of times.
    5959        A QuestEffectBeacon can be inactive or active.
    60        
     60
    6161        Creating a QuestEffectBeacon through XML goes as follows:
    62        
     62
    6363        <QuestEffectBeacon times=n> //Where 'n' is eighter a number >= 0, which means the QuestEffectBeacon can be executed n times. Or n = -1, which means the QuestEffectBeacon can be executed an infinite number of times.
    6464            <effects>
     
    7979        Damian 'Mozork' Frick
    8080    */
    81     class _OrxonoxExport QuestEffectBeacon : public StaticEntity
     81    class _QuestExport QuestEffectBeacon : public StaticEntity
    8282    {
    8383        public:
    8484            QuestEffectBeacon(BaseObject* creator);
    8585            virtual ~QuestEffectBeacon();
    86            
     86
    8787            virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestEffectBeacon object through XML.
    88            
     88
    8989            virtual void processEvent(Event& event); //!< Processes an event for this QuestEffectBeacon.
    90            
     90
    9191            bool execute(bool b, PlayerTrigger* trigger); //!< Executes the QuestEffects of the QuestEffectBeacon.
    92            
     92
    9393            /**
    9494            @brief Tests whether the QuestEffectBeacon is active.
     
    9797            inline bool isActive(void)
    9898            { return this->status_ == QuestEffectBeaconStatus::Active; }
    99            
     99
    100100            bool setActive(bool activate); //!< Set the status of the QuestEffectBeacon.
    101            
     101
    102102        protected:
    103103            bool decrementTimes(void); //!< Decrement the number of times the QuestEffectBeacon can still be executed.
    104            
     104
    105105            /**
    106106            @brief Returns the number of times the QUestEffectBeacon can still be executed.
     
    109109            inline const int & getTimes(void) const
    110110                { return this->times_; }
    111    
     111
    112112        private:
    113113            static const int INFINITE_TIME = -1; //!< Constant to avoid using magic numbers.
    114            
     114
    115115            std::list<QuestEffect*> effects_; //!< The list of QuestEffects to be invoked on the executing player.
    116116            int times_; //!< Number of times the beacon can be exectued.
    117117            QuestEffectBeaconStatus::Value status_; //!< The status of the QUestEffectBeacon, Can be eighter active or inactive.
    118            
     118
    119119            bool setTimes(const int & n); //!< Set the number of times the QuestEffectBeacon can be executed.
    120120            bool addEffect(QuestEffect* effect); //!< Add a QuestEffect to the QuestEffectBeacon.
    121            
     121
    122122            const QuestEffect* getEffect(unsigned int index) const; //!< Get the QuestEffect at a given index.
    123    
     123
    124124    };
    125125
  • code/trunk/src/orxonox/objects/quest/QuestHint.h

    r3280 r5693  
    2626 *
    2727 */
    28  
     28
    2929/**
    3030    @file
     
    3535#define _QuestHint_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <map>
     
    5757        Consists of title and description (which is stored in a QuestDescription object) in textual form and must belong to a quest.
    5858        A QuestHint has a defined status (inactive or active, where inactive is default) for each player, which means each a QuestHint exists only once for all players, it doesn't belong to a player, it just has different states for each of them.
    59        
     59
    6060        Creating a QuestHint through XML goes as follows:
    61        
     61
    6262        <QuestHint id="hintId">  //Where hintId is a GUID, see http://en.wikipedia.org/wiki/Globally_Unique_Identifier#Basic_structure for more information
    6363            <QuestDesctription title="" description="" />
     
    6666        Damian 'Mozork' Frick
    6767    */
    68     class _OrxonoxExport QuestHint : public QuestItem
     68    class _QuestExport QuestHint : public QuestItem
    6969    {
    7070
  • code/trunk/src/orxonox/objects/quest/QuestItem.h

    r3196 r5693  
    2626 *
    2727 */
    28  
     28
    2929/**
    3030    @file
     
    3737#define _QuestItem_H__
    3838
    39 #include "OrxonoxPrereqs.h"
     39#include "objects/quest/QuestPrereqs.h"
    4040
    4141#include <string>
     
    5151        Damian 'Mozork' Frick
    5252    */
    53     class _OrxonoxExport QuestItem : public BaseObject
     53    class _QuestExport QuestItem : public BaseObject
    5454    {
    5555
     
    6666            inline const std::string & getId(void) const
    6767                { return this->id_; }
    68            
     68
    6969            /**
    7070            @brief Returns the QuestDescription of the QuestItem.
     
    7878        protected:
    7979            void setId(const std::string & id); //!< Sets the id of the QuestItem.
    80            
     80
    8181            /**
    8282            @brief Sets the description of the QuestItem.
  • code/trunk/src/orxonox/objects/quest/QuestListener.h

    r3280 r5693  
    3535#define _QuestListener_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <string>
     
    5858    @brief
    5959        Provides a way to react to the starting, completing and failing of Quests.
    60        
     60
    6161        The XML representation goes as follows:
    6262        You can use the QuestListener as if it were a Trigger or EventListener, that fires an Event when the status (depending on the set mode) of the given Quest changes.
    63        
     63
    6464        <BaseObject> // The object that should react to the status change of a Quest.
    6565            <events>
    66                 <function> // Where function is the method of the object that schould be executed. Normally this would be visibility or activity.
     66                <function> // Where function is the method of the object that should be executed. Normally this would be visibility or activity.
    6767                    <QuestListener questId="someQuestId" mode="someMode" /> // Where someQuestId is the identifier for the Quest the QuestListener is reacting to, and someMode is the kind of status change the QUestListener reacts to (all, start, complete or fail).
    6868                </function>
     
    7272    Damian 'Mozork' Frick
    7373    */
    74     class _OrxonoxExport QuestListener : public BaseObject
     74    class _QuestExport QuestListener : public BaseObject
    7575    {
    7676    public:
    7777        QuestListener(BaseObject* creator);
    7878        virtual ~QuestListener();
    79        
     79
    8080        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a QuestListener object through XML.
    81        
     81
    8282        static void advertiseStatusChange(std::list<QuestListener*> & listeners, const std::string & status); //!< Makes all QuestListener in the list aware that a certain status change has occured.
    83        
     83
    8484        bool setQuestId(const std::string & id); //!< Sets the questId of the Quest the QuestListener reacts to.
    8585        bool setMode(const std::string & mode); //!< Sets the mode of the QuestListener.
    86        
     86
    8787        std::string getMode(void); //!< Get the mode of the QuestListener.
    88        
    89         const std::string & getQuestId(void);       
     88
     89        const std::string & getQuestId(void);
    9090        bool execute(void); //!< Executes the QuestListener, resp. fires an Event.
    91        
     91
    9292    private:
    9393        QuestListenerMode::Value mode_; //!< The mode of the QuestListener.
    9494        Quest* quest_; //!< A pointer to the Quest the QuestListener is reacting to.
    95    
     95
    9696    };
    9797
  • code/trunk/src/orxonox/objects/quest/QuestManager.cc

    r3370 r5693  
    3636#include "util/Exception.h"
    3737#include "core/CoreIncludes.h"
     38#include "core/GUIManager.h"
    3839
    3940#include "objects/infos/PlayerInfo.h"
    40 #include "objects/infos/PlayerInfo.h"
    41 #include "overlays/GUIOverlay.h"
    4241#include "Quest.h"
    4342#include "QuestHint.h"
     
    6665    QuestManager::~QuestManager()
    6766    {
    68 
    6967    }
    7068
     
    203201    /**
    204202    @brief
    205        
     203
    206204    @param name
    207205    @return
     
    209207    QuestContainer* QuestManager::getQuestTree(std::string & name)
    210208    {
    211         GUIOverlay* gui = NULL;
    212         for (ObjectList<GUIOverlay>::iterator it = ObjectList<GUIOverlay>::begin(); it != ObjectList<GUIOverlay>::end(); ++it)
    213             if (it->getGUIName() == name)
    214                 gui = *it;
    215 
    216         PlayerInfo* player;
    217         if(gui == NULL)
    218         {
    219             COUT(1) << "Error: No GUIOverlay with the given name '" << name << "' present." << std::endl;
     209        PlayerInfo* player = GUIManager::getInstance().getPlayer(name);
     210        if(player == NULL)
     211        {
     212            COUT(1) << "Error: GUIOverlay with name '" << name << "' has no player." << std::endl;
    220213            return NULL;
    221214        }
    222         BaseObject* obj = gui->getOwner();
    223         if(obj == NULL)
    224         {
    225             COUT(1) << "Error: GUIOverlay has no owner. " << std::endl;
    226             return NULL;
    227         }
    228         player = orxonox_cast<PlayerInfo*>(obj);
    229    
     215
    230216        QuestContainer* root = NULL;
    231217        QuestContainer* current = NULL;
    232        
     218
    233219        std::list<Quest*>* rootQuests = new std::list<Quest*>();
    234220        getRootQuests(player, *rootQuests);
    235        
     221
    236222        for(std::list<Quest*>::iterator it = rootQuests->begin(); it != rootQuests->end(); it++)
    237223        {
     
    246232                current->next = container;
    247233            }
    248            
     234
    249235            current = container;
    250236
     
    260246    /**
    261247    @brief
    262        
     248
    263249    @param player
    264250    @param list
     
    279265    /**
    280266    @brief
    281        
     267
    282268    @param quest
    283269    @param player
     
    310296            COUT(1) << "An error occurred. A Quest of un-specified status wanted to be displayed." << std::endl;
    311297        }
    312        
     298
    313299        std::list<Quest*> quests = quest->getSubQuestList();
    314300        QuestContainer* current = NULL;
     
    329315                    current->next = subContainer;
    330316                }
    331                
     317
    332318                current = subContainer;
    333319            }
     
    336322            current->next = NULL;
    337323        container->subQuests = first;
    338        
     324
    339325        return container;
    340326    }
     
    342328    /**
    343329    @brief
    344        
     330
    345331    @param quest
    346332    @param player
     
    368354                    current->next = hint;
    369355                }
    370                
     356
    371357                current = hint;
    372358            }
  • code/trunk/src/orxonox/objects/quest/QuestManager.h

    r3370 r5693  
    3535#define _QuestManager_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "objects/quest/QuestPrereqs.h"
    3838
    3939#include <list>
     
    4141#include <string>
    4242
    43 #include "util/Singleton.h"
     43#include "util/ScopedSingleton.h"
    4444#include "core/OrxonoxClass.h"
    4545
     
    6666    };
    6767
     68    typedef ScopedSingleton<QuestManager, ScopeID::GSLevel> ScopedSingletonQuestManagerGSLevel; // workaround for tolua
     69
    6870    /**
    6971    @brief
     
    7375        Damian 'Mozork' Frick
    7476    */
    75     class _OrxonoxExport QuestManager : public Singleton<QuestManager>, public orxonox::OrxonoxClass
     77    class _QuestExport QuestManager : public ScopedSingletonQuestManagerGSLevel, public orxonox::OrxonoxClass
    7678    {
    7779// tolua_end
    78             friend class Singleton<QuestManager>;
     80            friend class ScopedSingleton<QuestManager, ScopeID::GSLevel>;
    7981        public:
    8082            QuestManager();
     
    8284
    8385            //! Returns a reference to the single instance of the Quest Manager.
    84             static QuestManager& getInstance() { return Singleton<QuestManager>::getInstance(); } // tolua_export
     86            static QuestManager& getInstance() { return ScopedSingleton<QuestManager, ScopeID::GSLevel>::getInstance(); } // tolua_export
    8587
    8688            bool registerQuest(Quest* quest); //!< Registers a Quest in the QuestManager.
  • code/trunk/src/orxonox/objects/quest/QuestNotification.h

    r3196 r5693  
    2626 *
    2727 */
    28  
     28
    2929#ifndef _QuestNotification_H__
    3030#define _QuestNotification_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/quest/QuestPrereqs.h"
    3333
    3434#include <string>
    35 #include "overlays/notifications/Notification.h"
     35#include "notifications/Notification.h"
    3636
    3737namespace orxonox {
     
    3939    /**
    4040    @brief
    41        
     41
    4242    @author
    4343        Damian 'Mozork' Frick
    4444    */
    45     class _OrxonoxExport QuestNotification : public Notification
     45    class _QuestExport QuestNotification : public Notification
    4646    {
    4747        public:
     
    4949            QuestNotification(const std::string & message);
    5050            virtual ~QuestNotification();
    51            
     51
    5252            bool send(void);
    53      
     53
    5454        private:
    5555            static const std::string SENDER;
    56            
     56
    5757            void initialize(void);
    58  
     58
    5959    };
    6060
  • code/trunk/src/orxonox/objects/weaponsystem/CMakeLists.txt

    r3053 r5693  
    88  WeaponSystem.cc
    99  DefaultWeaponmodeLink.cc
     10)
     11
     12SET_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
    1013  MuzzleFlash.cc
    1114)
     
    1417ADD_SUBDIRECTORY(projectiles)
    1518ADD_SUBDIRECTORY(weaponmodes)
     19
     20ORXONOX_ADD_LIBRARY(weaponsystem
     21  MODULE
     22  DEFINE_SYMBOL
     23    "WEAPONSYSTEM_SHARED_BUILD"
     24  LINK_LIBRARIES
     25    orxonox
     26  SOURCE_FILES ${WEAPONSYSTEM_SRC_FILES}
     27)
  • code/trunk/src/orxonox/objects/weaponsystem/MuzzleFlash.h

    r3196 r5693  
    3030#define _MuzzleFlash_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include "tools/Timer.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport MuzzleFlash : public Billboard
     39    class _WeaponsystemExport MuzzleFlash : public Billboard
    4040    {
    4141        public:
  • code/trunk/src/orxonox/objects/weaponsystem/munitions/CMakeLists.txt

    r3053 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
    22  ReplenishingMunition.cc
    33  LaserMunition.cc
  • code/trunk/src/orxonox/objects/weaponsystem/munitions/FusionMunition.h

    r3053 r5693  
    3030#define _FusionMunition_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333#include "objects/weaponsystem/Munition.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport FusionMunition : public Munition
     37    class _WeaponsystemExport FusionMunition : public Munition
    3838    {
    3939        public:
  • code/trunk/src/orxonox/objects/weaponsystem/munitions/LaserMunition.h

    r3053 r5693  
    3030#define _LaserMunition_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333#include "ReplenishingMunition.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport LaserMunition : public ReplenishingMunition
     37    class _WeaponsystemExport LaserMunition : public ReplenishingMunition
    3838    {
    3939        public:
  • code/trunk/src/orxonox/objects/weaponsystem/munitions/ReplenishingMunition.h

    r3196 r5693  
    3030#define _ReplenishingMunition_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include "tools/Timer.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport ReplenishingMunition : public Munition
     39    class _WeaponsystemExport ReplenishingMunition : public Munition
    4040    {
    4141        public:
  • code/trunk/src/orxonox/objects/weaponsystem/projectiles/BillboardProjectile.h

    r3196 r5693  
    3030#define _BillboardProjectile_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include "util/Math.h"
     
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport BillboardProjectile : public Projectile
     40    class _WeaponsystemExport BillboardProjectile : public Projectile
    4141    {
    4242        public:
  • code/trunk/src/orxonox/objects/weaponsystem/projectiles/CMakeLists.txt

    r3053 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
    22  BillboardProjectile.cc
    33  ParticleProjectile.cc
  • code/trunk/src/orxonox/objects/weaponsystem/projectiles/LightningGunProjectile.h

    r3196 r5693  
    3030#define _LightningGunProjectile_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include <string>
     
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport LightningGunProjectile : public BillboardProjectile
     40    class _WeaponsystemExport LightningGunProjectile : public BillboardProjectile
    4141    {
    4242        public:
    4343            LightningGunProjectile(BaseObject* creator);
    4444            virtual ~LightningGunProjectile() {}
    45            
     45
    4646            virtual void setMaterial(const std::string& material);
    4747
    4848        protected:
    49             void changeTexture();       
     49            void changeTexture();
    5050            unsigned int textureIndex_;
    5151            unsigned int maxTextureIndex_;
  • code/trunk/src/orxonox/objects/weaponsystem/projectiles/ParticleProjectile.h

    r3196 r5693  
    3030#define _ParticleProjectile_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333#include "BillboardProjectile.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport ParticleProjectile : public BillboardProjectile
     37    class _WeaponsystemExport ParticleProjectile : public BillboardProjectile
    3838    {
    3939        public:
  • code/trunk/src/orxonox/objects/weaponsystem/projectiles/Projectile.h

    r3196 r5693  
    3030#define _Projectile_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include "tools/Timer.h"
     
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport Projectile : public MovableEntity, public PawnListener
     40    class _WeaponsystemExport Projectile : public MovableEntity, public PawnListener
    4141    {
    4242        public:
  • code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/CMakeLists.txt

    r3053 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(WEAPONSYSTEM_SRC_FILES
    22  EnergyDrink.cc
    33  FusionFire.cc
  • code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/EnergyDrink.h

    r3196 r5693  
    3030#define _EnergyDrink_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include <string>
     
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport EnergyDrink : public WeaponMode
     40    class _WeaponsystemExport EnergyDrink : public WeaponMode
    4141    {
    4242        public:
  • code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/FusionFire.h

    r3053 r5693  
    3030#define _FusionFire_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333#include "objects/weaponsystem/WeaponMode.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport FusionFire : public WeaponMode
     37    class _WeaponsystemExport FusionFire : public WeaponMode
    3838    {
    3939        public:
  • code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/HsW01.h

    r3196 r5693  
    3030#define _HsW01_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333
    3434#include "tools/Timer.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport HsW01 : public WeaponMode
     39    class _WeaponsystemExport HsW01 : public WeaponMode
    4040    {
    4141        public:
  • code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/LaserFire.h

    r3053 r5693  
    3030#define _LaserFire_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333#include "objects/weaponsystem/WeaponMode.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport LaserFire : public WeaponMode
     37    class _WeaponsystemExport LaserFire : public WeaponMode
    3838    {
    3939        public:
  • code/trunk/src/orxonox/objects/weaponsystem/weaponmodes/LightningGun.h

    r3053 r5693  
    3030#define _LightningGun_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "objects/weaponsystem/WeaponsystemPrereqs.h"
    3333#include "objects/weaponsystem/WeaponMode.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport LightningGun : public WeaponMode
     37    class _WeaponsystemExport LightningGun : public WeaponMode
    3838    {
    3939        public:
  • code/trunk/src/orxonox/objects/worldentities/Backlight.h

    r3196 r5693  
    3333
    3434#include <string>
    35 #include "interfaces/TimeFactorListener.h"
     35#include "tools/interfaces/TimeFactorListener.h"
    3636#include "FadingBillboard.h"
    3737
  • code/trunk/src/orxonox/objects/worldentities/BlinkingBillboard.h

    r3196 r5693  
    3333
    3434#include "util/Math.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "Billboard.h"
    3737
  • code/trunk/src/orxonox/objects/worldentities/Camera.h

    r3196 r5693  
    3333
    3434#include "util/OgreForwardRefs.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "objects/worldentities/StaticEntity.h"
    3737
  • code/trunk/src/orxonox/objects/worldentities/FadingBillboard.h

    r3196 r5693  
    3434#include "util/Math.h"
    3535#include "tools/Timer.h"
    36 #include "interfaces/Tickable.h"
     36#include "tools/interfaces/Tickable.h"
    3737#include "Billboard.h"
    3838
  • code/trunk/src/orxonox/objects/worldentities/ForceField.h

    r3196 r5693  
    3333#include "OrxonoxPrereqs.h"
    3434
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "StaticEntity.h"
    3737
     
    4343        ForceField(BaseObject* creator);
    4444        virtual ~ForceField();
    45         virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a CheckPoint object through XML.
     45        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
    4646        virtual void tick(float dt);
    4747
    4848        inline void setVelocity(float vel)
    4949            { this->velocity_ = vel; }
    50    
     50
    5151        inline float getVelocity()
    5252            { return velocity_; }
    53    
     53
    5454        inline void setDiameter(float diam)
    5555            { this->diameter_ = diam; }
     
    5757        inline float getDiameter()
    5858            { return diameter_; }
    59  
     59
    6060        inline void setLength(float l)
    6161            { this->length_ = l; }
  • code/trunk/src/orxonox/objects/worldentities/MobileEntity.h

    r3196 r5693  
    3333
    3434#include "util/Math.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "WorldEntity.h"
    3737
  • code/trunk/src/orxonox/objects/worldentities/triggers/PlayerTrigger.h

    r3280 r5693  
    5252        PlayerTrigger(BaseObject* creator);
    5353        virtual ~PlayerTrigger();
    54        
     54
    5555        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode); //!< Method for creating a PlayerTrigger object through XML.
    56        
     56
    5757        /**
    5858        @brief Returns the player that triggered the PlayerTrigger.
     
    6161        inline Pawn* getTriggeringPlayer(void) const
    6262            { return this->player_; }
    63        
     63
    6464        /**
    6565        @brief Checks whether the PlayerTrigger normally returns a ControllableEntity.
     
    6868        inline bool isForPlayer(void) const
    6969           { return this->isForPlayer_; }
    70            
     70
    7171    protected:
    7272        virtual bool isTriggered(TriggerMode::Value mode) = 0;
    73        
     73
    7474        /**
    7575        @brief Set the player that triggered the PlayerTrigger. This is normally done by classes inheriting vom PlayerTrigger.
     
    8181            /**
    8282            @brief Set whether the PlayerTrigger normally is triggered by ControllableEntities.
    83             @param isForPlayer Should be true when the PlayerTrigger schould be set to normally be triggered by ControllableEntities, false if not.
     83            @param isForPlayer Should be true when the PlayerTrigger should be set to normally be triggered by ControllableEntities, false if not.
    8484            */
    8585        inline void setForPlayer(bool isForPlayer)
    8686           { this->isForPlayer_ = isForPlayer; }
    87        
     87
    8888    private:
    8989        Pawn* player_; //!< The player that triggered the PlayerTrigger.
    90         bool isForPlayer_; //!< Is true when the PlayerTrigger schould be set to normally be triggered by ControllableEntities.
    91    
     90        bool isForPlayer_; //!< Is true when the PlayerTrigger should be set to normally be triggered by ControllableEntities.
     91
    9292    };
    9393
  • code/trunk/src/orxonox/objects/worldentities/triggers/Trigger.h

    r3280 r5693  
    3636
    3737#include "tools/BillboardSet.h"
    38 #include "interfaces/Tickable.h"
     38#include "tools/interfaces/Tickable.h"
    3939#include "objects/worldentities/StaticEntity.h"
    4040
  • code/trunk/src/orxonox/overlays/CMakeLists.txt

    r3099 r5693  
    22  OrxonoxOverlay.cc
    33  OverlayGroup.cc
     4)
     5
     6SET_SOURCE_FILES(OVERLAYS_SRC_FILES
    47  OverlayText.cc
    58  FadeoutText.cc
     
    710)
    811
    9 ADD_SUBDIRECTORY(console)
    1012ADD_SUBDIRECTORY(debug)
    1113ADD_SUBDIRECTORY(hud)
    12 ADD_SUBDIRECTORY(map)
    13 ADD_SUBDIRECTORY(notifications)
    1414ADD_SUBDIRECTORY(stats)
    1515
     16ORXONOX_ADD_LIBRARY(overlays
     17  MODULE
     18  FIND_HEADER_FILES
     19  DEFINE_SYMBOL
     20    "OVERLAYS_SHARED_BUILD"
     21  PCH_FILE
     22    ../OrxonoxPrecompiledHeaders.h
     23  LINK_LIBRARIES
     24    orxonox
     25  SOURCE_FILES ${OVERLAYS_SRC_FILES}
     26)
  • code/trunk/src/orxonox/overlays/FadeoutText.h

    r3196 r5693  
    3030#define _FadeoutText_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "tools/Timer.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "overlays/OverlayText.h"
    3737
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport FadeoutText : public OverlayText, public Tickable
     40    class _OverlaysExport FadeoutText : public OverlayText, public Tickable
    4141    {
    4242        public:
  • code/trunk/src/orxonox/overlays/GUIOverlay.cc

    r3370 r5693  
    3636#include "core/GUIManager.h"
    3737#include "core/XMLPort.h"
     38#include "objects/infos/PlayerInfo.h"
    3839
    3940namespace orxonox
     
    7980    }
    8081
     82    void GUIOverlay::setGUIName(const std::string& name)
     83    {
     84        this->guiName_ = name;
     85        GUIManager::getInstance().setPlayer(name, orxonox_cast<PlayerInfo*>(this->getOwner()));
     86    }
    8187}
  • code/trunk/src/orxonox/overlays/GUIOverlay.h

    r3196 r5693  
    3030#define _GUIOverlay_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include <string>
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport GUIOverlay : public OrxonoxOverlay
     39    class _OverlaysExport GUIOverlay : public OrxonoxOverlay
    4040    {
    4141        public:
     
    4646            virtual void XMLPort(Element& xmlElement, XMLPort::Mode mode);
    4747
    48             inline void setGUIName(const std::string& name) { this->guiName_ = name; }
     48            void setGUIName(const std::string& name);
    4949            inline const std::string& getGUIName() const { return this->guiName_; }
    5050
  • code/trunk/src/orxonox/overlays/OverlayText.h

    r3196 r5693  
    3030#define _OverlayText_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include <string>
     
    3939namespace orxonox
    4040{
    41     class _OrxonoxExport OverlayText : public OrxonoxOverlay
     41    class _OverlaysExport OverlayText : public OrxonoxOverlay
    4242    {
    4343    public:
  • code/trunk/src/orxonox/overlays/debug/CMakeLists.txt

    r2710 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(OVERLAYS_SRC_FILES
    22  DebugFPSText.cc
    33  DebugRTRText.cc
  • code/trunk/src/orxonox/overlays/debug/DebugFPSText.h

    r3196 r5693  
    3030#define _DebugFPSText_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "overlays/OverlayText.h"
    3636
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport DebugFPSText : public OverlayText, public Tickable
     39    class _OverlaysExport DebugFPSText : public OverlayText, public Tickable
    4040    {
    4141    public:
  • code/trunk/src/orxonox/overlays/debug/DebugRTRText.h

    r3196 r5693  
    3030#define _DebugRTRText_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "overlays/OverlayText.h"
    3636
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport DebugRTRText : public OverlayText, public Tickable
     39    class _OverlaysExport DebugRTRText : public OverlayText, public Tickable
    4040    {
    4141    public:
  • code/trunk/src/orxonox/overlays/hud/AnnounceMessage.h

    r3196 r5693  
    3030#define _AnnounceMessage_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "interfaces/GametypeMessageListener.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport AnnounceMessage : public FadeoutText, public GametypeMessageListener
     39    class _OverlaysExport AnnounceMessage : public FadeoutText, public GametypeMessageListener
    4040    {
    4141        public:
  • code/trunk/src/orxonox/overlays/hud/CMakeLists.txt

    r3104 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(OVERLAYS_SRC_FILES
    22  HUDBar.cc
    33  HUDNavigation.cc
  • code/trunk/src/orxonox/overlays/hud/ChatOverlay.h

    r3196 r5693  
    3030#define _ChatOverlay_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include <list>
     
    4040namespace orxonox
    4141{
    42     class _OrxonoxExport ChatOverlay : public OverlayText, public ChatListener
     42    class _OverlaysExport ChatOverlay : public OverlayText, public ChatListener
    4343    {
    4444        public:
  • code/trunk/src/orxonox/overlays/hud/DeathMessage.h

    r3196 r5693  
    3030#define _DeathMessage_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "interfaces/GametypeMessageListener.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport DeathMessage : public FadeoutText, public GametypeMessageListener
     39    class _OverlaysExport DeathMessage : public FadeoutText, public GametypeMessageListener
    4040    {
    4141        public:
  • code/trunk/src/orxonox/overlays/hud/GametypeStatus.h

    r3196 r5693  
    3030#define _GametypeStatus_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "overlays/OverlayText.h"
    3636
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport GametypeStatus : public OverlayText, public Tickable
     39    class _OverlaysExport GametypeStatus : public OverlayText, public Tickable
    4040    {
    4141        public:
  • code/trunk/src/orxonox/overlays/hud/HUDBar.h

    r3196 r5693  
    3232#define _HUDBar_H__
    3333
    34 #include "OrxonoxPrereqs.h"
     34#include "overlays/OverlaysPrereqs.h"
    3535
    3636#include <map>
     
    4444namespace orxonox
    4545{
    46     class _OrxonoxExport BarColour : public BaseObject
     46    class _OverlaysExport BarColour : public BaseObject
    4747    {
    4848    public:
     
    6464
    6565
    66     class _OrxonoxExport HUDBar : public OrxonoxOverlay
     66    class _OverlaysExport HUDBar : public OrxonoxOverlay
    6767    {
    6868    public:
  • code/trunk/src/orxonox/overlays/hud/HUDHealthBar.h

    r3196 r5693  
    3030#define _HUDHealthBar_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "util/Math.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "overlays/OverlayText.h"
    3737#include "HUDBar.h"
     
    3939namespace orxonox
    4040{
    41     class _OrxonoxExport HUDHealthBar : public HUDBar, public Tickable
     41    class _OverlaysExport HUDHealthBar : public HUDBar, public Tickable
    4242    {
    4343        public:
  • code/trunk/src/orxonox/overlays/hud/HUDNavigation.h

    r3196 r5693  
    3030#define _HUDNavigation_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "util/OgreForwardRefs.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "overlays/OrxonoxOverlay.h"
    3737
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport HUDNavigation : public OrxonoxOverlay, public Tickable
     40    class _OverlaysExport HUDNavigation : public OrxonoxOverlay, public Tickable
    4141    {
    4242    public:
  • code/trunk/src/orxonox/overlays/hud/HUDRadar.h

    r3196 r5693  
    3131#define _HUDRadar_H__
    3232
    33 #include "OrxonoxPrereqs.h"
     33#include "overlays/OverlaysPrereqs.h"
    3434
    3535#include <map>
     
    4343namespace orxonox
    4444{
    45     class _OrxonoxExport HUDRadar : public OrxonoxOverlay, public RadarListener
     45    class _OverlaysExport HUDRadar : public OrxonoxOverlay, public RadarListener
    4646    {
    4747    public:
  • code/trunk/src/orxonox/overlays/hud/HUDSpeedBar.h

    r3196 r5693  
    3131#define _HUDSpeedBar_H__
    3232
    33 #include "OrxonoxPrereqs.h"
     33#include "overlays/OverlaysPrereqs.h"
    3434
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "HUDBar.h"
    3737
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport HUDSpeedBar : public HUDBar, public Tickable
     40    class _OverlaysExport HUDSpeedBar : public HUDBar, public Tickable
    4141    {
    4242    public:
  • code/trunk/src/orxonox/overlays/hud/HUDTimer.h

    r3196 r5693  
    3030#define _HUDTimer_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "overlays/OverlayText.h"
    3636
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport HUDTimer : public OverlayText, public Tickable
     39    class _OverlaysExport HUDTimer : public OverlayText, public Tickable
    4040    {
    4141    public:
  • code/trunk/src/orxonox/overlays/hud/KillMessage.h

    r3196 r5693  
    3030#define _KillMessage_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "interfaces/GametypeMessageListener.h"
     
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport KillMessage : public FadeoutText, public GametypeMessageListener
     39    class _OverlaysExport KillMessage : public FadeoutText, public GametypeMessageListener
    4040    {
    4141        public:
  • code/trunk/src/orxonox/overlays/hud/PongScore.h

    r3196 r5693  
    3030#define _PongScore_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "overlays/OverlayText.h"
    3636
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport PongScore : public OverlayText, public Tickable
     39    class _OverlaysExport PongScore : public OverlayText, public Tickable
    4040    {
    4141        public:
  • code/trunk/src/orxonox/overlays/hud/TeamBaseMatchScore.h

    r3196 r5693  
    3030#define _TeamBaseMatchScore_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    34 #include "interfaces/Tickable.h"
     34#include "tools/interfaces/Tickable.h"
    3535#include "overlays/OverlayText.h"
    3636
    3737namespace orxonox
    3838{
    39     class _OrxonoxExport TeamBaseMatchScore : public OverlayText, public Tickable
     39    class _OverlaysExport TeamBaseMatchScore : public OverlayText, public Tickable
    4040    {
    4141        public:
  • code/trunk/src/orxonox/overlays/hud/UnderAttackHealthBar.h

    r3196 r5693  
    3030#define _UnderAttackHealthBar_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "util/Math.h"
     
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport UnderAttackHealthBar : public HUDHealthBar
     40    class _OverlaysExport UnderAttackHealthBar : public HUDHealthBar
    4141    {
    4242        public:
  • code/trunk/src/orxonox/overlays/stats/CMakeLists.txt

    r3196 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(OVERLAYS_SRC_FILES
    22  CreateLines.cc
    33  Scoreboard.cc
  • code/trunk/src/orxonox/overlays/stats/CreateLines.h

    r3196 r5693  
    2828#define _CreateLines_H__
    2929
    30 #include "OrxonoxPrereqs.h"
     30#include "overlays/OverlaysPrereqs.h"
    3131
    3232namespace orxonox
    3333{
    34     class _OrxonoxExport CreateLines
     34    class _OverlaysExport CreateLines
    3535    {
    3636
  • code/trunk/src/orxonox/overlays/stats/Scoreboard.h

    r3196 r5693  
    2929
    3030
    31 #include "OrxonoxPrereqs.h"
     31#include "overlays/OverlaysPrereqs.h"
    3232
    3333#include <string>
    3434#include <vector>
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "overlays/OrxonoxOverlay.h"
    3737
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport Scoreboard : public OrxonoxOverlay, public Tickable
     40    class _OverlaysExport Scoreboard : public OrxonoxOverlay, public Tickable
    4141    {
    4242    public: // functions
  • code/trunk/src/orxonox/overlays/stats/Stats.h

    r3196 r5693  
    3030#define _Stats_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "overlays/OverlaysPrereqs.h"
    3333
    3434#include "util/OgreForwardRefs.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636#include "overlays/OrxonoxOverlay.h"
    3737
    3838namespace orxonox
    3939{
    40     class _OrxonoxExport Stats : public OrxonoxOverlay, public Tickable
     40    class _OverlaysExport Stats : public OrxonoxOverlay, public Tickable
    4141    {
    4242    public: // functions
  • code/trunk/src/orxonox/sound/SoundBase.h

    r3196 r5693  
    3535{
    3636    /**
    37      * The SoudBase class is the base class for all sound file loader classes.
     37     * The SoundBase class is the base class for all sound file loader classes.
    3838     * It server as main interface to the OpenAL library.
    3939     *
  • code/trunk/src/orxonox/sound/SoundManager.h

    r3370 r5693  
    3333#include <list>
    3434#include "util/Singleton.h"
    35 #include "interfaces/Tickable.h"
     35#include "tools/interfaces/Tickable.h"
    3636
    3737namespace orxonox
  • code/trunk/src/orxonox/tools/BillboardSet.h

    r3196 r5693  
    3030#define _BillboardSet_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333#include "util/OgreForwardRefs.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport BillboardSet
     37    class _ToolsExport BillboardSet
    3838    {
    3939        public:
  • code/trunk/src/orxonox/tools/BulletConversions.h

    r3196 r5693  
    3030#define _BulletConversions_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333
    3434#include "util/Convert.h"
  • code/trunk/src/orxonox/tools/CMakeLists.txt

    r3196 r5693  
    1 ADD_SOURCE_FILES(ORXONOX_SRC_FILES
     1ADD_SOURCE_FILES(TOOLS_SRC_FILES
    22  BillboardSet.cc
    33  DynamicLines.cc
     
    99  Timer.cc
    1010)
     11ADD_SUBDIRECTORY(interfaces)
     12
     13ORXONOX_ADD_LIBRARY(tools
     14  DEFINE_SYMBOL
     15    "TOOLS_SHARED_BUILD"
     16  LINK_LIBRARIES
     17    core
     18  SOURCE_FILES ${TOOLS_SRC_FILES}
     19)
  • code/trunk/src/orxonox/tools/DynamicLines.h

    r3196 r5693  
    3030#define _DynamicLines_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333
    3434#include <vector>
     
    3737namespace Ogre
    3838{
    39     class DynamicLines : public DynamicRenderable
     39    class _ToolsExport DynamicLines : public DynamicRenderable
    4040    {
    4141        typedef RenderOperation::OperationType OperationType;
  • code/trunk/src/orxonox/tools/DynamicRenderable.h

    r3196 r5693  
    3030#define _DynamicRenderable_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333
    3434#include <OgreSimpleRenderable.h>
     
    3737{
    3838    /// Abstract base class providing mechanisms for dynamically growing hardware buffers.
    39     class DynamicRenderable : public SimpleRenderable
     39    class _ToolsExport DynamicRenderable : public SimpleRenderable
    4040    {
    4141    public:
  • code/trunk/src/orxonox/tools/Mesh.h

    r3196 r5693  
    3030#define _Mesh_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333#include "util/OgreForwardRefs.h"
    3434
    3535namespace orxonox
    3636{
    37     class _OrxonoxExport Mesh
     37    class _ToolsExport Mesh
    3838    {
    3939        public:
  • code/trunk/src/orxonox/tools/ParticleInterface.h

    r3370 r5693  
    3030#define _ParticleInterface_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333
    3434#include "util/OgreForwardRefs.h"
    35 #include "interfaces/TimeFactorListener.h"
     35#include "tools/interfaces/TimeFactorListener.h"
    3636
    3737#define getAllEmitters() \
     
    4242namespace orxonox
    4343{
    44     class _OrxonoxExport ParticleInterface : public TimeFactorListener
     44    class _ToolsExport ParticleInterface : public TimeFactorListener
    4545    {
    4646        public:
  • code/trunk/src/orxonox/tools/Shader.h

    r3196 r5693  
    3030#define _Shader_H__
    3131
    32 #include "OrxonoxPrereqs.h"
     32#include "tools/ToolsPrereqs.h"
    3333
    3434#include <map>
     
    3737
    3838#include "util/OgreForwardRefs.h"
    39 #include "interfaces/Tickable.h"
     39#include "tools/interfaces/Tickable.h"
    4040
    4141namespace orxonox
    4242{
    43     class _OrxonoxExport Shader : public Tickable
     43    class _ToolsExport Shader : public Tickable
    4444    {
    4545        typedef std::pair<bool, void*>                  ParameterPointer;
  • code/trunk/src/orxonox/tools/TextureGenerator.h

    r3196 r5693  
    3535#define _TextureGenerator_H__
    3636
    37 #include "OrxonoxPrereqs.h"
     37#include "tools/ToolsPrereqs.h"
    3838
    3939#include <map>
     
    4343namespace orxonox
    4444{
    45     class _OrxonoxExport TextureGenerator
     45    class _ToolsExport TextureGenerator
    4646    {
    4747    public:
  • code/trunk/src/orxonox/tools/Timer.h

    r3301 r5693  
    6161#define _Timer_H__
    6262
    63 #include "OrxonoxPrereqs.h"
     63#include "tools/ToolsPrereqs.h"
    6464
    6565#include "core/Executor.h"
    6666#include "core/OrxonoxClass.h"
    67 #include "interfaces/TimeFactorListener.h"
     67#include "tools/interfaces/TimeFactorListener.h"
    6868
    6969namespace orxonox
     
    7575
    7676    //! TimerBase is the parent of the Timer class.
    77     class _OrxonoxExport TimerBase : public TimeFactorListener
     77    class _ToolsExport TimerBase : public TimeFactorListener
    7878    {
    7979        public:
     
    171171
    172172    //! The StaticTimer is a callback-object, calling a static function after a given time-interval.
    173     class StaticTimer : public TimerBase
     173    class _ToolsExport StaticTimer : public TimerBase
    174174    {
    175175        public:
  • code/trunk/src/util/CMakeLists.txt

    r3280 r5693  
    2727  OutputBuffer.cc
    2828  OutputHandler.cc
     29  Scope.cc
    2930  SignalHandler.cc
    3031  Sleep.cc
Note: See TracChangeset for help on using the changeset viewer.