Class IntervalListScattererWithSubdivision

java.lang.Object
picard.util.IntervalList.IntervalListScattererByBaseCount
picard.util.IntervalList.IntervalListScattererWithSubdivision
All Implemented Interfaces:
IntervalListScatterer

public class IntervalListScattererWithSubdivision extends IntervalListScattererByBaseCount
An IntervalListScatterer that attempts to place the same number of (uniquified) bases in each output interval list. To avoid concern about overlapping intervals, interval lists are sorted and uniqued prior to splitting which will cause abbuting intervals to be combined. This scatterer will not refrain from breaking an interval into smaller pieces in order to hit the requested number of bases.
  • Constructor Details

    • IntervalListScattererWithSubdivision

      public IntervalListScattererWithSubdivision()
  • Method Details

    • preprocessIntervalList

      public htsjdk.samtools.util.IntervalList preprocessIntervalList(htsjdk.samtools.util.IntervalList inputList)
      Description copied from interface: IntervalListScatterer
      A function that will be called on an IntervalList prior to splitting it into sub-lists, and is a point where implementations can chose to impose some conditions on the lists, for example, merging overlapping/abutting intervals, removing duplicates, etc.
      Parameters:
      inputList - the original IntervalList
      Returns:
      the IntervalList that will be split up by the scatterer.
    • takeSome

      public List<htsjdk.samtools.util.Interval> takeSome(htsjdk.samtools.util.Interval interval, long idealSplitWeight, long currentSize, double projectSizeOfRemaining)
      Description copied from interface: IntervalListScatterer
      Figure out how much of the input interval to put into current list and how much to leave for the next interval list.
      Parameters:
      interval -
      Returns:
      a list of two (possibly null) elements. The first element should be added to the current interval list, the second should be offered to the next interval list.