import java.util.BitSet;
import java.util.Collections;
import java.util.Enumeration;
+import java.util.HashMap;
import java.util.HashSet;
import java.util.Hashtable;
import java.util.Iterator;
for (int i = 0; i < sequences.size(); i++)
{
- if (getSequenceAt(i).getLength() > maxLength)
- {
- maxLength = getSequenceAt(i).getLength();
- }
+ maxLength = Math.max(maxLength, getSequenceAt(i).getLength());
}
-
return maxLength;
}
- /*
+
@Override
- public int getWidth()
+ public int getVisibleWidth()
{
- final Wrapper temp = new Wrapper();
-
- forEachSequence(new Consumer<SequenceI>()
+ int w = getWidth();
+ if (hiddenCols != null)
{
- @Override
- public void accept(SequenceI s)
- {
- if (s.getLength() > temp.inner)
- {
- temp.inner = s.getLength();
- }
- }
- }, 0, sequences.size() - 1);
-
- return temp.inner;
+ w -= hiddenCols.getSize();
+ }
+ return w;
}
-
- public static class Wrapper
- {
- public int inner;
- }*/
/**
* DOCUMENT ME!
}
}
+ /**
+ * Returns a map from sequence to position (0, 1,...) in the alignment
+ */
+ @Override
+ public Map<SequenceI, Integer> getSequencePositions()
+ {
+ Map<SequenceI, Integer> map = new HashMap<>();
+
+ synchronized (sequences)
+ {
+ int i = sequences.size();
+ for (int j = 0; j < i; j++)
+ {
+ map.put(sequences.get(j), Integer.valueOf(j));
+ }
+ }
+ return map;
+ }
+
}