Ignore:
Timestamp:
08/22/06 22:48:02 (18 years ago)
Author:
mattausch
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • GTP/trunk/Lib/Vis/Preprocessing/src/HierarchyManager.h

    r1239 r1259  
    3939class VspTree; 
    4040class KdTreeStatistics; 
    41  
     41class BvHierarchy; 
    4242 
    4343 
     
    8686class HierarchyManager 
    8787{ 
     88        friend VspTree; 
     89        friend OspTree; 
     90        friend BvHierarchy; 
     91 
    8892public: 
    8993        /** Constructor taking an object space partition and a view space partition tree. 
     
    112116                                        AxisAlignedBox3 *forcedViewSpace); 
    113117 
    114 public: 
    115         VspTree &mVspTree; 
    116         OspTree &mOspTree; 
    117  
     118        enum  
     119        { 
     120                NO_OBJ_SUBDIV, 
     121                KD_BASED_OBJ_SUBDIV, 
     122                BV_BASED_OBJ_SUBDIV 
     123        }; 
     124 
     125        /** The type of object space subdivison 
     126        */ 
     127        inline int GetObjectSpaceSubdivisonType() const 
     128        { 
     129                return mObjectSpaceSubdivisonType; 
     130        } 
     131         
    118132protected: 
    119133 
     
    143157        void EvalSubdivisionStats(const SubdivisionCandidate &tData); 
    144158 
    145         void AddSubdivisionStats(const int splits, 
     159        void AddSubdivisionStats( 
     160                const int splits, 
    146161                const float renderCostDecr, 
    147162                const float totalRenderCost); 
    148163 
     164        void CollectObjectSpaceDirtyList(); 
     165        void CollectViewSpaceDirtyList(); 
     166 
     167        bool AddSampleToPvs(Intersectable *obj,  
     168                                                const float pdf, 
     169                                                float &contribution) const; 
     170 
     171        void CollectViewSpaceDirtyList(SubdivisionCandidateContainer &dirtyList); 
     172        void CollectObjectSpaceDirtyList(SubdivisionCandidateContainer &dirtyList); 
     173                 
    149174 
    150175protected: 
     176 
     177        int mObjectSpaceSubdivisonType; 
     178 
     179        VspTree *mVspTree; 
     180        OspTree *mOspTree; 
     181        BvHierarchy *mBvHierarchy; 
    151182 
    152183        AxisAlignedBox3 mBoundingBox; 
Note: See TracChangeset for help on using the changeset viewer.