QOF  0.7.5
qofbackend.h
Go to the documentation of this file.
1 /********************************************************************\
2  * qofbackend.h: api for data storage backend *
3  * This program is free software; you can redistribute it and/or *
4  * modify it under the terms of the GNU General Public License as *
5  * published by the Free Software Foundation; either version 2 of *
6  * the License, or (at your option) any later version. *
7  * *
8  * This program is distributed in the hope that it will be useful, *
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
11  * GNU General Public License for more details. *
12  * *
13  * You should have received a copy of the GNU General Public License*
14  * along with this program; if not, contact: *
15  * *
16  * Free Software Foundation Voice: +1-617-542-5942 *
17  * 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
18  * Boston, MA 02110-1301, USA gnu@gnu.org *
19  * *
20 \********************************************************************/
42 #ifndef QOF_BACKEND_H
43 #define QOF_BACKEND_H
44 
45 #include "qofinstance.h"
46 
47 #define QOF_MOD_BACKEND "qof-backend"
48 
54 typedef gint32 QofErrorId;
55 
61 
69 typedef struct QofBackend_s QofBackend;
70 
72 typedef void (*QofBePercentageFunc) (const gchar * message, double percent);
73 
83 void qof_backend_run_begin (QofBackend * be, QofInstance * inst);
84 
85 gboolean qof_backend_begin_exists (QofBackend * be);
86 
87 void qof_backend_run_commit (QofBackend * be, QofInstance * inst);
88 
89 gboolean qof_backend_commit_exists (QofBackend * be);
114 typedef struct QofBackendOption_s
115 {
118  const gchar *option_name;
119  const gchar *description;
120  const gchar *tooltip;
121  gpointer value;
123 
126 
129 
132 
134 typedef void (*QofBackendOptionCB) (QofBackendOption *, gpointer data);
135 
137 void
139  gpointer data);
140 
149 void qof_backend_load_config (QofBackend * be, KvpFrame * config);
150 
181 gboolean
182 qof_load_backend_library (const gchar * directory,
183  const gchar * filename, const gchar * init_fcn);
184 
187 
192 void qof_book_set_backend (QofBook * book, QofBackend *);
193 
196 #endif /* QOF_BACKEND_H */