void Sensor1ISR(void){ if(TimeSince(lastSensor1Trigger) > sensorTimeout){ lastSensor1Trigger = TimeNow(); Sensor1OutOn(); LogMsg(SENSOR, MESSAGE, "Sensor 1 Triggered"); TaskScheduleAdd(Sensor1OutOff, TASK_MEDIUM_PRIORITY, 10, 0); } ADCComparatorIntClear(ADC0_BASE, 0x0F); }
void Sensor2ISR(void){ if(TimeSince(lastSensor2Trigger) > sensorTimeout){ lastSensor2Trigger = TimeNow(); Sensor2OutOn(); TaskScheduleAdd(Sensor2OutOff, TASK_MEDIUM_PRIORITY, 10, 0); } ADCComparatorIntClear(ADC0_BASE, 0x0F); }
uint32 FogWorker::Run() { while(!bIsTaskStopped) { FPlatformProcess::Sleep(0.1f); if(Manager.bHasFOWTextureUpdate) { continue; } SCOPE_CYCLE_COUNTER(STAT_FogUpdatesCount); auto world = Manager.GetWorld(); if(world) { auto delta = world->TimeSince(TimeTillLastTick); Update(delta); TimeTillLastTick = world->TimeSeconds; } } return 0; }