vg
tools for working with variation graphs
|
#include <traversal_finder.hpp>
Public Member Functions | |
PathRestrictedTraversalFinder (VG &graph, SnarlManager &snarl_manager, map< string, const Alignment * > &reads_by_name, int min_recurrence=2, int max_path_search_steps=100, bool allow_duplicates=false) | |
virtual | ~PathRestrictedTraversalFinder () |
virtual vector< SnarlTraversal > | find_traversals (const Snarl &site) |
virtual pair< vector< SnarlTraversal >, vector< string > > | find_named_traversals (const Snarl &site) |
Public Member Functions inherited from vg::TraversalFinder | |
virtual | ~TraversalFinder ()=default |
virtual vector< Traversal > | find_traversals (const handle_t &snarl_start, const handle_t &snarl_end) |
Private Attributes | |
VG & | graph |
SnarlManager & | snarl_manager |
map< string, const Alignment * > & | reads_by_name |
int | min_recurrence |
int | max_path_search_steps |
bool | allow_duplicates |
Like ReadRestrictedTraversal finder, but works on paths in the graph. As with the former, it's been cut out of Genotyper and moved here.
I'm not sure what PathBasedTraversalFinder (see below) does, but it does not work as a drop-in replacement for this class, so keep the two implementations at least for now.
DEPRECATED: Use PathTraversalFinder instead
vg::PathRestrictedTraversalFinder::PathRestrictedTraversalFinder | ( | VG & | graph, |
SnarlManager & | snarl_manager, | ||
map< string, const Alignment * > & | reads_by_name, | ||
int | min_recurrence = 2 , |
||
int | max_path_search_steps = 100 , |
||
bool | allow_duplicates = false |
||
) |
|
virtual |
|
virtual |
Like above, but return the path name corresponding to each traversal
|
virtual |
For the given site, emit all subpaths with unique sequences that run from start to end, out of the paths in the graph. Uses the map of reads by name to determine if a path is a read or a real named path. Paths through the snarl supported only by reads are subject to a min recurrence count, while those supported by actual embedded named paths are not.
Implements vg::TraversalFinder.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |