source: trunk/VUT/Ogre/include/OgreSceneNodeHierarchyInterface.h @ 85

Revision 85, 1.4 KB checked in by mattausch, 20 years ago (diff)

corrected bug so chc is much faster than stop and wait

Line 
1#ifndef _SceneNodeHierarchyInterface_H__
2#define _SceneNodeHierarchyInterface_H__
3
4#include "OgrePlatformHierarchyInterface.h"
5
6namespace Ogre {
7
8/**
9        This class implements the hierarchy interface for the Ogre scene node hierarchy.
10*/
11class SceneNodeHierarchyInterface: public PlatformHierarchyInterface
12{
13public:
14        /** Construction taking the current scene manager and the current
15                rendersystem as argument
16                @param sm current scene manager
17                @param rsys current render system
18        */
19        SceneNodeHierarchyInterface(SceneManager *sm, RenderSystem *rsys);
20       
21        bool IsLeaf(GtpVisibility::HierarchyNode *node) const;
22       
23        void TraverseNode(GtpVisibility::HierarchyNode *node);
24        void RenderNode(GtpVisibility::HierarchyNode *node);
25        void PullUpVisibility(GtpVisibility::HierarchyNode *node);
26        bool HasGeometry(GtpVisibility::HierarchyNode *node) const;
27        bool HasGreaterDistance(GtpVisibility::HierarchyNode *node1,
28                                                    GtpVisibility::HierarchyNode *node2) const;
29
30        void SetNodeVisible(GtpVisibility::HierarchyNode *node, const bool visible);
31        void SetLastVisited(GtpVisibility::HierarchyNode *node,
32                                                const unsigned int frameId);
33
34        bool IsNodeVisible(GtpVisibility::HierarchyNode *node) const;
35        unsigned int LastVisited(GtpVisibility::HierarchyNode *node) const;
36
37        AxisAlignedBox *GetBoundingBox(GtpVisibility::HierarchyNode *node);
38};
39
40} // namespace Ogre
41#endif // SceneNodeHierarchyInterface_H
Note: See TracBrowser for help on using the repository browser.