/* * Carrot2 project. * * Copyright (C) 2002-2016, Dawid Weiss, Stanisław Osiński. * All rights reserved. * * Refer to the full license file "carrot2.LICENSE" * in the root folder of the repository checkout or at: * http://www.carrot2.org/carrot2.LICENSE */ package org.carrot2.output.metrics; import org.carrot2.core.attribute.Processing; import org.carrot2.util.attribute.*; /** * A clustering quality metric. Calculates some metric reflecting the quality of * clustering. This interface does not impose any specific constraints on the values of * the metric, such as type and range. Instead, specific implementations should annotate * the values to be returned with {@link Output} {@link Processing} {@link Attribute}. */ public interface IClusteringMetric { /** * Triggers calculation of the metric. All {@link Processing} {@link Input} attributes * will have been bound before a call to this method. */ public void calculate(); /** * Return <code>true</code> if this metric should be calculated. */ public boolean isEnabled(); }