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.
50 lines
1.8 KiB
50 lines
1.8 KiB
#ifndef STORM_SETTINGS_MODULES_BISIMULATIONSETTINGS_H_
|
|
#define STORM_SETTINGS_MODULES_BISIMULATIONSETTINGS_H_
|
|
|
|
#include "src/settings/modules/ModuleSettings.h"
|
|
|
|
namespace storm {
|
|
namespace settings {
|
|
namespace modules {
|
|
|
|
/*!
|
|
* This class represents the bisimulation settings.
|
|
*/
|
|
class BisimulationSettings : public ModuleSettings {
|
|
public:
|
|
// An enumeration of all available bisimulation types.
|
|
enum class BisimulationType { Strong, Weak };
|
|
|
|
/*!
|
|
* Creates a new set of bisimulation settings that is managed by the given manager.
|
|
*
|
|
* @param settingsManager The responsible manager.
|
|
*/
|
|
BisimulationSettings(storm::settings::SettingsManager& settingsManager);
|
|
|
|
/*!
|
|
* Retrieves whether strong bisimulation is to be used.
|
|
*
|
|
* @return True iff strong bisimulation is to be used.
|
|
*/
|
|
bool isStrongBisimulationSet() const;
|
|
|
|
/*!
|
|
* Retrieves whether weak bisimulation is to be used.
|
|
*
|
|
* @return True iff weak bisimulation is to be used.
|
|
*/
|
|
bool isWeakBisimulationSet() const;
|
|
|
|
// The name of the module.
|
|
static const std::string moduleName;
|
|
|
|
private:
|
|
// Define the string names of the options as constants.
|
|
static const std::string typeOptionName;
|
|
};
|
|
} // namespace modules
|
|
} // namespace settings
|
|
} // namespace storm
|
|
|
|
#endif /* STORM_SETTINGS_MODULES_BISIMULATIONSETTINGS_H_ */
|