Example #1
0
 // TODO: get rid of this; move all methods into SamRead.
 getFull(): Object {
   if (this._full) return this._full;
   var jb = new jBinary(this.buffer, bamTypes.TYPE_SET);
   var full = jb.read(bamTypes.ThickAlignment, 0);
   this._full = full;
   return full;
 }
Example #2
0
function extractFeaturesFromBlock(buffer, dataRange, block): ChrIdBedRow[] {
  var blockOffset = block.offset - dataRange.start,
      blockLimit = blockOffset + block.size,
      // TODO: where does the +2 come from? (I copied it from dalliance)
      blockBuffer = buffer.slice(blockOffset + 2, blockLimit);
  // TODO: only inflate if necessary
  var inflatedBuffer = pako.inflateRaw(new Uint8Array(blockBuffer));

  var jb = new jBinary(inflatedBuffer, bbi.TYPE_SET);
  // TODO: parse only one BedEntry at a time & use an iterator.
  return jb.read('BedBlock');
}
Example #3
0
 this.indexCache[contig] = this.getSlice(start, stop).then(buffer => {
   var jb = new jBinary(buffer, bamTypes.TYPE_SET);
   return jb.read('BaiIndex');
 });