package i5.las2peer.services.ocd.metrics; import i5.las2peer.services.ocd.graphs.Cover; public interface KnowledgeDrivenMeasure extends OcdMetric { /** * Measures a cover with respect to another ground truth cover and adds * the resulting metric log to the cover. * Implementations of this method must allow to be interrupted. * I.e. they must periodically check the thread for interrupts * and throw an InterruptedException if an interrupt was detected. * @param cover The cover which is evaluated. It must also contain the corresponding graph. * @param groundTruth The ground truth cover on whose bases the metric value is calculated. * It must contain the same graph as the output cover. * @return The calculated metric value. * @throws OcdMetricException If the execution failed. * @throws InterruptedException If the executing thread was interrupted. */ public double measure(Cover cover, Cover groundTruth) throws OcdMetricException, InterruptedException; }