Cigars for representing alignment view as used for calculation.
[jalview.git] / src / jalview / datamodel / CigarCigar.java
diff --git a/src/jalview/datamodel/CigarCigar.java b/src/jalview/datamodel/CigarCigar.java
new file mode 100644 (file)
index 0000000..5f8f78b
--- /dev/null
@@ -0,0 +1,32 @@
+package jalview.datamodel;
+
+public class CigarCigar
+    extends CigarSimple
+{
+  SeqCigar refCigar;
+    /**
+     * Apply CIGAR operations to the result of another cigar
+     * @param cigar Cigar
+     */
+    CigarCigar(SeqCigar cigar) {
+      super();
+      refCigar = cigar;
+    }
+  /**
+   *
+   * @return String formed by applying CIGAR operations to the reference object
+   * @param GapChar char
+   * @todo Implement this jalview.datamodel.Cigar method
+   */
+  public String getSequenceString(char GapChar)
+  {
+    if (length==0)
+      return "";
+    String refString = refCigar.getSequenceString(GapChar);
+    if (refString!=null) {
+      return (length==0) ? "" : (String) getSequenceAndDeletions(refString, GapChar)[0];
+    } else
+      return null;
+  }
+
+}