Skip to content

CP Algorithm Blocks: replace "references" with two-pass configuration

Nils Erik Krumnack requested to merge krumnack/athena:repeat_config into master

Given that the first iteration of the configuration block design invoked criticism of the "reference" design for tracking containers I now changed it, so that instead of first allocating references to determine what the intermediate containers are, I just run through the entire configuration twice. The second run-through then can rely on what it learned in the first run-through to determine what will happen further down in the sequence.

This requires routing a number of calls through the ConfigAccumulator object, but it definitely makes writing the actual blocks more straightforward, and it should also allow for more flexibility if we need to redesign the ConfigAccumulator in the future (which also became simpler with this change).

cc @jburr @tadej

Edited by Nils Erik Krumnack

Merge request reports