+ /** @brief Possible update mechanisms */
+ enum class UpdateAlgo {
+ FULL, /**< Full update mechanism: the remaining time of every action is recomputed at each step */
+ LAZY /**< Lazy update mechanism: only the modified actions get recomputed.
+ It may be slower than full if your system is tightly coupled to the point where every action
+ gets recomputed anyway. In that case, you'd better not try to be cleaver with lazy and go for
+ a simple full update. */
+ };
+
+ explicit Model(Model::UpdateAlgo algo);
+ Model(const Model&) = delete;
+ Model& operator=(const Model&) = delete;
+