GCC Code Coverage Report


Directory: ./
File: include/coal/serialization/serializer.h
Date: 2025-04-01 09:23:31
Exec Total Coverage
Lines: 0 20 0.0%
Branches: 0 0 -%

Line Branch Exec Source
1 //
2 // Copyright (c) 2024 INRIA
3 //
4
5 #ifndef COAL_SERIALIZATION_SERIALIZER_H
6 #define COAL_SERIALIZATION_SERIALIZER_H
7
8 #include "coal/serialization/archive.h"
9
10 namespace coal {
11 namespace serialization {
12
13 struct Serializer {
14 /// \brief Loads an object from a text file.
15 template <typename T>
16 static void loadFromText(T& object, const std::string& filename) {
17 ::coal::serialization::loadFromText(object, filename);
18 }
19
20 /// \brief Saves an object as a text file.
21 template <typename T>
22 static void saveToText(const T& object, const std::string& filename) {
23 ::coal::serialization::saveToText(object, filename);
24 }
25
26 /// \brief Loads an object from a stream string.
27 template <typename T>
28 static void loadFromStringStream(T& object, std::istringstream& is) {
29 ::coal::serialization::loadFromStringStream(object, is);
30 }
31
32 /// \brief Saves an object to a string stream.
33 template <typename T>
34 static void saveToStringStream(const T& object, std::stringstream& ss) {
35 ::coal::serialization::saveToStringStream(object, ss);
36 }
37
38 /// \brief Loads an object from a string.
39 template <typename T>
40 static void loadFromString(T& object, const std::string& str) {
41 ::coal::serialization::loadFromString(object, str);
42 }
43
44 /// \brief Saves a Derived object to a string.
45 template <typename T>
46 static std::string saveToString(const T& object) {
47 return ::coal::serialization::saveToString(object);
48 }
49
50 /// \brief Loads an object from an XML file.
51 template <typename T>
52 static void loadFromXML(T& object, const std::string& filename,
53 const std::string& tag_name) {
54 ::coal::serialization::loadFromXML(object, filename, tag_name);
55 }
56
57 /// \brief Saves an object as an XML file.
58 template <typename T>
59 static void saveToXML(const T& object, const std::string& filename,
60 const std::string& tag_name) {
61 ::coal::serialization::saveToXML(object, filename, tag_name);
62 }
63
64 /// \brief Loads a Derived object from an binary file.
65 template <typename T>
66 static void loadFromBinary(T& object, const std::string& filename) {
67 ::coal::serialization::loadFromBinary(object, filename);
68 }
69
70 /// \brief Saves a Derived object as an binary file.
71 template <typename T>
72 static void saveToBinary(const T& object, const std::string& filename) {
73 ::coal::serialization::saveToBinary(object, filename);
74 }
75
76 /// \brief Loads an object from a binary buffer.
77 template <typename T>
78 static void loadFromBuffer(T& object, boost::asio::streambuf& container) {
79 ::coal::serialization::loadFromBuffer(object, container);
80 }
81
82 /// \brief Saves an object as a binary buffer.
83 template <typename T>
84 static void saveToBuffer(const T& object, boost::asio::streambuf& container) {
85 ::coal::serialization::saveToBuffer(object, container);
86 }
87 };
88
89 } // namespace serialization
90 } // namespace coal
91
92 #endif // ifndef COAL_SERIALIZATION_SERIALIZER_H
93