diff options
author | Rob Taylor <rob.taylor@codethink.co.uk> | 2007-07-31 19:52:13 +0100 |
---|---|---|
committer | Rob Taylor <rob.taylor@codethink.co.uk> | 2007-08-01 12:35:21 +0100 |
commit | f7df59e20dd812d0dcb9cdd9d8a5feddab5f9257 (patch) | |
tree | 87564956a744dccf706c06f8577e98f5f5c43d4a | |
parent | a3d42549b71b82e229457cec1ce1cac72e68f3a1 (diff) |
update plugins to new plugin interface
Updates all the existing plugins to use the new plugin interface.
-rw-r--r-- | plugins/glue/acadapter/ohm-plugin-acadapter.c | 36 | ||||
-rw-r--r-- | plugins/glue/backlight/ohm-plugin-backlight.c | 62 | ||||
-rw-r--r-- | plugins/glue/battery/ohm-plugin-battery.c | 37 | ||||
-rw-r--r-- | plugins/glue/buttons/ohm-plugin-buttons.c | 44 | ||||
-rw-r--r-- | plugins/glue/dpms/ohm-plugin-dpms.c | 46 | ||||
-rw-r--r-- | plugins/glue/idle/ohm-plugin-idle.c | 48 | ||||
-rw-r--r-- | plugins/glue/powerstatus/ohm-plugin-powerstatus.c | 57 | ||||
-rw-r--r-- | plugins/glue/timeremaining/ohm-plugin-timeremaining.c | 55 | ||||
-rw-r--r-- | plugins/glue/xorg/ohm-plugin-xorg.c | 33 | ||||
-rw-r--r-- | plugins/glue/xrandr/ohm-plugin-xrandr.c | 43 | ||||
-rw-r--r-- | plugins/policy/display/ohm-plugin-display.c | 82 | ||||
-rw-r--r-- | plugins/policy/suspend/ohm-plugin-suspend.c | 66 |
12 files changed, 203 insertions, 406 deletions
diff --git a/plugins/glue/acadapter/ohm-plugin-acadapter.c b/plugins/glue/acadapter/ohm-plugin-acadapter.c index ea4a24f..a2e1d79 100644 --- a/plugins/glue/acadapter/ohm-plugin-acadapter.c +++ b/plugins/glue/acadapter/ohm-plugin-acadapter.c @@ -23,21 +23,6 @@ #include <string.h> #include <ohm-plugin.h> -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - ohm_plugin_conf_provide (plugin, "acadapter.state"); - return TRUE; -} - static void hal_property_changed_cb (OhmPlugin *plugin, guint id, @@ -51,7 +36,7 @@ hal_property_changed_cb (OhmPlugin *plugin, } /** - * plugin_coldplug: + * plugin_initalize: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -59,12 +44,12 @@ hal_property_changed_cb (OhmPlugin *plugin, * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initalize (OhmPlugin *plugin) { gboolean state; guint num; - /* initialise HAL */ + /* initalize HAL */ ohm_plugin_hal_init (plugin); /* we want this function to get the property modified events for all devices */ @@ -82,14 +67,15 @@ plugin_coldplug (OhmPlugin *plugin) ohm_plugin_conf_set_key (plugin, "acadapter.state", state); } -static OhmPluginInfo plugin_info = { + +OHM_PLUGIN_DESCRIPTION ( "OHM HAL AC Adapter", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - NULL, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initalize, /* initalize */ + NULL, /* destroy */ + NULL /* notify */ +); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_PROVIDES("acadapter.state"); diff --git a/plugins/glue/backlight/ohm-plugin-backlight.c b/plugins/glue/backlight/ohm-plugin-backlight.c index ea6be96..8950972 100644 --- a/plugins/glue/backlight/ohm-plugin-backlight.c +++ b/plugins/glue/backlight/ohm-plugin-backlight.c @@ -113,27 +113,6 @@ backlight_get_brightness (OhmPlugin *plugin, guint *brightness) } #endif -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* todo: split into dcon glue plugin */ - ohm_plugin_conf_provide (plugin, "backlight.state"); - - /* tell ohmd what keys we are going to provide so it can create them */ - ohm_plugin_conf_provide (plugin, "backlight.hardware_brightness"); - ohm_plugin_conf_provide (plugin, "backlight.percent_brightness"); - ohm_plugin_conf_provide (plugin, "backlight.num_levels"); - return TRUE; -} - static guint percent_to_discrete (guint percentage, guint levels) @@ -150,7 +129,7 @@ percent_to_discrete (guint percentage, } /** - * plugin_coldplug: + * plugin_initalize: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -158,15 +137,13 @@ percent_to_discrete (guint percentage, * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initalize (OhmPlugin *plugin) { guint num; /* interested keys, either can be changed without changing the other */ - ohm_plugin_conf_interested (plugin, "backlight.hardware_brightness", CONF_BRIGHTNESS_HARDWARE_CHANGED); - ohm_plugin_conf_interested (plugin, "backlight.percent_brightness", CONF_BRIGHTNESS_PERCENT_CHANGED); - /* initialise HAL */ + /* initalize HAL */ ohm_plugin_hal_init (plugin); /* get the only device with capability and watch it */ @@ -185,7 +162,7 @@ plugin_coldplug (OhmPlugin *plugin) } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -193,7 +170,7 @@ plugin_coldplug (OhmPlugin *plugin) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { guint hw; if (id == CONF_BRIGHTNESS_PERCENT_CHANGED) { @@ -205,14 +182,21 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { - "OHM Backlight", /* description */ - "0.0.2", /* version */ - "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; - -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_DESCRIPTION ( + "OHM Backlight", + "0.0.2", + "richard@hughsie.com", + OHM_LICENSE_LGPL, + plugin_initalize, + NULL, + plugin_notify); + +OHM_PLUGIN_INTERESTED ( + {"backlight.hardware_brightness", CONF_BRIGHTNESS_HARDWARE_CHANGED}, + {"backlight.percent_brightness", CONF_BRIGHTNESS_PERCENT_CHANGED}); + +OHM_PLUGIN_PROVIDES ( + "backlight.state", + "backlight.hardware_brightness", + "backlight.percent_brightness", + "backlight.num_levels"); diff --git a/plugins/glue/battery/ohm-plugin-battery.c b/plugins/glue/battery/ohm-plugin-battery.c index da48fe6..c51ceed 100644 --- a/plugins/glue/battery/ohm-plugin-battery.c +++ b/plugins/glue/battery/ohm-plugin-battery.c @@ -24,23 +24,6 @@ #include <ohm-plugin.h> -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplug. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* tell ohmd what keys we are going to provide - don't set keys - * unless you provide them */ - ohm_plugin_conf_provide (plugin, "battery.percentage"); - return TRUE; -} - static void hal_property_changed_cb (OhmPlugin *plugin, guint id, @@ -54,7 +37,7 @@ hal_property_changed_cb (OhmPlugin *plugin, } /** - * plugin_coldplug: + * plugin_initalize: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -62,12 +45,12 @@ hal_property_changed_cb (OhmPlugin *plugin, * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initalize (OhmPlugin *plugin) { gint state; guint num; - /* initialise HAL */ + /* initalize HAL */ ohm_plugin_hal_init (plugin); /* we want this function to get the property modified events for all devices */ @@ -84,14 +67,14 @@ plugin_coldplug (OhmPlugin *plugin) ohm_plugin_conf_set_key (plugin, "battery.percentage", state); } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM HAL Battery", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - NULL, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initalize, /* initalize */ + NULL, /* destroy */ + NULL /* notify */ +); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_PROVIDES ("battery.percentage"); diff --git a/plugins/glue/buttons/ohm-plugin-buttons.c b/plugins/glue/buttons/ohm-plugin-buttons.c index 51ce216..3648899 100644 --- a/plugins/glue/buttons/ohm-plugin-buttons.c +++ b/plugins/glue/buttons/ohm-plugin-buttons.c @@ -23,23 +23,6 @@ #include <string.h> #include <ohm-plugin.h> -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - ohm_plugin_conf_provide (plugin, "button.power"); - ohm_plugin_conf_provide (plugin, "button.lid"); - ohm_plugin_conf_provide (plugin, "button.tablet"); - return TRUE; -} - static void hal_condition_cb (OhmPlugin *plugin, guint id, @@ -64,17 +47,17 @@ hal_condition_cb (OhmPlugin *plugin, } /** - * plugin_coldplug: + * plugin_initalize: * @plugin: This class instance * - * Coldplug, i.e. read and set the initial state of the plugin. + * Read and set the initial state of the plugin. * We can assume all the required modules have been loaded, although it's * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initalize (OhmPlugin *plugin) { - /* initialise HAL */ + /* initalize HAL */ ohm_plugin_hal_init (plugin); /* we want this function to get the property modified events for all devices */ @@ -89,14 +72,19 @@ plugin_coldplug (OhmPlugin *plugin) ohm_plugin_conf_set_key (plugin, "button.tablet", 0); } -static OhmPluginInfo plugin_info = { + +OHM_PLUGIN_DESCRIPTION ( "OHM HAL Buttons", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - NULL, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initalize, /* initalize */ + NULL, /* destroy */ + NULL /* notify */ +); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_PROVIDES ( + "button.lid", + "button.power", + "button.tablet" +); diff --git a/plugins/glue/dpms/ohm-plugin-dpms.c b/plugins/glue/dpms/ohm-plugin-dpms.c index 320e89b..603b5d7 100644 --- a/plugins/glue/dpms/ohm-plugin-dpms.c +++ b/plugins/glue/dpms/ohm-plugin-dpms.c @@ -47,21 +47,6 @@ typedef enum { OHM_DPMS_MODE_OFF } OhmDpmsMode; -/** - * plugin_preload: - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* add in the required, suggested and prevented plugins */ - ohm_plugin_require (plugin, "backlight"); - return TRUE; -} - /** * ohm_dpms_get_mode: @@ -166,46 +151,43 @@ ohm_dpms_set_mode (OhmDpmsMode mode) } /** - * plugin_coldplug: + * plugin_initalize: * * Coldplug, i.e. read and set the initial state of the plugin. * We can assume all the required modules have been loaded, although it's * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initalize (OhmPlugin *plugin) { /* we can assume DPMS is on */ ohm_plugin_conf_set_key (plugin, "backlight.state", 1); - /* interested keys */ - ohm_plugin_conf_interested (plugin, "backlight.state", CONF_BACKLIGHT_STATE_CHANGED); - /* open display, need to free using XCloseDisplay */ dpy = XOpenDisplay (":0"); /* fixme: don't assume :0 */ } /** - * plugin_unload: + * plugin_destroy: * * Unload drivers, free memory. */ static void -plugin_unload (OhmPlugin *plugin) +plugin_destroy (OhmPlugin *plugin) { XCloseDisplay (dpy); dpy = NULL; } /** - * plugin_conf_notify: + * plugin_notify: * * Notify the plugin that a key marked with ohm_plugin_conf_interested () * has it's value changed. * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { if (id == CONF_BACKLIGHT_STATE_CHANGED) { if (value == 0) { @@ -216,14 +198,16 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM DPMS", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - plugin_unload, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initalize, /* initalize */ + plugin_destroy, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_INTERESTED ({"backlight.state", CONF_BACKLIGHT_STATE_CHANGED}); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_REQUIRES ("backlight"); diff --git a/plugins/glue/idle/ohm-plugin-idle.c b/plugins/glue/idle/ohm-plugin-idle.c index 499f006..31de93c 100644 --- a/plugins/glue/idle/ohm-plugin-idle.c +++ b/plugins/glue/idle/ohm-plugin-idle.c @@ -32,25 +32,6 @@ enum { CONF_LAST }; -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* tell ohmd what keys we are going to provide */ - ohm_plugin_require (plugin, "xorg"); - ohm_plugin_conf_provide (plugin, "idle.momentary"); - ohm_plugin_conf_provide (plugin, "idle.powersave"); - ohm_plugin_conf_provide (plugin, "idle.powerdown"); - return TRUE; -} - static void ohm_alarm_expired_cb (LibIdletime *idletime, guint alarm, gpointer data) { @@ -107,7 +88,7 @@ plugin_connect_idletime (OhmPlugin *plugin) } /** - * plugin_coldplug: + * plugin_initalize: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -115,7 +96,7 @@ plugin_connect_idletime (OhmPlugin *plugin) * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initalize (OhmPlugin *plugin) { gint value; @@ -125,11 +106,10 @@ plugin_coldplug (OhmPlugin *plugin) plugin_connect_idletime (plugin); } - ohm_plugin_conf_interested (plugin, "xorg.has_xauthority", CONF_XORG_HASXAUTH_CHANGED); } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -137,7 +117,7 @@ plugin_coldplug (OhmPlugin *plugin) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { if (id == CONF_XORG_HASXAUTH_CHANGED) { if (value == 1) { @@ -146,19 +126,23 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } static void -plugin_unload (OhmPlugin *plugin) +plugin_destroy (OhmPlugin *plugin) { g_object_unref (idletime); } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM IdleTime", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - plugin_unload, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initalize, /* initalize */ + plugin_destroy, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_REQUIRES ("xorg"); + +OHM_PLUGIN_PROVIDES ("idle.momentary", "idle.powersave", "idle.powerdown"); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_INTERESTED ({"xorg.has_xauthority", CONF_XORG_HASXAUTH_CHANGED}); diff --git a/plugins/glue/powerstatus/ohm-plugin-powerstatus.c b/plugins/glue/powerstatus/ohm-plugin-powerstatus.c index d07fdf7..aaf3baa 100644 --- a/plugins/glue/powerstatus/ohm-plugin-powerstatus.c +++ b/plugins/glue/powerstatus/ohm-plugin-powerstatus.c @@ -39,26 +39,6 @@ typedef struct { static OhmPluginCacheData data; /** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* add in the required, suggested and prevented plugins */ - ohm_plugin_suggest (plugin, "battery"); - - /* tell ohmd what keys we are going to provide so it can create them */ - ohm_plugin_conf_provide (plugin, "powerstatus.low"); - ohm_plugin_conf_provide (plugin, "powerstatus.critical"); - return TRUE; -} - -/** * check_system_power_state: * @plugin: This class instance * @@ -85,7 +65,7 @@ check_system_power_state (OhmPlugin *plugin) } /** - * plugin_coldplug: + * plugin_initialise: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -93,13 +73,8 @@ check_system_power_state (OhmPlugin *plugin) * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initialise (OhmPlugin *plugin) { - /* interested keys */ - ohm_plugin_conf_interested (plugin, "battery.percentage", CONF_BATTERY_CHANGED); - ohm_plugin_conf_interested (plugin, "powerstatus.percentage_low", CONF_BATTERY_CHANGED); - ohm_plugin_conf_interested (plugin, "powerstatus.percentage_critical", CONF_BATTERY_CHANGED); - /* initial values */ ohm_plugin_conf_get_key (plugin, "battery.percentage", &(data.percentage)); ohm_plugin_conf_get_key (plugin, "powerstatus.percentage_low", &(data.percentage_low)); @@ -109,7 +84,7 @@ plugin_coldplug (OhmPlugin *plugin) } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -117,7 +92,7 @@ plugin_coldplug (OhmPlugin *plugin) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { if (id == CONF_BATTERY_CHANGED) { data.percentage = value; @@ -131,14 +106,24 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM PowerStatus", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initialise, /* initialise */ + NULL, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_SUGGESTS ("battery"); + +OHM_PLUGIN_PROVIDES ("powerstatus.low", "powerstatus.critical"); + +OHM_PLUGIN_INTERESTED ( + {"battery.percentage", CONF_BATTERY_CHANGED}, + {"powerstatus.percentage_low", CONF_BATTERY_CHANGED}, + {"powerstatus.percentage_critical", CONF_BATTERY_CHANGED} +); + -OHM_INIT_PLUGIN (plugin_info); diff --git a/plugins/glue/timeremaining/ohm-plugin-timeremaining.c b/plugins/glue/timeremaining/ohm-plugin-timeremaining.c index 7756b5d..611f458 100644 --- a/plugins/glue/timeremaining/ohm-plugin-timeremaining.c +++ b/plugins/glue/timeremaining/ohm-plugin-timeremaining.c @@ -37,27 +37,6 @@ typedef struct { static OhmPluginCacheData data; /** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* add in the required, suggested and prevented plugins */ - ohm_plugin_suggest (plugin, "battery"); - ohm_plugin_suggest (plugin, "acadapter"); - - /* tell ohmd what keys we are going to provide so it can create them */ - ohm_plugin_conf_provide (plugin, "timeremaining.to_charge"); - ohm_plugin_conf_provide (plugin, "timeremaining.to_discharge"); - return TRUE; -} - -/** * check_system_power_state: * @plugin: This class instance * @@ -71,7 +50,7 @@ check_system_power_state (OhmPlugin *plugin) } /** - * plugin_coldplug: + * plugin_initialize: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -79,12 +58,8 @@ check_system_power_state (OhmPlugin *plugin) * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initialize (OhmPlugin *plugin) { - /* interested keys */ - ohm_plugin_conf_interested (plugin, "battery.percentage", CONF_BATTERY_PERCENT_CHANGED); - ohm_plugin_conf_interested (plugin, "acadapter.state", CONF_AC_STATE_CHANGED); - /* initial values */ ohm_plugin_conf_get_key (plugin, "battery.percentage", &(data.percentage)); ohm_plugin_conf_get_key (plugin, "acadapter.state", &(data.ac_state)); @@ -93,7 +68,7 @@ plugin_coldplug (OhmPlugin *plugin) } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -101,7 +76,7 @@ plugin_coldplug (OhmPlugin *plugin) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { if (id == CONF_BATTERY_PERCENT_CHANGED) { data.percentage = value; @@ -112,14 +87,22 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM timeremaining", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initialize, /* initialize */ + NULL, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_SUGGESTS ("battery", "acadapter"); + +OHM_PLUGIN_PROVIDES ("timeremaining.to_charge", "timeremaining.to_discharge"); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_INTERESTED ( + {"battery.percentage", CONF_BATTERY_PERCENT_CHANGED}, + {"acadapter.state", CONF_AC_STATE_CHANGED} +); + diff --git a/plugins/glue/xorg/ohm-plugin-xorg.c b/plugins/glue/xorg/ohm-plugin-xorg.c index 0758700..3f0b226 100644 --- a/plugins/glue/xorg/ohm-plugin-xorg.c +++ b/plugins/glue/xorg/ohm-plugin-xorg.c @@ -28,21 +28,6 @@ #include <ohm-plugin.h> -/** - * plugin_preload: - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* add in the required, suggested and prevented plugins */ - ohm_plugin_conf_provide (plugin, "xorg.has_xauthority"); - return TRUE; -} - static gboolean plugin_poll_startup (gpointer data) { @@ -74,14 +59,14 @@ plugin_poll_startup (gpointer data) } /** - * plugin_coldplug: + * plugin_initialize: * * Coldplug, i.e. read and set the initial state of the plugin. * We can assume all the required modules have been loaded, although it's * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initialize (OhmPlugin *plugin) { gboolean ret; @@ -97,14 +82,14 @@ plugin_coldplug (OhmPlugin *plugin) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM xorg finder", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - NULL, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initialize, /* initialize */ + NULL, /* destroy */ + NULL /* notify */ +); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_PROVIDES ("xorg.has_xauthority"); diff --git a/plugins/glue/xrandr/ohm-plugin-xrandr.c b/plugins/glue/xrandr/ohm-plugin-xrandr.c index 5dc4805..628e3f8 100644 --- a/plugins/glue/xrandr/ohm-plugin-xrandr.c +++ b/plugins/glue/xrandr/ohm-plugin-xrandr.c @@ -29,23 +29,7 @@ enum { }; /** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - ohm_plugin_require (plugin, "xorg"); - ohm_plugin_conf_provide (plugin, "xrandr.position"); - return TRUE; -} - -/** - * plugin_coldplug: + * plugin_initialize: * @plugin: This class instance * * Coldplug, i.e. read and set the initial state of the plugin. @@ -53,14 +37,13 @@ plugin_preload (OhmPlugin *plugin) * dangerous to assume the key values are anything other than the defaults. */ static void -plugin_coldplug (OhmPlugin *plugin) +plugin_initialize (OhmPlugin *plugin) { ohm_plugin_conf_set_key (plugin, "xrandr.position", 0); - ohm_plugin_conf_interested (plugin, "xrandr.position", CONF_XRANDR_POSITION_CHANGED); } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -68,7 +51,7 @@ plugin_coldplug (OhmPlugin *plugin) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { if (id == CONF_XRANDR_POSITION_CHANGED) { if (value == 0) { @@ -79,14 +62,18 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "OHM HAL XRANDR", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; + OHM_LICENSE_LGPL, /* license */ + plugin_initialize, /* initialize */ + NULL, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_REQUIRES ("xorg"); + +OHM_PLUGIN_PROVIDES ("xrandr.position"); -OHM_INIT_PLUGIN (plugin_info); +OHM_PLUGIN_INTERESTED ({"xrandr.position", CONF_XRANDR_POSITION_CHANGED}); diff --git a/plugins/policy/display/ohm-plugin-display.c b/plugins/policy/display/ohm-plugin-display.c index 5e26e8f..a81f1d2 100644 --- a/plugins/policy/display/ohm-plugin-display.c +++ b/plugins/policy/display/ohm-plugin-display.c @@ -35,50 +35,6 @@ enum { CONF_LAST }; -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* FIXME: detect if we have any backlights in the system and return false if not */ - /* add in the required, suggested and prevented plugins */ - ohm_plugin_suggest (plugin, "idle"); - ohm_plugin_suggest (plugin, "acadapter"); - ohm_plugin_suggest (plugin, "buttons"); - ohm_plugin_suggest (plugin, "xrandr"); - ohm_plugin_suggest (plugin, "backlight"); - return TRUE; -} - -/** - * plugin_coldplug: - * @plugin: This class instance - * - * Coldplug, i.e. read and set the initial state of the plugin. - * We can assume all the required modules have been loaded, although it's - * dangerous to assume the key values are anything other than the defaults. - */ -static void -plugin_coldplug (OhmPlugin *plugin) -{ - /* interested keys */ - ohm_plugin_conf_interested (plugin, "acadapter.state", CONF_AC_STATE_CHANGED); - ohm_plugin_conf_interested (plugin, "backlight.state", CONF_BACKLIGHT_STATE_CHANGED); - ohm_plugin_conf_interested (plugin, "button.lid", CONF_LID_STATE_CHANGED); - ohm_plugin_conf_interested (plugin, "button.tablet", CONF_TABLET_STATE_CHANGED); - ohm_plugin_conf_interested (plugin, "idle.powersave", CONF_IDLE_POWERSAVE_CHANGED); - ohm_plugin_conf_interested (plugin, "idle.momentary", CONF_IDLE_MOMENTARY_CHANGED); - ohm_plugin_conf_interested (plugin, "display.value_ac", CONF_BRIGHTNESS_AC_CHANGED); - ohm_plugin_conf_interested (plugin, "display.value_battery", CONF_BRIGHTNESS_BATTERY_CHANGED); - ohm_plugin_conf_interested (plugin, "display.value_idle", CONF_BRIGHTNESS_IDLE_CHANGED); -} - static void reset_brightness (OhmPlugin *plugin) { @@ -175,7 +131,7 @@ lid_closed (OhmPlugin *plugin, gboolean is_closed) } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -183,7 +139,7 @@ lid_closed (OhmPlugin *plugin, gboolean is_closed) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { switch (id) { case CONF_BRIGHTNESS_AC_CHANGED: @@ -214,14 +170,32 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "Display", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; - -OHM_INIT_PLUGIN (plugin_info); + OHM_LICENSE_LGPL, /* license */ + NULL, /* initialize */ + NULL, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_SUGGESTS ( + "idle", + "acadapter", + "buttons", + "xrandr", + "backlight" +); + +OHM_PLUGIN_INTERESTED ( + {"acadapter.state", CONF_AC_STATE_CHANGED}, + {"backlight.state", CONF_BACKLIGHT_STATE_CHANGED}, + {"button.lid", CONF_LID_STATE_CHANGED}, + {"button.tablet", CONF_TABLET_STATE_CHANGED}, + {"idle.powersave", CONF_IDLE_POWERSAVE_CHANGED}, + {"idle.momentary", CONF_IDLE_MOMENTARY_CHANGED}, + {"display.value_ac", CONF_BRIGHTNESS_AC_CHANGED}, + {"display.value_battery", CONF_BRIGHTNESS_BATTERY_CHANGED}, + {"display.value_idle", CONF_BRIGHTNESS_IDLE_CHANGED} +); diff --git a/plugins/policy/suspend/ohm-plugin-suspend.c b/plugins/policy/suspend/ohm-plugin-suspend.c index 712464d..2c3d5c5 100644 --- a/plugins/policy/suspend/ohm-plugin-suspend.c +++ b/plugins/policy/suspend/ohm-plugin-suspend.c @@ -74,42 +74,6 @@ system_suspend (OhmPlugin *plugin) return ret; } -/** - * plugin_preload: - * @plugin: This class instance - * - * Called before the plugin is coldplg. - * Define any modules that the plugin depends on, but do not do coldplug here - * as some of the modules may not have loaded yet. - */ -static gboolean -plugin_preload (OhmPlugin *plugin) -{ - /* FIXME: detect if we have any backlights in the system and return false if not */ - /* add in the required, suggested and prevented plugins */ - ohm_plugin_suggest (plugin, "idle"); - ohm_plugin_suggest (plugin, "buttons"); - return TRUE; -} - -/** - * plugin_coldplug: - * @plugin: This class instance - * - * Coldplug, i.e. read and set the initial state of the plugin. - * We can assume all the required modules have been loaded, although it's - * dangerous to assume the key values are anything other than the defaults. - */ -static void -plugin_coldplug (OhmPlugin *plugin) -{ - /* interested keys */ - ohm_plugin_conf_interested (plugin, "button.power", CONF_BUTTON_POWER_CHANGED); - ohm_plugin_conf_interested (plugin, "button.lid", CONF_BUTTON_LID_CHANGED); - ohm_plugin_conf_interested (plugin, "idle.powerdown", CONF_IDLE_POWERDOWN_CHANGED); - ohm_plugin_conf_interested (plugin, "suspend.fixme_inhibit", CONF_INHIBIT_CHANGED); -} - static void power_button_pressed (OhmPlugin *plugin) { @@ -163,7 +127,7 @@ system_is_idle (OhmPlugin *plugin) } /** - * plugin_conf_notify: + * plugin_notify: * @plugin: This class instance * * Notify the plugin that a key marked with ohm_plugin_conf_interested () @@ -171,7 +135,7 @@ system_is_idle (OhmPlugin *plugin) * An enumerated numeric id rather than the key is returned for processing speed. */ static void -plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) +plugin_notify (OhmPlugin *plugin, gint id, gint value) { if (id == CONF_BUTTON_LID_CHANGED) { if (value == 1) { @@ -192,14 +156,24 @@ plugin_conf_notify (OhmPlugin *plugin, gint id, gint value) } } -static OhmPluginInfo plugin_info = { +OHM_PLUGIN_DESCRIPTION ( "suspend", /* description */ "0.0.1", /* version */ "richard@hughsie.com", /* author */ - plugin_preload, /* preload */ - NULL, /* unload */ - plugin_coldplug, /* coldplug */ - plugin_conf_notify, /* conf_notify */ -}; - -OHM_INIT_PLUGIN (plugin_info); + OHM_LICENSE_LGPL, /* license */ + NULL, /* initialize */ + NULL, /* destroy */ + plugin_notify /* notify */ +); + +OHM_PLUGIN_SUGGESTS ( + "idle", + "buttons" +); + +OHM_PLUGIN_INTERESTED ( + {"button.power", CONF_BUTTON_POWER_CHANGED}, + {"button.lid", CONF_BUTTON_LID_CHANGED}, + {"idle.powerdown", CONF_IDLE_POWERDOWN_CHANGED}, + {"suspend.fixme_inhibit", CONF_INHIBIT_CHANGED} +); |