@gmod/cram 4.0.3 → 4.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/cram-bundle.js +1 -1
  2. package/dist/cramFile/file.js +43 -9
  3. package/dist/cramFile/file.js.map +1 -1
  4. package/dist/cramFile/slice/decodeRecord.js +3 -3
  5. package/dist/cramFile/slice/decodeRecord.js.map +1 -1
  6. package/dist/cramFile/util.d.ts +0 -2
  7. package/dist/cramFile/util.js +3 -31
  8. package/dist/cramFile/util.js.map +1 -1
  9. package/dist/htscodecs/arith_gen.d.ts +5 -7
  10. package/dist/htscodecs/arith_gen.js +122 -105
  11. package/dist/htscodecs/arith_gen.js.map +1 -1
  12. package/dist/htscodecs/arith_sh.d.ts +1 -8
  13. package/dist/htscodecs/arith_sh.js +16 -10
  14. package/dist/htscodecs/arith_sh.js.map +1 -1
  15. package/dist/htscodecs/byte_model.d.ts +1 -6
  16. package/dist/htscodecs/byte_model.js +25 -17
  17. package/dist/htscodecs/byte_model.js.map +1 -1
  18. package/dist/htscodecs/fqzcomp.d.ts +1 -1
  19. package/dist/htscodecs/fqzcomp.js +98 -77
  20. package/dist/htscodecs/fqzcomp.js.map +1 -1
  21. package/dist/htscodecs/index.d.ts +5 -5
  22. package/dist/htscodecs/index.js +53 -16
  23. package/dist/htscodecs/index.js.map +1 -1
  24. package/dist/htscodecs/iostream.d.ts +9 -20
  25. package/dist/htscodecs/iostream.js +21 -116
  26. package/dist/htscodecs/iostream.js.map +1 -1
  27. package/dist/htscodecs/rans.d.ts +1 -1
  28. package/dist/htscodecs/rans.js +65 -54
  29. package/dist/htscodecs/rans.js.map +1 -1
  30. package/dist/htscodecs/rans4x16.d.ts +1 -1
  31. package/dist/htscodecs/rans4x16.js +151 -111
  32. package/dist/htscodecs/rans4x16.js.map +1 -1
  33. package/dist/htscodecs/tok3.d.ts +1 -2
  34. package/dist/htscodecs/tok3.js +82 -239
  35. package/dist/htscodecs/tok3.js.map +1 -1
  36. package/dist/util.d.ts +1 -0
  37. package/dist/util.js +20 -0
  38. package/dist/util.js.map +1 -0
  39. package/esm/cramFile/file.js +3 -2
  40. package/esm/cramFile/file.js.map +1 -1
  41. package/esm/cramFile/slice/decodeRecord.js +3 -3
  42. package/esm/cramFile/slice/decodeRecord.js.map +1 -1
  43. package/esm/cramFile/util.d.ts +0 -2
  44. package/esm/cramFile/util.js +3 -29
  45. package/esm/cramFile/util.js.map +1 -1
  46. package/esm/htscodecs/arith_gen.d.ts +5 -7
  47. package/esm/htscodecs/arith_gen.js +108 -97
  48. package/esm/htscodecs/arith_gen.js.map +1 -1
  49. package/esm/htscodecs/arith_sh.d.ts +1 -8
  50. package/esm/htscodecs/arith_sh.js +14 -11
  51. package/esm/htscodecs/arith_sh.js.map +1 -1
  52. package/esm/htscodecs/byte_model.d.ts +1 -6
  53. package/esm/htscodecs/byte_model.js +23 -18
  54. package/esm/htscodecs/byte_model.js.map +1 -1
  55. package/esm/htscodecs/fqzcomp.d.ts +1 -1
  56. package/esm/htscodecs/fqzcomp.js +91 -76
  57. package/esm/htscodecs/fqzcomp.js.map +1 -1
  58. package/esm/htscodecs/index.d.ts +5 -5
  59. package/esm/htscodecs/index.js +14 -20
  60. package/esm/htscodecs/index.js.map +1 -1
  61. package/esm/htscodecs/iostream.d.ts +9 -20
  62. package/esm/htscodecs/iostream.js +19 -117
  63. package/esm/htscodecs/iostream.js.map +1 -1
  64. package/esm/htscodecs/rans.d.ts +1 -1
  65. package/esm/htscodecs/rans.js +61 -56
  66. package/esm/htscodecs/rans.js.map +1 -1
  67. package/esm/htscodecs/rans4x16.d.ts +1 -1
  68. package/esm/htscodecs/rans4x16.js +143 -109
  69. package/esm/htscodecs/rans4x16.js.map +1 -1
  70. package/esm/htscodecs/tok3.d.ts +1 -2
  71. package/esm/htscodecs/tok3.js +41 -237
  72. package/esm/htscodecs/tok3.js.map +1 -1
  73. package/esm/util.d.ts +1 -0
  74. package/esm/util.js +17 -0
  75. package/esm/util.js.map +1 -0
  76. package/package.json +2 -3
  77. package/src/cramFile/file.ts +3 -2
  78. package/src/cramFile/slice/decodeRecord.ts +3 -5
  79. package/src/cramFile/util.ts +6 -39
  80. package/src/htscodecs/{arith_gen.js → arith_gen.ts} +133 -95
  81. package/src/htscodecs/{arith_sh.js → arith_sh.ts} +17 -9
  82. package/src/htscodecs/{byte_model.js → byte_model.ts} +26 -16
  83. package/src/htscodecs/{fqzcomp.js → fqzcomp.ts} +108 -74
  84. package/src/htscodecs/{index.js → index.ts} +14 -20
  85. package/src/htscodecs/iostream.ts +159 -0
  86. package/src/htscodecs/{rans.js → rans.ts} +73 -56
  87. package/src/htscodecs/{rans4x16.js → rans4x16.ts} +180 -111
  88. package/src/htscodecs/tok3.ts +197 -0
  89. package/src/util.ts +16 -0
  90. package/src/htscodecs/iostream.js +0 -257
  91. package/src/htscodecs/tok3.js +0 -413
@@ -1,4 +1,10 @@
1
1
  "use strict";
2
+ /* eslint-disable no-var */
3
+ // @ts-nocheck
4
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5
+ return (mod && mod.__esModule) ? mod : { "default": mod };
6
+ };
7
+ Object.defineProperty(exports, "__esModule", { value: true });
2
8
  /*
3
9
  * Copyright (c) 2019,2020 Genome Research Ltd.
4
10
  * Author(s): James Bonfield
@@ -31,26 +37,11 @@
31
37
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32
38
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
39
  */
34
- const RangeCoder = require('./arith_sh');
35
- const IOStream = require('./iostream');
36
- const ByteModel = require('./byte_model');
37
- const bzip2 = require('bzip2');
38
- function sum(array) {
39
- let sum = 0;
40
- for (const entry of array) {
41
- sum += entry.length;
42
- }
43
- return sum;
44
- }
45
- function concatUint8Array(args) {
46
- const mergedArray = new Uint8Array(sum(args));
47
- let offset = 0;
48
- for (const entry of args) {
49
- mergedArray.set(entry, offset);
50
- offset += entry.length;
51
- }
52
- return mergedArray;
53
- }
40
+ const bzip2_1 = __importDefault(require("bzip2"));
41
+ const arith_sh_1 = __importDefault(require("./arith_sh"));
42
+ const byte_model_1 = __importDefault(require("./byte_model"));
43
+ const iostream_1 = __importDefault(require("./iostream"));
44
+ const util_1 = require("../util");
54
45
  const ARITH_ORDER = 1;
55
46
  const ARITH_EXT = 4;
56
47
  const ARITH_STRIPE = 8;
@@ -58,28 +49,31 @@ const ARITH_NOSIZE = 16;
58
49
  const ARITH_CAT = 32;
59
50
  const ARITH_RLE = 64;
60
51
  const ARITH_PACK = 128;
61
- module.exports = class RangeCoderGen {
52
+ class RangeCoderGen {
62
53
  decode(src) {
63
- this.stream = new IOStream(src);
54
+ this.stream = new iostream_1.default(src);
64
55
  return this.decodeStream(this.stream);
65
56
  }
66
57
  decodeStream(stream, n_out = 0) {
67
- var flags = this.stream.ReadByte();
68
- if (!(flags & ARITH_NOSIZE))
58
+ const flags = this.stream.ReadByte();
59
+ if (!(flags & ARITH_NOSIZE)) {
69
60
  n_out = this.stream.ReadUint7();
70
- var e_len = n_out;
71
- var order = flags & ARITH_ORDER;
61
+ }
62
+ let e_len = n_out;
63
+ const order = flags & ARITH_ORDER;
72
64
  // 4-way recursion
73
- if (flags & ARITH_STRIPE)
65
+ if (flags & ARITH_STRIPE) {
74
66
  return this.decodeStripe(this.stream, n_out);
67
+ }
75
68
  // Meta data
76
69
  if (flags & ARITH_PACK) {
77
70
  var P;
78
71
  [P, e_len] = this.decodePackMeta(this.stream);
79
72
  }
80
73
  // NOP, useful for tiny blocks
81
- if (flags & ARITH_CAT)
74
+ if (flags & ARITH_CAT) {
82
75
  var data = this.decodeCat(this.stream, e_len);
76
+ }
83
77
  // Entropy decode
84
78
  else if (flags & ARITH_EXT) {
85
79
  var data = this.decodeExt(this.stream, e_len);
@@ -95,145 +89,160 @@ module.exports = class RangeCoderGen {
95
89
  : this.decode0(this.stream, e_len);
96
90
  }
97
91
  // Transforms
98
- if (flags & ARITH_PACK)
92
+ if (flags & ARITH_PACK) {
99
93
  data = this.decodePack(data, P, n_out);
94
+ }
100
95
  return data;
101
96
  }
102
- //----------------------------------------------------------------------
97
+ // ----------------------------------------------------------------------
103
98
  // Order-0 codec
104
99
  decode0(stream, n_out) {
105
- var output = new Uint8Array(n_out);
106
- var max_sym = stream.ReadByte();
107
- if (max_sym == 0)
100
+ const output = new Uint8Array(n_out);
101
+ let max_sym = stream.ReadByte();
102
+ if (max_sym == 0) {
108
103
  max_sym = 256;
109
- var byte_model = new ByteModel(max_sym);
110
- var rc = new RangeCoder(stream);
104
+ }
105
+ const byte_model = new byte_model_1.default(max_sym);
106
+ const rc = new arith_sh_1.default(stream);
111
107
  rc.RangeStartDecode(stream);
112
- for (var i = 0; i < n_out; i++)
108
+ for (let i = 0; i < n_out; i++) {
113
109
  output[i] = byte_model.ModelDecode(stream, rc);
110
+ }
114
111
  return output;
115
112
  }
116
- //----------------------------------------------------------------------
113
+ // ----------------------------------------------------------------------
117
114
  // Order-1 codec
118
115
  decode1(stream, n_out) {
119
- var output = new Uint8Array(n_out);
120
- var max_sym = stream.ReadByte();
121
- if (max_sym == 0)
116
+ const output = new Uint8Array(n_out);
117
+ let max_sym = stream.ReadByte();
118
+ if (max_sym == 0) {
122
119
  max_sym = 256;
123
- var byte_model = new Array(max_sym);
124
- for (var i = 0; i < max_sym; i++)
125
- byte_model[i] = new ByteModel(max_sym);
126
- var rc = new RangeCoder(stream);
120
+ }
121
+ const byte_model = new Array(max_sym);
122
+ for (var i = 0; i < max_sym; i++) {
123
+ byte_model[i] = new byte_model_1.default(max_sym);
124
+ }
125
+ const rc = new arith_sh_1.default(stream);
127
126
  rc.RangeStartDecode(stream);
128
- var last = 0;
127
+ let last = 0;
129
128
  for (var i = 0; i < n_out; i++) {
130
129
  output[i] = byte_model[last].ModelDecode(stream, rc);
131
130
  last = output[i];
132
131
  }
133
132
  return output;
134
133
  }
135
- //----------------------------------------------------------------------
134
+ // ----------------------------------------------------------------------
136
135
  // External codec
137
136
  decodeExt(stream, n_out) {
138
- const bits = bzip2.array(stream.buf.slice(stream.pos));
139
- let size = bzip2.header(bits);
137
+ const bits = bzip2_1.default.array(stream.buf.slice(stream.pos));
138
+ let size = bzip2_1.default.header(bits);
140
139
  let chunk;
141
140
  const chunks = [];
142
141
  do {
143
- chunk = bzip2.decompress(bits, size);
142
+ chunk = bzip2_1.default.decompress(bits, size);
144
143
  if (chunk !== -1) {
145
144
  chunks.push(chunk);
146
145
  size -= chunk.length;
147
146
  }
148
147
  } while (chunk !== -1);
149
- return concatUint8Array(chunks);
148
+ return (0, util_1.concatUint8Array)(chunks);
150
149
  }
151
- //----------------------------------------------------------------------
150
+ // ----------------------------------------------------------------------
152
151
  // Order-0 RLE codec
153
152
  decodeRLE0(stream, n_out) {
154
- var output = new Uint8Array(n_out);
155
- var max_sym = stream.ReadByte();
156
- if (max_sym == 0)
153
+ const output = new Uint8Array(n_out);
154
+ let max_sym = stream.ReadByte();
155
+ if (max_sym == 0) {
157
156
  max_sym = 256;
158
- var model_lit = new ByteModel(max_sym);
159
- var model_run = new Array(258);
160
- for (var i = 0; i <= 257; i++)
161
- model_run[i] = new ByteModel(4);
162
- var rc = new RangeCoder(stream);
157
+ }
158
+ const model_lit = new byte_model_1.default(max_sym);
159
+ const model_run = new Array(258);
160
+ for (var i = 0; i <= 257; i++) {
161
+ model_run[i] = new byte_model_1.default(4);
162
+ }
163
+ const rc = new arith_sh_1.default(stream);
163
164
  rc.RangeStartDecode(stream);
164
165
  var i = 0;
165
166
  while (i < n_out) {
166
167
  output[i] = model_lit.ModelDecode(stream, rc);
167
- var part = model_run[output[i]].ModelDecode(stream, rc);
168
- var run = part;
169
- var rctx = 256;
168
+ let part = model_run[output[i]].ModelDecode(stream, rc);
169
+ let run = part;
170
+ let rctx = 256;
170
171
  while (part == 3) {
171
172
  part = model_run[rctx].ModelDecode(stream, rc);
172
173
  rctx = 257;
173
174
  run += part;
174
175
  }
175
- for (var j = 1; j <= run; j++)
176
+ for (let j = 1; j <= run; j++) {
176
177
  output[i + j] = output[i];
178
+ }
177
179
  i += run + 1;
178
180
  }
179
181
  return output;
180
182
  }
181
- //----------------------------------------------------------------------
183
+ // ----------------------------------------------------------------------
182
184
  // Order-1 RLE codec
183
185
  decodeRLE1(stream, n_out) {
184
- var output = new Uint8Array(n_out);
185
- var max_sym = stream.ReadByte();
186
- if (max_sym == 0)
186
+ const output = new Uint8Array(n_out);
187
+ let max_sym = stream.ReadByte();
188
+ if (max_sym == 0) {
187
189
  max_sym = 256;
188
- var model_lit = new Array(max_sym);
189
- for (var i = 0; i < max_sym; i++)
190
- model_lit[i] = new ByteModel(max_sym);
191
- var model_run = new Array(258);
192
- for (var i = 0; i <= 257; i++)
193
- model_run[i] = new ByteModel(4);
194
- var rc = new RangeCoder(stream);
190
+ }
191
+ const model_lit = new Array(max_sym);
192
+ for (var i = 0; i < max_sym; i++) {
193
+ model_lit[i] = new byte_model_1.default(max_sym);
194
+ }
195
+ const model_run = new Array(258);
196
+ for (var i = 0; i <= 257; i++) {
197
+ model_run[i] = new byte_model_1.default(4);
198
+ }
199
+ const rc = new arith_sh_1.default(stream);
195
200
  rc.RangeStartDecode(stream);
196
- var last = 0;
201
+ let last = 0;
197
202
  var i = 0;
198
203
  while (i < n_out) {
199
204
  output[i] = model_lit[last].ModelDecode(stream, rc);
200
205
  last = output[i];
201
- var part = model_run[output[i]].ModelDecode(stream, rc);
202
- var run = part;
203
- var rctx = 256;
206
+ let part = model_run[output[i]].ModelDecode(stream, rc);
207
+ let run = part;
208
+ let rctx = 256;
204
209
  while (part == 3) {
205
210
  part = model_run[rctx].ModelDecode(stream, rc);
206
211
  rctx = 257;
207
212
  run += part;
208
213
  }
209
- for (var j = 1; j <= run; j++)
214
+ for (let j = 1; j <= run; j++) {
210
215
  output[i + j] = output[i];
216
+ }
211
217
  i += run + 1;
212
218
  }
213
219
  return output;
214
220
  }
215
- //----------------------------------------------------------------------
221
+ // ----------------------------------------------------------------------
216
222
  // Pack method
217
223
  decodePackMeta(stream) {
218
224
  this.nsym = stream.ReadByte();
219
- var M = new Array(this.nsym);
220
- for (var i = 0; i < this.nsym; i++)
225
+ const M = new Array(this.nsym);
226
+ for (let i = 0; i < this.nsym; i++) {
221
227
  M[i] = stream.ReadByte();
222
- var e_len = stream.ReadUint7(); // Could be derived data from nsym and n_out
228
+ }
229
+ const e_len = stream.ReadUint7(); // Could be derived data from nsym and n_out
223
230
  return [M, e_len];
224
231
  }
225
232
  decodePack(data, M, len) {
226
- var out = new Uint8Array(len);
233
+ const out = new Uint8Array(len);
227
234
  if (this.nsym <= 1) {
228
235
  // Constant value
229
- for (var i = 0; i < len; i++)
236
+ for (var i = 0; i < len; i++) {
230
237
  out[i] = M[0];
238
+ }
231
239
  }
232
240
  else if (this.nsym <= 2) {
233
241
  // 1 bit per value
234
242
  for (var i = 0, j = 0; i < len; i++) {
235
- if (i % 8 == 0)
243
+ if (i % 8 == 0) {
236
244
  var v = data[j++];
245
+ }
237
246
  out[i] = M[v & 1];
238
247
  v >>= 1;
239
248
  }
@@ -241,8 +250,9 @@ module.exports = class RangeCoderGen {
241
250
  else if (this.nsym <= 4) {
242
251
  // 2 bits per value
243
252
  for (var i = 0, j = 0; i < len; i++) {
244
- if (i % 4 == 0)
253
+ if (i % 4 == 0) {
245
254
  var v = data[j++];
255
+ }
246
256
  out[i] = M[v & 3];
247
257
  v >>= 2;
248
258
  }
@@ -250,8 +260,9 @@ module.exports = class RangeCoderGen {
250
260
  else if (this.nsym <= 16) {
251
261
  // 4 bits per value
252
262
  for (var i = 0, j = 0; i < len; i++) {
253
- if (i % 2 == 0)
263
+ if (i % 2 == 0) {
254
264
  var v = data[j++];
265
+ }
255
266
  out[i] = M[v & 15];
256
267
  v >>= 4;
257
268
  }
@@ -264,15 +275,18 @@ module.exports = class RangeCoderGen {
264
275
  }
265
276
  // Compute M array and return meta-data stream
266
277
  packMeta(src) {
267
- var stream = new IOStream('', 0, 1024);
278
+ const stream = new iostream_1.default('', 0, 1024);
268
279
  // Count symbols
269
- var M = new Array(256);
270
- for (var i = 0; i < src.length; i++)
280
+ const M = new Array(256);
281
+ for (var i = 0; i < src.length; i++) {
271
282
  M[src[i]] = 1;
283
+ }
272
284
  // Write Map
273
- for (var nsym = 0, i = 0; i < 256; i++)
274
- if (M[i])
275
- M[i] = ++nsym; // map to 1..N
285
+ for (var nsym = 0, i = 0; i < 256; i++) {
286
+ if (M[i]) {
287
+ M[i] = ++nsym;
288
+ }
289
+ } // map to 1..N
276
290
  stream.WriteByte(nsym);
277
291
  // FIXME: add check for nsym > 16?
278
292
  // Or just accept it as an inefficient waste of time.
@@ -285,34 +299,37 @@ module.exports = class RangeCoderGen {
285
299
  return [stream, M, nsym];
286
300
  }
287
301
  decodeStripe(stream, len) {
288
- var N = stream.ReadByte();
302
+ const N = stream.ReadByte();
289
303
  // Retrieve lengths
290
- var clen = new Array(N);
291
- var ulen = new Array(N);
292
- for (var j = 0; j < N; j++)
304
+ const clen = new Array(N);
305
+ const ulen = new Array(N);
306
+ for (var j = 0; j < N; j++) {
293
307
  clen[j] = stream.ReadUint7();
308
+ }
294
309
  // Decode streams
295
- var T = new Array(N);
310
+ const T = new Array(N);
296
311
  for (var j = 0; j < N; j++) {
297
312
  ulen[j] = Math.floor(len / N) + (len % N > j);
298
313
  T[j] = this.decodeStream(stream, ulen[j]);
299
314
  }
300
315
  // Transpose
301
- var out = new Uint8Array(len);
316
+ const out = new Uint8Array(len);
302
317
  for (var j = 0; j < N; j++) {
303
- for (var i = 0; i < ulen[j]; i++) {
318
+ for (let i = 0; i < ulen[j]; i++) {
304
319
  out[i * N + j] = T[j][i];
305
320
  }
306
321
  }
307
322
  return out;
308
323
  }
309
- //----------------------------------------------------------------------
324
+ // ----------------------------------------------------------------------
310
325
  // Cat method
311
326
  decodeCat(stream, len) {
312
- var out = new Uint8Array(len);
313
- for (var i = 0; i < len; i++)
327
+ const out = new Uint8Array(len);
328
+ for (let i = 0; i < len; i++) {
314
329
  out[i] = stream.ReadByte();
330
+ }
315
331
  return out;
316
332
  }
317
- };
333
+ }
334
+ exports.default = RangeCoderGen;
318
335
  //# sourceMappingURL=arith_gen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"arith_gen.js","sourceRoot":"","sources":["../../src/htscodecs/arith_gen.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arith_gen.js","sourceRoot":"","sources":["../../src/htscodecs/arith_gen.ts"],"names":[],"mappings":";AAAA,2BAA2B;AAC3B,cAAc;;;;;AAEd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,kDAAyB;AAEzB,0DAAmC;AACnC,8DAAoC;AACpC,0DAAiC;AACjC,kCAA0C;AAE1C,MAAM,WAAW,GAAG,CAAC,CAAA;AACrB,MAAM,SAAS,GAAG,CAAC,CAAA;AACnB,MAAM,YAAY,GAAG,CAAC,CAAA;AACtB,MAAM,YAAY,GAAG,EAAE,CAAA;AACvB,MAAM,SAAS,GAAG,EAAE,CAAA;AACpB,MAAM,SAAS,GAAG,EAAE,CAAA;AACpB,MAAM,UAAU,GAAG,GAAG,CAAA;AAEtB,MAAqB,aAAa;IAEhC,MAAM,CAAC,GAAe;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAQ,CAAC,GAAG,CAAC,CAAA;QAC/B,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IAED,YAAY,CAAC,MAAgB,EAAE,KAAK,GAAG,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAA;QACpC,IAAI,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC;YAC5B,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAA;QACjC,CAAC;QACD,IAAI,KAAK,GAAG,KAAK,CAAA;QAEjB,MAAM,KAAK,GAAG,KAAK,GAAG,WAAW,CAAA;QAEjC,kBAAkB;QAClB,IAAI,KAAK,GAAG,YAAY,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC9C,CAAC;QAED,YAAY;QACZ,IAAI,KAAK,GAAG,UAAU,EAAE,CAAC;YACvB,IAAI,CAAC,CACJ;YAAA,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAChD,CAAC;QAED,8BAA8B;QAC9B,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;YACtB,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC/C,CAAC;QACD,iBAAiB;aACZ,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;YAC3B,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAC/C,CAAC;aAAM,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;YAC7B,IAAI,IAAI,GAAG,KAAK;gBACd,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,GAAG,KAAK;gBACd,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;gBAClC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACtC,CAAC;QAED,aAAa;QACb,IAAI,KAAK,GAAG,UAAU,EAAE,CAAC;YACvB,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAA;QACxC,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,yEAAyE;IACzE,gBAAgB;IAChB,OAAO,CAAC,MAAM,EAAE,KAAK;QACnB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;QAEpC,IAAI,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC/B,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,OAAO,GAAG,GAAG,CAAA;QACf,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,oBAAS,CAAC,OAAO,CAAC,CAAA;QAEzC,MAAM,EAAE,GAAG,IAAI,kBAAU,CAAC,MAAM,CAAC,CAAA;QACjC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAChD,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,yEAAyE;IACzE,gBAAgB;IAEhB,OAAO,CAAC,MAAM,EAAE,KAAK;QACnB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;QAEpC,IAAI,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC/B,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,OAAO,GAAG,GAAG,CAAA;QACf,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,oBAAS,CAAC,OAAO,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,kBAAU,CAAC,MAAM,CAAC,CAAA;QACjC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAE3B,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACpD,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QAClB,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,yEAAyE;IACzE,iBAAiB;IACjB,SAAS,CAAC,MAAM,EAAE,KAAK;QACrB,MAAM,IAAI,GAAG,eAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QACtD,IAAI,IAAI,GAAG,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC7B,IAAI,KAAK,CAAA;QACT,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,GAAG,CAAC;YACF,KAAK,GAAG,eAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACpC,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAClB,IAAI,IAAI,KAAK,CAAC,MAAM,CAAA;YACtB,CAAC;QACH,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,EAAC;QACtB,OAAO,IAAA,uBAAgB,EAAC,MAAM,CAAC,CAAA;IACjC,CAAC;IAED,yEAAyE;IACzE,oBAAoB;IACpB,UAAU,CAAC,MAAM,EAAE,KAAK;QACtB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;QAEpC,IAAI,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC/B,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,OAAO,GAAG,GAAG,CAAA;QACf,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,oBAAS,CAAC,OAAO,CAAC,CAAA;QACxC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;QAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,oBAAS,CAAC,CAAC,CAAC,CAAA;QACjC,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,kBAAU,CAAC,MAAM,CAAC,CAAA;QACjC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAE3B,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,GAAG,KAAK,EAAE,CAAC;YACjB,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YAC7C,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACvD,IAAI,GAAG,GAAG,IAAI,CAAA;YACd,IAAI,IAAI,GAAG,GAAG,CAAA;YACd,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC;gBACjB,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;gBAC9C,IAAI,GAAG,GAAG,CAAA;gBACV,GAAG,IAAI,IAAI,CAAA;YACb,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9B,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YAC3B,CAAC;YACD,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;QACd,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,yEAAyE;IACzE,oBAAoB;IAEpB,UAAU,CAAC,MAAM,EAAE,KAAK;QACtB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAA;QAEpC,IAAI,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC/B,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,OAAO,GAAG,GAAG,CAAA;QACf,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,oBAAS,CAAC,OAAO,CAAC,CAAA;QACvC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;QAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,oBAAS,CAAC,CAAC,CAAC,CAAA;QACjC,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,kBAAU,CAAC,MAAM,CAAC,CAAA;QACjC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAE3B,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,GAAG,KAAK,EAAE,CAAC;YACjB,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACnD,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YAChB,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACvD,IAAI,GAAG,GAAG,IAAI,CAAA;YACd,IAAI,IAAI,GAAG,GAAG,CAAA;YACd,OAAO,IAAI,IAAI,CAAC,EAAE,CAAC;gBACjB,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;gBAC9C,IAAI,GAAG,GAAG,CAAA;gBACV,GAAG,IAAI,IAAI,CAAA;YACb,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9B,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;YAC3B,CAAC;YACD,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;QACd,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED,yEAAyE;IACzE,cAAc;IACd,cAAc,CAAC,MAAM;QACnB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAE7B,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC1B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA,CAAC,4CAA4C;QAE7E,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IACnB,CAAC;IAED,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG;QACrB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;QAE/B,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YACnB,iBAAiB;YACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACf,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YAC1B,kBAAkB;YAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACf,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;gBACnB,CAAC;gBACD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACjB,CAAC,KAAK,CAAC,CAAA;YACT,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YAC1B,mBAAmB;YACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACf,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;gBACnB,CAAC;gBACD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACjB,CAAC,KAAK,CAAC,CAAA;YACT,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;YAC3B,mBAAmB;YACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACf,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;gBACnB,CAAC;gBACD,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAA;gBAClB,CAAC,KAAK,CAAC,CAAA;YACT,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wBAAwB;YACxB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,8CAA8C;IAC9C,QAAQ,CAAC,GAAG;QACV,MAAM,MAAM,GAAG,IAAI,kBAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;QAExC,gBAAgB;QAChB,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACf,CAAC;QAED,YAAY;QACZ,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACT,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAA;YACf,CAAC;QACH,CAAC,CAAC,cAAc;QAChB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;QAEtB,kCAAkC;QAClC,qDAAqD;QACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACT,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA,CAAC,mBAAmB;gBACvC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACR,CAAC;QACH,CAAC;QAED,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,YAAY,CAAC,MAAM,EAAE,GAAG;QACtB,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAE3B,mBAAmB;QACnB,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;QACzB,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;QAC9B,CAAC;QAED,iBAAiB;QACjB,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAA;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;YAC7C,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,CAAC;QAED,YAAY;QACZ,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,yEAAyE;IACzE,aAAa;IACb,SAAS,CAAC,MAAM,EAAE,GAAG;QACnB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAA;QAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC5B,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;CACF;AA1UD,gCA0UC"}
@@ -1,12 +1,5 @@
1
- export = RangeCoder;
2
- declare class RangeCoder {
1
+ export default class RangeCoder {
3
2
  constructor(src: any);
4
- low: number;
5
- range: number;
6
- code: number;
7
- FFnum: number;
8
- carry: number;
9
- cache: number;
10
3
  RangeStartDecode(src: any): void;
11
4
  RangeGetFrequency(tot_freq: any): number;
12
5
  RangeDecode(src: any, sym_low: any, sym_freq: any, tot_freq: any): void;
@@ -1,4 +1,6 @@
1
1
  "use strict";
2
+ // @ts-nocheck
3
+ Object.defineProperty(exports, "__esModule", { value: true });
2
4
  /*
3
5
  * Copyright (c) 2019 Genome Research Ltd.
4
6
  * Author(s): James Bonfield
@@ -38,9 +40,9 @@
38
40
  // C: 3.1s decode (approx same vs 32-bit and 64-bit)
39
41
  // Arith_sh.js 6.7s decode (32-bit with carries)
40
42
  // Arith.js 317.0s decode (64-bit no carries); int64 crippling it.
41
- //----------------------------------------------------------------------
43
+ // ----------------------------------------------------------------------
42
44
  // Arithmetic (range) coder
43
- module.exports = class RangeCoder {
45
+ class RangeCoder {
44
46
  constructor(src) {
45
47
  this.low = 0;
46
48
  this.range = 0xffffffff;
@@ -50,21 +52,22 @@ module.exports = class RangeCoder {
50
52
  this.cache = 0;
51
53
  }
52
54
  RangeStartDecode(src) {
53
- for (var i = 0; i < 5; i++)
55
+ for (let i = 0; i < 5; i++) {
54
56
  this.code = (this.code << 8) + src.ReadByte();
57
+ }
55
58
  this.code &= 0xffffffff;
56
59
  this.code >>>= 0; // force to be +ve int
57
60
  }
58
61
  RangeGetFrequency(tot_freq) {
59
62
  this.range = Math.floor(this.range / tot_freq);
60
- //return this.code / this.range;
63
+ // return this.code / this.range;
61
64
  return Math.floor(this.code / this.range);
62
65
  // Conceptual scenario; return freq only and don't modify range yet
63
- //return Math.floor(this.code / (Math.floor(this.range / tot_freq)));
66
+ // return Math.floor(this.code / (Math.floor(this.range / tot_freq)));
64
67
  }
65
68
  RangeDecode(src, sym_low, sym_freq, tot_freq) {
66
69
  // Conceptually we divide range here, but in practice we cached it earlier
67
- //this.range = Math.floor(this.range / tot_freq);
70
+ // this.range = Math.floor(this.range / tot_freq);
68
71
  this.code -= sym_low * this.range;
69
72
  this.range *= sym_freq;
70
73
  while (this.range < 1 << 24) {
@@ -101,7 +104,7 @@ module.exports = class RangeCoder {
101
104
  this.low >>>= 0; // force to be +ve int
102
105
  }
103
106
  RangeEncode(dst, sym_low, sym_freq, tot_freq) {
104
- var old_low = this.low;
107
+ const old_low = this.low;
105
108
  this.range = Math.floor(this.range / tot_freq);
106
109
  this.low += sym_low * this.range;
107
110
  this.low >>>= 0; // Truncate to +ve int so we can spot overflow
@@ -110,8 +113,9 @@ module.exports = class RangeCoder {
110
113
  // NB: can this.low < old_low occur twice before range < (1<<24)?
111
114
  // We claim not, but prove it!
112
115
  if (this.low < old_low) {
113
- if (this.carry != 0)
116
+ if (this.carry != 0) {
114
117
  console.log('ERROR: Multiple carry');
118
+ }
115
119
  this.carry = 1;
116
120
  }
117
121
  // Renormalise if range gets too small
@@ -121,8 +125,10 @@ module.exports = class RangeCoder {
121
125
  }
122
126
  }
123
127
  RangeFinishEncode(dst) {
124
- for (var i = 0; i < 5; i++)
128
+ for (let i = 0; i < 5; i++) {
125
129
  this.RangeShiftLow(dst);
130
+ }
126
131
  }
127
- };
132
+ }
133
+ exports.default = RangeCoder;
128
134
  //# sourceMappingURL=arith_sh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"arith_sh.js","sourceRoot":"","sources":["../../src/htscodecs/arith_sh.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arith_sh.js","sourceRoot":"","sources":["../../src/htscodecs/arith_sh.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,5 @@
1
- export = ByteModel;
2
- declare class ByteModel {
1
+ export default class ByteModel {
3
2
  constructor(max_sym?: number);
4
- total_freq: number;
5
- max_sym: number;
6
- S: any[];
7
- F: any[];
8
3
  ModelDecode(src: any, rc: any): any;
9
4
  ModelRenormalise(): void;
10
5
  ModelEncode(dst: any, rc: any, sym: any): void;