source: trunk/VUT/Ogre/include/OgreItemBufferQueryManager.h @ 154

Revision 154, 1.1 KB checked in by mattausch, 19 years ago (diff)

added item buffer queries.

Line 
1#ifndef _ItemBufferQueryManager_H__
2#define _ItemBufferQueryManager_H__
3
4#include "OgrePlatformQueryManager.h"
5
6namespace Ogre {
7 
8/**
9        Class which implements the QueryManager for Ogre scene queries.
10*/
11class __declspec(dllexport) ItemBufferQueryManager: public PlatformQueryManager
12{
13public:
14    /** Constructor taking a hierarchy interface as an argument. This allows to operate
15        onm different hierarchy types, while reusing the implementation of the query methods.
16    */
17        ItemBufferQueryManager(PlatformHierarchyInterface *hierarchyInterface, Viewport *vp);
18   
19    void ComputeCameraVisibility(const Camera &camera,
20                            InfoContainer<GtpVisibility::NodeInfo> *visibleNodes,
21                            InfoContainer<GtpVisibility::MeshInfo> *visibleGeometry,
22                            bool relativeVisibility = false);
23   
24        bool ShootRay(const Ray &ray, std::vector<Mesh *> *visibleMeshes, bool isGlobalLine = false); 
25       
26protected:
27        void InitItemBuffer( InfoContainer<GtpVisibility::NodeInfo> *visibleNodes,
28                            InfoContainer<GtpVisibility::MeshInfo> *visibleGeometry);
29       
30};
31
32} // namespace Ogre
33
34#endif // ItemBufferQueryManager
Note: See TracBrowser for help on using the repository browser.