GnuCash  5.6-150-g038405b370+
gnc-recurrence-sql.h
Go to the documentation of this file.
1 /********************************************************************
2  * gnc-recurrence-sql.h: load and save data to SQL *
3  * *
4  * This program is free software; you can redistribute it and/or *
5  * modify it under the terms of the GNU General Public License as *
6  * published by the Free Software Foundation; either version 2 of *
7  * the License, or (at your option) any later version. *
8  * *
9  * This program is distributed in the hope that it will be useful, *
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
12  * GNU General Public License for more details. *
13  * *
14  * You should have received a copy of the GNU General Public License*
15  * along with this program; if not, contact: *
16  * *
17  * Free Software Foundation Voice: +1-617-542-5942 *
18  * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
19  * Boston, MA 02110-1301, USA gnu@gnu.org *
20 \********************************************************************/
29 #ifndef GNC_RECURRENCE_SQL_H
30 #define GNC_RECURRENCE_SQL_H
31 
32 #include <glib.h>
33 
34 #include "Recurrence.h"
35 #include "guid.h"
36 #include "gnc-sql-object-backend.hpp"
37 
39 {
40 public:
42  void load_all(GncSqlBackend*) override { return; }
43  void create_tables(GncSqlBackend*) override;
44  bool commit(GncSqlBackend*, QofInstance*) override { return false; }
45 };
46 
47 gboolean gnc_sql_recurrence_save (GncSqlBackend* sql_be, const GncGUID* guid,
48  const Recurrence* pRecurrence);
49 void gnc_sql_recurrence_save_list (GncSqlBackend* sql_be, const GncGUID* guid,
50  GList* schedule);
51 gboolean gnc_sql_recurrence_delete (GncSqlBackend* sql_be, const GncGUID* guid);
52 Recurrence* gnc_sql_recurrence_load (GncSqlBackend* sql_be, const GncGUID* guid);
53 GList* gnc_sql_recurrence_load_list (GncSqlBackend* sql_be, const GncGUID* guid);
54 
55 #endif /* GNC_RECURRENCE_SQL_H */
void load_all(GncSqlBackend *) override
Load all objects of m_type in the database into memory.
GncSqlRecurrenceBackend()
Recurrences are neither loadable nor committable.
globally unique ID User API
bool commit(GncSqlBackend *, QofInstance *) override
UPDATE/INSERT a single instance of m_type_name into the database.
Encapsulates per-class table schema with functions to load, create a table, commit a changed front-en...
void create_tables(GncSqlBackend *) override
Conditionally create or update a database table from m_col_table.
The type used to store guids in C.
Definition: guid.h:75
Main SQL backend structure.