Mercurial > molko
annotate libmlk-core/core/save.h @ 243:71b3b7036de7
misc: lot of cleanups,
- prefix libraries with libmlk,
- move assets from source directories closes #2520,
- prefix header guards closes #2519
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sat, 28 Nov 2020 22:37:30 +0100 |
parents | libcore/core/save.h@dd7c8d4321a3 |
children | c4da052c0def |
rev | line source |
---|---|
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * save.h -- save functions |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 * Copyright (c) 2020 David Demelier <markand@malikania.fr> |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
243
71b3b7036de7
misc: lot of cleanups,
David Demelier <markand@malikania.fr>
parents:
226
diff
changeset
|
19 #ifndef MOLKO_CORE_SAVE_H |
71b3b7036de7
misc: lot of cleanups,
David Demelier <markand@malikania.fr>
parents:
226
diff
changeset
|
20 #define MOLKO_CORE_SAVE_H |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 * \file save.h |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 * \brief Save functions. |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
25 * |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
26 * This module provides several functions to save the game data into a database. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
27 * |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
28 * Database can be opened in read only mode (\ref SAVE_MODE_READ) which will |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
29 * return an error if not present or write mode (\ref SAVE_MODE_WRITE) which |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
30 * will create and initialize a database if not present on disk. |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 #include <stdbool.h> |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
34 #include <time.h> |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
35 |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
36 /** |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
37 * \brief Max property key. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
38 */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
39 #define SAVE_PROPERTY_KEY_MAX (64) |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 * \brief Max property value. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 */ |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
44 #define SAVE_PROPERTY_VALUE_MAX (1024) |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
45 |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
46 /** |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
47 * \brief Save database handle. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
48 */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
49 struct save { |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
50 time_t created; /*!< (-) Date when the save was created. */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
51 time_t updated; /*!< (-) Date when it was last updated. */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
52 void *handle; /*!< (*) Private handle. */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
53 }; |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
54 |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
55 /** |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
56 * \brief Open mode. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
57 */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
58 enum save_mode { |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
59 SAVE_MODE_READ, /*!< Only try to read (no creation). */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
60 SAVE_MODE_WRITE /*!< Open for both reading and writing */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
61 }; |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
62 |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
63 /** |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
64 * \brief Mapping for the property table. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
65 */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
66 struct save_property { |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
67 /** |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
68 * (+) Property key to set. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
69 */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
70 char key[SAVE_PROPERTY_KEY_MAX + 1]; |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
71 |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
72 /** |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
73 * (+) Property value to set. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
74 */ |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
75 char value[SAVE_PROPERTY_VALUE_MAX + 1]; |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
76 }; |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 * Open a database by index. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
80 * |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 * This function use the preferred path to store local files under the user |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 * home directory. The parameter idx specifies the save slot to use. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 * |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
84 * \pre db != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
85 * \param db the database to initialize |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 * \param idx the save slot |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
87 * \param mode the mode |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
88 * \return False on error. |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
90 bool |
226
dd7c8d4321a3
misc: miscellaneous cleanups
David Demelier <markand@malikania.fr>
parents:
172
diff
changeset
|
91 save_open(struct save *db, unsigned int idx, enum save_mode mode); |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
92 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
94 * Open the save slot specified by path. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
95 * |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
96 * \pre db != NULL |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
97 * \pre path != NULL |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
98 * \param db the database to initialize |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 * \param path the path to the save slot |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
100 * \param mode the mode |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
101 * \return False on error. |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 bool |
226
dd7c8d4321a3
misc: miscellaneous cleanups
David Demelier <markand@malikania.fr>
parents:
172
diff
changeset
|
104 save_open_path(struct save *db, const char *path, enum save_mode mode); |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
105 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
106 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
107 * Sets an arbitrary property. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
108 * |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
109 * If the property already exists, replace it. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
110 * |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
111 * \pre db != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
112 * \pre prop != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
113 * \param db the database |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
114 * \param prop the property to set |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
115 * \return False on error. |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
116 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
117 bool |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
118 save_set_property(struct save *db, const struct save_property *prop); |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
119 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
120 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 * Get a property. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
122 * |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
123 * Call this function by setting prop->key to the desired key to get. |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
124 * |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
125 * \pre db != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
126 * \param db the database |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
127 * \param prop the property to retrieve |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
128 * \return False on error and prop->value is left untouched |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
129 */ |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
130 bool |
226
dd7c8d4321a3
misc: miscellaneous cleanups
David Demelier <markand@malikania.fr>
parents:
172
diff
changeset
|
131 save_get_property(struct save *db, struct save_property *prop); |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
132 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
133 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
134 * Remove a property. |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
135 * |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
136 * \pre db != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
137 * \pre prop != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
138 * \param db the database |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
139 * \param prop the property to remove |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
140 * \return false on error |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
141 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
142 bool |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
143 save_remove_property(struct save *db, const struct save_property *prop); |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
144 |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
145 /** |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
146 * Close the save slot. |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
147 * |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
148 * \pre db != NULL |
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
149 * \param db the database to close |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
150 */ |
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
151 void |
172
6250883b81f0
core: improve save module, closes #2507
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
152 save_finish(struct save *db); |
84
a6c2067709ce
core: implement basic save routines, closes #2476 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
153 |
243
71b3b7036de7
misc: lot of cleanups,
David Demelier <markand@malikania.fr>
parents:
226
diff
changeset
|
154 #endif /* !MOLKO_CORE_SAVE_H */ |