Struct light_phylogeny::Noeud
source · [−]pub struct Noeud<T>where
T: PartialEq,{Show 23 fields
pub idx: usize,
pub name: String,
pub support: String,
pub parent: Option<usize>,
pub children: Vec<usize>,
pub x: f32,
pub xmod: f32,
pub y: f32,
pub ymod: f32,
pub l: f32,
pub e: Event,
pub location: String,
pub width: f32,
pub height: f32,
pub nbg: usize,
pub nodes: Vec<(usize, usize)>,
pub is_a_transfert: bool,
pub go_left: usize,
pub go_right: usize,
pub fixed: bool,
pub transfers: Vec<usize>,
pub visible: bool,
pub virtualsvg: bool,
/* private fields */
}
Expand description
Noeud Structure. It describes a node of a tree stored in a Arena structure. Concerning recPhyloXML file, we assume in the documentation that it describes a gene/species reconciliation.
Fields
idx: usize
Index in the Arena structure.
name: String
Name of the node.
support: String
Support of the node.
parent: Option<usize>
Parent of the node.
children: Vec<usize>
Children of the node.
x: f32
x coordinate.
xmod: f32
x shift.
y: f32
y coordinate.
ymod: f32
y shift.
l: f32
Real branch length.
e: Event
Event (duplication, speciation, loss, transfer …)
location: String
Location of the gene tree node in the species tree (recPhyloXML)
width: f32
Pipe width (recPhyloXML)
height: f32
Pipe height (recPhyloXML)
nbg: usize
Number of gene nodes associated to the species node (recPhyloXML)
nodes: Vec<(usize, usize)>
Number of gene nodes associated to the species node (recPhyloXML)
is_a_transfert: bool
The node come from a transfer (it is a transferBack and its parent is a BranchingOut).
go_left: usize
Optimisation: number of left-side orientation minimising transfer crossings (recPhyloXML).
go_right: usize
Optimisation: number of right-side orientation minimising transfer crossings (recPhyloXML).
fixed: bool
Optimisation: node is fixed, left/side orientation of children can not be modified (recPhyloXML).
transfers: Vec<usize>
Optimisation: indexes of transfers associated to the node (recPhyloXML).
visible: bool
Node will be displayed.
virtualsvg: bool
Node is a virtual node created for the svg only.
Implementations
sourceimpl<T> Noeud<T>where
T: PartialEq,
impl<T> Noeud<T>where
T: PartialEq,
pub fn new(idx: usize, val: T) -> Self
sourcepub fn set_x_noref(&mut self, x: f32)
pub fn set_x_noref(&mut self, x: f32)
Set node x.
sourcepub fn set_xmod_noref(&mut self, xmod: f32)
pub fn set_xmod_noref(&mut self, xmod: f32)
Set node xmod.
sourcepub fn set_ymod_noref(&mut self, ymod: f32)
pub fn set_ymod_noref(&mut self, ymod: f32)
Set node ymod.
sourcepub fn set_y_noref(&mut self, y: f32)
pub fn set_y_noref(&mut self, y: f32)
Set node y.
Trait Implementations
Auto Trait Implementations
impl<T> RefUnwindSafe for Noeud<T>where
T: RefUnwindSafe,
impl<T> Send for Noeud<T>where
T: Send,
impl<T> Sync for Noeud<T>where
T: Sync,
impl<T> Unpin for Noeud<T>where
T: Unpin,
impl<T> UnwindSafe for Noeud<T>where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more