private void addEvents( final DefaultMutableTreeNode top, Event events, final String name ) { final DefaultMutableTreeNode category = new DefaultMutableTreeNode( name ); if ( events == null ) { events = new Event(); } top.add( category ); addSubelementEditable( category, NodePanel.EVENTS_DUPLICATIONS, String.valueOf( events.getNumberOfDuplications() >= 0 ? events.getNumberOfDuplications() : 0 ), PHYLOXML_TAG.EVENTS_DUPLICATIONS ); addSubelementEditable( category, NodePanel.EVENTS_SPECIATIONS, String.valueOf( events.getNumberOfSpeciations() >= 0 ? events.getNumberOfSpeciations() : 0 ), PHYLOXML_TAG.EVENTS_SPECIATIONS ); addSubelementEditable( category, NodePanel.EVENTS_GENE_LOSSES, String.valueOf( events.getNumberOfGeneLosses() >= 0 ? events.getNumberOfGeneLosses() : 0 ), PHYLOXML_TAG.EVENTS_GENE_LOSSES ); }
@Override public String toString() { return asText().toString(); }
private static void addEvents( final DefaultMutableTreeNode top, final Event events, final String name ) { DefaultMutableTreeNode category; category = new DefaultMutableTreeNode( name ); top.add( category ); if ( events.getNumberOfDuplications() > 0 ) { addSubelement( category, EVENTS_DUPLICATIONS, String.valueOf( events.getNumberOfDuplications() ) ); } if ( events.getNumberOfSpeciations() > 0 ) { addSubelement( category, EVENTS_SPECIATIONS, String.valueOf( events.getNumberOfSpeciations() ) ); } if ( events.getNumberOfGeneLosses() > 0 ) { addSubelement( category, EVENTS_GENE_LOSSES, String.valueOf( events.getNumberOfGeneLosses() ) ); } addSubelement( category, "Type", events.getEventType().toString() ); if ( events.getConfidence() != null ) { addSubelement( category, CONFIDENCE, events.getConfidence().asText().toString() ); } }
@Override public PhylogenyData copy() { if ( isUnassigned() ) { return new Event(); } else if ( _event_type != EventType.mixed ) { return new Event( _event_type ); } else { return new Event( _duplications, _speciations, _gene_losses ); } }
@Override public boolean isEqual( final PhylogenyData event ) { if ( ( event == null ) || !( event instanceof Event ) ) { return false; } final Event e = ( Event ) event; if ( getEventType().compareTo( e.getEventType() ) != 0 ) { return false; } if ( getNumberOfDuplications() != e.getNumberOfDuplications() ) { return false; } if ( getNumberOfSpeciations() != e.getNumberOfSpeciations() ) { return false; } if ( getNumberOfGeneLosses() != e.getNumberOfGeneLosses() ) { return false; } return true; }
@Override public StringBuffer asSimpleText() { final StringBuffer sb = new StringBuffer(); if ( isUnassigned() ) { else if ( isSpeciationOrDuplication() ) { sb.append( "?" ); else if ( isOther() || isRoot() || isTransfer() || isFusion() ) { sb.append( getEventType().toString() ); if ( getNumberOfDuplications() > 0 ) { if ( getNumberOfDuplications() > 1 ) { sb.append( getNumberOfDuplications() ); if ( getNumberOfSpeciations() > 0 ) { if ( getNumberOfSpeciations() > 1 ) { sb.append( getNumberOfSpeciations() ); if ( getNumberOfGeneLosses() > 0 ) { if ( getNumberOfGeneLosses() > 1 ) { sb.append( getNumberOfGeneLosses() );
@Override public StringBuffer asText() { final StringBuffer sb = new StringBuffer(); if ( isUnassigned() || isSpeciationOrDuplication() || isOther() || isRoot() || isTransfer() || isFusion() ) { sb.append( getEventType().toString() ); if ( isDuplication() ) { if ( getNumberOfDuplications() == 1 ) { sb.append( "duplication" ); sb.append( "duplications [" + getNumberOfDuplications() + "]" ); else if ( isSpeciation() ) { if ( getNumberOfSpeciations() == 1 ) { sb.append( "speciation" ); sb.append( "speciations [" + getNumberOfSpeciations() + "]" ); else if ( isGeneLoss() ) { if ( getNumberOfGeneLosses() == 1 ) { sb.append( "gene-loss" ); sb.append( "gene-losses [" + getNumberOfGeneLosses() + "]" ); sb.append( "duplications [" + getNumberOfDuplications() + "] " ); sb.append( "speciations [" + getNumberOfSpeciations() + "] " ); sb.append( "gene-losses [" + getNumberOfGeneLosses() + "]" );
final Event e1 = new Event( Event.EventType.fusion ); if ( e1.isDuplication() ) { return false; if ( !e1.isFusion() ) { return false; if ( !e1.asText().toString().equals( "fusion" ) ) { return false; if ( !e1.asSimpleText().toString().equals( "fusion" ) ) { return false; final Event e11 = new Event( Event.EventType.fusion ); if ( !e11.isEqual( e1 ) ) { return false; if ( !e11.toNHX().toString().equals( "" ) ) { return false; final Event e2 = new Event( Event.EventType.speciation_or_duplication ); if ( e2.isDuplication() ) { return false; if ( !e2.isSpeciationOrDuplication() ) { return false; if ( !e2.asText().toString().equals( "speciation_or_duplication" ) ) { return false;
node_to_annotate.getNodeData().setEvent( Event.createSingleDuplicationEvent() ); node_to_annotate.getNodeData().setEvent( Event.createSingleSpeciationEvent() ); node_to_annotate.getNodeData().setEvent( Event.createSingleSpeciationOrDuplicationEvent() );
case EVENTS_DUPLICATIONS: if ( !getMyNode().getNodeData().isHasEvent() ) { getMyNode().getNodeData().setEvent( new Event() ); getMyNode().getNodeData().getEvent().setDuplications( parsePositiveInt( mtn, value ) ); break; case EVENTS_SPECIATIONS: if ( !getMyNode().getNodeData().isHasEvent() ) { getMyNode().getNodeData().setEvent( new Event() ); getMyNode().getNodeData().getEvent().setSpeciations( parsePositiveInt( mtn, value ) ); break; case EVENTS_GENE_LOSSES: if ( !getMyNode().getNodeData().isHasEvent() ) { getMyNode().getNodeData().setEvent( new Event() ); getMyNode().getNodeData().getEvent().setGeneLosses( parsePositiveInt( mtn, value ) ); break; case DATE_DESCRIPTION:
event = Event.createSingleDuplicationEvent(); event = Event.createSingleSpeciationEvent();
d2.getNodeData().addSequence( s2 ); final Event ev = new Event(); ev.setSpeciations( 1 ); ev.setDuplications( 0 ); root.getNodeData().setEvent( ev );
event = new Event( duplications, speciations, losses ); event = new Event( duplications, speciations, losses, type ); event.setConfidence( conf );
public static Event createSingleSpeciationOrDuplicationEvent() { return new Event( EventType.speciation_or_duplication ); }
new_data.setEvent( ( Event ) getEvent().copy() );
g.getNodeData().setEvent( Event.createSingleDuplicationEvent() ); res.increaseDuplicationsSum(); g.getNodeData().setEvent( Event.createSingleSpeciationEvent() ); res.increaseSpeciationsSum(); g.getNodeData().setEvent( Event.createSingleDuplicationEvent() ); res.increaseDuplicationsSum(); g.getNodeData().setEvent( Event.createSingleSpeciationEvent() ); res.increaseSpeciationsSum(); g.getNodeData().setEvent( Event.createSingleSpeciationOrDuplicationEvent() ); res.increaseSpeciationOrDuplicationEventsSum(); g.getNodeData().setEvent( Event.createSingleSpeciationEvent() ); res.increaseSpeciationsSum();
private void calculateMforNode( final PhylogenyNode n ) { if ( !n.isExternal() ) { final boolean was_duplication = n.isDuplication(); PhylogenyNode a = n.getChildNode1().getLink(); PhylogenyNode b = n.getChildNode2().getLink(); while ( a != b ) { if ( a.getId() > b.getId() ) { a = a.getParent(); } else { b = b.getParent(); } } n.setLink( a ); Event event = null; if ( ( a == n.getChildNode1().getLink() ) || ( a == n.getChildNode2().getLink() ) ) { event = Event.createSingleDuplicationEvent(); if ( !was_duplication ) { ++_duplications_sum; } } else { event = Event.createSingleSpeciationEvent(); if ( was_duplication ) { --_duplications_sum; } } n.getNodeData().setEvent( event ); } } // calculateMforNode( PhylogenyNode )
public static Event createSingleDuplicationEvent() { return new Event( 1, 0, 0 ); }
event = Event.createSingleDuplicationEvent(); ++_duplications_sum; event = Event.createSingleSpeciationEvent();
public static Event createSingleSpeciationEvent() { return new Event( 0, 1, 0 ); }