@@ -243,10 +243,10 @@ In addition to the constructor, each module can override the following methods:
\begin{itemize}
\item\parameter{initialize()}: Called once per module from the main thread after loading and constructing all modules and before starting the event loop.
This method can for example be used to initialize histograms.
\item\parameter{initializeThread()}: Called after global initialization but before event processing and gives the possibility to initialize worker thread-specific members for modules if multithreading is used.
\item\parameter{initializeThread()}: Called after global initialization but before event processing and gives the possibility to initialize worker thread-specific members for modules. If multithreading is used, this method is called by each worker thread separately; if the simulation is run single-threaded, it is called once by the main thread.
\item\parameter{run(Event* event)}: Called for every event in the simulation, with a pointer to the current event object as parameter.
An exception should be thrown for serious errors, otherwise a warning should be logged.
\item\parameter{finalizeThread()}: Called for each worker thread after processing all events in the run by each worker thread separately if multithreading is used.
\item\parameter{finalizeThread()}: Called for each worker thread after processing all events in the run. If multithreading is used, this method is called by each worker thread separately; if the simulation is run single-threaded, it is called once by the main thread.
\item\parameter{finalize()}: Called once per module from the main thread after processing all events in the run and before destructing the module.
Typically used to save the output data (like histograms).
Any exceptions should be thrown from here instead of the destructor.