package com.compomics.util.experiment.identification.amino_acid_tags; import com.compomics.util.preferences.SequenceMatchingPreferences; /** * Interface for a sequence tag component. * * @author Marc Vaudel */ public interface TagComponent { /** * Returns the tag component as String like a peptide sequence. Note: this * does not include modifications. * * @return the tag component as String like a peptide sequence */ public String asSequence(); /** * Returns the mass of the tag component. * * @return the mass of the tag component */ public Double getMass(); /** * Indicates whether another component is the same as the component of * interest. * * @param anotherCompontent another component * @param sequenceMatchingPreferences the sequence matching preferences * * @return a boolean indicating whether the other component is the same as * the one of interest */ public boolean isSameAs(TagComponent anotherCompontent, SequenceMatchingPreferences sequenceMatchingPreferences); /** * Indicates whether another component is the same as the component of * interest. * * @param anotherCompontent another component * @param sequenceMatchingPreferences the sequence matching preferences * * @return a boolean indicating whether the other component is the same as * the one of interest */ public boolean isSameSequenceAndModificationStatusAs(TagComponent anotherCompontent, SequenceMatchingPreferences sequenceMatchingPreferences); }