static void HQNCALL timeout_fire(hqn_timer_t* timer, void* data) { SWMSG_INTERRUPT irq; UNUSED_PARAM(hqn_timer_t*, timer); UNUSED_PARAM(void*, data); /* Send a timeout interrupt event. */ irq.timeline = (sw_tl_ref)((intptr_t)data); HQASSERT((void *)((intptr_t)irq.timeline) == data, "Truncated timeline ref") ; (void)SwEvent(SWEVT_INTERRUPT_TIMEOUT, &irq, sizeof(irq)); }
/** * \brief Request cancellation of the current job. * * This function requests cancellation of the current job in the OIL. * Along with OIL_AbortCallback(), it forms a decoupled mechanism for * cancelling the current job. Calling this function set the status * of the current job (if there is one) to @c OIL_Job_Abort. By calling * OIL_AbortCallback() periodically, the Skin can check on the status of the * current job, and, if cancellation has been requested, take appropriate * action. */ void OIL_JobCancel(void) { SWMSG_INTERRUPT irq = { 0 }; (void)SwEvent(SWEVT_INTERRUPT_USER, &irq, sizeof(irq)); /* g_SystemState.bJobCancelReq = TRUE; not required with events */ g_SystemState.eCurrentState = OIL_Sys_JobCancel; #ifndef PMS_OIL_MERGE_DISABLE_JS Call_gps_InterpNotifyState(g_SystemState.eCurrentState); #endif if(g_pstCurrentJob) { /* g_pstCurrentJob->eJobStatus = OIL_Job_Abort; not required with events */ g_pstCurrentJob->eJobStatus = OIL_Job_RipDone ; } }