/** * @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); }
/** * Creates a new primary {@link SaturationStateWriter} for the {@link SaturationState} to be used * by an engine of this {@link RuleApplicationFactory}. This {@link SaturationStateWriter} can be * further extended and optimized. * * @param creationListener * @param modificationListener * @return a new writer for the main {@link SaturationState} to be used by engine. */ SaturationStateWriter<? extends C> getBaseWriter( ContextCreationListener creationListener, ContextModificationListener modificationListener) { // by default the writer can create new contexts return saturationState_.getContextCreatingWriter(creationListener, modificationListener); }