JAL-838 first version of PID parameters model
[jalview.git] / src / jalview / api / analysis / SimilarityParamsI.java
diff --git a/src/jalview/api/analysis/SimilarityParamsI.java b/src/jalview/api/analysis/SimilarityParamsI.java
new file mode 100644 (file)
index 0000000..9ec2151
--- /dev/null
@@ -0,0 +1,41 @@
+package jalview.api.analysis;
+
+/**
+ * A description of options when computing percentage identity of two aligned
+ * sequences
+ */
+public interface SimilarityParamsI
+{
+  /**
+   * Answers true if gap-gap aligned positions should be included in the
+   * calculation
+   * 
+   * @return
+   */
+  boolean includeGappedColumns();
+
+  /**
+   * Answers true if gap-residue alignment is considered a match
+   * 
+   * @return
+   */
+  boolean matchGaps();
+
+  /**
+   * Answers true if the demoninator (normalisation factor) of the score count
+   * includes gap-residue positions, false if it only includes residue-residue
+   * aligned positions. Gap-gap positions are included if this and
+   * includeGappedColumns both answer true.
+   * 
+   * @return
+   */
+  boolean denominatorIncludesGaps();
+
+  /**
+   * Answers true if only the shortest sequence length is used to divide the
+   * total score, false if the longest sequence length
+   * 
+   * @return
+   */
+  boolean denominateByShortestLength();
+}