When I am developing Unit Operations, I find the Unit Operation interfaces can't fill what I need. For example, the "reset" and "process input changed after last calculation". I prefer Colan adds these two functions on the "ICapeUnit" interface.
(1) "Reset" function.
After a calculation, Simulator could reset all the parameters back to the initial state, and clear all the temperal variables through "Reset" function.
(2) "GetInputValueChanged" function.
There will be a BOOL variable named "valueHaveChanged" in the Unit Operation. After a calculation, valueHaveChanged will be set FALSE. Any change of parameter will turn valueHaveChanged into TRUE. And simulator could get this indication through GetInputValueChanged, then shows "input have changed" tip to the user.