X-Git-Url: http://git.wpitchoune.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fpsensor.c;h=9073d1222d7b85ac8d409ddc5ac9bb06099c0efd;hb=de58b641143d1fb9622fa4021c2dd1ab50149dee;hp=8a1d443cafda8d67822223b48dfd6db9f47ab0c1;hpb=7cf47f8e660b7a2306565d8e744ad2de62cce402;p=psensor.git diff --git a/src/lib/psensor.c b/src/lib/psensor.c index 8a1d443..9073d12 100644 --- a/src/lib/psensor.c +++ b/src/lib/psensor.c @@ -23,6 +23,8 @@ #include #define _(str) gettext(str) +#include + #include #include #include @@ -48,7 +50,6 @@ struct psensor *psensor_create(char *id, psensor->values_max_length = values_max_length; psensor->measures = measures_dbl_create(values_max_length); - psensor->alarm_enabled = 0; psensor->alarm_high_threshold = 0; psensor->alarm_low_threshold = 0; @@ -56,13 +57,6 @@ struct psensor *psensor_create(char *id, psensor->cb_alarm_raised_data = NULL; psensor->alarm_raised = 0; - psensor->url = NULL; - - psensor->color = NULL; - - psensor->graph_enabled = 1; - psensor->appindicator_enabled = 0; - psensor->provider_data = NULL; psensor->provider_data_free_fct = &free; @@ -105,13 +99,8 @@ void psensor_free(struct psensor *s) if (s->chip) free(s->chip); - if (s->color) - free(s->color); - measures_free(s->measures); - free(s->url); - if (s->provider_data && s->provider_data_free_fct) s->provider_data_free_fct(s->provider_data); @@ -155,29 +144,15 @@ int psensor_list_size(struct psensor **sensors) return size; } -bool psensor_list_contains_type(struct psensor **sensors, unsigned int type) -{ - if (!sensors) - return false; - - while (*sensors) { - if (((*sensors)->type & type) == type) - return true; - sensors++; - } - - return false; -} - struct psensor **psensor_list_add(struct psensor **sensors, struct psensor *sensor) { int size; + struct psensor **result; size = psensor_list_size(sensors); - struct psensor **result - = malloc((size + 1 + 1) * sizeof(struct psensor *)); + result = malloc((size + 1 + 1) * sizeof(struct psensor *)); if (sensors) memcpy(result, sensors, size * sizeof(struct psensor *)); @@ -278,15 +253,13 @@ void psensor_set_current_measure(struct psensor *s, double v, struct timeval tv) if (s->max == UNKNOWN_DBL_VALUE || v > s->max) s->max = v; - if (s->alarm_enabled) { - if (v > s->alarm_high_threshold || v < s->alarm_low_threshold) { - if (!s->alarm_raised && s->cb_alarm_raised) - s->cb_alarm_raised(s, s->cb_alarm_raised_data); - - s->alarm_raised = 1; - } else { - s->alarm_raised = 0; + if (v > s->alarm_high_threshold || v < s->alarm_low_threshold) { + if (!s->alarm_raised && s->cb_alarm_raised) { + s->alarm_raised = true; + s->cb_alarm_raised(s, s->cb_alarm_raised_data); } + } else { + s->alarm_raised = false; } } @@ -364,28 +337,6 @@ double get_max_value(struct psensor **sensors, int type) return m; } -double -psensor_get_max_current_value(struct psensor **sensors, unsigned int type) -{ - double m = UNKNOWN_DBL_VALUE; - struct psensor **s_cur = sensors; - - while (*s_cur) { - struct psensor *s = *s_cur; - - if (s->graph_enabled && (s->type & type)) { - double v = psensor_get_current_value(s); - - if (m == UNKNOWN_DBL_VALUE || v > m) - m = v; - } - - s_cur++; - } - - return m; -} - double get_min_temp(struct psensor **sensors) { return get_min_value(sensors, SENSOR_TYPE_TEMP); @@ -504,26 +455,3 @@ psensor_current_value_to_str(const struct psensor *s, unsigned int use_celsius) psensor_get_current_value(s), use_celsius); } - -struct psensor **psensor_list_filter_graph_enabled(struct psensor **sensors) -{ - int n, i; - struct psensor **result, **cur, *s; - - if (!sensors) - return NULL; - - n = psensor_list_size(sensors); - result = malloc((n+1) * sizeof(struct psensor *)); - - for (cur = sensors, i = 0; *cur; cur++) { - s = *cur; - - if (s->graph_enabled) - result[i++] = s; - } - - result[i] = NULL; - - return result; -}