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

org.broadinstitute.hellbender.cmdline.GATKPlugin.GATKAnnotationArgumentCollection Maven / Gradle / Ivy

The newest version!
package org.broadinstitute.hellbender.cmdline.GATKPlugin;

import java.io.Serializable;
import java.util.List;

/**
 * An abstract ArgumentCollection for defining the set of annotation descriptor plugin arguments that are exposed to the user on the command line.
 *
 * Subclasses should provide {@link org.broadinstitute.barclay.argparser.Argument} annotations for the arguments that should be exposed.
 *
 * @see org.broadinstitute.hellbender.cmdline.GATKPlugin.GATKAnnotationPluginDescriptor
 */
public abstract class GATKAnnotationArgumentCollection implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * Returns the enabled annotation. Order should be honored.
     */
    public abstract List getUserEnabledAnnotationNames();

    /**
     * Returns the enabled annotation. Order should be honored.
     */
    public abstract List getUserEnabledAnnotationGroups();

    /**
     * Returns the disabled annotation names. Order should be honored.
     */
    public abstract List getUserDisabledAnnotationNames();

    /**
     * Returns {@code true} if all tool-default annotations are disabled; {@code false} otherwise.
     */
    public abstract boolean getDisableToolDefaultAnnotations();

    /**
     * Returns {@code true} if all annotations are enabled; {@code false} otherwise.
     */
    public abstract boolean getEnableAllAnnotations();
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy