50,51c50
< BaseCPU(params),
< drainManager(NULL)
---
> BaseCPU(params)
197,198c196,197
< unsigned int
< MinorCPU::drain(DrainManager *drain_manager)
---
> DrainState
> MinorCPU::drain()
202,203d200
< drainManager = drain_manager;
<
206,208c203
< unsigned int ret = pipeline->drain(drain_manager);
<
< if (ret == 0)
---
> if (pipeline->drain()) {
210c205,206
< else
---
> return DrainState::Drained;
> } else {
212,213c208,209
<
< return ret;
---
> return DrainState::Draining;
> }
220,222c216
< setDrainState(DrainState::Drained);
< drainManager->signalDrainDone();
< drainManager = NULL;
---
> signalDrainDone();
228,229c222
< assert(getDrainState() == DrainState::Drained ||
< getDrainState() == DrainState::Running);
---
> assert(drainState() == DrainState::Drained);
245,246d237
<
< setDrainState(DrainState::Running);