A library for working with phylogenetic and population genetic data.
v0.32.0
tree/printer/table.hpp
Go to the documentation of this file.
1
#ifndef GENESIS_TREE_PRINTER_TABLE_H_
2
#define GENESIS_TREE_PRINTER_TABLE_H_
3
4
/*
5
Genesis - A toolkit for working with phylogenetic data.
6
Copyright (C) 2014-2017 Lucas Czech
7
8
This program is free software: you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation, either version 3 of the License, or
11
(at your option) any later version.
12
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
GNU General Public License for more details.
17
18
You should have received a copy of the GNU General Public License
19
along with this program. If not, see <http://www.gnu.org/licenses/>.
20
21
Contact:
22
Lucas Czech <lucas.czech@h-its.org>
23
Exelixis Lab, Heidelberg Institute for Theoretical Studies
24
Schloss-Wolfsbrunnenweg 35, D-69118 Heidelberg, Germany
25
*/
26
34
#include <iosfwd>
35
#include <functional>
36
#include <string>
37
38
namespace
genesis
{
39
namespace
tree {
40
41
// =================================================================================================
42
// Forward Declarations
43
// =================================================================================================
44
45
class
Tree;
46
class
TreeNode;
47
class
TreeEdge;
48
class
TreeLink;
49
50
// =================================================================================================
51
// Printer Table
52
// =================================================================================================
53
58
class
PrinterTable
59
{
60
public
:
61
62
// -------------------------------------------------------------------------
63
// Constructor and Rule of Five
64
// -------------------------------------------------------------------------
65
66
PrinterTable
() =
default
;
67
~PrinterTable
() =
default
;
68
69
PrinterTable
(
PrinterTable
const
& ) =
default
;
70
PrinterTable
(
PrinterTable
&& ) =
default
;
71
72
PrinterTable
&
operator=
(
PrinterTable
const
& ) =
default
;
73
PrinterTable
&
operator=
(
PrinterTable
&& ) =
default
;
74
75
// -------------------------------------------------------------------------
76
// Print
77
// -------------------------------------------------------------------------
78
79
void
print
( std::ostream& out,
Tree
const
& tree );
80
std::string
print
(
Tree
const
& tree );
81
82
// std::string operator() ( Tree const& tree );
83
84
};
85
86
}
// namespace tree
87
}
// namespace genesis
88
89
#endif // include guard
genesis::tree::PrinterTable::~PrinterTable
~PrinterTable()=default
genesis::tree::PrinterTable::PrinterTable
PrinterTable()=default
genesis::tree::PrinterTable::operator=
PrinterTable & operator=(PrinterTable const &)=default
genesis::tree::Tree
Class for representing phylogenetic trees.
Definition:
tree/tree.hpp:97
genesis::tree::PrinterTable
Print lists of all nodes, edges and links including their indices and connections with each other.
Definition:
tree/printer/table.hpp:58
genesis
Container namespace for all symbols of genesis in order to keep them separate when used as a library.
Definition:
placement/formats/edge_color.cpp:42
genesis::tree::PrinterTable::print
void print(std::ostream &out, Tree const &tree)
Definition:
tree/printer/table.cpp:47
lib
genesis
tree
printer
table.hpp
Generated on Mon Aug 5 2024 16:57:53 for genesis by
1.8.17