PreExposureDelay::PreExposureDelay(my_context ctx) : my_base(ctx) { UISubState uiSubState = PRINTENGINE->PauseRequested() ? AboutToPause : NoUISubState; PRINTENGINE->SendStatus(PreExposureDelayState, Entering, uiSubState); if (PRINTENGINE->NeedsPreExposureDelay()) { PRINTENGINE->StartDelayTimer(PRINTENGINE->GetPreExposureDelayTimeSec()); } else { // no delay needed (we really should never get here) post_event(EvDelayEnded()); } }
PreExposureDelay::PreExposureDelay(my_context ctx) : my_base(ctx) { UISubState uiSubState = PRINTENGINE->PauseRequested() ? AboutToPause : NoUISubState; PRINTENGINE->SendStatus(PreExposureDelayState, Entering, uiSubState); // check to see if the door is still open after calibrating, // in case we skipped the tray deflection steps if (PRINTENGINE->DoorIsOpen()) post_event(EvDoorOpened()); else { double delay = PRINTENGINE->GetPreExposureDelayTimeSec(); if (delay < 0.001) { // no delay needed post_event(EvDelayEnded()); } else PRINTENGINE->StartDelayTimer(delay); } }