JAL-1705 reworked AlignmentUtils.makeCdsAlignment and associated code
[jalview.git] / src / jalview / datamodel / AlignedCodonFrame.java
index 179f5cc..a56f1d4 100644 (file)
@@ -303,7 +303,8 @@ public class AlignedCodonFrame
 
   /**
    * Convenience method to return the first aligned sequence in the given
-   * alignment whose dataset has a mapping with the given dataset sequence.
+   * alignment whose dataset has a mapping with the given (aligned or dataset)
+   * sequence.
    * 
    * @param seq
    * 
@@ -317,7 +318,7 @@ public class AlignedCodonFrame
      */
     for (SequenceToSequenceMapping ssm : mappings)
     {
-      if (ssm.fromSeq == seq)
+      if (ssm.fromSeq == seq || ssm.fromSeq == seq.getDatasetSequence())
       {
         for (SequenceI sourceAligned : al.getSequences())
         {
@@ -335,7 +336,8 @@ public class AlignedCodonFrame
      */
     for (SequenceToSequenceMapping ssm : mappings)
     {
-      if (ssm.mapping.to == seq)
+      if (ssm.mapping.to == seq
+              || ssm.mapping.to == seq.getDatasetSequence())
       {
         for (SequenceI sourceAligned : al.getSequences())
         {
@@ -444,13 +446,13 @@ public class AlignedCodonFrame
   }
 
   /**
-   * Returns any mappings found which are to (or from) the given sequence, and
-   * to distinct sequences.
+   * Returns any mappings found which are from the given sequence, and to
+   * distinct sequences.
    * 
    * @param seq
    * @return
    */
-  public List<Mapping> getMappingsForSequence(SequenceI seq)
+  public List<Mapping> getMappingsFromSequence(SequenceI seq)
   {
     List<Mapping> result = new ArrayList<Mapping>();
     List<SequenceI> related = new ArrayList<SequenceI>();
@@ -460,7 +462,7 @@ public class AlignedCodonFrame
     for (SequenceToSequenceMapping ssm : mappings)
     {
       final Mapping mapping = ssm.mapping;
-      if (ssm.fromSeq == seqDs || mapping.to == seqDs)
+      if (ssm.fromSeq == seqDs)
       {
         if (!related.contains(mapping.to))
         {