X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fdatamodel%2FVisibleColsCollection.java;h=13709a8c217f69d8cec2e86f8ee6cbcceb8b7c0b;hb=e7921fdc9d6ab87ef91bb7781dd7d9316e671e3f;hp=c3d0ab420ea07fcf01b67a80e66a2cd2cb6d0676;hpb=14aeb3c39e60a604bdeed33949ba05e0c8c8be5d;p=jalview.git diff --git a/src/jalview/datamodel/VisibleColsCollection.java b/src/jalview/datamodel/VisibleColsCollection.java index c3d0ab4..13709a8 100644 --- a/src/jalview/datamodel/VisibleColsCollection.java +++ b/src/jalview/datamodel/VisibleColsCollection.java @@ -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,11 +33,13 @@ public class VisibleColsCollection implements AlignmentColsCollectionI HiddenColumns hidden; - public VisibleColsCollection(int s, int e, AlignmentI al) + private BitSet bsVisible; + + public VisibleColsCollection(int s, int e, HiddenColumns h) { start = s; end = e; - hidden = al.getHiddenColumns(); + hidden = h; } @Override @@ -57,4 +60,27 @@ public class VisibleColsCollection implements AlignmentColsCollectionI return false; } + /** + * Only the visible columns. + */ + @Override + public BitSet getShownBitSet() + { + 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(); + } + }