PreprocessingManager.h

Go to the documentation of this file.
00001 #ifndef _VisibilityPreprocessingManager_H__
00002 #define _VisibilityPreprocessingManager_H__
00003 
00004 #include <string>
00005 using namespace std;
00006 
00007 #include "HierarchyInterface.h"
00008 #include "VisibilityInfo.h"
00009 #include "VisibilityVector3.h"
00010 
00011 namespace GtpVisibility {
00012   
00026   class PreprocessingManager
00027   {
00028   public:
00029     
00035     PreprocessingManager( HierarchyInterface *hierarchyInterface );
00036     
00037 
00041     virtual ~PreprocessingManager();
00042 
00052     virtual bool ExportScene(const string filename
00053                              ) = 0;
00054     
00066     virtual bool LoadPreprocessedData(const string filename
00067                                       ) = 0;
00068     
00087     virtual bool GetPVS(const Vector3 &point,
00088                         const float radius,
00089                         InfoContainer<NodeInfo> *visibleNodes,
00090                         InfoContainer<MeshInfo> *visibleMeshes );
00091     
00092     
00093   
00097     virtual void SetSceneTraverser( HierarchyInterface *hierarchyInterface ) {
00098       mSceneTraverser = hierarchyInterface;
00099     }
00100     
00101   protected:
00105     long GetOccluderChecksum() const {
00106       return 0;
00107     }
00108       
00109     
00113     long GetOccludeeChecksum() const {
00114       return 0;
00115     }
00116     
00117     
00122     virtual bool LocateViewCellIds(const Vector3 &center,
00123                                    const float radius,
00124                                    vector<int> *viewCellIds
00125                                    ) = 0;
00126     
00131     virtual int AddViewCellPVS(const int cellID,
00132                                InfoContainer<NodeInfo> *visibleNodes,
00133                                InfoContainer<MeshInfo> *visibleMeshes ) = 0;
00134     
00135     HierarchyInterface *mSceneTraverser;
00136   };
00137   
00138 };
00139 
00140 #endif // VisibilityPreprocessingInterafce

Generated on Fri Apr 29 19:47:56 2005 for GameTools Visibility Modules by  doxygen 1.4.2