From 3ef9d42fab5fddf78abd3fad316234cf36055808 Mon Sep 17 00:00:00 2001 From: Alexander Baldeck Date: Tue, 28 Dec 2004 19:39:56 +0000 Subject: - some optimization :) --- src/configuration.cpp | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) (limited to 'src/configuration.cpp') diff --git a/src/configuration.cpp b/src/configuration.cpp index 3dccdecf..a7f07aeb 100644 --- a/src/configuration.cpp +++ b/src/configuration.cpp @@ -59,7 +59,13 @@ void Configuration::init(std::string filename) { optionTmp.numericValue = atof(inBuffer.c_str()); - iniOptions.push_back(optionTmp); + if(!keyExists(optionTmp.key)) { + iniOptions.push_back(optionTmp); + } else { + iter->key = optionTmp.key; + iter->stringValue = optionTmp.stringValue; + iter->numericValue = optionTmp.numericValue; + } } } } @@ -119,15 +125,11 @@ void Configuration::setValue(std::string key, std::string value) { iniOptions.push_back(optionTmp); } else { - for (iter = iniOptions.begin(); iter != iniOptions.end(); iter++) { - if(iter->key == key) { - #ifdef __DEBUG - std::cout << "Configuration::setValue(" << key << ", \"" << value << "\") reset\n"; - #endif - iter->stringValue = value; - iter->numericValue = 0; - } - } + #ifdef __DEBUG + std::cout << "Configuration::setValue(" << key << ", \"" << value << "\") reset\n"; + #endif + iter->stringValue = value; + iter->numericValue = 0; } } @@ -147,15 +149,11 @@ void Configuration::setValue(std::string key, float value) { iniOptions.push_back(optionTmp); } else { - for (iter = iniOptions.begin(); iter != iniOptions.end(); iter++) { - if(iter->key == key) { - #ifdef __DEBUG - std::cout << "Configuration::setValue(" << key << ", " << value << ") reset\n"; - #endif - iter->stringValue = ""; - iter->numericValue = value; - } - } + #ifdef __DEBUG + std::cout << "Configuration::setValue(" << key << ", " << value << ") reset\n"; + #endif + iter->stringValue = ""; + iter->numericValue = value; } } -- cgit v1.2.3-60-g2f50