summaryrefslogtreecommitdiffstats
path: root/CAN-binder/libs/ini-config/ini-config.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'CAN-binder/libs/ini-config/ini-config.cpp')
-rw-r--r--CAN-binder/libs/ini-config/ini-config.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/CAN-binder/libs/ini-config/ini-config.cpp b/CAN-binder/libs/ini-config/ini-config.cpp
index 631a020..ef3ab25 100644
--- a/CAN-binder/libs/ini-config/ini-config.cpp
+++ b/CAN-binder/libs/ini-config/ini-config.cpp
@@ -58,9 +58,10 @@ void ini_config::read_file(const std::string& filename)
}
}
-std::map<std::string, std::string> ini_config::get_keys(const std::string& section)
+ini_config::map ini_config::get_keys(const std::string& section, bool wo_prefix)
{
- std::map<std::string, std::string> ret;
+ map ret;
+ std::string key;
std::string prefix = section + '/';
for(auto i = config_.begin();
@@ -69,7 +70,11 @@ std::map<std::string, std::string> ini_config::get_keys(const std::string& secti
{
if (starts_with(i->first, prefix))
{
- ret[i->first] = i->second;
+ if(wo_prefix)
+ key = i->first.substr(section.size()+1);
+ else
+ key = i->first;
+ ret[key] = i->second;
}
}
return ret;