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.
38 lines
1.2 KiB
38 lines
1.2 KiB
#include "OptimizationDirection.h"
|
|
#include <iostream>
|
|
#include <cassert>
|
|
|
|
namespace storm {
|
|
namespace solver {
|
|
|
|
bool isSet(OptimizationDirectionSetting s) {
|
|
return s != OptimizationDirectionSetting::Unset;
|
|
}
|
|
|
|
bool minimize(OptimizationDirection d) {
|
|
return d == OptimizationDirection::Minimize;
|
|
}
|
|
|
|
bool maximize(OptimizationDirection d) {
|
|
return d == OptimizationDirection::Maximize;
|
|
}
|
|
|
|
OptimizationDirection convert(OptimizationDirectionSetting s) {
|
|
assert(isSet(s));
|
|
return static_cast<OptimizationDirection>(s);
|
|
}
|
|
|
|
OptimizationDirectionSetting convert(OptimizationDirection d) {
|
|
return static_cast<OptimizationDirectionSetting>(d);
|
|
}
|
|
|
|
OptimizationDirection invert(OptimizationDirection d) {
|
|
return d == OptimizationDirection::Minimize ? OptimizationDirection::Maximize : OptimizationDirection::Minimize;
|
|
}
|
|
|
|
std::ostream& operator<<(std::ostream& out, OptimizationDirection d) {
|
|
return d == OptimizationDirection::Minimize ? out << "Minimize" : out << "Maximize";
|
|
}
|
|
}
|
|
}
|
|
|