package com.compomics.util.experiment.filtering; import java.util.ArrayList; /** * Interface for an item used for filtering. * * @author Marc Vaudel */ public interface FilterItem { /** * Returns the name of the item. * * @return the name of the item */ public String getName(); /** * Returns a description of the item. * * @return a description of the item */ public String getDescription(); /** * Returns the possible items of this kind. * * @return the possible items of this kind */ public FilterItem[] getPossibleValues(); /** * Indicates whether the item expects a number as threshold. * * @return a boolean indicating whether the item expects a number as * threshold */ public boolean isNumber(); /** * Indicates whether the item expects a list of PTMs to filter on. * * @return a boolean indicating whether the item expects a list of PTMs to * filter on */ public boolean isPtm(); /** * In case the filter has predefined values, return the possible values, null otherwise. * * @return a list of possible values to select from */ public ArrayList<String> getPossibilities(); }