You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, Block has a init() function taking arguments, that is called by addBlock/emplaceBlock, and triggers the state machine going from IDLE to INITIALISED state.
At the same time, lifecycle::StateMachine is designed so that state changes are triggered via calls to changeStateTo(), which then calls callbacks such as start/stop/pause/reset and, conflicting with Block::init(), init().
It should be reviewed if Block::init() can be refactored in a way where it is not called by addBlock()/emplaceBlock(), but by the state machine, either by addBlock()/emplaceBlock() calling changeStateTo(INITIALISED), or by addBlock()/emplaceBlock() leaving the block in IDLE state, and the scheduler triggering init() instead. For both approaches, the arguments to init() need to be removed.
The text was updated successfully, but these errors were encountered:
Currently, Block has a
init()
function taking arguments, that is called byaddBlock/emplaceBlock
, and triggers the state machine going from IDLE to INITIALISED state.At the same time,
lifecycle::StateMachine
is designed so that state changes are triggered via calls tochangeStateTo()
, which then calls callbacks such as start/stop/pause/reset and, conflicting with Block::init(),init()
.It should be reviewed if
Block::init()
can be refactored in a way where it is not called byaddBlock()/emplaceBlock()
, but by the state machine, either byaddBlock()/emplaceBlock()
callingchangeStateTo(INITIALISED)
, or byaddBlock()/emplaceBlock()
leaving the block in IDLE state, and the scheduler triggeringinit()
instead. For both approaches, the arguments toinit()
need to be removed.The text was updated successfully, but these errors were encountered: