summaryrefslogtreecommitdiffstats
path: root/Settings.c
diff options
context:
space:
mode:
authorHisham Muhammad <hisham@gobolinux.org>2015-05-13 15:13:55 -0300
committerHisham Muhammad <hisham@gobolinux.org>2015-05-13 15:13:55 -0300
commitf1e8a074f271e60a17c5c03517dd1be5619ffa89 (patch)
tree7af078731e4492d653ec5b8497d75fa03bdcaf65 /Settings.c
parentf4f6d54ffd820243862c6189176a3159d2ebd7a6 (diff)
store cpuCount in an attribute
Diffstat (limited to 'Settings.c')
-rw-r--r--Settings.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/Settings.c b/Settings.c
index 68e2af5a..4f4c45e7 100644
--- a/Settings.c
+++ b/Settings.c
@@ -39,6 +39,7 @@ typedef struct Settings_ {
int colorScheme;
int delay;
+ int cpuCount;
int direction;
ProcessField sortKey;
@@ -102,9 +103,9 @@ static void Settings_readMeterModes(Settings* this, char* line, int column) {
this->columns[column].modes = modes;
}
-static void Settings_defaultMeters(Settings* this, int cpuCount) {
+static void Settings_defaultMeters(Settings* this) {
int sizes[] = { 3, 3 };
- if (cpuCount > 4) {
+ if (this->cpuCount > 4) {
sizes[1]++;
}
for (int i = 0; i < 2; i++) {
@@ -114,10 +115,10 @@ static void Settings_defaultMeters(Settings* this, int cpuCount) {
}
int r = 0;
- if (cpuCount > 8) {
+ if (this->cpuCount > 8) {
this->columns[0].names[0] = strdup("LeftCPUs2");
this->columns[1].names[r++] = strdup("RightCPUs2");
- } else if (cpuCount > 4) {
+ } else if (this->cpuCount > 4) {
this->columns[0].names[0] = strdup("LeftCPUs");
this->columns[1].names[r++] = strdup("RightCPUs");
} else {
@@ -151,7 +152,7 @@ static void readFields(ProcessField* fields, int* flags, const char* line) {
String_freeArray(ids);
}
-static bool Settings_read(Settings* this, const char* fileName, int cpuCount) {
+static bool Settings_read(Settings* this, const char* fileName) {
FILE* fd = fopen(fileName, "r");
if (!fd)
return false;
@@ -226,7 +227,7 @@ static bool Settings_read(Settings* this, const char* fileName, int cpuCount) {
}
fclose(fd);
if (!readMeters) {
- Settings_defaultMeters(this, cpuCount);
+ Settings_defaultMeters(this);
}
return true;
}
@@ -307,6 +308,7 @@ Settings* Settings_new(int cpuCount) {
this->detailedCPUTime = false;
this->countCPUsFromZero = false;
this->updateProcessNames = false;
+ this->cpuCount = cpuCount;
this->fields = calloc(Platform_numberOfFields+1, sizeof(ProcessField));
// TODO: turn 'fields' into a Vector,
@@ -354,7 +356,7 @@ Settings* Settings_new(int cpuCount) {
this->colorScheme = 0;
this->changed = false;
this->delay = DEFAULT_DELAY;
- bool ok = Settings_read(this, legacyDotfile ? legacyDotfile : this->filename, cpuCount);
+ bool ok = Settings_read(this, legacyDotfile ? legacyDotfile : this->filename);
if (ok) {
if (legacyDotfile) {
// Transition to new location and delete old configuration file
@@ -365,10 +367,10 @@ Settings* Settings_new(int cpuCount) {
this->changed = true;
// TODO: how to get SYSCONFDIR correctly through Autoconf?
char* systemSettings = String_cat(SYSCONFDIR, "/htoprc");
- ok = Settings_read(this, systemSettings, cpuCount);
+ ok = Settings_read(this, systemSettings);
free(systemSettings);
if (!ok) {
- Settings_defaultMeters(this, cpuCount);
+ Settings_defaultMeters(this);
this->hideKernelThreads = true;
this->highlightMegabytes = true;
this->highlightThreads = false;

© 2014-2024 Faster IT GmbH | imprint | privacy policy