|
vg
tools for working with variation graphs
|
#include "../phase_unfolder.hpp"#include <vg/io/vpkg.hpp>#include "subcommand.hpp"#include "xg.hpp"#include "../algorithms/prune.hpp"#include "../io/save_handle_graph.hpp"#include <gbwt/gbwt.h>#include <cstdlib>#include <iostream>#include <list>#include <map>#include <string>#include <getopt.h>#include <omp.h>Classes | |
| struct | PruningParameters |
Enumerations | |
| enum | PruningMode { mode_prune, mode_restore, mode_unfold } |
Functions | |
| std::string | mode_name (PruningMode mode) |
| std::string | short_mode_name (PruningMode mode) |
| template<class ValueType > | |
| void | print_defaults (const std::map< PruningMode, ValueType > &defaults) |
| void | help_prune (char **argv) |
| int | main_prune (int argc, char **argv) |
Defines the "vg prune" subcommand, which prunes the complex regions of the graph for GCSA2 indexing.
By default, pruning removes the nodes touched by paths of length –kmer-length crossing more than –edge-max non-trivial edges. Graph regions shorter than –subgraph_min are also removed. Pruning also removes all embedded paths.
For very complex graphs, there is an option to remove high-degree nodes before pruning. Otherwise enumerating the k bp paths would take too long.
With –restore-paths, the nodes and edges on non-alt paths are added back after pruning.
With –unfold-paths, pruning unfolds the non-alt paths and GBWT threads in the complex regions. If –mapping is specified, the mapping from duplicate node identifiers to the original identifiers is stored in a file. This file can be used for building a GCSA2 index that maps to the original graph.
| enum PruningMode |
| void help_prune | ( | char ** | argv | ) |
| int main_prune | ( | int | argc, |
| char ** | argv | ||
| ) |
| std::string mode_name | ( | PruningMode | mode | ) |
| void print_defaults | ( | const std::map< PruningMode, ValueType > & | defaults | ) |
| std::string short_mode_name | ( | PruningMode | mode | ) |
1.8.17