Index: code/branches/cpp11_v3/src/libraries/tools/BillboardSet.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/BillboardSet.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/BillboardSet.cc	(revision 11054)
@@ -46,5 +46,5 @@
     BillboardSet::BillboardSet()
     {
-        this->billboardSet_ = 0;
+        this->billboardSet_ = nullptr;
     }
 
@@ -81,5 +81,5 @@
         {
             orxout(internal_error) << "Couldn't load billboard \"" << file << '"' << endl;
-            this->billboardSet_ = 0;
+            this->billboardSet_ = nullptr;
         }
 
@@ -104,5 +104,5 @@
         {
             orxout(internal_error) << "Couldn't load billboard \"" << file << '"' << endl;
-            this->billboardSet_ = 0;
+            this->billboardSet_ = nullptr;
         }
 
@@ -114,5 +114,5 @@
         if (this->billboardSet_ && this->scenemanager_)
             this->scenemanager_->destroyBillboardSet(this->billboardSet_);
-        this->billboardSet_ = 0;
+        this->billboardSet_ = nullptr;
     }
 
Index: code/branches/cpp11_v3/src/libraries/tools/BulletDebugDrawer.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/BulletDebugDrawer.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/BulletDebugDrawer.h	(revision 11054)
@@ -13,4 +13,6 @@
 #include <btBulletCollisionCommon.h>
 #include <OgreFrameListener.h>
+#include <OgreVector3.h>
+#include <OgreColourValue.h>
 
 namespace orxonox
@@ -21,27 +23,27 @@
             BulletDebugDrawer(Ogre::SceneManager* sceneManager);
             ~BulletDebugDrawer();
-            virtual void drawLine(const btVector3& from, const btVector3& to, const btVector3& color);
-//            virtual void drawTriangle(const btVector3& v0, const btVector3& v1, const btVector3& v2, const btVector3& color, btScalar);
-            virtual void drawSphere (const btVector3& p, btScalar radius, const btVector3& color);
-            virtual void drawSphere(btScalar radius, const btTransform& transform, const btVector3& color);
-            virtual void drawBox(const btVector3& bbMin, const btVector3& bbMax, const btVector3& color);
-            virtual void drawBox(const btVector3& bbMin, const btVector3& bbMax, const btTransform& trans, const btVector3& color);
-            virtual void drawCylinder(btScalar radius, btScalar halfHeight, int upAxis, const btTransform& transform, const btVector3& color);
-            virtual void drawCone(btScalar radius, btScalar height, int upAxis, const btTransform& transform, const btVector3& color);
-//            virtual void drawPlane(const btVector3& planeNormal, btScalar planeConst, const btTransform& transform, const btVector3& color);
+            virtual void drawLine(const btVector3& from, const btVector3& to, const btVector3& color) override;
+//            virtual void drawTriangle(const btVector3& v0, const btVector3& v1, const btVector3& v2, const btVector3& color, btScalar) override;
+            virtual void drawSphere (const btVector3& p, btScalar radius, const btVector3& color) override;
+            virtual void drawSphere(btScalar radius, const btTransform& transform, const btVector3& color) override;
+            virtual void drawBox(const btVector3& bbMin, const btVector3& bbMax, const btVector3& color) override;
+            virtual void drawBox(const btVector3& bbMin, const btVector3& bbMax, const btTransform& trans, const btVector3& color) override;
+            virtual void drawCylinder(btScalar radius, btScalar halfHeight, int upAxis, const btTransform& transform, const btVector3& color) override;
+            virtual void drawCone(btScalar radius, btScalar height, int upAxis, const btTransform& transform, const btVector3& color) override;
+//            virtual void drawPlane(const btVector3& planeNormal, btScalar planeConst, const btTransform& transform, const btVector3& color) override;
 
-            virtual void drawContactPoint(const btVector3& PointOnB, const btVector3& normalOnB, btScalar distance, int lifeTime, const btVector3& color);
+            virtual void drawContactPoint(const btVector3& PointOnB, const btVector3& normalOnB, btScalar distance, int lifeTime, const btVector3& color) override;
 
-            virtual void reportErrorWarning(const char* warningString);
-            virtual void draw3dText(const btVector3& location, const char* textString);
+            virtual void reportErrorWarning(const char* warningString) override;
+            virtual void draw3dText(const btVector3& location, const char* textString) override;
 
-            virtual void setDebugMode(int debugMode);
-            virtual int getDebugMode() const;
+            virtual void setDebugMode(int debugMode) override;
+            virtual int getDebugMode() const override;
 
             void configure(bool bFill, float fillAlpha);
 
         protected:
-            bool frameStarted(const Ogre::FrameEvent& evt);
-            bool frameEnded(const Ogre::FrameEvent& evt);
+            virtual bool frameStarted(const Ogre::FrameEvent& evt) override;
+            virtual bool frameEnded(const Ogre::FrameEvent& evt) override;
 
         private:
Index: code/branches/cpp11_v3/src/libraries/tools/DebugDrawer.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/DebugDrawer.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/DebugDrawer.cc	(revision 11054)
@@ -21,5 +21,5 @@
 {
     DebugDrawer::DebugDrawer(Ogre::SceneManager *_sceneManager, float _fillAlpha) :
-            sceneManager(_sceneManager), fillAlpha(_fillAlpha), manualObject(0), isEnabled(true), linesIndex(0), trianglesIndex(0)
+            sceneManager(_sceneManager), fillAlpha(_fillAlpha), manualObject(nullptr), isEnabled(true), linesIndex(0), trianglesIndex(0)
     {
         initialise();
@@ -392,11 +392,11 @@
             manualObject->estimateVertexCount(lineVertices.size());
             manualObject->estimateIndexCount(lineIndices.size());
-            for (std::list<VertexPair>::iterator i = lineVertices.begin(); i != lineVertices.end(); i++)
+            for (const VertexPair& pair : lineVertices)
             {
-                manualObject->position(i->first);
-                manualObject->colour(i->second);
+                manualObject->position(pair.first);
+                manualObject->colour(pair.second);
             }
-            for (std::list<int>::iterator i = lineIndices.begin(); i != lineIndices.end(); i++)
-                manualObject->index(*i);
+            for (int lineIndex : lineIndices)
+                manualObject->index(lineIndex);
         }
         else
@@ -409,11 +409,11 @@
             manualObject->estimateVertexCount(triangleVertices.size());
             manualObject->estimateIndexCount(triangleIndices.size());
-            for (std::list<VertexPair>::iterator i = triangleVertices.begin(); i != triangleVertices.end(); i++)
+            for (const VertexPair& pair : triangleVertices)
             {
-                manualObject->position(i->first);
-                manualObject->colour(i->second.r, i->second.g, i->second.b, fillAlpha);
+                manualObject->position(pair.first);
+                manualObject->colour(pair.second.r, pair.second.g, pair.second.b, fillAlpha);
             }
-            for (std::list<int>::iterator i = triangleIndices.begin(); i != triangleIndices.end(); i++)
-                manualObject->index(*i);
+            for (int triangleIndex : triangleIndices)
+                manualObject->index(triangleIndex);
         }
         else
@@ -433,5 +433,5 @@
     int DebugDrawer::addLineVertex(const Ogre::Vector3& vertex, const Ogre::ColourValue& colour)
     {
-        lineVertices.push_back(VertexPair(vertex, colour));
+        lineVertices.emplace_back(vertex, colour);
         return linesIndex++;
     }
@@ -445,5 +445,5 @@
     int DebugDrawer::addTriangleVertex(const Ogre::Vector3& vertex, const Ogre::ColourValue& colour)
     {
-        triangleVertices.push_back(VertexPair(vertex, colour));
+        triangleVertices.emplace_back(vertex, colour);
         return trianglesIndex++;
     }
Index: code/branches/cpp11_v3/src/libraries/tools/DynamicLines.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/DynamicLines.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/DynamicLines.cc	(revision 11054)
@@ -69,5 +69,5 @@
     void DynamicLines::addPoint(Real x, Real y, Real z)
     {
-        mPoints.push_back(Vector3(x,y,z));
+        mPoints.emplace_back(x,y,z);
         mDirty = true;
     }
Index: code/branches/cpp11_v3/src/libraries/tools/DynamicLines.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/DynamicLines.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/DynamicLines.h	(revision 11054)
@@ -84,7 +84,7 @@
     protected:
         /// Implementation DynamicRenderable, creates a simple vertex-only decl
-        virtual void createVertexDeclaration();
+        virtual void createVertexDeclaration() override;
         /// Implementation DynamicRenderable, pushes point list out to hardware memory
-        virtual void fillHardwareBuffers();
+        virtual void fillHardwareBuffers() override;
 
     private:
Index: code/branches/cpp11_v3/src/libraries/tools/DynamicRenderable.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/DynamicRenderable.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/DynamicRenderable.h	(revision 11054)
@@ -61,7 +61,7 @@
 
         /// Implementation of SimpleRenderable
-        virtual Real getBoundingRadius(void) const;
+        virtual Real getBoundingRadius(void) const override;
         /// Implementation of SimpleRenderable
-        virtual Real getSquaredViewDepth(const Camera* cam) const;
+        virtual Real getSquaredViewDepth(const Camera* cam) const override;
 
     protected:
Index: code/branches/cpp11_v3/src/libraries/tools/IcoSphere.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/IcoSphere.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/IcoSphere.cc	(revision 11054)
@@ -116,7 +116,6 @@
             std::list<TriangleIndices> faces2;
 
-            for (std::list<TriangleIndices>::iterator j = faces.begin(); j != faces.end(); j++)
+            for (const TriangleIndices& f : faces)
             {
-                TriangleIndices f = *j;
                 int a = getMiddlePoint(f.v1, f.v2);
                 int b = getMiddlePoint(f.v2, f.v3);
@@ -127,8 +126,8 @@
                 removeLineIndices(f.v3, f.v1);
 
-                faces2.push_back(TriangleIndices(f.v1, a, c));
-                faces2.push_back(TriangleIndices(f.v2, b, a));
-                faces2.push_back(TriangleIndices(f.v3, c, b));
-                faces2.push_back(TriangleIndices(a, b, c));
+                faces2.emplace_back(f.v1, a, c);
+                faces2.emplace_back(f.v2, b, a);
+                faces2.emplace_back(f.v3, c, b);
+                faces2.emplace_back(a, b, c);
 
                 addTriangleLines(f.v1, a, c);
@@ -143,5 +142,5 @@
     void IcoSphere::addLineIndices(int index0, int index1)
     {
-        lineIndices.push_back(LineIndices(index0, index1));
+        lineIndices.emplace_back(index0, index1);
     }
 
@@ -164,5 +163,5 @@
     {
         Ogre::Real length = vertex.length();
-        vertices.push_back(Ogre::Vector3(vertex.x / length, vertex.y / length, vertex.z / length));
+        vertices.emplace_back(vertex.x / length, vertex.y / length, vertex.z / length);
         return index++;
     }
@@ -189,13 +188,13 @@
     void IcoSphere::addFace(int index0, int index1, int index2)
     {
-        faces.push_back(TriangleIndices(index0, index1, index2));
+        faces.emplace_back(index0, index1, index2);
     }
 
     void IcoSphere::addToLineIndices(int baseIndex, std::list<int>* target) const
     {
-        for (std::list<LineIndices>::const_iterator i = lineIndices.begin(); i != lineIndices.end(); i++)
+        for (const LineIndices& line : lineIndices)
         {
-            target->push_back(baseIndex + (*i).v1);
-            target->push_back(baseIndex + (*i).v2);
+            target->push_back(baseIndex + line.v1);
+            target->push_back(baseIndex + line.v2);
         }
     }
@@ -203,9 +202,9 @@
     void IcoSphere::addToTriangleIndices(int baseIndex, std::list<int>* target) const
     {
-        for (std::list<TriangleIndices>::const_iterator i = faces.begin(); i != faces.end(); i++)
+        for (const TriangleIndices& triangle : faces)
         {
-            target->push_back(baseIndex + (*i).v1);
-            target->push_back(baseIndex + (*i).v2);
-            target->push_back(baseIndex + (*i).v3);
+            target->push_back(baseIndex + triangle.v1);
+            target->push_back(baseIndex + triangle.v2);
+            target->push_back(baseIndex + triangle.v3);
         }
     }
@@ -217,6 +216,6 @@
         transform.setScale(Ogre::Vector3(scale, scale, scale));
 
-        for (int i = 0; i < (int) vertices.size(); i++)
-            target->push_back(VertexPair(transform * vertices[i], colour));
+        for (const Ogre::Vector3& vertex : vertices)
+            target->emplace_back(transform * vertex, colour);
 
         return vertices.size();
Index: code/branches/cpp11_v3/src/libraries/tools/Mesh.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/Mesh.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/Mesh.cc	(revision 11054)
@@ -44,5 +44,5 @@
     Mesh::Mesh()
     {
-        this->entity_ = 0;
+        this->entity_ = nullptr;
         this->bCastShadows_ = true;
     }
@@ -73,5 +73,5 @@
             {
                 orxout(internal_error) << "Couldn't load mesh \"" << meshsource << '"' << endl;
-                this->entity_ = 0;
+                this->entity_ = nullptr;
             }
         }
Index: code/branches/cpp11_v3/src/libraries/tools/OgreBulletUtils.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/OgreBulletUtils.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/OgreBulletUtils.h	(revision 11054)
@@ -10,4 +10,9 @@
 
 #include "tools/ToolsPrereqs.h"
+#include <OgreVector3.h>
+#include <OgreQuaternion.h>
+#include <OgreColourValue.h>
+#include <OgreMatrix3.h>
+#include <OgreMatrix4.h>
 
 namespace orxonox
@@ -42,5 +47,5 @@
     inline Ogre::Matrix3 matrix3(const btMatrix3x3& matrix)
     {
-        return Matrix3(
+        return Ogre::Matrix3(
                 matrix[0][0], matrix[0][1], matrix[0][2],
                 matrix[1][0], matrix[1][1], matrix[1][2],
Index: code/branches/cpp11_v3/src/libraries/tools/ParticleInterface.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/ParticleInterface.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/ParticleInterface.cc	(revision 11054)
@@ -59,5 +59,5 @@
 
         this->scenemanager_ = scenemanager;
-        this->particleSystem_ = 0;
+        this->particleSystem_ = nullptr;
 
         this->bEnabled_ = true;
@@ -80,5 +80,5 @@
             {
                 orxout(internal_error) << "Couldn't load particle system \"" << templateName << '"' << endl;
-                this->particleSystem_ = 0;
+                this->particleSystem_ = nullptr;
             }
         }
@@ -110,5 +110,5 @@
         }
         else
-            return 0;
+            return nullptr;
     }
     Ogre::ParticleEmitter* ParticleInterface::getEmitter(unsigned int emitterNr) const
@@ -117,5 +117,5 @@
             return this->particleSystem_->getEmitter(emitterNr);
         else
-            return 0;
+            return nullptr;
     }
     void ParticleInterface::removeEmitter(unsigned int emitterNr)
@@ -142,5 +142,5 @@
             return this->particleSystem_->addAffector(name);
         else
-            return 0;
+            return nullptr;
     }
     Ogre::ParticleAffector* ParticleInterface::getAffector(unsigned int affectorNr)
@@ -149,5 +149,5 @@
             return this->particleSystem_->getAffector(affectorNr);
         else
-            return 0;
+            return nullptr;
     }
     void ParticleInterface::removeAffector(unsigned int affectorNr)
Index: code/branches/cpp11_v3/src/libraries/tools/ParticleInterface.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/ParticleInterface.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/ParticleInterface.h	(revision 11054)
@@ -78,5 +78,5 @@
 
         protected:
-            virtual void changedTimeFactor(float factor_new, float factor_old);
+            virtual void changedTimeFactor(float factor_new, float factor_old) override;
 
         private:
Index: code/branches/cpp11_v3/src/libraries/tools/ResourceCollection.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/ResourceCollection.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/ResourceCollection.cc	(revision 11054)
@@ -48,8 +48,4 @@
     }
 
-    ResourceCollection::~ResourceCollection()
-    {
-    }
-
     void ResourceCollection::XMLPort(Element& xmlelement, XMLPort::Mode mode)
     {
@@ -93,5 +89,5 @@
     {
         if (index >= resourceLocations_.size())
-            return NULL;
+            return nullptr;
         else
             return resourceLocations_[index];
Index: code/branches/cpp11_v3/src/libraries/tools/ResourceCollection.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/ResourceCollection.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/ResourceCollection.h	(revision 11054)
@@ -42,7 +42,7 @@
     public:
         ResourceCollection(Context* context);
-        virtual ~ResourceCollection();
+        virtual ~ResourceCollection() = default;
 
-        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
         void setResourceGroup(const std::string& resourceGroup);
@@ -54,5 +54,7 @@
 
     private:
-        ResourceCollection(const ResourceCollection&);
+        // non-copyable:
+        ResourceCollection(const ResourceCollection&) = delete;
+        ResourceCollection& operator=(const ResourceCollection&) = delete;
 
         std::string resourceGroup_;
Index: code/branches/cpp11_v3/src/libraries/tools/ResourceLocation.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/ResourceLocation.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/ResourceLocation.cc	(revision 11054)
@@ -54,8 +54,4 @@
     }
 
-    ResourceLocation::~ResourceLocation()
-    {
-    }
-
     void ResourceLocation::XMLPort(Element& xmlelement, XMLPort::Mode mode)
     {
Index: code/branches/cpp11_v3/src/libraries/tools/ResourceLocation.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/ResourceLocation.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/ResourceLocation.h	(revision 11054)
@@ -44,7 +44,7 @@
     public:
         ResourceLocation(Context* context);
-        virtual ~ResourceLocation();
+        virtual ~ResourceLocation() = default;
 
-        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode);
+        virtual void XMLPort(Element& xmlelement, XMLPort::Mode mode) override;
 
         void setPath(const std::string& path) { path_ = path; }
@@ -60,5 +60,7 @@
 
     private:
-        ResourceLocation(const ResourceLocation&);
+        // non-copyable:
+        ResourceLocation(const ResourceLocation&) = delete;
+        ResourceLocation& operator=(const ResourceLocation&) = delete;
 
         void load(const std::string& resourceGroup);
Index: code/branches/cpp11_v3/src/libraries/tools/Shader.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/Shader.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/Shader.cc	(revision 11054)
@@ -44,5 +44,5 @@
         @brief Initializes the values and sets the scene manager.
     */
-    Shader::Shader(Ogre::SceneManager* scenemanager) : compositorInstance_(0)
+    Shader::Shader(Ogre::SceneManager* scenemanager) : compositorInstance_(nullptr)
     {
         RegisterObject(Shader);
@@ -109,5 +109,5 @@
     {
         // For the moment, we get the viewport always from the graphics manager
-        // TODO: Try to support multiple viewports - note however that scenemanager_->getCurrentViewport() returns NULL
+        // TODO: Try to support multiple viewports - note however that scenemanager_->getCurrentViewport() returns nullptr
         //       after switching to a camera in a different scene (only for the first time this scene is displayed though)
         this->changedCompositorName(GraphicsManager::getInstance().getViewport());
@@ -127,5 +127,5 @@
                 Ogre::CompositorManager::getSingleton().removeCompositor(viewport, this->oldcompositorName_);
                 this->compositorInstance_->removeListener(this);
-                this->compositorInstance_ = 0;
+                this->compositorInstance_ = nullptr;
             }
             if (!this->compositorName_.empty())
@@ -197,23 +197,23 @@
     {
         // iterate through the list of parameters
-        for (std::list<ParameterContainer>::iterator it = this->parameters_.begin(); it != this->parameters_.end(); ++it)
-        {
-            Ogre::Technique* techniquePtr = materialPtr->getTechnique(it->technique_);
+        for (const ParameterContainer& parameter : this->parameters_)
+        {
+            Ogre::Technique* techniquePtr = materialPtr->getTechnique(parameter.technique_);
             if (techniquePtr)
             {
-                Ogre::Pass* passPtr = techniquePtr->getPass(it->pass_);
+                Ogre::Pass* passPtr = techniquePtr->getPass(parameter.pass_);
                 if (passPtr)
                 {
                     // change the value of the parameter depending on its type
-                    if (it->value_.isType<int>())
-                        passPtr->getFragmentProgramParameters()->setNamedConstant(it->parameter_, it->value_.get<int>());
-                    else if (it->value_.isType<float>())
-                        passPtr->getFragmentProgramParameters()->setNamedConstant(it->parameter_, it->value_.get<float>());
+                    if (parameter.value_.isType<int>())
+                        passPtr->getFragmentProgramParameters()->setNamedConstant(parameter.parameter_, parameter.value_.get<int>());
+                    else if (parameter.value_.isType<float>())
+                        passPtr->getFragmentProgramParameters()->setNamedConstant(parameter.parameter_, parameter.value_.get<float>());
                 }
                 else
-                    orxout(internal_warning) << "No pass " << it->pass_ << " in technique " << it->technique_ << " in compositor \"" << this->compositorName_ << "\" or pass has no shader." << endl;
+                    orxout(internal_warning) << "No pass " << parameter.pass_ << " in technique " << parameter.technique_ << " in compositor \"" << this->compositorName_ << "\" or pass has no shader." << endl;
             }
             else
-                orxout(internal_warning) << "No technique " << it->technique_ << " in compositor \"" << this->compositorName_ << "\" or technique has no pass with shader." << endl;
+                orxout(internal_warning) << "No technique " << parameter.technique_ << " in compositor \"" << this->compositorName_ << "\" or technique has no pass with shader." << endl;
         }
         this->parameters_.clear();
@@ -228,6 +228,6 @@
         {
             const Ogre::Root::PluginInstanceList& plugins = Ogre::Root::getSingleton().getInstalledPlugins();
-            for (size_t i = 0; i < plugins.size(); ++i)
-                if (plugins[i]->getName() == "Cg Program Manager")
+            for (Ogre::Plugin* plugin : plugins)
+                if (plugin->getName() == "Cg Program Manager")
                     return true;
         }
Index: code/branches/cpp11_v3/src/libraries/tools/Shader.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/Shader.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/Shader.h	(revision 11054)
@@ -48,5 +48,5 @@
     {
         public:
-            Shader(Ogre::SceneManager* scenemanager = 0);
+            Shader(Ogre::SceneManager* scenemanager = nullptr);
             virtual ~Shader();
 
@@ -87,10 +87,10 @@
                 { return this->scenemanager_; }
 
-            virtual void cameraChanged(Ogre::Viewport* viewport, Ogre::Camera* oldCamera);
+            virtual void cameraChanged(Ogre::Viewport* viewport, Ogre::Camera* oldCamera) override;
 
             void setParameter(unsigned short technique, unsigned short pass, const std::string& parameter, float value);
             void setParameter(unsigned short technique, unsigned short pass, const std::string& parameter, int value);
 
-            virtual void notifyMaterialRender(Ogre::uint32 pass_id, Ogre::MaterialPtr& materialPtr);
+            virtual void notifyMaterialRender(Ogre::uint32 pass_id, Ogre::MaterialPtr& materialPtr) override;
 
         private:
Index: code/branches/cpp11_v3/src/libraries/tools/TextureGenerator.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/TextureGenerator.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/TextureGenerator.cc	(revision 11054)
@@ -71,5 +71,5 @@
 namespace orxonox
 {
-    std::map<std::string, std::map<ColourValue, std::string> > TextureGenerator::materials_s;
+    std::map<std::string, std::map<ColourValue, std::string>> TextureGenerator::materials_s;
     unsigned int TextureGenerator::materialCount_s = 0;
 
Index: code/branches/cpp11_v3/src/libraries/tools/TextureGenerator.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/TextureGenerator.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/TextureGenerator.h	(revision 11054)
@@ -49,9 +49,11 @@
 
     private:
-        TextureGenerator();
-        TextureGenerator(const TextureGenerator&);
-        ~TextureGenerator();
+        // static class, no instances allowed:
+        TextureGenerator() = delete;
+        TextureGenerator(const TextureGenerator&) = delete;
+        TextureGenerator& operator=(const TextureGenerator&) = delete;
+        ~TextureGenerator() = delete;
 
-        static std::map<std::string, std::map<ColourValue, std::string> > materials_s;
+        static std::map<std::string, std::map<ColourValue, std::string>> materials_s;
         static unsigned int materialCount_s;
     };
Index: code/branches/cpp11_v3/src/libraries/tools/Timer.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/Timer.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/Timer.cc	(revision 11054)
@@ -163,5 +163,5 @@
     void Timer::init()
     {
-        this->executor_ = 0;
+        this->executor_ = nullptr;
         this->interval_ = 0;
         this->bLoop_ = false;
Index: code/branches/cpp11_v3/src/libraries/tools/Timer.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/Timer.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/Timer.h	(revision 11054)
@@ -175,5 +175,5 @@
 
         protected:
-            virtual float getTimeFactor();
+            virtual float getTimeFactor() override;
     };
 }
Index: code/branches/cpp11_v3/src/libraries/tools/interfaces/TimeFactorListener.h
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/interfaces/TimeFactorListener.h	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/interfaces/TimeFactorListener.h	(revision 11054)
@@ -39,5 +39,5 @@
         public:
             TimeFactorListener();
-            virtual ~TimeFactorListener() {}
+            virtual ~TimeFactorListener() = default;
 
             static void setTimeFactor(float factor);
Index: code/branches/cpp11_v3/src/libraries/tools/interfaces/ToolsInterfaceCompilation.cc
===================================================================
--- code/branches/cpp11_v3/src/libraries/tools/interfaces/ToolsInterfaceCompilation.cc	(revision 11053)
+++ code/branches/cpp11_v3/src/libraries/tools/interfaces/ToolsInterfaceCompilation.cc	(revision 11054)
@@ -60,6 +60,6 @@
         float oldFactor = TimeFactorListener::timefactor_s;
         TimeFactorListener::timefactor_s = factor;
-        for (ObjectList<TimeFactorListener>::iterator it = ObjectList<TimeFactorListener>::begin(); it != ObjectList<TimeFactorListener>::end(); ++it)
-            it->changedTimeFactor(factor, oldFactor);
+        for (TimeFactorListener* listener : ObjectList<TimeFactorListener>())
+            listener->changedTimeFactor(factor, oldFactor);
     }
 
