Back to index

libindicator  12.10.0
indicator-service-manager.h
Go to the documentation of this file.
00001 /*
00002 An object used to manage services.  Either start them or
00003 just connect to them.
00004 
00005 Copyright 2009 Canonical Ltd.
00006 
00007 Authors:
00008     Ted Gould <ted@canonical.com>
00009 
00010 This library is free software; you can redistribute it and/or
00011 modify it under the terms of the GNU General Public License
00012 version 3.0 as published by the Free Software Foundation.
00013 
00014 This library is distributed in the hope that it will be useful,
00015 but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 GNU General Public License version 3.0 for more details.
00018 
00019 You should have received a copy of the GNU General Public
00020 License along with this library. If not, see
00021 <http://www.gnu.org/licenses/>.
00022 */
00023 
00024 #ifndef __INDICATOR_SERVICE_MANAGER_H__
00025 #define __INDICATOR_SERVICE_MANAGER_H__
00026 
00027 #include <glib.h>
00028 #include <glib-object.h>
00029 
00030 G_BEGIN_DECLS
00031 
00032 #define INDICATOR_SERVICE_MANAGER_TYPE            (indicator_service_manager_get_type ())
00033 #define INDICATOR_SERVICE_MANAGER(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), INDICATOR_SERVICE_MANAGER_TYPE, IndicatorServiceManager))
00034 #define INDICATOR_SERVICE_MANAGER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), INDICATOR_SERVICE_MANAGER_TYPE, IndicatorServiceManagerClass))
00035 #define INDICATOR_IS_SERVICE_MANAGER(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), INDICATOR_SERVICE_MANAGER_TYPE))
00036 #define INDICATOR_IS_SERVICE_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), INDICATOR_SERVICE_MANAGER_TYPE))
00037 #define INDICATOR_SERVICE_MANAGER_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), INDICATOR_SERVICE_MANAGER_TYPE, IndicatorServiceManagerClass))
00038 
00039 #define INDICATOR_SERVICE_MANAGER_SIGNAL_CONNECTION_CHANGE   "connection-change"
00040 
00041 typedef struct _IndicatorServiceManager      IndicatorServiceManager;
00042 typedef struct _IndicatorServiceManagerClass IndicatorServiceManagerClass;
00043 
00054 struct _IndicatorServiceManagerClass {
00055        GObjectClass parent_class;
00056 
00057        /* Signals */
00058        void (*connection_change) (IndicatorServiceManager * sm, gboolean connected, gpointer user_data);
00059 
00060        /* Buffer */
00061        void (*indicator_service_manager_reserved1) (void);
00062        void (*indicator_service_manager_reserved2) (void);
00063        void (*indicator_service_manager_reserved3) (void);
00064        void (*indicator_service_manager_reserved4) (void);
00065 };
00066 
00072 struct _IndicatorServiceManager {
00073        GObject parent;
00074 
00075 };
00076 
00077 GType indicator_service_manager_get_type (void);
00078 
00079 IndicatorServiceManager *   indicator_service_manager_new         (const gchar * dbus_name);
00080 IndicatorServiceManager *   indicator_service_manager_new_version (const gchar * dbus_name,
00081                                                                    guint version);
00082 gboolean                    indicator_service_manager_connected   (IndicatorServiceManager * sm);
00083 void                        indicator_service_manager_set_refresh (IndicatorServiceManager * sm,
00084                                                                    guint time_in_ms);
00085 
00086 G_END_DECLS
00087 
00088 #endif