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