Skip to content

Streamline and simplify update of couplings in multisystem framework

Description

Greatly simplify the boiler plate needed for updating the couplings:

  • merge update_external_quantity into the update_quantity method, as there was not clear use case where they should be different.
  • make update_quantity a non-deferred method, as in many cases systems do not have any quantities to update on demand.

Also move some code to more logical places and refactor it. In particular the infamous update_exposed_quantities routine is gone 😀 🎊 This is now split into:

  • update_partner_couplings method of interaction_with_partner_t
  • update_on_demand_quantities method of interaction_partner_t
  • check_couplings_status method of interaction_partner_t

As a side effect, interaction partners that are not systems do not need to implement their own version of update_exposed_quantities, as the new ``update_partner_couplings` method is fully generic.

Edited by Micael Oliveira

Merge request reports

Loading