1 #include <attn/attn_config.hpp> 2 3 namespace attn 4 { 5 6 /** @brief Main constructor */ Config()7Config::Config() 8 { 9 setFlagAll(); 10 iv_flags.reset(dfltTi); // default value is clear 11 } 12 13 /** @brief Get state of flag */ getFlag(AttentionFlag i_flag) const14bool Config::getFlag(AttentionFlag i_flag) const 15 { 16 return (iv_flags.test(i_flag)); 17 } 18 19 /** @brief Set configuration flag */ setFlag(AttentionFlag i_flag)20void Config::setFlag(AttentionFlag i_flag) 21 { 22 iv_flags.set(i_flag); 23 } 24 25 /** @brief Set all configuration flags */ setFlagAll()26void Config::setFlagAll() 27 { 28 iv_flags.set(enVital); 29 iv_flags.set(enCheckstop); 30 iv_flags.set(enTerminate); 31 iv_flags.set(enBreakpoints); 32 iv_flags.set(enClrAttnIntr); 33 } 34 35 /** @brief Clear configuration flag */ clearFlag(AttentionFlag i_flag)36void Config::clearFlag(AttentionFlag i_flag) 37 { 38 iv_flags.reset(i_flag); 39 } 40 41 /** @brief Clear all configuration flags */ clearFlagAll()42void Config::clearFlagAll() 43 { 44 iv_flags.reset(enVital); 45 iv_flags.reset(enCheckstop); 46 iv_flags.reset(enTerminate); 47 iv_flags.reset(enBreakpoints); 48 iv_flags.reset(enClrAttnIntr); 49 } 50 51 } // namespace attn 52