diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/Makefile.am | 8 | ||||
-rw-r--r-- | plugins/aticonfig/Makefile.am | 24 | ||||
-rw-r--r-- | plugins/aticonfig/aticonfig-plugin.c | 156 | ||||
-rw-r--r-- | plugins/aticonfig/aticonfig-plugin.h | 25 |
4 files changed, 3 insertions, 210 deletions
diff --git a/plugins/Makefile.am b/plugins/Makefile.am index a3245b2..74dc757 100644 --- a/plugins/Makefile.am +++ b/plugins/Makefile.am @@ -1,3 +1,5 @@ +NULL= + DIST_SUBDIRS = \ acpi \ dummy \ @@ -15,7 +17,7 @@ DIST_SUBDIRS = \ pmu-sys \ smu-sys \ sonypi \ - aticonfig + $(NULL) SUBDIRS = \ acpi \ @@ -50,8 +52,4 @@ if NVIDIA SUBDIRS += nvidia endif -if ATICONFIG -SUBDIRS += aticonfig -endif - -include $(top_srcdir)/git.mk diff --git a/plugins/aticonfig/Makefile.am b/plugins/aticonfig/Makefile.am deleted file mode 100644 index d9f7524..0000000 --- a/plugins/aticonfig/Makefile.am +++ /dev/null @@ -1,24 +0,0 @@ -# ATICONFIG plugin -plugindir = $(libdir)/mate-sensors-applet/plugins - -AM_CPPFLAGS = -DMATELOCALEDIR=\""$(datadir)/locale/"\" \ - -DG_LOG_DOMAIN=\""sensors-applet"\" \ - -DPIXMAPS_DIR=\""$(datadir)/pixmaps/$(PACKAGE)/"\" \ - -DDATADIR=\""$(datadir)"\" \ - -DLIBDIR=\""$(libdir)"\" \ - -DSYSCONFDIR=\""$(sysconfdir)"\" \ - -DPREFIX=\""$(prefix)"\" \ - -I$(top_srcdir) \ - $(GLIB_CFLAGS) \ - $(WARN_CFLAGS) - -plugin_LTLIBRARIES = libaticonfig.la - -libaticonfig_la_SOURCES = \ - aticonfig-plugin.h \ - aticonfig-plugin.c - -libaticonfig_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS) $(GLIB_LIBS) -libaticonfig_la_LIBADD = $(top_builddir)/lib/libmate-sensors-applet-plugin.la - --include $(top_srcdir)/git.mk diff --git a/plugins/aticonfig/aticonfig-plugin.c b/plugins/aticonfig/aticonfig-plugin.c deleted file mode 100644 index 0fedc05..0000000 --- a/plugins/aticonfig/aticonfig-plugin.c +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (C) 2009 Jaap Versteegh <[email protected]> - * Copyright (C) 2005-2009 Alex Murray <[email protected]> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif /* HAVE_CONFIG_H */ - -#ifdef HAVE_STDIO_H -#include <stdio.h> -#endif /* HAVE_STDIO_H */ - -#ifdef HAVE_TIME_H -#include <time.h> -#endif /* HAVE_TIME_H */ - -#ifdef HAVE_UNISTD_H -#include <unistd.h> -#endif /* HAVE_UNISTD_H */ - -#include <glib.h> -#include <glib/gi18n.h> -#include "aticonfig-plugin.h" - -const gchar *plugin_name = "aticonfig"; - -#define GPU_CORE_TEMP "CoreTemp" -#define MAX_GPUS 4 -#define SENSOR_ID_PREFIX "ATIGPU" - -static gdouble gpu_temps[MAX_GPUS]; -static int num_gpus = 0; - -static int ati_get_temps(gdouble temps[], int max_temps) -{ - double temp; - int read_count; - int gpu_no = 0; - -#ifdef HAVE_STDIO_H - FILE *aticonfig = popen(ATICONFIG_EXE - " --adapter=all --od-gettemperature", "r"); - if (aticonfig == NULL) { - return 0; - } - while ((read_count = fscanf(aticonfig, "Temperature - %lf", &temp)) != EOF) { - if (read_count < 1) { - getc(aticonfig); - } - else { - temps[gpu_no] = (gdouble)temp; - if (++gpu_no >= max_temps) - break; - } - } - pclose(aticonfig); -#endif - - return gpu_no; -} - -static void ati_update_temps(void) -{ -#ifdef HAVE_TIME_H - static time_t last = 0; - time_t now = time(NULL); - /* Only update when more than two seconds have passed since last update */ - if (timediff(now, last) > 2) { -#endif - num_gpus = ati_get_temps(&gpu_temps, MAX_GPUS); -#ifdef HAVE_TIME_H - last = now; - } -#endif -} - - -static GList *aticonfig_plugin_init(void) -{ - GList *sensors = NULL; - - g_debug("Initializing aticonfig plugin\n"); - - int sensor_count = ati_get_temps(&gpu_temps, MAX_GPUS); - - int i; - for (i = 0; i < sensor_count; i++) { - gchar *id = g_strdup_printf("%s%d%s", SENSOR_ID_PREFIX, i, GPU_CORE_TEMP); - sensors_applet_plugin_add_sensor(&sensors, - GPU_CORE_TEMP, - id, - _("GPU"), - TEMP_SENSOR, - TRUE, - GPU_ICON, - DEFAULT_GRAPH_COLOR); - g_free(id); - } - - return sensors; -} - -static gdouble aticonfig_plugin_get_sensor_value(const gchar *path, - const gchar *id, - SensorType type, - GError **error) -{ - - if (g_ascii_strcasecmp(path, GPU_CORE_TEMP) != 0 || type != TEMP_SENSOR) { - g_set_error(error, SENSORS_APPLET_PLUGIN_ERROR, - 0, "Invalid sensor value request to aticonfig plugin"); - return 0; - } - ati_update_temps(); - - int i = g_ascii_strtoll(id + strlen(SENSOR_ID_PREFIX), NULL, 10); - if (i < 0 || i >= num_gpus) { - g_set_error(error, SENSORS_APPLET_PLUGIN_ERROR, - 0, "Sensor index out of range in aticonfig plugin"); - return 0; - } - return gpu_temps[i]; -} - -const gchar *sensors_applet_plugin_name(void) -{ - return plugin_name; -} - -GList *sensors_applet_plugin_init(void) -{ - return aticonfig_plugin_init(); -} - -gdouble sensors_applet_plugin_get_sensor_value(const gchar *path, - const gchar *id, - SensorType type, - GError **error) -{ - return aticonfig_plugin_get_sensor_value(path, id, type, error); -} diff --git a/plugins/aticonfig/aticonfig-plugin.h b/plugins/aticonfig/aticonfig-plugin.h deleted file mode 100644 index 1122902..0000000 --- a/plugins/aticonfig/aticonfig-plugin.h +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright (C) 2009 Jaap Versteegh <[email protected]> - * Copyright (C) 2005-2009 Alex Murray <[email protected]> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef ATICONFIG_PLUGIN_H -#define ATICONFIG_PLUGIN_H - -#include <sensors-applet/sensors-applet-plugin.h> - -#endif /* ATICONFIG_PLUGIN_H*/ |