diff options
Diffstat (limited to 'runtimes/neurun/src/util/config/ConfigManager.cc')
-rw-r--r-- | runtimes/neurun/src/util/config/ConfigManager.cc | 74 |
1 files changed, 0 insertions, 74 deletions
diff --git a/runtimes/neurun/src/util/config/ConfigManager.cc b/runtimes/neurun/src/util/config/ConfigManager.cc deleted file mode 100644 index 46b80311c..000000000 --- a/runtimes/neurun/src/util/config/ConfigManager.cc +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include "ConfigManager.h" - -#include <cstdlib> - -namespace neurun -{ -namespace config -{ - -ConfigManager &ConfigManager::instance() -{ - static ConfigManager manager; - return manager; -} - -ConfigManager::ConfigManager() -{ - auto fetch_from_env_var = [&](const std::string &key) { - const char *value = std::getenv(key.c_str()); - if (value != nullptr) - { - _map[key] = value; - } - }; - -#define CONFIG(Name, Type, Default) \ - _map.insert({std::string{#Name}, std::string{Default}}); \ - fetch_from_env_var(#Name); - -#include "Config.lst" - -#undef CONFIG -} - -template <> bool ConfigManager::get<bool>(const std::string &key) const -{ - auto raw = _map.at(key); - - static const std::array<std::string, 5> false_list{"0", "OFF", "FALSE", "N", "NO"}; - auto false_found = std::find(false_list.begin(), false_list.end(), raw); - - return (false_found == false_list.end()); -} - -template <> int ConfigManager::get<int>(const std::string &key) const -{ - auto raw = _map.at(key); - return std::stoi(raw); -} - -template <> std::string ConfigManager::get<std::string>(const std::string &key) const -{ - auto raw = _map.at(key); - return raw; -} - -} // namespace config -} // namespace neurun |