Ignore:
Timestamp:
03/22/07 18:24:13 (17 years ago)
Author:
mattausch
Message:

removed dependency on ogre in gtpvisibility

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/OnlineCullingCHC/OGRE/src/OgreOcclusionQueriesQueryManager.cpp

    r2255 r2280  
    1 #include "OgreOcclusionQueriesQueryManager.h" 
    21#include <OgreLogManager.h> 
    32#include <OgreStringConverter.h> 
    43#include <vector> 
    54#include <OgreSubEntity.h> 
    6 #include "OgrePlatformHierarchyInterface.h" 
     5 
     6#include "OgreOcclusionQueriesQueryManager.h" 
     7//#include "OgrePlatformHierarchyInterface.h" 
    78#include "OgreOcclusionCullingSceneManager.h" 
    89#include "VisibilityEnvironment.h" 
     
    1314 
    1415//-----------------------------------------------------------------------  
    15 OcclusionQueriesQueryManager::OcclusionQueriesQueryManager( 
    16                                                         GtpVisibility::HierarchyInterface *hierarchyInterface,  
     16/*OcclusionQueriesQueryManager::OcclusionQueriesQueryManager( 
     17                                                        PlatformHierarchyInterface *hierarchyInterface,  
    1718                                                        Viewport *vp, 
    1819                                                        int queryModes, 
    19                                                         int itemBufferMode): 
    20 PlatformQueryManager(hierarchyInterface, vp, queryModes),  
     20                                                        int itemBufferMode) 
     21:PlatformQueryManager(hierarchyInterface, vp, queryModes),  
    2122mItemBufferMode(itemBufferMode) 
    2223{ 
    23 } 
     24}*/ 
    2425//----------------------------------------------------------------------- 
    2526void OcclusionQueriesQueryManager::ComputeCameraVisibility( 
    2627                                                                                        const Camera &camera, 
    27                                                                                         GtpVisibility::NodeInfoContainer *visibleNodes, 
    28                                                                                         GtpVisibility::MeshInfoContainer *visibleGeometry, 
    29                                                                                         GtpVisibility::PatchInfoContainer *visiblePatches, 
     28                                                                                        NodeInfoContainer *visibleNodes, 
     29                                                                                        MeshInfoContainer *visibleGeometry, 
     30                                                                                        PatchInfoContainer *visiblePatches, 
    3031                                                                                        const bool relativeVisibility, 
    3132                                                                                        const bool approximateVisibility) 
     
    119120 
    120121        // vector for storing entities of meshes 
    121         GtpVisibility::GeometryVector geometryList; 
     122        GeometryVector geometryList; 
    122123         
    123124        // store geometry of the hierarchy nodes in a geometry list 
     
    131132         
    132133        // geometry list iterator 
    133         GtpVisibility::GeometryVector::iterator geometryIt, geometryIt_end = geometryList.end(); 
     134        GeometryVector::iterator geometryIt, geometryIt_end = geometryList.end(); 
    134135 
    135136        // vector for storing subentities of meshes 
    136         GtpVisibility::PatchVector patchList; 
     137        PatchVector patchList; 
    137138 
    138139        // store patchges of the geometries in a patch list 
     
    145146        } 
    146147 
    147         GtpVisibility::PatchVector::iterator patchIt, patchIt_end = patchList.end(); 
     148        PatchVector::iterator patchIt, patchIt_end = patchList.end(); 
    148149 
    149150        // to obtain the correct number of projected pixels, depth write must be disabled 
     
    183184                                const int projPixels = 1; 
    184185 
    185                                 visibleNodes->push_back(GtpVisibility::NodeInfo(*nodeIt, visPixels, projPixels)); 
     186                                visibleNodes->push_back(NodeInfo(*nodeIt, visPixels, projPixels)); 
    186187                                queryList[i].push_back(NULL); 
    187188                        } 
     
    207208                                        const int projPixels = 1; 
    208209 
    209                                         visibleGeometry->push_back(GtpVisibility::MeshInfo(*geometryIt, visPixels, projPixels)); 
     210                                        visibleGeometry->push_back(MeshInfo(*geometryIt, visPixels, projPixels)); 
    210211                                } 
    211212                                else 
     
    229230                                        const int projPixels = 1; 
    230231 
    231                                         visiblePatches->push_back(GtpVisibility::PatchInfo(*patchIt, visPixels, projPixels)); 
     232                                        visiblePatches->push_back(PatchInfo(*patchIt, visPixels, projPixels)); 
    232233                                } 
    233234                                else 
     
    304305void OcclusionQueriesQueryManager::ComputeFromPointVisibility( 
    305306                                                                const Vector3 &point, 
    306                                                                 GtpVisibility::NodeInfoContainer *visibleNodes, 
    307                                                                 GtpVisibility::MeshInfoContainer *visibleGeometry, 
    308                                                                 GtpVisibility::PatchInfoContainer *visiblePatches, 
     307                                                                NodeInfoContainer *visibleNodes, 
     308                                                                MeshInfoContainer *visibleGeometry, 
     309                                                                PatchInfoContainer *visiblePatches, 
    309310                                                                const bool relativeVisibility, 
    310311                                                                const bool approximateVisibility) 
     
    336337                                                GtpVisibility::QueryList::iterator &projQueryIt, 
    337338                                                GtpVisibility::NodeVector *nodeList,   
    338                                                 GtpVisibility::NodeInfoContainer *visibleNodes, 
     339                                                NodeInfoContainer *visibleNodes, 
    339340                                                bool relativeVisibility) 
    340341{ 
     
    368369                if (visiblePixels > 0) 
    369370                { 
    370                         visibleNodes->push_back( 
    371                                 GtpVisibility::NodeInfo(*nodeIt, visiblePixels, projectedPixels)); 
     371                        visibleNodes->push_back(NodeInfo(*nodeIt, visiblePixels, projectedPixels)); 
    372372                } 
    373373        } 
     
    376376void OcclusionQueriesQueryManager::CollectRelativeGeometryVisibilityForItemBuffer( 
    377377                                                                        GtpVisibility::QueryList::iterator &projQueryIt, 
    378                                                                         GtpVisibility::GeometryVector *geometryList,  
    379                                                                         GtpVisibility::MeshInfoContainer *visibleGeometry) 
    380 { 
    381         GtpVisibility::GeometryVector::iterator geometryIt; 
     378                                                                        GeometryVector *geometryList,  
     379                                                                        MeshInfoContainer *visibleGeometry) 
     380{ 
     381        GeometryVector::iterator geometryIt; 
    382382 
    383383        //-- queries for geometry 
     
    400400void OcclusionQueriesQueryManager::CollectRelativePatchVisibilityForItemBuffer( 
    401401                                                                        GtpVisibility::QueryList::iterator &projQueryIt, 
    402                                                                         GtpVisibility::PatchVector *patchList,  
    403                                                                         GtpVisibility::PatchInfoContainer *visiblePatches) 
    404 { 
    405         GtpVisibility::PatchVector::iterator patchIt; 
     402                                                                        PatchVector *patchList,  
     403                                                                        PatchInfoContainer *visiblePatches) 
     404{ 
     405        PatchVector::iterator patchIt; 
    406406 
    407407        //-- queries for geometry 
     
    425425                                                        GtpVisibility::QueryList::iterator &visQueryIt,  
    426426                                                        GtpVisibility::QueryList::iterator &projQueryIt, 
    427                                                         GtpVisibility::GeometryVector *geometryList,  
    428                                                         GtpVisibility::MeshInfoContainer *visibleGeometry, 
     427                                                        GeometryVector *geometryList,  
     428                                                        MeshInfoContainer *visibleGeometry, 
    429429                                                        bool relativeVisibility) 
    430430{ 
    431         GtpVisibility::GeometryVector::iterator geometryIt; 
     431        GeometryVector::iterator geometryIt; 
    432432 
    433433        //-- queries for geometry 
     
    451451                if (visiblePixels > 0) 
    452452                {                         
    453                         visibleGeometry->push_back(GtpVisibility::MeshInfo(*geometryIt, visiblePixels,  
    454                                 projectedPixels)); 
     453                        visibleGeometry->push_back(MeshInfo(*geometryIt, visiblePixels, projectedPixels)); 
    455454                } 
    456455        } 
     
    460459                                                        GtpVisibility::QueryList::iterator &visQueryIt,  
    461460                                                        GtpVisibility::QueryList::iterator &projQueryIt, 
    462                                                         GtpVisibility::PatchVector *patchList,  
    463                                                         GtpVisibility::PatchInfoContainer *visiblePatches, 
     461                                                        PatchVector *patchList,  
     462                                                        PatchInfoContainer *visiblePatches, 
    464463                                                        bool relativeVisibility) 
    465464{ 
    466         GtpVisibility::PatchVector::iterator patchIt; 
     465        PatchVector::iterator patchIt; 
    467466 
    468467        //-- queries for patch 
     
    486485                if (visiblePixels > 0) 
    487486                {                         
    488                         visiblePatches->push_back(GtpVisibility::PatchInfo(*patchIt, visiblePixels,  
    489                                 projectedPixels)); 
     487                        visiblePatches->push_back( 
     488                                PatchInfo(*patchIt, visiblePixels, projectedPixels)); 
    490489                } 
    491490        } 
     
    493492//----------------------------------------------------------------------- 
    494493void  OcclusionQueriesQueryManager::RemoveDuplicateNodes( 
    495                                         GtpVisibility::NodeInfoContainer *visibleNodes) 
     494                                        NodeInfoContainer *visibleNodes) 
    496495{ 
    497496        sort(visibleNodes->begin(), visibleNodes->end()); 
    498497 
    499         GtpVisibility::NodeInfoContainer::iterator visibleNodesIt, 
     498        NodeInfoContainer::iterator visibleNodesIt, 
    500499                visibleNodesIt_end = visibleNodes->end(); 
    501500         
    502         GtpVisibility::NodeInfo *nodeInfo = NULL; 
     501        NodeInfo *nodeInfo = NULL; 
    503502 
    504503        for (visibleNodesIt = visibleNodes->begin(); visibleNodesIt != visibleNodesIt_end;  
     
    521520//----------------------------------------------------------------------- 
    522521void  OcclusionQueriesQueryManager::RemoveDuplicateGeometry( 
    523                                 GtpVisibility::MeshInfoContainer *visibleGeometry) 
     522                                MeshInfoContainer *visibleGeometry) 
    524523{ 
    525524        sort(visibleGeometry->begin(), visibleGeometry->end()); 
    526525         
    527         GtpVisibility::MeshInfoContainer::iterator visibleGeomIt, 
     526        MeshInfoContainer::iterator visibleGeomIt, 
    528527                        visibleGeomIt_end = visibleGeometry->end(); 
    529528 
    530         GtpVisibility::MeshInfo *geomInfo = NULL; 
     529        MeshInfo *geomInfo = NULL; 
    531530 
    532531        for (visibleGeomIt = visibleGeometry->begin(); visibleGeomIt != visibleGeomIt_end;  
     
    549548//----------------------------------------------------------------------- 
    550549void  OcclusionQueriesQueryManager::RemoveDuplicatePatches( 
    551                                 GtpVisibility::PatchInfoContainer *visiblePatches) 
     550                                PatchInfoContainer *visiblePatches) 
    552551{ 
    553552        sort(visiblePatches->begin(), visiblePatches->end()); 
    554553         
    555         GtpVisibility::PatchInfoContainer::iterator visiblePatchIt, 
     554        PatchInfoContainer::iterator visiblePatchIt, 
    556555                        visiblePatchIt_end = visiblePatches->end(); 
    557556 
    558         GtpVisibility::PatchInfo *patchInfo = NULL; 
     557        PatchInfo *patchInfo = NULL; 
    559558 
    560559        for (visiblePatchIt = visiblePatches->begin(); visiblePatchIt != visiblePatchIt_end;  
     
    577576//----------------------------------------------------------------------- 
    578577void OcclusionQueriesQueryManager::GetNodePatchList(GtpVisibility::HierarchyNode *node,  
    579                                                                                                         GtpVisibility::PatchVector *patchList) 
    580 { 
    581         GtpVisibility::GeometryVector geomList; 
     578                                                                                                        PatchVector *patchList) 
     579{ 
     580        GeometryVector geomList; 
    582581        mHierarchyInterface->GetNodeGeometryList(node, &geomList, false); 
    583582 
    584583        // geometry list iterator 
    585         GtpVisibility::GeometryVector::iterator geomIt, geomIt_end = geomList.end(); 
     584        GeometryVector::iterator geomIt, geomIt_end = geomList.end(); 
    586585 
    587586        for (geomIt = geomList.begin(); geomIt != geomIt_end; ++geomIt) 
Note: See TracChangeset for help on using the changeset viewer.