All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cdc.applic.mountability.MountabilityComputer Maven / Gradle / Ivy

There is a newer version: 0.14.0
Show newest version
package cdc.applic.mountability;

import java.util.List;

import cdc.applic.mountability.events.MountabilityEvent;
import cdc.applic.mountability.handlers.MountabilityHandler;
import cdc.util.events.ProgressController;

/**
 * Interface used to compute the mountability of variants located at use points (spare functions).
 *
 * @author Damien Carbonne
 *
 * @param  The use point type.
 * @param  The variant type.
 */
public interface MountabilityComputer {
    /**
     * Computes the mountability of all variants in a mountability data set.
     *
     * @param data The mountability input data set.
     * @param handler The mountability handler, notified when necessary.
     * @param features The features.
     * @param controller The progress controller.
     */
    public void compute(MountabilityData data,
                        MountabilityHandler handler,
                        MountabilityComputerFeatures features,
                        ProgressController controller);

    /**
     * Computes the mountability of all variants in a mountability data set.
     * 

* This simply calls {@link #compute(MountabilityData, MountabilityHandler, MountabilityComputerFeatures, ProgressController)} * and wraps handler notifications in events. * * @param data The mountability input data set. * @param features The features. * @param controller The progress controller. * @return A List of {@link MountabilityEvent}. */ public List compute(MountabilityData data, MountabilityComputerFeatures features, ProgressController controller); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy