1
/* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4; tab-width: 4 -*- */
4
* Copyright (C) Nicolas Bruguier 2007-2010 <gandalfn@club-internet.fr>
6
* cairo-compmgr is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public
8
* License as published by the Free Software Foundation; either
9
* version 2.1 of the License, or (at your option) any later version.
11
* cairo-compmgr is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with cairo-compmgr. If not, write to:
18
* The Free Software Foundation, Inc.,
19
* 51 Franklin Street, Fifth Floor
20
* Boston, MA 02110-1301, USA.
23
#ifndef _CCM_EXTENSION_LOADER_H_
24
#define _CCM_EXTENSION_LOADER_H_
26
#include <glib-object.h>
30
#define CCM_TYPE_EXTENSION_LOADER (ccm_extension_loader_get_type ())
31
#define CCM_EXTENSION_LOADER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CCM_TYPE_EXTENSION_LOADER, CCMExtensionLoader))
32
#define CCM_EXTENSION_LOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CCM_TYPE_EXTENSION_LOADER, CCMExtensionLoaderClass))
33
#define CCM_IS_EXTENSION_LOADER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CCM_TYPE_EXTENSION_LOADER))
34
#define CCM_IS_EXTENSION_LOADER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CCM_TYPE_EXTENSION_LOADER))
35
#define CCM_EXTENSION_LOADER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CCM_TYPE_EXTENSION_LOADER, CCMExtensionLoaderClass))
37
typedef struct _CCMExtensionLoaderPrivate CCMExtensionLoaderPrivate;
38
typedef struct _CCMExtensionLoaderClass CCMExtensionLoaderClass;
39
typedef struct _CCMExtensionLoader CCMExtensionLoader;
41
struct _CCMExtensionLoaderClass
43
GObjectClass parent_class;
46
struct _CCMExtensionLoader
48
GObject parent_instance;
50
CCMExtensionLoaderPrivate *priv;
53
GType ccm_extension_loader_get_type (void) G_GNUC_CONST;
55
CCMExtensionLoader* ccm_extension_loader_new ();
56
GSList* ccm_extension_loader_get_preferences_plugins (CCMExtensionLoader* self);
57
GSList* ccm_extension_loader_get_screen_window_plugins (CCMExtensionLoader* self);
58
GSList* ccm_extension_loader_get_screen_plugins (CCMExtensionLoader* self,
60
GSList* ccm_extension_loader_get_window_plugins (CCMExtensionLoader* self,
62
void ccm_extension_loader_add_plugin_path (gchar * path);
66
#endif /* _CCM_EXTENSION_LOADER_H_ */