blob: 26990a0e489597bf410c10fbff1c285ba6b83e1f [file] [log] [blame]
Jayanth Othayoth24964822017-09-04 22:07:06 -05001#include <cereal/types/set.hpp>
2#include <cereal/archives/binary.hpp>
3#include <fstream>
4
5#include "dump_serialize.hpp"
6
7namespace phosphor
8{
9namespace dump
10{
11namespace elog
12{
13
14void serialize(const ElogList& list, const fs::path& dir)
15{
16 std::ofstream os(dir.c_str(), std::ios::binary);
17 cereal::BinaryOutputArchive oarchive(os);
18 oarchive(list);
19}
20
21bool deserialize(const fs::path& path, ElogList& list)
22{
23 if (fs::exists(path))
24 {
25 std::ifstream is(path.c_str(), std::ios::in | std::ios::binary);
26 cereal::BinaryInputArchive iarchive(is);
27 iarchive(list);
28 return true;
29 }
30 return false;
31}
32
33} // namespace elog
34} // namespace dump
35} // namespace phosphor