NetDEM v1.0
Loading...
Searching...
No Matches
modifier.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "dem_solver.hpp"
4#include <string>
5
6namespace netdem {
7
8class Simulation;
9class Scene;
10
18class Modifier {
19public:
20 std::string label{"default"};
22
23 Simulation *sim{nullptr};
24 Scene *scene{nullptr};
25
26 bool update_with_scene{false};
27 bool enable_logging{true};
28
32 Modifier();
33
39 virtual Modifier *Clone() const;
40
46 virtual void Init(Simulation *sim);
47
51 virtual void Enable();
52
56 virtual void Disable();
57
63 virtual void Execute();
64
70 virtual void Update();
71
75 virtual ~Modifier();
76};
77
78} // namespace netdem
CyclePoint
Definition dem_solver.hpp:27
@ pre
Definition dem_solver.hpp:28
An interface class used to modify a DEM simulation.
Definition modifier.hpp:18
Modifier()
Default constructor for Modifier class.
Definition modifier.cpp:7
virtual Modifier * Clone() const
Clones the current Modifier instance.
Definition modifier.cpp:9
bool update_with_scene
Definition modifier.hpp:26
Simulation * sim
Definition modifier.hpp:23
virtual ~Modifier()
Destructor for Modifier class.
Definition modifier.cpp:45
bool enable_logging
Definition modifier.hpp:27
Scene * scene
Definition modifier.hpp:24
virtual void Execute()
Executes the Modifier instance.
Definition modifier.cpp:41
std::string label
Definition modifier.hpp:20
virtual void Disable()
Disables the Modifier instance.
Definition modifier.cpp:29
DEMSolver::CyclePoint cycle_point
Definition modifier.hpp:21
virtual void Init(Simulation *sim)
Initializes the Modifier instance.
Definition modifier.cpp:11
virtual void Update()
Updates the Modifier instance.
Definition modifier.cpp:43
virtual void Enable()
Enables the Modifier instance.
Definition modifier.cpp:17
A class for managing the elements in a DEM simulation. Scene behaves as a std container:
Definition scene.hpp:56
Class for managing a DEM simulation.
Definition simulation.hpp:21
Definition bond_entry.hpp:7