-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add BaseBreakendVariant #21
Comments
Yes, I resorted to implementing I think having |
OK will add one. Will need one for Exomiser too... |
In progress on this one. So far I've made a few changes such as:
@ielis I have a question which I want to double-check something. Can you confirm that the /**
* When variant is converted to the opposite strand, then the reverse complemented ref allele is stored here.
* We need to store the allele in order to reconstruct the original ref allele if variant is converted again to the
* original strand.
*/
private final String trailingRef;
@Override
public DefaultBreakendVariant toOppositeStrand() {
return new DefaultBreakendVariant(eventId, right.toOppositeStrand(), left.toOppositeStrand(),
Seq.reverseComplement(trailingRef), Seq.reverseComplement(ref), Seq.reverseComplement(alt));
} works like this:
Is it still needed, or could be replaced with a constant empty string? I suspect this probably isn't always the case, for example if a toOppositeStranded BreakendVariant is copied e.g. BreakendVariant transformed = BreakendVariant.builder().with(original.toOppositeStrand()).build().toOppositeStrand()
|
Just a note- might be easier to add a |
See commit: 967ff30 |
Hi @julesjacobsen , When creating a breakend variant from a VCF record, we have base sequence for ref allele for left breakend only. In case we convert the breakend variant to the opposite strand, we must set |
@ielis, it's really just a bit of a mess which is why I dislike it. This is related to the question in issue #39. The problem arises due to the inclusion of the 'left' ref base, but not that on the 'right', so when flipping the strands you end up losing information. The solutions are:
|
I agree that the solution 2. is not a good one as we should not expect the users to do much in order to make svart's classes work best. Let's go for the solution 3 then, we can check the breakends independently. |
Great - will do 3 is also easiest time implement ;) I think adding a |
Unfortunately It's possible to do a simple |
@ielis didn't you need to implement your own version of a BreakendVariant? This would have been useful right?
The text was updated successfully, but these errors were encountered: