1 Clazz.declarePackage ("jalview.util");
\r
2 Clazz.load (null, "jalview.util.ShiftList", ["java.util.ArrayList"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
5 Clazz.instantialize (this, arguments);
\r
6 }, jalview.util, "ShiftList");
\r
7 Clazz.makeConstructor (c$,
\r
9 this.shifts = new java.util.ArrayList ();
\r
11 Clazz.defineMethod (c$, "addShift",
\r
12 function (pos, shift) {
\r
16 while (sidx < this.shifts.size () && (rshift = this.shifts.get (sidx))[0] < pos) {
\r
19 if (sidx == this.shifts.size ()) {
\r
20 this.shifts.add (sidx, Clazz.newIntArray (-1, [pos, shift]));
\r
24 Clazz.defineMethod (c$, "shift",
\r
26 if (this.shifts.size () == 0) {
\r
31 while (sidx < this.shifts.size () && (rshift = (this.shifts.get (sidx++)))[0] <= pos) {
\r
32 shifted += rshift[1];
\r
36 Clazz.defineMethod (c$, "clear",
\r
38 this.shifts.clear ();
\r
40 Clazz.defineMethod (c$, "getInverse",
\r
42 var inverse = new jalview.util.ShiftList ();
\r
44 if (this.shifts != null) {
\r
45 for (var sh, $sh = this.shifts.iterator (); $sh.hasNext () && ((sh = $sh.next ()) || true);) {
\r
47 inverse.shifts.add ( Clazz.newIntArray (-1, [sh[0], -sh[1]]));
\r
51 c$.parseMap = Clazz.defineMethod (c$, "parseMap",
\r
53 var shiftList = null;
\r
54 if (gapMap != null && gapMap.length > 0) {
\r
55 shiftList = new jalview.util.ShiftList ();
\r
56 for (var i = 0, p = 0; i < gapMap.length; p++, i++) {
\r
57 if (p != gapMap[i]) {
\r
58 shiftList.addShift (p, gapMap[i] - p);
\r
63 Clazz.defineMethod (c$, "getShifts",
\r