A library for working with phylogenetic and population genetic data.
v0.27.0
LayoutEdgeData Class Reference

#include <genesis/tree/drawing/layout_tree.hpp>

Inherits CommonEdgeData.

Detailed Description

Data class for LayoutTreeEdges.

It is derived from tree::CommonEdgeData, so that it already contains a branch_length field.

Definition at line 163 of file layout_tree.hpp.

Public Member Functions

 LayoutEdgeData (LayoutEdgeData &&)=delete
 
virtual ~LayoutEdgeData () override=default
 
virtual std::unique_ptr< BaseEdgeDataclone () const override
 Polymorphically copy an instance of this class. Use instead of copy constructor. More...
 
LayoutEdgeDataoperator= (LayoutEdgeData &&)=delete
 
virtual std::unique_ptr< BaseEdgeDatarecreate () const override
 Polymorphically create a default-constructed instance of this class with the same derived type as it was called on. More...
 
- Public Member Functions inherited from CommonEdgeData
 CommonEdgeData (CommonEdgeData &&)=delete
 
virtual ~CommonEdgeData () override=default
 
CommonEdgeDataoperator= (CommonEdgeData &&)=delete
 
- Public Member Functions inherited from BaseEdgeData
 BaseEdgeData (BaseEdgeData &&)=delete
 Deleted move constructor. More...
 
virtual ~BaseEdgeData ()=default
 Virtual destructor. Needed for polymorphism. More...
 
BaseEdgeDataoperator= (BaseEdgeData &&)=delete
 Deleted move assignment. More...
 

Static Public Member Functions

static std::unique_ptr< LayoutEdgeDatacreate ()
 
- Static Public Member Functions inherited from CommonEdgeData
static std::unique_ptr< CommonEdgeDatacreate ()
 
- Static Public Member Functions inherited from BaseEdgeData
static std::unique_ptr< BaseEdgeDatacreate ()
 Create a new instance of this class. Use instead of default constructor. More...
 

Public Attributes

utils::SvgStroke distance_stroke
 
utils::SvgGroup shape
 
utils::SvgStroke spreading_stroke
 
- Public Attributes inherited from CommonEdgeData
double branch_length = 0.0
 Branch length of the edge. More...
 

Protected Member Functions

 LayoutEdgeData ()=default
 
 LayoutEdgeData (LayoutEdgeData const &)=default
 
LayoutEdgeDataoperator= (LayoutEdgeData const &)=default
 
- Protected Member Functions inherited from CommonEdgeData
 CommonEdgeData ()=default
 
 CommonEdgeData (CommonEdgeData const &)=default
 
CommonEdgeDataoperator= (CommonEdgeData const &)=default
 
- Protected Member Functions inherited from BaseEdgeData
 BaseEdgeData ()=default
 Protected default constructor. Called from the create() function. More...
 
 BaseEdgeData (BaseEdgeData const &)=default
 Protected copy constructor. Called from the clone() function. More...
 
BaseEdgeDataoperator= (BaseEdgeData const &)=default
 Protected copy assignment. Not used right now. More...
 

Constructor & Destructor Documentation

◆ ~LayoutEdgeData()

virtual ~LayoutEdgeData ( )
overridevirtualdefault

◆ LayoutEdgeData() [1/3]

LayoutEdgeData ( LayoutEdgeData &&  )
delete

◆ LayoutEdgeData() [2/3]

LayoutEdgeData ( )
protecteddefault

◆ LayoutEdgeData() [3/3]

LayoutEdgeData ( LayoutEdgeData const &  )
protecteddefault

Member Function Documentation

◆ clone()

virtual std::unique_ptr< BaseEdgeData > clone ( ) const
inlineoverridevirtual

Polymorphically copy an instance of this class. Use instead of copy constructor.

Reimplemented from CommonEdgeData.

Definition at line 197 of file layout_tree.hpp.

◆ create()

static std::unique_ptr< LayoutEdgeData > create ( )
inlinestatic

Definition at line 187 of file layout_tree.hpp.

◆ operator=() [1/2]

LayoutEdgeData& operator= ( LayoutEdgeData &&  )
delete

◆ operator=() [2/2]

LayoutEdgeData& operator= ( LayoutEdgeData const &  )
protecteddefault

◆ recreate()

virtual std::unique_ptr< BaseEdgeData > recreate ( ) const
inlineoverridevirtual

Polymorphically create a default-constructed instance of this class with the same derived type as it was called on.

Reimplemented from CommonEdgeData.

Definition at line 192 of file layout_tree.hpp.

Member Data Documentation

◆ distance_stroke

utils::SvgStroke distance_stroke

Definition at line 209 of file layout_tree.hpp.

◆ shape

Definition at line 211 of file layout_tree.hpp.

◆ spreading_stroke

utils::SvgStroke spreading_stroke

Definition at line 208 of file layout_tree.hpp.


The documentation for this class was generated from the following file: