30 template <
typename RandomNumberEngine>
32 this->
value = std::uniform_int_distribution<std::int64_t>(
38 throw std::runtime_error(
"Value out of bounds.");
43 template <
typename RandomNumberEngine>
46 std::int64_t candidate_value = std::uniform_int_distribution<std::int64_t>(
48 if (candidate_value >= this->
value) {
51 return candidate_value;
54 template <
typename RandomNumberEngine>
57 return std::uniform_int_distribution<std::int64_t>(
67 throw std::runtime_error(
"Value out of bounds.");
Definition algorithm.hpp:24
Definition variable.hpp:20
std::int64_t GetValueFromState(std::int64_t state) const
Definition variable.hpp:61
std::int64_t GetStateFromValue(std::int64_t value) const
Definition variable.hpp:65
std::int64_t value
Definition variable.hpp:75
std::int64_t GenerateRandomValue(RandomNumberEngine &random_number_engine) const
Definition variable.hpp:56
std::int64_t GenerateCandidateValue(RandomNumberEngine &random_number_engine) const
Definition variable.hpp:45
std::int64_t upper_bound
Definition variable.hpp:73
std::int64_t lower_bound
Definition variable.hpp:72
std::int64_t num_states
Definition variable.hpp:74
void SetValue(const std::int64_t value)
Definition variable.hpp:36
void SetRandomValue(RandomNumberEngine &random_number_engine)
Definition variable.hpp:31
IntegerVariable(const std::int64_t lower_bound, const std::int64_t upper_bound)
Definition variable.hpp:22