13template<
typename ValueType>
18template<
typename ValueType>
20 distribution.addProbability(deterministicChoice, storm::utility::one<ValueType>());
23template<
typename ValueType>
28template<
typename ValueType>
30 : distribution(
std::move(randomizedChoice)) {
34template<
typename ValueType>
36 return distribution.size() != 0;
39template<
typename ValueType>
41 return distribution.size() == 1;
44template<
typename ValueType>
46 STORM_LOG_THROW(isDeterministic(), storm::exceptions::InvalidOperationException,
47 "Tried to obtain the deterministic choice of a scheduler, but the choice is not deterministic");
48 return distribution.begin()->first;
51template<
typename ValueType>
56template<
typename ValueType>
70template class SchedulerChoice<double>;
uint_fast64_t getDeterministicChoice() const
If this choice is deterministic, this function returns the selected (local) choice index.
storm::storage::Distribution< ValueType, uint_fast64_t > const & getChoiceAsDistribution() const
Retrieves this choice in the form of a probability distribution.
SchedulerChoice()
Creates an undefined scheduler choice.
bool isDeterministic() const
Returns true iff this scheduler choice is deterministic (i.e., not randomized)
bool isDefined() const
Returns true iff this scheduler choice is defined.
#define STORM_LOG_THROW(cond, exception, message)
std::ostream & operator<<(std::ostream &out, ParameterRegion< ParametricType > const ®ion)