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