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.
 
 
 
 

36 lines
1.1 KiB

#pragma once
#include <cstdint>
#include <vector>
#include <boost/optional.hpp>
#include "storm/storage/expressions/Expression.h"
namespace storm {
namespace abstraction {
class RefinementCommand {
public:
/*!
* Creates a new refinement command for the given player 1 choice.
*/
RefinementCommand(uint64_t referencedPlayer1Choice, std::vector<storm::expressions::Expression> const& predicates);
/*!
* Creates a new refinement command for all player 1 choices.
*/
RefinementCommand(std::vector<storm::expressions::Expression> const& predicates);
/// Access to the details of this refinement commands.
bool refersToPlayer1Choice() const;
uint64_t getReferencedPlayer1Choice() const;
std::vector<storm::expressions::Expression> const& getPredicates() const;
private:
boost::optional<uint64_t> referencedPlayer1Choice;
std::vector<storm::expressions::Expression> predicates;
};
}
}