#ifndef _VisibilityInfo_H__ #define _VisibilityInfo_H__ #include #include "VisibilityMesh.h" #include "HierarchyInterface.h" namespace GtpVisibility { /** Class storing the visibility information of a scene node. */ class NodeInfo { public: NodeInfo(HierarchyNode *node,const float v): mNode(node), mVisibility(v) {} protected: /** pointer to the scene node */ HierarchyNode *mNode; /** node visibility can either be a number of visible pixels or relative number of visible pixels (if the hardware queries will provide the total number of ratsterized pixels */ float mVisibility; }; /** Class storing the visibility information of a mesh. */ class MeshInfo { public: MeshInfo(Mesh *mesh, const float v): mMesh(mesh), mVisibility(v) {} protected: /** Pointer to the mesh. */ Mesh *mMesh; /** Node visibility can either be a number of visible pixels or relative number of visible pixels (if the hardware queries will provide the total number of ratsterized pixels. */ float mVisibility; }; //TODO: this define shall be replaced by template typedef #define InfoContainer std::vector }; #endif