psensor->graph_enabled = 1;
psensor->appindicator_enabled = 0;
+ psensor->provider_data = NULL;
+ psensor->provider_data_free_fct = &free;
+
return psensor;
}
if (cur_ms) {
int i;
+
for (i = 0; i < new_size - 1 && i < cur_size - 1; i++)
measure_copy(&cur_ms[cur_size - i - 1],
&new_ms[new_size - i - 1]);
s->measures = new_ms;
}
-void psensor_free(struct psensor *sensor)
+void psensor_free(struct psensor *s)
{
- if (sensor) {
- log_debug("Cleanup %s", sensor->id);
+ if (!s)
+ return;
- free(sensor->name);
- free(sensor->id);
+ log_debug("Cleanup %s", s->id);
- if (sensor->chip)
- free(sensor->chip);
+ free(s->name);
+ free(s->id);
- if (sensor->color)
- free(sensor->color);
+ if (s->chip)
+ free(s->chip);
- measures_free(sensor->measures);
+ if (s->color)
+ free(s->color);
- free(sensor->url);
+ measures_free(s->measures);
- free(sensor);
- }
+ free(s->url);
+
+ if (s->provider_data && s->provider_data_free_fct)
+ s->provider_data_free_fct(s->provider_data);
+
+ free(s);
}
void psensor_list_free(struct psensor **sensors)
struct psensor **tmp;
if (!sensor)
- return ;
+ return;
tmp = psensor_list_add(*sensors, sensor);
if (sensor->type & type) {
int i;
double t;
+
for (i = 0; i < sensor->values_max_length; i++) {
t = sensor->measures[i].value;
return "Memory usage";
else if (type & SENSOR_TYPE_PCIE)
return "PCIe usage";
- else
- return "NVIDIA GPU";
+
+ return "NVIDIA GPU";
}
if (type & SENSOR_TYPE_ATIADL) {
return "AMD GPU Temperature";
else if (type & SENSOR_TYPE_RPM)
return "AMD GPU Fan Speed";
- else /* type & SENSOR_TYPE_USAGE */
- return "AMD GPU Usage";
+ /*else type & SENSOR_TYPE_USAGE */
+ return "AMD GPU Usage";
}
if ((type & SENSOR_TYPE_HDD_TEMP) == SENSOR_TYPE_HDD_TEMP)
if (is_temp_type(type)) {
if (use_celsius)
return "\302\260C";
- else
- return "\302\260F";
+ return "\302\260F";
} else if (type & SENSOR_TYPE_RPM) {
return _("RPM");
} else if (type & SENSOR_TYPE_PERCENT) {
return _("%");
- } else {
- return _("N/A");
}
+ return _("N/A");
}
void psensor_list_update_measures(struct psensor **sensors)