Moving unpackers so they are a FairSource, instead of a task will allow us access to the full capabilities of a FairRun, including the execution of certain base functions in a FairTask that are skipped when running without a proper FairSource.
Without a proper source, FairRun excecutes a DummyRun() instead of a normal run. A dummy run just runs the Exec() and FinishTask() methods, it skips the FinishEvent() method, and will not handle early interuptions to the event loop properly (and also does not respect calls to FairRootManager::Instance()->SetFinishRun().)
Moving unpackers so they are a FairSource, instead of a task will allow us access to the full capabilities of a FairRun, including the execution of certain base functions in a FairTask that are skipped when running without a proper FairSource.
Without a proper source, FairRun excecutes a
DummyRun()instead of a normal run. A dummy run just runs theExec()andFinishTask()methods, it skips theFinishEvent()method, and will not handle early interuptions to the event loop properly (and also does not respect calls toFairRootManager::Instance()->SetFinishRun().)