Index: trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingDotSceneManager.h
===================================================================
--- trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingDotSceneManager.h	(revision 33)
+++ trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingDotSceneManager.h	(revision 33)
@@ -0,0 +1,47 @@
+#ifndef _OcclusionCullingDotSceneManager_H__
+#define _OcclusionCullingDotSceneManager_H__
+
+#include "OgreSceneNode.h"
+#include "DotSceneManager.h"
+#include "OgreOcclusionCullingSceneTraverser.h"
+
+#include "OgrePrerequisites.h"
+
+using namespace std;
+
+namespace Ogre {
+	
+	/**
+		Class which implements a scene mangager which uses occlusion queries for culling occluded objects
+	*/
+	class OcclusionCullingDotSceneManager: public DotSceneManager
+	{
+	public:
+		OcclusionCullingDotSceneManager();
+		~OcclusionCullingDotSceneManager();
+	
+		void _renderVisibleObjects(void);
+		void _findVisibleObjects(Camera* cam, bool onlyShadowCasters);
+		void _updateSceneGraph(Camera* cam);
+
+		/** Sets the given option for the SceneManager
+			       @remarks
+			Options are:
+			"Algorithm", int *;			
+		*/
+		virtual bool setOption( const String &, const void * );
+		/** Gets the given option for the Scene Manager.
+	        @remarks
+		    See setOption
+		*/
+		virtual bool getOption( const String &, void * );
+
+		bool getOptionValues( const String & key, StringVector &refValueList );
+		bool getOptionKeys( StringVector &refKeys );
+
+	protected:
+		OcclusionCullingSceneTraverser *mOcclusionCullingSceneTraverser;
+	};
+
+}
+#endif // OcclusionCullingDotSceneManager_H
Index: trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingSceneManager.h
===================================================================
--- trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingSceneManager.h	(revision 32)
+++ trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingSceneManager.h	(revision 33)
@@ -20,5 +20,5 @@
 	public:
 		OcclusionCullingSceneManager();
-		//~OcclusionCullingSceneManager();
+		~OcclusionCullingSceneManager();
 	
 		/** Overriden from SceneManager. Renders the scene with the specified algorithm
@@ -49,5 +49,5 @@
 
 	protected:
-		OcclusionCullingSceneTraverser mSceneTraverser;
+		OcclusionCullingSceneTraverser *mOcclusionCullingSceneTraverser;
 	
 	};
Index: trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingSceneTraverser.h
===================================================================
--- trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingSceneTraverser.h	(revision 32)
+++ trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingSceneTraverser.h	(revision 33)
@@ -39,18 +39,29 @@
 	{
 	public:
-		OcclusionCullingSceneTraverser();
+		/** Construction taking the current scene manager and the current rendersystem as argument
+		@param sm current scene manager
+		@param rsys current render system 
+		*/
+		OcclusionCullingSceneTraverser(SceneManager *sm, RenderSystem *rsys);
 		~OcclusionCullingSceneTraverser();
 	
 		enum {RENDER_CULL_FRUSTUM, RENDER_STOP_AND_WAIT, RENDER_COHERENT, NUM_RENDERMODES};
 		
-		/** Overriden from SceneManager. Renders the scene with the specified algorithm
-		/**
-			The algorithm is one of
+		/** Renders the scene with the specified algorithm
+			@comment 
+			The algorithm type can be set with the parameter "Algorithm" and setOption.
+
+			The algorithm is one of:
 			RENDER_CULL_FRUSTUM: renders the scene with view frustum culling only
 			RENDER_STOP_AND_WAIT: renders the scene with the hierarchical stop and wait algorithm
 			RENDER_COHERENT: renders the scene with the coherent hierarchical algorithm
+			
+			@param cam current camera
+			@param root root of hierarchy 
 		*/
+		void renderScene( Camera *cam, SceneNode *root );
+	
 		
-		/** Sets the given option for the SceneTraverser
+		/** Sets the given option for the scene traverser.
 			       @remarks
 			Options are:
@@ -58,23 +69,30 @@
 		*/
 		bool setOption( const String &, const void * );
-		/** Gets the given option for the SceneTraverser.
+		/** Gets the given option for the scene traverser.
 	        @remarks
 		    See setOption
 		*/
 		bool getOption( const String &, void * );
-
-		/** Renders current scene 
-		@param cam current camera
-		@param root root of hierarchy */
-		void renderScene(  Camera *cam, SceneNode *root );
-
-		/** Sets the scene manager */
+		bool getOptionKeys( StringVector &refKeys );
+		
+		/** Sets pointer to the current scene manager.
+		@param the scene manager */
 		void setSceneManager( SceneManager *sm );
-		/** Sets the render system */
+		
+		/** Sets pointer to the current render system 
+		@param the rendersystem */
 		void setRenderSystem( RenderSystem *rsys );
-
+		
+		/** Doing some necessary preprocessing.
+		@comment e.g., initialises occlusion queries */
 		void preprocess( void );
 
+		/** Sets the current number of scene nodes in the scene.
+		@param num number of scene nodes
+		*/
+		void setNumSceneNodes(int num );
+
 	protected:
+		/** query mode (= without color) or RENDER_MODE */
 		enum {MODE_QUERY, MODE_RENDER};
 		/** returns true if node is leaf of the hierarchy */
Index: trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingTerrainSceneManager.h
===================================================================
--- trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingTerrainSceneManager.h	(revision 33)
+++ trunk/VUT/OcclusionCullingSceneManager/include/OgreOcclusionCullingTerrainSceneManager.h	(revision 33)
@@ -0,0 +1,52 @@
+#ifndef _OcclusionCullingTerrainSceneManager_H__
+#define _OcclusionCullingTerrainSceneManager_H__
+
+#include <OgreSceneNode.h>
+#include <OgreOctreeSceneManager.h>
+#include <OgreTerrainSceneManager.h>
+#include <OgreOctreeSceneQuery.h>
+#include <OgreOctreeNode.h>
+#include <OgreOctreeCamera.h>
+
+#include "OgrePrerequisites.h"
+#include "OgreOcclusionCullingSceneTraverser.h"
+//#include "OgreSolidHalfBoundingBox.h"
+
+using namespace std;
+
+namespace Ogre {
+	
+	/**
+		Class which implements a scene mangager which uses occlusion queries for culling occluded objects
+	*/
+	class OcclusionCullingTerrainSceneManager: public TerrainSceneManager
+	{
+	public:
+		OcclusionCullingTerrainSceneManager();
+		~OcclusionCullingTerrainSceneManager();
+	
+		void _renderVisibleObjects(void);
+		void _findVisibleObjects(Camera* cam, bool onlyShadowCasters);
+		void _updateSceneGraph(Camera* cam);
+
+		/** Sets the given option for the SceneManager
+			       @remarks
+			Options are:
+			"Algorithm", int *;			
+		*/
+		virtual bool setOption( const String &, const void * );
+		/** Gets the given option for the Scene Manager.
+	        @remarks
+		    See setOption
+		*/
+		virtual bool getOption( const String &, void * );
+
+		bool getOptionValues( const String & key, StringVector &refValueList );
+		bool getOptionKeys( StringVector &refKeys );
+
+	protected:
+		OcclusionCullingSceneTraverser *mOcclusionCullingSceneTraverser;
+	};
+
+}
+#endif // OcclusionCullingTerrainSceneManager_H
Index: trunk/VUT/OcclusionCullingSceneManager/include/OgreTerrainOcclusionCullingSceneManager.h
===================================================================
--- trunk/VUT/OcclusionCullingSceneManager/include/OgreTerrainOcclusionCullingSceneManager.h	(revision 32)
+++ 	(revision )
@@ -1,45 +1,0 @@
-#ifndef _TerrainOcclusionCullingSceneManager_H__
-#define _TerrainOcclusionCullingSceneManager_H__
-
-#include "OgreSceneNode.h"
-#include "OgreTerrainSceneManager.h"
-//#include "OgreOcclusionCullingSceneManager.h"
-#include "OgrePrerequisites.h"
-//#include "OgreSolidHalfBoundingBox.h"
-
-using namespace std;
-
-namespace Ogre {
-	
-	/**
-		Class which implements a scene mangager which uses occlusion queries for culling occluded objects
-	*/
-	class TerrainOcclusionCullingSceneManager: public TerrainSceneManager
-	{
-	public:
-		TerrainOcclusionCullingSceneManager();
-		//~OcclusionCullingSceneManager();
-	
-	/*	void _renderVisibleObjects(void);
-		void _findVisibleObjects(Camera* cam, bool onlyShadowCasters);
-		void _updateSceneGraph(Camera* cam);
-*/
-		/** Sets the given option for the SceneManager
-			       @remarks
-			Options are:
-			"Algorithm", int *;			
-		*/
-//		virtual bool setOption( const String &, const void * );
-		/** Gets the given option for the Scene Manager.
-	        @remarks
-		    See setOption
-		*/
-/*		virtual bool getOption( const String &, void * );
-
-		bool getOptionValues( const String & key, StringVector &refValueList );
-		bool getOptionKeys( StringVector &refKeys );*/
-
-	};
-
-}
-#endif // TERRAINOCCLUSIONCULLINGSCENEMANAGER_H
