This branch changes the way that FusorSV handles excluded callers. The parsing of the -E argument has been fixed to accept all valid caller ids. Excluded callers are removed from the callers dictionary, removing the requirement of sending both all callers along with all excluded callers to every function (now only the callers dictionary is required, because it only contains the relevant callers). Callers are also removed automatically on a per-sample basis if there is no VCF provided for that sample from a subset of callers. Along with removing excluded callers from the callers dictionary, small changes to other data structures were required, such as in the read_partitions_by_caller method in fusor_utils.py. In this case, a caller is only added as an entry in the dictionary created in this method when there are partitions for that caller (removing output for callers without any partition data).
This branch changes the way that FusorSV handles excluded callers. The parsing of the -E argument has been fixed to accept all valid caller ids. Excluded callers are removed from the callers dictionary, removing the requirement of sending both all callers along with all excluded callers to every function (now only the callers dictionary is required, because it only contains the relevant callers). Callers are also removed automatically on a per-sample basis if there is no VCF provided for that sample from a subset of callers. Along with removing excluded callers from the callers dictionary, small changes to other data structures were required, such as in the
read_partitions_by_caller
method in fusor_utils.py. In this case, a caller is only added as an entry in the dictionary created in this method when there are partitions for that caller (removing output for callers without any partition data).