6#include <unordered_map>
7#include <unordered_set>
21 std::unordered_map<std::string, Modifier *> modifier_lib;
27 std::unordered_set<Modifier *> scene_state_subscribers;
62 void Enable(std::string
const &label);
CyclePoint
Definition dem_solver.hpp:27
An interface class used to modify a DEM simulation.
Definition modifier.hpp:18
A class used to manage modifiers in a simulation.
Definition modifier_manager.hpp:18
void Init(Simulation *s)
Initializes the ModifierManager instance.
Definition modifier_manager.cpp:11
void UpdateModifiers()
Updates the modifiers in the scene_state_subscribers when the scene changes.
Definition modifier_manager.cpp:97
Modifier * FindModifier(std::string const &label)
Finds a modifier in the simulation by label.
~ModifierManager()
Destructor for ModifierManager class.
Definition modifier_manager.cpp:109
Modifier * Insert(Modifier *e)
Inserts new modifier into the simulation.
Definition modifier_manager.cpp:17
void Enable(std::string const &label)
Enables a modifier in the simulation.
ModifierManager()
Default constructor for ModifierManager class.
Definition modifier_manager.cpp:9
void RemoveModifier(std::string const &label)
Removes a modifier from the simulation.
Definition modifier_manager.cpp:30
void Disable(std::string const &label)
Disables a modifier in the simulation.
void ExecuteModifiers(DEMSolver::CyclePoint cycle_point)
Executes all modifiers during the specified cycle point of the DEM solver.
Definition modifier_manager.cpp:103
Class for managing a DEM simulation.
Definition simulation.hpp:21
Definition bond_entry.hpp:7
std::vector< T > VecXT
Definition utils_macros.hpp:31