vg
tools for working with variation graphs
Namespaces | Functions
canonical_gfa.cpp File Reference
#include "handlegraph/algorithms/canonical_gfa.hpp"
#include <algorithm>
#include <string>
#include <tuple>
#include <vector>

Namespaces

 handlegraph
 
 handlegraph::algorithms
 

Functions

template<typename T >
handlegraph::algorithms::node_id_as (const HandleGraph &graph, const handle_t &handle)=delete
 
template<>
nid_t handlegraph::algorithms::node_id_as< nid_t > (const HandleGraph &graph, const handle_t &handle)
 
template<>
std::string handlegraph::algorithms::node_id_as< std::string > (const HandleGraph &graph, const handle_t &handle)
 
template<typename T >
std::vector< std::pair< T, handle_t > > handlegraph::algorithms::nodes_in_order (const HandleGraph &graph)
 
template<typename T >
std::vector< std::tuple< T, bool, bool > > handlegraph::algorithms::canonical_edges_in_order (const HandleGraph &graph, const T &from_id, handle_t forward_handle)
 
void handlegraph::algorithms::write_gfa_s_line (const std::string &id, const std::string &sequence, std::ostream &out)
 
void handlegraph::algorithms::write_gfa_l_line (const std::string &from_id, bool from_is_rev, const std::string &to_id, bool to_is_rev, std::ostream &out)
 
void handlegraph::algorithms::canonical_gfa (const HandleGraph &graph, std::ostream &out, bool integer_ids)
 

Detailed Description

Implements an algorithm to writing a HandleGraph to an output stream in a canonical GFA format. This can be used for computing stable graph names using an appropriate hashing function (see https://github.com/jltsiren/pggname).