31857342d47d49372089fe3b5aa802932313f3ef
kent
  Sat Jun 18 06:30:38 2022 -0700
Fixed bug in rangeTreeAddToCoverageDepth.  Added parallel rangeTreeAddToCoverageList.

diff --git src/inc/rangeTree.h src/inc/rangeTree.h
index 7361d02..15bae7c 100644
--- src/inc/rangeTree.h
+++ src/inc/rangeTree.h
@@ -44,30 +44,34 @@
 struct range *rangeTreeAddValCount(struct rbTree *tree, int start, int end);
 /* Add range to tree, merging with existing ranges if need be. 
  * Set range val to count of elements in the range. Counts are pointers to 
  * ints allocated in tree localmem */
 
 struct range *rangeTreeAddValList(struct rbTree *tree, int start, int end, void *val);
 /* Add range to tree, merging with existing ranges if need be. 
  * Add val to the list of values (if any) in each range.
  * val must be valid argument to slCat (ie, be a struct with a 'next' pointer as its first member) */
 
 void rangeTreeAddToCoverageDepth(struct rbTree *tree, int start, int end);
 /* Add area from start to end to a tree that is being built up to store the
  * depth of coverage.  Recover coverage back out by looking at ptToInt(range->val)
  * on tree elements. */
 
+void rangeTreeAddToCoverageList(struct rbTree *tree, int start, int end, void *val);
+/* Add area from start to end to a tree that is being built up to store the
+ * list of items in each range. Recover list by looking at range->val as list head */
+
 boolean rangeTreeOverlaps(struct rbTree *tree, int start, int end);
 /* Return TRUE if start-end overlaps anything in tree */
 
 int rangeTreeOverlapSize(struct rbTree *tree, int start, int end);
 /* Return the total size of intersection between interval
  * from start to end, and items in range tree. Sadly not
  * thread-safe.
  * On 32 bit machines be careful not to overflow
  * range of start, end or total size return value. */
 
 int rangeTreeOverlapTotalSize(struct rbTree *tree);
 /* Return the total size of all ranges in range tree.
  * Sadly not thread-safe. 
  * On 32 bit machines be careful not to overflow
  * range of start, end or total size return value. */