26 #include <unordered_map>
27 #include <unordered_set>
30 #include <opm/input/eclipse/Deck/DeckKeyword.hpp>
31 #include <opm/input/eclipse/Schedule/Action/ActionAST.hpp>
32 #include <opm/input/eclipse/Schedule/Action/ActionResult.hpp>
33 #include <opm/input/eclipse/Schedule/Action/Condition.hpp>
77 ActionX(
const std::string& name,
size_t max_run,
double max_wait, std::time_t start_time);
82 static ActionX serializationTestObject();
85 bool ready(
const State& state, std::time_t sim_time)
const;
88 std::vector<std::string> wellpi_wells(
const WellMatcher& well_matcher,
const std::vector<std::string>& matching_wells)
const;
89 void required_summary(std::unordered_set<std::string>& required_summary)
const;
90 std::string name()
const {
return this->m_name; }
91 size_t max_run()
const {
return this->m_max_run; }
92 double min_wait()
const {
return this->m_min_wait; }
93 std::size_t id()
const;
94 void update_id(std::size_t
id);
95 std::time_t start_time()
const {
return this->m_start_time; }
96 std::vector<DeckKeyword>::const_iterator begin()
const;
97 std::vector<DeckKeyword>::const_iterator end()
const;
98 static bool valid_keyword(
const std::string& keyword);
104 const std::vector<Condition>& conditions()
const;
105 std::vector<std::string> keyword_strings()
const;
107 bool operator==(
const ActionX& data)
const;
109 template<
class Serializer>
113 serializer(m_max_run);
114 serializer(m_min_wait);
115 serializer(m_start_time);
117 serializer(keywords);
118 serializer(condition);
119 serializer(m_conditions);
124 size_t m_max_run = 0;
125 double m_min_wait = 0.0;
126 std::time_t m_start_time;
127 std::size_t m_id = 0;
129 std::vector<DeckKeyword> keywords;
131 std::vector<Condition> m_conditions;
Definition: Actdims.hpp:30
Definition: ActionAST.hpp:44
Definition: ActionX.hpp:74
Definition: ActionContext.hpp:39
Definition: ActionResult.hpp:99
Definition: DeckKeyword.hpp:36
Definition: DeckRecord.hpp:32
Class for (de-)serializing.
Definition: Serializer.hpp:75
Definition: WellMatcher.hpp:32
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition: Exceptions.hpp:29
Definition: action.hpp:35