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);
32 public abstract void setSSCounts(SecondaryStructureCount secondaryStructureCount);
36 * Returns the percentage identity of the profile, i.e. the highest proportion
37 * of conserved (equal) symbols. The percentage is as a fraction of all
38 * sequences, or only ungapped sequences if flag ignoreGaps is set true.
43 public abstract float getPercentageIdentity(boolean ignoreGaps);
45 public abstract float getSSPercentageIdentity(boolean ignoreGaps);
48 * Returns the full symbol counts for this profile
52 public abstract ResidueCount getCounts();
55 * Returns the number of sequences in the profile
59 public abstract int getHeight();
62 * Returns the number of sequences in the profile which had a gap character
63 * (or were too short to be included in this column's profile)
67 public abstract int getGapped();
70 * Returns the highest count for any symbol(s) in the profile
74 public abstract int getMaxCount();
75 public abstract int getMaxSSCount();
78 * Returns the symbol (or concatenated symbols) which have the highest count
79 * in the profile, or an empty string if there were no symbols counted
83 public abstract String getModalResidue();
84 public abstract String getModalSS();
87 * Answers the number of non-gapped sequences in the profile
91 public abstract int getNonGapped();
92 SecondaryStructureCount getSSCounts();