1 package jalview.api.analysis;
3 import jalview.datamodel.AlignmentView;
4 import jalview.math.MatrixI;
6 public interface ScoreModelI
9 * Answers a name for the score model, suitable for display in menus. Names
10 * should be unique across score models in use.
13 * @see jalview.analysis.scoremodels.ScoreModels#forName(String)
18 * Answers an informative description of the model, suitable for use in
19 * tooltips. Descriptions may be internationalised, and need not be unique
24 String getDescription();
27 * Answers true if this model is applicable for nucleotide data (so should be
28 * shown in menus in that context)
35 * Answers true if this model is applicable for peptide data (so should be
36 * shown in menus in that context)
42 // TODO getName, isDNA, isProtein can be static methods in Java 8
45 * Returns a distance score for the given sequence regions, that is, a matrix
46 * whose value [i][j] is the distance of sequence i from sequence j by some
47 * measure. The options parameter provides configuration choices for how the
48 * similarity score is calculated.
55 MatrixI findDistances(AlignmentView seqData, SimilarityParamsI options);
58 * Returns a similarity score for the given sequence regions, that is, a
59 * matrix whose value [i][j] is the similarity of sequence i to sequence j by
60 * some measure. The options parameter provides configuration choices for how
61 * the similarity score is calculated.
67 MatrixI findSimilarities(AlignmentView seqData, SimilarityParamsI options);