source: trunk/third/bonobo/bonobo/bonobo-storage-plugin.h @ 15509

Revision 15509, 1.4 KB checked in by ghudson, 24 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r15508, which included commits to RCS files with non-trunk default branches.
Line 
1/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
2/*
3 * Author:
4 *   Dietmar Maurer (dietmar@maurer-it.com)
5 *
6 * Copyright 2000 Maurer IT Systemlösungen (http://www.maurer-it.com)
7 */
8
9#ifndef _BONOBO_STORAGE_PLUGIN_H_
10#define _BONOBO_STORAGE_PLUGIN_H_
11
12#include <bonobo/bonobo-storage.h>
13#include <gmodule.h>
14
15#define BONOBO_STORAGE_VERSION "1.0"
16
17BEGIN_GNOME_DECLS
18
19typedef struct          _StoragePlugin         StoragePlugin;
20typedef gint           (*StoragePluginInitFn) (StoragePlugin *plugin);
21typedef BonoboStorage *(*BonoboStorageOpenFn) (const char *path,
22                                               gint flags,
23                                               gint mode,
24                                               CORBA_Environment *ev);
25typedef BonoboStream  *(*BonoboStreamOpenFn)  (const char *path,
26                                               gint flags,
27                                               gint mode,
28                                               CORBA_Environment *ev);
29
30struct _StoragePlugin {
31        /* public, read only */
32        gchar               *filename;     
33        gchar               *name;         /* efs, file */
34        gchar               *description;
35        gchar               *version;
36        BonoboStorageOpenFn  storage_open;
37        BonoboStreamOpenFn   stream_open;
38        /* private */
39        GModule             *handle;
40};
41
42extern GList *storage_plugin_list;
43
44/* Each plugin must have this one function */
45extern gint init_storage_plugin (StoragePlugin *plugin);
46
47void           bonobo_storage_load_plugins (void);
48StoragePlugin *bonobo_storage_plugin_find  (const gchar *name);
49
50END_GNOME_DECLS
51
52#endif /* _BONOBO_STORAGE_PLUGIN_H_ */
Note: See TracBrowser for help on using the repository browser.