You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

38 lines
2.0 KiB

#include "storm/settings/modules/ModelCheckerSettings.h"
#include "storm/settings/SettingsManager.h"
#include "storm/settings/SettingMemento.h"
#include "storm/settings/Option.h"
#include "storm/settings/OptionBuilder.h"
#include "storm/settings/ArgumentBuilder.h"
#include "storm/settings/Argument.h"
namespace storm {
namespace settings {
namespace modules {
const std::string ModelCheckerSettings::moduleName = "modelchecker";
const std::string ModelCheckerSettings::filterRewZeroOptionName = "filterrewzero";
const std::string ModelCheckerSettings::ltl2daToolOptionName = "ltl2datool";
ModelCheckerSettings::ModelCheckerSettings() : ModuleSettings(moduleName) {
this->addOption(storm::settings::OptionBuilder(moduleName, filterRewZeroOptionName, false, "If set, states with reward zero are filtered out, potentially reducing the size of the equation system").setIsAdvanced().build());
this->addOption(storm::settings::OptionBuilder(moduleName, ltl2daToolOptionName, false, "If set, use an external tool to convert LTL formulas to state-based deterministic automata in HOA format").setIsAdvanced().addArgument(storm::settings::ArgumentBuilder::createStringArgument("filename", "A script that can be called with a prefix formula and a name for the output automaton.").build()).build());
}
bool ModelCheckerSettings::isFilterRewZeroSet() const {
return this->getOption(filterRewZeroOptionName).getHasOptionBeenSet();
}
bool ModelCheckerSettings::isLtl2daToolSet() const {
return this->getOption(ltl2daToolOptionName).getHasOptionBeenSet();
}
std::string ModelCheckerSettings::getLtl2daTool() const {
return this->getOption(ltl2daToolOptionName).getArgumentByName("filename").getValueAsString();
}
} // namespace modules
} // namespace settings
} // namespace storm