Storm
A Modern Probabilistic Model Checker
Loading...
Searching...
No Matches
LongRunAverageRewardFormula.cpp
Go to the documentation of this file.
2#include <boost/any.hpp>
3#include <ostream>
4
6
7namespace storm {
8namespace logic {
9LongRunAverageRewardFormula::LongRunAverageRewardFormula(boost::optional<RewardAccumulation> rewardAccumulation) : rewardAccumulation(rewardAccumulation) {
10 // Intentionally left empty.
11}
12
16
18 return true;
19}
20
22 return rewardAccumulation.is_initialized();
23}
24
26 return rewardAccumulation.get();
27}
28
29std::shared_ptr<LongRunAverageRewardFormula const> LongRunAverageRewardFormula::stripRewardAccumulation() const {
30 return std::make_shared<LongRunAverageRewardFormula>();
31}
32
33boost::any LongRunAverageRewardFormula::accept(FormulaVisitor const& visitor, boost::any const& data) const {
34 return visitor.visit(*this, data);
35}
36
37std::ostream& LongRunAverageRewardFormula::writeToStream(std::ostream& out, bool /* allowParentheses */) const {
38 // No parentheses necessary
39 out << "LRA";
41 out << "[" << getRewardAccumulation() << "]";
42 }
43 return out;
44}
45
46} // namespace logic
47} // namespace storm
virtual boost::any visit(AtomicExpressionFormula const &f, boost::any const &data) const =0
std::shared_ptr< LongRunAverageRewardFormula const > stripRewardAccumulation() const
virtual std::ostream & writeToStream(std::ostream &out, bool allowParentheses=false) const override
Writes the forumla to the given output stream.
RewardAccumulation const & getRewardAccumulation() const
LongRunAverageRewardFormula(boost::optional< RewardAccumulation > rewardAccumulation=boost::none)
virtual boost::any accept(FormulaVisitor const &visitor, boost::any const &data) const override
LabParser.cpp.
Definition cli.cpp:18