7 #include <scene/Scene.h>
8 #include <assetloading/ScenePart.h>
11 using std::shared_ptr;
28 friend class boost::serialization::access;
35 template <
class Archive>
36 void serialize(Archive &ar,
const unsigned int version){
37 boost::serialization::void_cast_register<StaticScene, Scene>();
38 boost::serialization::void_cast_register<StaticScene, Scene>();
39 ar &boost::serialization::base_object<Scene>(*
this);
Class representing a scene asset.
Definition: Scene.h:28
Static scene basic implementation.
Definition: StaticScene.h:24
void removeStaticObject(size_t const index)
Remove static object at given index.
Definition: StaticScene.h:97
StaticScene()=default
Static scene default constructor.
void appendStaticObject(shared_ptr< ScenePart > obj)
Append given static object to the scene.
Definition: StaticScene.h:77
void writeObject(std::string path) override
Serialize the static scene and write it to given output file.
Definition: StaticScene.cpp:20
void setStaticObject(size_t const index, shared_ptr< ScenePart > obj)
Set static object at given index.
Definition: StaticScene.h:91
void clearStaticObjects()
Remove all static objects from the static scene.
Definition: StaticScene.h:102
shared_ptr< ScenePart > getStaticObject(size_t const index)
Obtain static object at given index.
Definition: StaticScene.h:84
vector< shared_ptr< ScenePart > > staticObjs
Static objects composing the scene.
Definition: StaticScene.h:49
size_t numStaticObjects()
Obtain the number of static objects in the scene.
Definition: StaticScene.h:107
static StaticScene * readObject(std::string path)
Read serialized static scene from given file.
Definition: StaticScene.cpp:27
StaticScene(Scene &s)
Build a static scene using given scene as basis.
Definition: StaticScene.h:68
void serialize(Archive &ar, const unsigned int version)
Serialize a StaticScene to a stream of bytes.
Definition: StaticScene.h:36