**TODO:** Describe the general software structure according to MVC pattern.
## VADERE's Core: The Simulation Loop
Like many other simulators, VADERE consists of a simulation loop.
```java
doublecurrentTime=0;
...
while(simIsRunning){
...
model.update(currentTime);
currentTime++;
...
}
```
The simulation loop is implemented in class `Simulation`. In each simulation loop, the locomotion model is updated. The locomotion model searches for the next position of an agent (a simulated pedestrian). I.e., a locomotion model implements a well-defined interface `Model`. This concept makes VADERE a generic framework in which different locomotion models can be implemented easily.
## Additional Resources
### How to...
-[implement a new model?](Implementing a Model)
-[implement a new processor?](Implementing a Processors)