3 #include "core/scene_data.h" 5 #include "utilities/aligned/unordered_map.h" 6 #include "utilities/map_to_vector.h" 8 #include <experimental/optional> 23 void load(
const std::string& f);
24 void save(
const std::string& f)
const;
32 const std::experimental::optional<scene_data>& get_scene_data()
const;
36 std::unique_ptr<impl> pimpl_;
39 template <
typename Vertex,
typename Surface>
40 auto scene_with_extracted_surfaces(
42 const util::aligned::unordered_map<std::string, Surface>&
44 const auto surfaces = util::map_to_vector(
45 begin(scene.get_surfaces()),
46 end(scene.get_surfaces()),
48 const auto it = surface_table.find(i);
49 return it != surface_table.end() ? it->second : Surface();
52 return make_scene_data(
53 scene.get_triangles(), scene.get_vertices(), std::move(surfaces));
Definition: scene_data.h:13
Definition: scene_data_loader.h:13
Definition: scene_data_loader.cpp:16
Definition: capsule_base.h:9
std::string get_extensions() const
Get all file extensions that the loader might understand.
Definition: scene_data_loader.cpp:123