vg
tools for working with variation graphs
Classes | Namespaces | Functions
snarl_distance_index.hpp File Reference
#include <bdsg/snarl_distance_index.hpp>
#include "snarls.hpp"
#include <structures/union_find.hpp>
#include "hash_map.hpp"
#include <gbwtgraph/minimizer.h>

Classes

struct  vg::wang_hash< handlegraph::net_handle_t >
 
struct  vg::MIPayloadValues
 
struct  vg::MIPayload
 

Namespaces

 vg
 

Functions

size_t vg::minimum_distance (const SnarlDistanceIndex &distance_index, pos_t pos1, pos_t pos2, bool unoriented_distance, const HandleGraph *graph)
 
size_t vg::maximum_distance (const SnarlDistanceIndex &distance_index, pos_t pos1, pos_t pos2)
 
void vg::fill_in_distance_index (SnarlDistanceIndex *distance_index, const HandleGraph *graph, const HandleGraphSnarlFinder *snarl_finder, size_t size_limit)
 
void vg::populate_snarl_index (SnarlDistanceIndex::TemporaryDistanceIndex &temp_index, pair< SnarlDistanceIndex::temp_record_t, size_t > snarl_index, size_t size_limit, const HandleGraph *graph)
 
SnarlDistanceIndex::TemporaryDistanceIndex vg::make_temporary_distance_index (const HandleGraph *graph, const HandleGraphSnarlFinder *snarl_finder, size_t size_limit)
 
void vg::subgraph_in_distance_range (const SnarlDistanceIndex &distance_index, const Path &path, const HandleGraph *super_graph, size_t min_distance, size_t max_distance, std::unordered_set< nid_t > &subgraph, bool look_forward)
 
void vg::subgraph_in_distance_range_walk_graph (const HandleGraph *super_graph, size_t min_distance, size_t max_distance, std::unordered_set< nid_t > &subgraph, vector< pair< handle_t, size_t >> &start_nodes, hash_set< pair< nid_t, bool >> &seen_nodes, const pair< nid_t, bool > &traversal_start)
 
void vg::subgraph_in_distance_range_walk_across_chain (const SnarlDistanceIndex &distance_index, const HandleGraph *super_graph, std::unordered_set< nid_t > &subgraph, net_handle_t current_node, size_t current_distance, vector< pair< handle_t, size_t >> &search_start_nodes, hash_set< pair< nid_t, bool >> &seen_nodes, const size_t &min_distance, const size_t &max_distance, bool checked_loop)
 
void vg::subgraph_containing_path_snarls (const SnarlDistanceIndex &distance_index, const HandleGraph *graph, const Path &path, std::unordered_set< nid_t > &subgraph)
 
void vg::add_descendants_to_subgraph (const SnarlDistanceIndex &distance_index, const net_handle_t &parent, std::unordered_set< nid_t > &subgraph)
 
MIPayloadValues vg::get_minimizer_distances (const SnarlDistanceIndex &distance_index, pos_t pos)