Merge branch 'develop' into documentation/JAL-2418_release2102
[jalview.git] / src / jalview / api / analysis / SimilarityParamsI.java
1 package jalview.api.analysis;
2
3 /**
4  * A description of options when computing percentage identity of two aligned
5  * sequences
6  */
7 public interface SimilarityParamsI
8 {
9   /**
10    * Answers true if gap-gap aligned positions should be included in the
11    * calculation
12    * 
13    * @return
14    */
15   boolean includeGappedColumns();
16
17   /**
18    * Answers true if gap-residue alignment is considered a match
19    * 
20    * @return
21    */
22   // TODO is this specific to a PID score only?
23   // score matrix will compute whatever is configured for gap-residue
24   boolean matchGaps();
25
26   /**
27    * Answers true if gaps are included in the calculation. This may affect the
28    * calculated score, the denominator (normalisation factor) of the score, or
29    * both. Gap-gap positions are included if this and includeGappedColumns both
30    * answer true.
31    * 
32    * @return
33    */
34   boolean includeGaps();
35
36   /**
37    * Answers true if only the shortest sequence length is used to divide the
38    * total score, false if the longest sequence length
39    * 
40    * @return
41    */
42   boolean denominateByShortestLength();
43 }