This brings over the Observer-pattern from the Limex-Plugin and integrates it in UGCore. This includes new ways to attach lua functions to the different events during the solution process. Unfortunately, some other needed changes are in the same branch:
As an direct usage of the above, this pull request includes a new interface for finished conditions, which determine when a simulation should be aborted, and the currently used conditions are implemented. This interface is also needed by some incoming changes in the internal d3f plugin.
Additionally, some changes needed for the internal ParameterUtil plugin are included. This includes the "CustomReturn" class, which can be returned by functions registered for use in Lua, indicating to the LuaBridge that this function will push its returned values to the LuaStack by itself.
This pull request also includes an "OverlyingSubsetFinder", which can return the subset index of the subset at an geometry's upper edge above a given point.
This brings over the Observer-pattern from the Limex-Plugin and integrates it in UGCore. This includes new ways to attach lua functions to the different events during the solution process. Unfortunately, some other needed changes are in the same branch: