You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* @brief Inserts the given atoms into the `dont_end` unordered map.
66
66
*
67
67
* This function inserts the given atoms into the `dont_end` set, which contains the atoms that are not yet ready to end. The solver will adapt the plan to delay the ending of these atoms.
68
68
*
69
69
* @param atoms The set of atoms which are not yet ready to end and the corresponding delay time.
* @brief Called when the state of the executor changes.
@@ -134,15 +136,13 @@ namespace ratio::executor
134
136
protected:
135
137
std::mutex mtx; // the mutex for the critical sections..
136
138
private:
137
-
std::atomic<bool> running = false; // the running state..
138
-
executor_state state = executor_state::Reasoning; // the current state of the executor..
139
-
std::unordered_set<const riddle::predicate *> executable_predicates; // the set of executable (impulses and intervals) predicates..
140
-
const utils::rational units_per_tick; // the number of plan units for each tick..
141
-
bool pending_requirements = false; // whether there are pending requirements to be solved or not..
142
-
utils::rational current_time; // the current time in plan units..
143
-
std::unordered_set<const riddle::atom_term *> executing; // the atoms that are currently executing..
144
-
std::unordered_map<const riddle::atom_term *, utils::rational> dont_start; // the starting atoms which are not yet ready to start..
145
-
std::unordered_map<const riddle::atom_term *, utils::rational> dont_end; // the ending atoms which are not yet ready to end..
146
-
std::map<utils::inf_rational, std::pair<std::vector<riddle::atom_term *>, std::vector<riddle::atom_term *>>> pulses; // the pulses of the executor, with the starting and ending atoms..
139
+
std::atomic<bool> running = false; // the running state..
140
+
executor_state state = executor_state::Reasoning; // the current state of the executor..
141
+
std::unordered_set<const riddle::predicate *> executable_predicates; // the set of executable (impulses and intervals) predicates..
142
+
const utils::rational units_per_tick; // the number of plan units for each tick..
143
+
bool pending_requirements = false; // whether there are pending requirements to be solved or not..
144
+
utils::rational current_time; // the current time in plan units..
145
+
std::unordered_set<const riddle::atom_term *> executing; // the atoms that are currently executing..
146
+
std::map<utils::inf_rational, std::pair<std::unordered_set<riddle::atom_term *>, std::unordered_set<riddle::atom_term *>>> pulses; // the pulses of the executor, with the starting and ending atoms..
0 commit comments