2 * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3 * Copyright (C) $$Year-Rel$$ The Jalview Authors
5 * This file is part of Jalview.
7 * Jalview is free software: you can redistribute it and/or
8 * modify it under the terms of the GNU General Public License
9 * as published by the Free Software Foundation, either version 3
10 * of the License, or (at your option) any later version.
12 * Jalview is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty
14 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 * PURPOSE. See the GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19 * The Jalview Authors are detailed in the 'AUTHORS' file.
21 package jalview.datamodel;
23 public interface ProfileI
27 * Set the full profile of counts
29 * @param residueCounts
31 public abstract void setCounts(ResidueCount residueCounts);
34 * Returns the percentage identity of the profile, i.e. the highest proportion
35 * of conserved (equal) symbols. The percentage is as a fraction of all
36 * sequences, or only ungapped sequences if flag ignoreGaps is set true.
41 public abstract float getPercentageIdentity(boolean ignoreGaps);
44 * Returns the full symbol counts for this profile
48 public abstract ResidueCount getCounts();
51 * Returns the number of sequences in the profile
55 public abstract int getHeight();
58 * Returns the number of sequences in the profile which had a gap character
59 * (or were too short to be included in this column's profile)
63 public abstract int getGapped();
66 * Returns the highest count for any symbol(s) in the profile
70 public abstract int getMaxCount();
73 * Returns the symbol (or concatenated symbols) which have the highest count
74 * in the profile, or an empty string if there were no symbols counted
78 public abstract String getModalResidue();
81 * Answers the number of non-gapped sequences in the profile
85 public abstract int getNonGapped();