18 #ifndef __H__OCULAR_CORE_SCENE_ASCENE_TREE__H__
19 #define __H__OCULAR_CORE_SCENE_ASCENE_TREE__H__
21 #include "SceneNode.hpp"
22 #include "SceneTreeType.hpp"
25 #include "Math/Bounds/Ray.hpp"
26 #include "Math/Bounds/BoundsSphere.hpp"
27 #include "Math/Bounds/BoundsAABB.hpp"
28 #include "Math/Bounds/BoundsOBB.hpp"
29 #include "Math/Geometry/Frustum.hpp"
88 virtual void addObjects(std::vector<SceneObject*>
const& objects) = 0;
110 virtual void removeObjects(std::vector<SceneObject*>
const& objects) = 0;
118 virtual void getAllObjects(std::vector<SceneObject*>& objects)
const = 0;
172 virtual SceneTreeType
getType()
const = 0;
virtual void getAllVisibleObjects(Math::Frustum const &frustum, std::vector< SceneObject * > &objects) const =0
virtual void addObjects(std::vector< SceneObject * > const &objects)=0
virtual void getAllObjects(std::vector< SceneObject * > &objects) const =0
virtual bool removeObject(SceneObject *object)=0
virtual void restructure()=0
Definition: Frustum.hpp:57
Note: Once this library is made dynamic, this will no longer be needed.
Definition: Common.hpp:70
Definition: BoundsOBB.hpp:56
virtual void addObject(SceneObject *object)=0
virtual SceneTreeType getType() const =0
virtual void removeObjects(std::vector< SceneObject * > const &objects)=0
Definition: SceneObject.hpp:93
std::vector< SceneObject * > m_NewObjects
Newly added objects that are waiting to be added to the tree.
Definition: ISceneTree.hpp:181
virtual void getIntersections(Math::Ray const &ray, std::vector< SceneObject * > &objects) const =0
virtual void setDirty(UUID const &uuid)=0
Definition: BoundsAABB.hpp:63
Definition: BoundsSphere.hpp:52
Definition: ISceneTree.hpp:51