Merge branch 'docs/2_8_1_Release' into Release_2_8_2_Branch
[jalview.git] / src / jalview / datamodel / AlignmentAnnotation.java
index ea13922..e39c0b7 100755 (executable)
@@ -1,6 +1,6 @@
 /*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
- * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.1)
+ * Copyright (C) 2014 The Jalview Authors
  * 
  * This file is part of Jalview.
  * 
  * PURPOSE.  See the GNU General Public License for more details.
  * 
  * You should have received a copy of the GNU General Public License along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
  */
 package jalview.datamodel;
 
 import jalview.analysis.Rna;
+import jalview.analysis.SecStrConsensus.SimpleBP;
+
 import jalview.analysis.WUSSParseException;
 
 import java.util.ArrayList;
@@ -55,6 +58,7 @@ public class AlignmentAnnotation
   
   
 
+  public ArrayList<SimpleBP> bps=null;
   /**
    * RNA secondary structure contact positions
    */
@@ -73,13 +77,15 @@ public class AlignmentAnnotation
    */
   private void _updateRnaSecStr(CharSequence RNAannot)
   {
-    try
-    {
-      _rnasecstr = Rna.GetBasePairs(RNAannot);
-      invalidrnastruc = -1;
-    } catch (WUSSParseException px)
+    try {
+    _rnasecstr = Rna.GetBasePairs(RNAannot);
+    bps = Rna.GetModeleBP(RNAannot);
+    invalidrnastruc=-1;
+    }
+    catch (WUSSParseException px)
     {
-      invalidrnastruc = px.getProblemPos();
+      // DEBUG System.out.println(px);
+      invalidrnastruc=px.getProblemPos();
     }
     if (invalidrnastruc > -1)
     {
@@ -197,7 +203,11 @@ public class AlignmentAnnotation
       return NO_GRAPH;
     }
   }
-
+    // JBPNote: what does this do ?
+  public void ConcenStru(CharSequence RNAannot) throws WUSSParseException
+  {
+         bps = Rna.GetModeleBP(RNAannot);
+  }
   /**
    * Creates a new AlignmentAnnotation object.
    * 
@@ -254,10 +264,10 @@ public class AlignmentAnnotation
                        || annotations[i].secondaryStructure == 'B'
                        || annotations[i].secondaryStructure == 'C'
                        || annotations[i].secondaryStructure == 'D'
-                       || annotations[i].secondaryStructure == '1'
+                       || annotations[i].secondaryStructure == 'E'
                        || annotations[i].secondaryStructure == 'F'
                        || annotations[i].secondaryStructure == 'G'
-                       || annotations[i].secondaryStructure == '2'
+                       || annotations[i].secondaryStructure == 'H'
                        || annotations[i].secondaryStructure == 'I'
                        || annotations[i].secondaryStructure == 'J'
                        || annotations[i].secondaryStructure == 'K'
@@ -306,8 +316,8 @@ public class AlignmentAnnotation
                 // &&
                 // annotations[i].displayCharacter.charAt(0)==annotations[i].secondaryStructure
                 firstChar != ' '
-                && firstChar != 'H'
-                && firstChar != 'E'
+                && firstChar != '$'
+                && firstChar != 'ยต' // JBPNote should explicitly express as unicode number to avoid source code translation problems
                 && firstChar != '('
                 && firstChar != '['
                 && firstChar != '>'
@@ -316,10 +326,10 @@ public class AlignmentAnnotation
                 && firstChar != 'B'
                 && firstChar != 'C'
                 && firstChar != 'D'
-                && firstChar != '1'
+                && firstChar != 'E'
                 && firstChar != 'F'
                 && firstChar != 'G'
-                && firstChar != '2'
+                && firstChar != 'H'
                 && firstChar != 'I'
                 && firstChar != 'J'
                 && firstChar != 'K'