Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingLogManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingLogManager.h	(revision 2280)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingLogManager.h	(revision 2280)
@@ -0,0 +1,52 @@
+#ifndef _CullingLogManager_H__
+#define _CullingLogManager_H__
+
+
+#include <fstream>
+#include <iostream>
+
+
+namespace GtpVisibility {
+
+
+/** Log manager controlling the debug output.
+	This class defines the pattern of singleton to assure that
+	there is always only one log manager.
+*/
+class CullingLogManager {
+
+public:
+
+	/** Returns the resource manager as a singleton.
+	*/
+	static CullingLogManager *GetSingleton();
+
+	static void DelSingleton();
+
+	void LogMessage(const std::string &str);
+
+protected:
+
+	/** Default constructor. The constructor is protected
+		to have control over instantiation using the 
+		singleton pattern.
+	*/
+	CullingLogManager();
+
+	~CullingLogManager() {}
+	
+
+protected:
+
+	std::ofstream mOutStream;
+
+private:
+
+	static CullingLogManager *sLogManager;
+	
+};
+
+
+}
+
+#endif
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyPreprocessingManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyPreprocessingManager.h	(revision 2278)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyPreprocessingManager.h	(revision 2280)
@@ -42,9 +42,9 @@
       Returns false if no viewcell was found.
     */
-  virtual bool LocateViewCellIds(const Vector3 &center,
-				 const float radius,
-				 vector<int> *viewCellIds
-				 );
-
+  /*virtual bool LocateViewCellIds(const Vector3 &center,
+								 const float radius,
+								 vector<int> *viewCellIds
+								);
+*/
 
   /**
@@ -52,7 +52,7 @@
      a union with visibleNodes and visibleMeshes. Returns the number of added entries.
   */
-  virtual int AddViewCellPVS(const int cellID,
-			     NodeInfoContainer *visibleNodes,
-			     MeshInfoContainer *visibleMeshes);
+  //virtual int AddViewCellPVS(const int cellID,
+//						 NodeInfoContainer *visibleNodes,
+//						 MeshInfoContainer *visibleMeshes);
 
 };
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/HierarchyInterface.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/HierarchyInterface.h	(revision 2259)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/HierarchyInterface.h	(revision 2280)
@@ -3,5 +3,5 @@
 
 #include "DistanceQueue.h"
-#include "VisibilityMesh.h"
+//#include "VisibilityMesh.h"
 #include <stack>
 
@@ -11,6 +11,7 @@
 
 typedef std::vector<HierarchyNode *> NodeVector;
-typedef std::vector<GtpVisibility::Mesh *> GeometryVector;
-typedef std::vector<GtpVisibility::Patch *> PatchVector;
+//typedef std::vector<GtpVisibility::Mesh *> GeometryVector;
+//typedef std::vector<GtpVisibility::Patch *> PatchVector;
+
 typedef std::pair<HierarchyNode *, OcclusionQuery *> QueryPair;
 typedef std::pair<HierarchyNode *, bool> PendingQuery;
@@ -139,13 +140,4 @@
 	*/
 	
-	/** Returns the geometry of a given hierarchy node. 
-		@param node the hierarchy node containing the geometry
-		@param geometryList geometry is returned in this list
-		@param includeChildren if the geometry of the children should be taken into account
-	*/
-	virtual void GetNodeGeometryList(GtpVisibility::HierarchyNode *node,	
-					 				 GeometryVector *geometryList, 
-									 bool includeChildren) = 0;
-
 	
 	/** This is an optimization when issuing the occlusion test. 
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/QueryManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/QueryManager.h	(revision 2255)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/QueryManager.h	(revision 2280)
@@ -5,10 +5,11 @@
 
 #include "VisibilityInfo.h"
-#include "VisibilityVector3.h"
-#include "VisibilityCamera.h"
-#include "VisibilityRay.h"
+//#include "VisibilityCamera.h"
+//#include "VisibilityRay.h"
+
 
 namespace GtpVisibility {
-  
+
+
 typedef std::vector<OcclusionQuery *> QueryList;
 
@@ -25,69 +26,62 @@
 public:
     /** Constructor taking a hierarchy interface as an argument. This allows to operate
-	on different hierarchy types, while reusing the implementation of the query methods.
+		on different hierarchy types, while reusing the implementation of the query methods.
      */
-    QueryManager(HierarchyInterface *hierarchyInterface, int queryModes);
-    
-    /** 
-	Computes restricted visibility from point by using an explicit camera to execute
-	the visibility query.
-	@param camera The camera to be used
+    //QueryManager(HierarchyInterface *hierarchyInterface, int queryModes);
+    QueryManager(int queryModes);
 
-	@param visibleNodes Pointer to the container where visible nodes should be added.
-	This set is formed of visible leafs or fully visible interior nodes.
-	If NULL no visible nodes are not evaluated.
+    /** Computes restricted visibility from point by using an explicit camera to execute
+		the visibility query.
+		@param camera The camera to be used
 
-	@param visibleGeometry Pointer to the container where visible meshes should be added.
-	If NULL no visible meshes are not evaluated.
+		@param visibleNodes Pointer to the container where visible nodes should be added.
+		This set is formed of visible leafs or fully visible interior nodes.
+		If NULL no visible nodes are not evaluated.
 
-	@param visiblePatches Pointer to the container where visible patches should be added.
-	If NULL no visible meshes are not evaluated.
+		@param visibleGeometry Pointer to the container where visible meshes should be added.
+		If NULL no visible meshes are not evaluated.
 
-	@param relativeVisibility If true the visibility member for
-	NodeInfo and MeshInfo represent relative visibility; i.e. the number of visible
-	pixels divided by the the number of projected pixels.
+		@param visiblePatches Pointer to the container where visible patches should be added.
+		If NULL no visible meshes are not evaluated.
 
-	@return true if the corresponding PVS exists.
+		@param relativeVisibility If true the visibility member for
+		NodeInfo and MeshInfo represent relative visibility; i.e. the number of visible
+		pixels divided by the the number of projected pixels.
+
+		@return true if the corresponding PVS exists.
     */
-    virtual void
-    ComputeCameraVisibility(const Camera &camera,
-			    NodeInfoContainer *visibleNodes,
-			    MeshInfoContainer *visibleGeometry,
-				PatchInfoContainer *visiblePatches,
-			    const bool relativeVisibility,
-				const bool approximateVisibility
-			    ) = 0;
-    
+    /*virtual void ComputeCameraVisibility(const Camera &camera,
+										 NodeInfoContainer *visibleNodes,
+										 MeshInfoContainer *visibleGeometry,
+										 PatchInfoContainer *visiblePatches,
+										 const bool relativeVisibility,
+										 const bool approximateVisibility) = 0;
+    */
     /** 
 	Uses the specified point to execute the visibility query in all directions. 
 	@sa ComputeCameraVisibility()
     */
-    virtual void
+    /*virtual void
     ComputeFromPointVisibility(const Vector3 &point,
-			       NodeInfoContainer *visibleNodes,
-			       MeshInfoContainer *visibleGeometry,
-				   PatchInfoContainer *visiblePatches,
-			       const bool relativeVisibility,
-				   const bool approximateVisibility
-			       ) = 0;
-    
+							   NodeInfoContainer *visibleNodes,
+							   MeshInfoContainer *visibleGeometry,
+							   PatchInfoContainer *visiblePatches,
+							   const bool relativeVisibility,
+							   const bool approximateVisibility) = 0;
+    */
   /** 
       Ray shooting interface: finds an intersection with objects in the scene.
 
       @param ray The given input ray (assuming the ray direction is normalized)
-
       @param visibleMeshes List of meshes intersecting the ray
-
       @param isGlobalLine If false only first intersection with opaque object is returned.
       Otherwise all intersections of the ray with the scene are found.
 
-      @return true if there is any intersection. 
+	  @return true if there is any intersection. 
 	*/
-    virtual bool
-		ShootRay(const Ray &ray,
-	     std::vector<Mesh *> *visibleMeshes,
-	     bool isGlobalLine = false
-	     );
-  
+    /*virtual bool ShootRay(const Ray &ray,
+						  std::vector<Mesh *> *visibleMeshes,
+						  bool isGlobalLine = false);
+*/
 	/** Sets the hierarchy interface.
       @remark the traversal depends on the type of hierarchyInterface the scene consists of.
@@ -101,5 +95,5 @@
 protected:
   
-	HierarchyInterface *mHierarchyInterface;
+	//HierarchyInterface *mHierarchyInterface;
 	int mQueryModes;  
 };
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityInfo.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityInfo.h	(revision 318)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityInfo.h	(revision 2280)
@@ -4,5 +4,5 @@
 #include <vector>
 
-#include "VisibilityMesh.h"
+//#include "VisibilityMesh.h"
 #include "HierarchyInterface.h"
 
@@ -132,9 +132,4 @@
 }
 
-typedef VisibilityInfo<Patch *> PatchInfo;
-typedef VisibilityInfo<Mesh *> MeshInfo;
-typedef VisibilityInfo<HierarchyNode *> NodeInfo;
-
-
 template<class T>
 struct InfoContainer
@@ -143,7 +138,4 @@
 };
 
-typedef std::vector<PatchInfo> PatchInfoContainer;
-typedef std::vector<MeshInfo> MeshInfoContainer;
-typedef std::vector<NodeInfo> NodeInfoContainer;
 
 } // namespace GtpVisibility
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyQueryManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyQueryManager.h	(revision 2255)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/DummyQueryManager.h	(revision 2280)
@@ -19,7 +19,6 @@
       QueryManager(hierarchyInterface, 0) {}
     
-    /**
-       @sa QueryManager::ComputeCameraVisibility()
-     */
+    /** @sa QueryManager::ComputeCameraVisibility()
+    */
     virtual void ComputeCameraVisibility(const Camera &camera,
 										 NodeInfoContainer *visibleNodes,
@@ -29,6 +28,5 @@
 										 const bool approximateVisibility);
     
-    /**
-       @sa QueryManager::ComputeFromPointVisibility()
+    /** @sa QueryManager::ComputeFromPointVisibility()
     */
     virtual void ComputeFromPointVisibility(const Vector3 &point,
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/PreprocessingManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/PreprocessingManager.h	(revision 316)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/PreprocessingManager.h	(revision 2280)
@@ -7,5 +7,5 @@
 #include "HierarchyInterface.h"
 #include "VisibilityInfo.h"
-#include "VisibilityVector3.h"
+//#include "VisibilityVector3.h"
 
 namespace GtpVisibility {
@@ -80,9 +80,9 @@
 	added to the container. Returns true if the corresponding PVS exists.
     */
-    virtual bool GetPVS(const Vector3 &point,
+ /*   virtual bool GetPVS(const Vector3 &point,
 			const float radius,
 			NodeInfoContainer *visibleNodes,
 			MeshInfoContainer *visibleMeshes);
-    
+   */ 
     
   
@@ -115,17 +115,17 @@
 	Returns false if no viewcell was found.
     */
-    virtual bool LocateViewCellIds(const Vector3 &center,
+/*    virtual bool LocateViewCellIds(const Vector3 &center,
 				   const float radius,
 				   vector<int> *viewCellIds
 				   ) = 0;
-    
+  */  
     /**
        Add a PVS of the given viewcell to the already evaluated PVS by computing
        a union with visibleNodes and visibleMeshes. Returns the number of added entries.
     */
-    virtual int AddViewCellPVS(const int cellID,
+   /* virtual int AddViewCellPVS(const int cellID,
 							   NodeInfoContainer *visibleNodes,
 							   MeshInfoContainer *visibleMeshes ) = 0;
-    
+    */
     HierarchyInterface *mSceneTraverser;
   };
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityManager.h	(revision 2278)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityManager.h	(revision 2280)
@@ -68,4 +68,5 @@
 	VisibilityEnvironment *GetVisibilityEnvironment();
 
+
 protected:
 	
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingManager.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingManager.h	(revision 2278)
+++ GTP/trunk/Lib/Vis/OnlineCullingCHC/include/CullingManager.h	(revision 2280)
@@ -2,5 +2,8 @@
 #define _CullingManager_H__
 
+#include <iostream>
+#include <fstream>
 #include "HierarchyInterface.h"
+
 
 
@@ -8,6 +11,5 @@
 
 /** This abstract class implements an interface for a specific culling 
-	algorithm. The algorithm is either used to render a scene 
-	or to make a visibility query.
+	algorithm. The algorithm is either used to render a scene or to make a visibility query.
 */
 class CullingManager
@@ -54,4 +56,5 @@
 	void SetVisualizeCulledNodes(bool visualizeCulledNodes);
 
+
 protected:
 	
@@ -63,5 +66,7 @@
 	HierarchyInterface *mHierarchyInterface;
 	bool mVisualizeCulledNodes;
+
 };
+
 } // namespace GtpVisibility
 #endif // CullingManager
Index: GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityMesh.h
===================================================================
--- GTP/trunk/Lib/Vis/OnlineCullingCHC/include/VisibilityMesh.h	(revision 159)
+++ 	(revision )
@@ -1,13 +1,0 @@
-#ifndef _VisibilityMesh_H__
-#define _VisibilityMesh_H__
-
-//#include <OgreMesh.h>
-#include <OgreEntity.h>
-
-namespace GtpVisibility {
-  typedef Ogre::Entity Mesh;
-  typedef Ogre::SubEntity Patch;
-}
-
-
-#endif // VisibilityMesh.h
