Merge branch 'merge/develop_JAL-1780_JAL-653_JAL-1892' into develop
[jalview.git] / src / jalview / io / AlignFile.java
index 5d8a297..3b46760 100755 (executable)
  */
 package jalview.io;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Hashtable;
-import java.util.List;
-import java.util.Vector;
-
-import jalview.datamodel.Alignment;
 import jalview.datamodel.AlignmentAnnotation;
 import jalview.datamodel.AlignmentI;
 import jalview.datamodel.Sequence;
@@ -35,6 +27,13 @@ import jalview.datamodel.SequenceGroup;
 import jalview.datamodel.SequenceI;
 import jalview.util.MessageManager;
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Vector;
+
 /**
  * DOCUMENT ME!
  * 
@@ -200,7 +199,7 @@ public abstract class AlignFile extends FileParse
    * 
    * @param al
    */
-  public void addAnnotations(Alignment al)
+  public void addAnnotations(AlignmentI al)
   {
     addProperties(al);
     for (int i = 0; i < annotations.size(); i++)
@@ -220,6 +219,11 @@ public abstract class AlignFile extends FileParse
 
   }
 
+  /**
+   * register sequence groups on the alignment for **output**
+   * 
+   * @param al
+   */
   public void addSeqGroups(AlignmentI al)
   {
     this.seqGroups = al.getGroups();
@@ -233,7 +237,7 @@ public abstract class AlignFile extends FileParse
    * @note implicitly called by addAnnotations()
    * @param al
    */
-  public void addProperties(Alignment al)
+  public void addProperties(AlignmentI al)
   {
     if (properties != null && properties.size() > 0)
     {
@@ -378,4 +382,13 @@ public abstract class AlignFile extends FileParse
     return newickStrings == null ? 0 : newickStrings.size();
   }
 
+  public void addGroups(AlignmentI al)
+  {
+
+    for (SequenceGroup sg : getSeqGroups())
+    {
+      al.addGroup(sg);
+    }
+  }
+
 }