#ifndef OPENMW_COMPONENTS_DETOURNAVIGATOR_SERIALIZATION_H #define OPENMW_COMPONENTS_DETOURNAVIGATOR_SERIALIZATION_H #include #include #include namespace DetourNavigator { class RecastMesh; struct DbRefGeometryObject; struct PreparedNavMeshData; struct RecastSettings; struct AgentBounds; constexpr char recastMeshMagic[] = { 'r', 'c', 's', 't' }; constexpr std::uint32_t recastMeshVersion = 2; constexpr char preparedNavMeshDataMagic[] = { 'p', 'n', 'a', 'v' }; constexpr std::uint32_t preparedNavMeshDataVersion = 1; std::vector serialize(const RecastSettings& settings, const AgentBounds& agentBounds, const RecastMesh& recastMesh, const std::vector& dbRefGeometryObjects); std::vector serialize(const PreparedNavMeshData& value); bool deserialize(const std::vector& data, PreparedNavMeshData& value); } #endif