vg
tools for working with variation graphs
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
vg::ExhaustiveTraversalFinder Class Reference

#include <traversal_finder.hpp>

Inheritance diagram for vg::ExhaustiveTraversalFinder:
vg::TraversalFinder vg::SupportRestrictedTraversalFinder

Public Member Functions

 ExhaustiveTraversalFinder (const HandleGraph &graph, SnarlManager &snarl_manager, bool include_reversing_traversals=false)
 
virtual ~ExhaustiveTraversalFinder ()
 
virtual vector< SnarlTraversalfind_traversals (const Snarl &site)
 
- Public Member Functions inherited from vg::TraversalFinder
virtual ~TraversalFinder ()=default
 
virtual vector< Traversalfind_traversals (const handle_t &snarl_start, const handle_t &snarl_end)
 

Protected Member Functions

void stack_up_valid_walks (handle_t walk_head, vector< Visit > &stack)
 
virtual bool visit_next_node (handle_t handle)
 
void add_traversals (vector< SnarlTraversal > &traversals, handle_t traversal_start, unordered_set< handle_t > &stop_at, unordered_set< handle_t > &yield_at)
 

Private Attributes

const HandleGraphgraph
 
SnarlManagersnarl_manager
 
bool include_reversing_traversals
 

Constructor & Destructor Documentation

◆ ExhaustiveTraversalFinder()

vg::ExhaustiveTraversalFinder::ExhaustiveTraversalFinder ( const HandleGraph graph,
SnarlManager snarl_manager,
bool  include_reversing_traversals = false 
)

◆ ~ExhaustiveTraversalFinder()

vg::ExhaustiveTraversalFinder::~ExhaustiveTraversalFinder ( )
virtual

Member Function Documentation

◆ add_traversals()

void vg::ExhaustiveTraversalFinder::add_traversals ( vector< SnarlTraversal > &  traversals,
handle_t  traversal_start,
unordered_set< handle_t > &  stop_at,
unordered_set< handle_t > &  yield_at 
)
protected

◆ find_traversals()

vector< SnarlTraversal > vg::ExhaustiveTraversalFinder::find_traversals ( const Snarl site)
virtual

Exhaustively enumerate all traversals through the site. Only valid for acyclic Snarls.

Implements vg::TraversalFinder.

◆ stack_up_valid_walks()

void vg::ExhaustiveTraversalFinder::stack_up_valid_walks ( handle_t  walk_head,
vector< Visit > &  stack 
)
protected

◆ visit_next_node()

virtual bool vg::ExhaustiveTraversalFinder::visit_next_node ( handle_t  handle)
inlineprotectedvirtual

Member Data Documentation

◆ graph

const HandleGraph& vg::ExhaustiveTraversalFinder::graph
private

◆ include_reversing_traversals

bool vg::ExhaustiveTraversalFinder::include_reversing_traversals
private

◆ snarl_manager

SnarlManager& vg::ExhaustiveTraversalFinder::snarl_manager
private

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