#include <boost/shared_ptr.hpp>
#include <Moof/Drawable.hh>
+#include <Moof/Octree.hh>
#include <Moof/Resource.hh>
namespace Mf {
+class Scene;
+typedef boost::shared_ptr<Scene> SceneP;
+
class Camera;
+
class Scene : public Resource
{
+ class Impl;
+ boost::shared_ptr<Impl> impl_;
+
public:
+
+ inline static SceneP alloc(const std::string& name)
+ {
+ return SceneP(new Scene(name));
+ }
+
Scene(const std::string& name);
void draw(Scalar alpha, const Camera& cam) const;
void refresh();
- static std::string getPathToResource(const std::string& name);
+ OctreeP getOctree() const;
-private:
- class SceneImpl;
- boost::shared_ptr<SceneImpl> impl_;
+ static std::string getPath(const std::string& name);
};