light/modules/ecs/public/serializer.hpp
light7734 cd886aa8c9
Some checks reported errors
continuous-integration/drone/push Build was killed
refactor: flatten directory structure
2025-07-20 04:46:15 +03:30

34 lines
533 B
C++

#pragma once
#include <ecs/entity.hpp>
#include <ecs/scene.hpp>
namespace YAML {
class Emitter;
}
namespace lt {
class SceneSerializer
{
public:
SceneSerializer(const Ref<Scene> &scene);
void serialize(const std::string &filePath);
auto deserialize(const std::string &file_path) -> bool;
void serialize_binary(const std::string &file_path);
auto deserialize_binary(const std::string &file_path) -> bool;
private:
Ref<Scene> m_scene;
void serialize_entity(YAML::Emitter &out, Entity entity);
};
} // namespace lt