JAL-3210 Improvements to eclipse detection. New src tree and SwingJS updated from...
[jalview.git] / src / jalview / datamodel / VisibleColsCollection.java
index 4ca51b5..cd812a1 100644 (file)
@@ -22,6 +22,7 @@ package jalview.datamodel;
 
 import jalview.api.AlignmentColsCollectionI;
 
+import java.util.BitSet;
 import java.util.Iterator;
 
 public class VisibleColsCollection implements AlignmentColsCollectionI
@@ -32,6 +33,8 @@ public class VisibleColsCollection implements AlignmentColsCollectionI
 
   HiddenColumns hidden;
 
+  private BitSet bsVisible;
+
   public VisibleColsCollection(int s, int e, HiddenColumns h)
   {
     start = s;
@@ -57,4 +60,27 @@ public class VisibleColsCollection implements AlignmentColsCollectionI
     return false;
   }
 
+  /**
+   * Only the visible columns.
+   */
+  @Override
+  public BitSet getOverviewBitSet()
+  {
+    if (bsVisible == null)
+    {
+      bsVisible = new BitSet(end + 1);
+    }
+    bsVisible.clear();
+    bsVisible.set(start, end + 1);
+    bsVisible.andNot(hidden.getBitset());
+
+    return bsVisible;
+  }
+
+  @Override
+  public BitSet getHiddenBitSet()
+  {
+    return new BitSet();
+  }
+
 }