liblcf
lsd_reader.h
Go to the documentation of this file.
1 /*
2  * This file is part of liblcf. Copyright (c) 2020 liblcf authors.
3  * https://github.com/EasyRPG/liblcf - https://easyrpg.org
4  *
5  * liblcf is Free/Libre Open Source Software, released under the MIT License.
6  * For the full copyright and license information, please view the COPYING
7  * file that was distributed with this source code.
8  */
9 
10 #ifndef LCF_LSD_READER_H
11 #define LCF_LSD_READER_H
12 
13 #include <string>
14 #include <vector>
15 #include <memory>
16 #include <ctime>
17 #include <stdint.h>
18 #include "rpg_save.h"
19 
23 namespace LSD_Reader {
27  double ToTDateTime(std::time_t const t);
28 
32  std::time_t ToUnixTimestamp(double const ms);
33 
37  double GenerateTimestamp(std::time_t const t = std::time(NULL));
38 
42  void PrepareSave(RPG::Save& save, int32_t version = 0);
43 
47  RPG::Save ClearDefaults(const RPG::Save& save, const RPG::MapInfo& map_info, const RPG::Map& map);
48 
52  std::unique_ptr<RPG::Save> Load(const std::string& filename, const std::string &encoding);
53 
57  bool Save(const std::string& filename, const RPG::Save& save, const std::string &encoding);
58 
59  /*
60  * Saves Savegame as XML.
61  */
62  bool SaveXml(const std::string& filename, const RPG::Save& save);
63 
67  std::unique_ptr<RPG::Save> LoadXml(const std::string& filename);
68 
72  std::unique_ptr<RPG::Save> Load(std::istream& filestream, const std::string &encoding);
73 
77  bool Save(std::ostream& filestream, const RPG::Save& save, const std::string &encoding);
78 
79  /*
80  * Saves Savegame as XML.
81  */
82  bool SaveXml(std::ostream& filestream, const RPG::Save& save);
83 
87  std::unique_ptr<RPG::Save> LoadXml(std::istream& filestream);
88 }
89 
90 #endif
bool SaveXml(const std::string &filename, const RPG::Save &save)
Definition: lsd_reader.cpp:59
std::unique_ptr< RPG::Save > LoadXml(const std::string &filename)
Definition: lsd_reader.cpp:68
double GenerateTimestamp(std::time_t const t=std::time(NULL))
Definition: lsd_reader.cpp:31
RPG::Save ClearDefaults(const RPG::Save &save, const RPG::MapInfo &map_info, const RPG::Map &map)
Definition: lsd_reader.cpp:137
double ToTDateTime(std::time_t const t)
Definition: lsd_reader.cpp:22
bool Save(const std::string &filename, const RPG::Save &save, const std::string &encoding)
Definition: lsd_reader.cpp:50
std::unique_ptr< RPG::Save > Load(const std::string &filename, const std::string &encoding)
Definition: lsd_reader.cpp:41
void PrepareSave(RPG::Save &save, int32_t version=0)
Definition: lsd_reader.cpp:35
std::time_t ToUnixTimestamp(double const ms)
Definition: lsd_reader.cpp:27