10#ifndef IFWSLM_SL_CONFIG_HPP
11#define IFWSLM_SL_CONFIG_HPP
13#include <rad/config.hpp>
85std::string
GetLoopOldbKey(
const std::string& prefix,
int loop_index,
const std::string& param_name);
126std::string
GetLoopParam(
const rad::Config& config,
int loop_index,
const std::string& param_name);
135bool IsLoopEnabled(
const rad::Config& config,
int loop_index);
148 std::string& substate);
189 const std::string& param_name, std::string& out);
197 if constexpr (std::is_same_v<T, std::string>) {
201 std::istringstream iss(s);
218 const std::string& name) {
229 const std::string& name,
const T& default_value) {
235 if (config.HasParam(key)) {
236 return config.GetParam<T>(key);
238 return default_value;
Definition slConfig.hpp:191
T ConvertLoopParamValue(const std::string &s)
Definition slConfig.hpp:196
Definition actionMgr.cpp:29
void DecomposeStatus(const std::string &sm_status, std::string &state, std::string &substate)
Definition slConfig.cpp:147
const std::string SL_KEY_CYCLE_LAST_ERROR
Definition slConfig.hpp:57
SlIndex
Definition slConfig.hpp:90
@ SL_3
Definition slConfig.hpp:93
@ SL_6
Definition slConfig.hpp:96
@ SL_4
Definition slConfig.hpp:94
@ SL_1
Definition slConfig.hpp:91
@ SL_8
Definition slConfig.hpp:98
@ SL_5
Definition slConfig.hpp:95
@ SL_2
Definition slConfig.hpp:92
@ SL_9
Definition slConfig.hpp:99
@ SL_7
Definition slConfig.hpp:97
const std::string SL_KEY_CYCLE_NERRORS
Definition slConfig.hpp:54
const std::string SL_KEY_CYCLE_NSUCCESS
Definition slConfig.hpp:55
const std::string SL_KEY_CYCLE_VALUE
Definition slConfig.hpp:56
T GetLoopParamFromConfig(const rad::Config &config, int loop_index, const std::string &name)
Definition slConfig.hpp:217
std::string GetLoopOldbKey(int loop_index, const std::string ¶m_name)
Definition oldbInterface.cpp:23
const std::string SL_DB_NUM_IN_USE
Definition slConfig.hpp:30
const std::string SL_KEY_LOOP_PREFIX
Definition slConfig.hpp:44
std::string ToSupervisorSubstate(const std::string &substate)
Definition slConfig.cpp:173
int GetNumSecondaryLoops(const rad::Config &config)
Definition slConfig.cpp:43
void LoadLoopParamsIntoConfig(rad::Config &config, const std::string &config_filename="")
Definition slConfig.cpp:191
const std::string SL_KEY_CYCLE_LAST
Definition slConfig.hpp:51
LoopState
Definition slConfig.hpp:63
@ SL_SUSPENDED
Definition slConfig.hpp:66
@ SL_CLOSED
Definition slConfig.hpp:65
@ SL_OPEN
Definition slConfig.hpp:64
bool IsLoopEnabled(const rad::Config &config, int loop_index)
Definition slConfig.cpp:129
const std::string SL_KEY_CYCLE_LAST_SUCCESS
Definition slConfig.hpp:50
const std::string SL_KEY_CYCLE_START
Definition slConfig.hpp:52
std::string GetLoopParam(const rad::Config &config, int loop_index, const std::string ¶m_name)
Definition slConfig.cpp:109
const std::string SL_KEY_STATE
Definition slConfig.hpp:48
std::vector< int > GetEnabledLoopIndices(const rad::Config &config)
Definition slConfig.cpp:60
const std::string SL_KEY_TIMER_PERIOD_SEC
Definition slConfig.hpp:58
const std::string SL_KEY_CYCLE_FAILURE
Definition slConfig.hpp:53
const std::string SL_KEY_ACTIVE
Definition slConfig.hpp:47
const int SL_MAX_NUM
Definition slConfig.hpp:25
std::string GetLoopConfigKey(int loop_index, const std::string ¶m_name)
Definition slConfig.cpp:26
const std::string SL_KEY_CYCLE_COUNTER
Definition slConfig.hpp:49
const std::string SL_KEY_LOOP_NUM
Definition slConfig.hpp:43
std::string FormatSupervisorStatus(const std::string &sm_status)
Definition slConfig.cpp:184
bool TryGetLoopVectorParam(const rad::Config &config, int loop_index, const std::string ¶m_name, std::string &out)
Definition slConfig.cpp:77