/** * @param conclusionProcessor * @param saturationStateWriter * @param localStatistics * @return an {@link InputProcessor} that processes {@link Conclusion}s in {@link Context}s within * an individual worker thread for the input root {@link IndexedClassExpression} using the * supplied {@link SaturationStateWriter} and updates the supplied local {@link * SaturationStatistics} accordingly */ protected InputProcessor<IndexedContextRoot> getEngine( ConclusionVisitor<? super Context, Boolean> conclusionProcessor, SaturationStateWriter<? extends C> saturationStateWriter, WorkerLocalTodo localTodo, SaturationStatistics localStatistics) { conclusionProcessor = SaturationUtils.getTimedConclusionVisitor(conclusionProcessor, localStatistics); return new BasicRuleEngine( saturationState_.getOntologyIndex(), conclusionProcessor, localTodo, this, saturationStateWriter, aggregatedStats_, localStatistics); }