Browse Source

builder options for labeling overlapping guards

tempestpy_adaptions
Sebastian Junges 7 years ago
parent
commit
91bbe85a07
  1. 11
      src/storm/builder/BuilderOptions.cpp
  2. 12
      src/storm/builder/BuilderOptions.h

11
src/storm/builder/BuilderOptions.cpp

@ -36,7 +36,7 @@ namespace storm {
return boost::get<storm::expressions::Expression>(labelOrExpression); return boost::get<storm::expressions::Expression>(labelOrExpression);
} }
BuilderOptions::BuilderOptions(bool buildAllRewardModels, bool buildAllLabels) : buildAllRewardModels(buildAllRewardModels), buildAllLabels(buildAllLabels), buildChoiceLabels(false), buildStateValuations(false), buildChoiceOrigins(false), explorationChecks(false), addOutOfBoundsState(false), showProgress(false), showProgressDelay(0) {
BuilderOptions::BuilderOptions(bool buildAllRewardModels, bool buildAllLabels) : buildAllRewardModels(buildAllRewardModels), buildAllLabels(buildAllLabels), buildChoiceLabels(false), buildStateValuations(false), buildChoiceOrigins(false), explorationChecks(false), addOverlappingGuardsLabel(false), addOutOfBoundsState(false), showProgress(false), showProgressDelay(0) {
// Intentionally left empty. // Intentionally left empty.
} }
@ -164,6 +164,10 @@ namespace storm {
return addOutOfBoundsState; return addOutOfBoundsState;
} }
bool BuilderOptions::isAddOverlappingGuardLabelSet() const {
return addOverlappingGuardsLabel;
}
BuilderOptions& BuilderOptions::setBuildAllRewardModels(bool newValue) { BuilderOptions& BuilderOptions::setBuildAllRewardModels(bool newValue) {
buildAllRewardModels = newValue; buildAllRewardModels = newValue;
return *this; return *this;
@ -238,5 +242,10 @@ namespace storm {
return *this; return *this;
} }
BuilderOptions& BuilderOptions::setAddOverlappingGuardsLabel(bool newValue) {
addOverlappingGuardsLabel = newValue;
return *this;
}
} }
} }

12
src/storm/builder/BuilderOptions.h

@ -108,6 +108,7 @@ namespace storm {
bool isExplorationChecksSet() const; bool isExplorationChecksSet() const;
bool isShowProgressSet() const; bool isShowProgressSet() const;
bool isAddOutOfBoundsStateSet() const; bool isAddOutOfBoundsStateSet() const;
bool isAddOverlappingGuardLabelSet() const;
uint64_t getShowProgressDelay() const; uint64_t getShowProgressDelay() const;
/** /**
@ -164,6 +165,12 @@ namespace storm {
*/ */
BuilderOptions& setAddOutOfBoundsState(bool newValue = true); BuilderOptions& setAddOutOfBoundsState(bool newValue = true);
/**
* Should a state be labelled for overlapping guards
* @param newValue the new value (default true)
*/
BuilderOptions& setAddOverlappingGuardsLabel(bool newValue = true);
private: private:
/// A flag that indicates whether all reward models are to be built. In this case, the reward model names are /// A flag that indicates whether all reward models are to be built. In this case, the reward model names are
@ -194,10 +201,13 @@ namespace storm {
// A flag that indicates whether or not to generate the information from which parts of the model specification // A flag that indicates whether or not to generate the information from which parts of the model specification
// each choice originates. // each choice originates.
bool buildChoiceOrigins; bool buildChoiceOrigins;
/// A flag that stores whether exploration checks are to be performed. /// A flag that stores whether exploration checks are to be performed.
bool explorationChecks; bool explorationChecks;
/// A flag for states with overlapping guards
bool addOverlappingGuardsLabel;
/// A flag indicating that the an additional state for out of bounds should be created. /// A flag indicating that the an additional state for out of bounds should be created.
bool addOutOfBoundsState; bool addOutOfBoundsState;

Loading…
Cancel
Save