public static Container convertLossless(List<SAMRecord> samRecords, SAMFileHeader samFileHeader, ReferenceSource source) throws IllegalArgumentException, IllegalAccessException, IOException { CramContext context = new CramContext(samFileHeader, source, CramLossyOptions.lossless()); Map<Integer, AlignmentSpan> spans = getSpans(samRecords); return convert(samRecords, context, spans); }
public static Container convert(List<SAMRecord> samRecords, SAMFileHeader samFileHeader, ReferenceSource source, CramLossyOptions lossyOptions) throws IllegalArgumentException, IllegalAccessException, IOException { CramContext context = new CramContext(samFileHeader, source, lossyOptions); Map<Integer, AlignmentSpan> spans = getSpans(samRecords); return convert(samRecords, context, spans); }
/** * Create index entries for a single container. * @param container the container to index */ public void processContainer(final Container container) { craiIndex.processContainer(container); }
public static CRAIEntry updateStartContOffset(final CRAIEntry toClone, final int alignmentStart, final int containerStartOffset) { return newEntry(toClone.getSequenceId(), alignmentStart, toClone.getAlignmentSpan(), containerStartOffset, toClone.getSliceByteOffset(), toClone.getSliceByteSize()); } }
public static CRAIEntry updateStart(final CRAIEntry toClone, final int alignmentStart) { return newEntry(toClone.getSequenceId(), alignmentStart, toClone.getAlignmentSpan()); }
public static CRAIEntry newEntry(final int sequenceId, final int start, final int span, final int containerStartOffset, final int sliceOffset, final int sliceSize) { return new CRAIEntry(sequenceId, start, span, containerStartOffset, sliceOffset, sliceSize); }
/** * Generate a CRAI Index entry from this Slice and the container offset. * * TODO: investigate why we sometimes need to pass in an external containerStartOffset * because this Slice's containerOffset is incorrect * * @param containerStartOffset the byte offset of this Slice's Container * @return a new CRAI Index Entry */ public CRAIEntry getCRAIEntry(final long containerStartOffset) { return new CRAIEntry(sequenceId, alignmentStart, alignmentSpan, containerStartOffset, offset, size); }
public void addEntry(CRAIEntry entry) { craiIndex.addEntry(entry); }
public CramLossyOptions setCaptureTags(String captureTags) { this.captureTags = tagsNamesToSet(captureTags); return this; }
public void setIgnoreTags(final Set<String> ignoreTags) { cramContainerStream.lossyOptions.setIgnoreTags(ignoreTags); } }
public static final CramLossyOptions lossless() { return new CramLossyOptions(); }
public void setCaptureAllTags(final boolean captureAllTags) { cramContainerStream.lossyOptions.setCaptureAllTags(captureAllTags); }
public void setCaptureTags(final Set<String> captureTags) { cramContainerStream.lossyOptions.setCaptureTags(captureTags); }
public Set<String> getIgnoreTags() { return cramContainerStream.lossyOptions.getIgnoreTags(); }
public static CRAIEntry newEntryContOffset(final int containerStartOffset) { return newEntry(1, 0, 0, containerStartOffset, 0, 0); }
/** * Generate a CRAI Index entry from this Slice * @return a new CRAI Index Entry */ public CRAIEntry getCRAIEntry() { return new CRAIEntry(sequenceId, alignmentStart, alignmentSpan, containerOffset, offset, size); } /**
/** * Create index entries for a single container. * @param container the container to index */ public void processContainer(final Container container) { craiIndex.processContainer(container); }
public void addEntry(CRAIEntry entry) { craiIndex.addEntry(entry); }
public CramLossyOptions setIgnoreTags(String ignoreTags) { this.ignoreTags = tagsNamesToSet(ignoreTags); return this; }