mkirsche / Jasmine

Jasmine: SV Merging Across Samples
MIT License
175 stars 16 forks source link

end conversion to start+length for INS #52

Closed jacket-myCat closed 1 year ago

jacket-myCat commented 1 year ago

Hello! Can you please help me understand how the end attribute for an insertion is converted to start+length if the --use_end flag is not set? I can't see it yet and I'm not sure what I'm missing.

According to src/Variant.java, the end should already be converted by the time a Variant object is created.

If the Variant objects are created in src/VariantInput.java and that class uses getSecondCoord for the end attribute, isn't the result of getLength returned? For INS, getLength returns the SVLEN info field or seq.length.

Thanks in advance for your time.

jacket-myCat commented 1 year ago

I think I see what is going on here now. The term “end” is overloaded and means different things in different contexts. For the purpose of building the KD tree, “end” is variant length if --use_end is not set. For the purpose of detecting overlap, “end” is where the variant terminates, i.e. getPos() for insertions or getPos() + abs(getLength()) for others.

I think the comment

// End should be start+length for insertion

is a typo or relic from some previous iteration. I'm going to close this issue out but it may be helpful to others if that comment is removed or updated.