vg
tools for working with variation graphs
Classes | Functions
gbwt_main.cpp File Reference
#include <omp.h>
#include <unistd.h>
#include <getopt.h>
#include <set>
#include "subcommand.hpp"
#include "../gbwt_helper.hpp"
#include "../gbwtgraph_helper.hpp"
#include "../haplotype_indexer.hpp"
#include "../path.hpp"
#include "../region.hpp"
#include "../algorithms/find_translation.hpp"
#include <vg/io/vpkg.hpp>
#include <gbwt/fast_locate.h>
#include <gbwtgraph/gfa.h>
#include <gbwtgraph/path_cover.h>

Classes

struct  GBWTConfig
 
struct  GraphHandler
 
struct  job_type
 

Functions

GBWTConfig parse_gbwt_config (int argc, char **argv)
 
void validate_gbwt_config (GBWTConfig &config)
 
void step_1_build_gbwts (GBWTHandler &gbwts, GraphHandler &graphs, GBWTConfig &config)
 
void step_2_merge_gbwts (GBWTHandler &gbwts, GBWTConfig &config)
 
void step_3_alter_gbwt (GBWTHandler &gbwts, GBWTConfig &config)
 
void step_4_path_cover (GBWTHandler &gbwts, GraphHandler &graphs, GBWTConfig &config)
 
void step_5_gbwtgraph (GBWTHandler &gbwts, GraphHandler &graphs, GBWTConfig &config)
 
void step_6_r_index (GBWTHandler &gbwts, GBWTConfig &config)
 
void step_7_metadata (GBWTHandler &gbwts, GBWTConfig &config)
 
void step_8_paths (GBWTHandler &gbwts, GBWTConfig &config)
 
void report_time_memory (const std::string &what, double start_time, const GBWTConfig &config)
 
void print_metadata (std::ostream &out, const GBWTHandler &gbwts)
 
int main_gbwt (int argc, char **argv)
 
void help_gbwt (char **argv)
 
void use_preset (std::string preset_name, GBWTConfig &config)
 
void no_multiple_input_types (const GBWTConfig &config)
 
void no_multiple_cover_types (const GBWTConfig &config)
 
void check_tag_validity (const std::string &key, const std::string &value, const std::unordered_set< char > &prohibited, const std::string &description)
 
std::vector< job_typedetermine_jobs (std::unique_ptr< PathHandleGraph > &graph, const GBWTConfig &config)
 
void use_or_save (std::unique_ptr< gbwt::DynamicGBWT > &index, GBWTHandler &gbwts, std::vector< std::string > &filenames, size_t i, bool show_progress)
 
void remove_samples (GBWTHandler &gbwts, GBWTConfig &config)
 
void set_tags (GBWTHandler &gbwts, GBWTConfig &config)
 

Detailed Description

Defines the "vg gbwt" subcommand for building, merging, and manipulating GBWT indexes and GBWTGraphs.

Function Documentation

◆ check_tag_validity()

void check_tag_validity ( const std::string &  key,
const std::string &  value,
const std::unordered_set< char > &  prohibited,
const std::string &  description 
)

◆ determine_jobs()

std::vector<job_type> determine_jobs ( std::unique_ptr< PathHandleGraph > &  graph,
const GBWTConfig config 
)

◆ help_gbwt()

void help_gbwt ( char **  argv)

◆ main_gbwt()

int main_gbwt ( int  argc,
char **  argv 
)

◆ no_multiple_cover_types()

void no_multiple_cover_types ( const GBWTConfig config)

◆ no_multiple_input_types()

void no_multiple_input_types ( const GBWTConfig config)

◆ parse_gbwt_config()

GBWTConfig parse_gbwt_config ( int  argc,
char **  argv 
)

◆ print_metadata()

void print_metadata ( std::ostream &  out,
const GBWTHandler gbwts 
)

◆ remove_samples()

void remove_samples ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ report_time_memory()

void report_time_memory ( const std::string &  what,
double  start_time,
const GBWTConfig config 
)

◆ set_tags()

void set_tags ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ step_1_build_gbwts()

void step_1_build_gbwts ( GBWTHandler gbwts,
GraphHandler graphs,
GBWTConfig config 
)

◆ step_2_merge_gbwts()

void step_2_merge_gbwts ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ step_3_alter_gbwt()

void step_3_alter_gbwt ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ step_4_path_cover()

void step_4_path_cover ( GBWTHandler gbwts,
GraphHandler graphs,
GBWTConfig config 
)

◆ step_5_gbwtgraph()

void step_5_gbwtgraph ( GBWTHandler gbwts,
GraphHandler graphs,
GBWTConfig config 
)

◆ step_6_r_index()

void step_6_r_index ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ step_7_metadata()

void step_7_metadata ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ step_8_paths()

void step_8_paths ( GBWTHandler gbwts,
GBWTConfig config 
)

◆ use_or_save()

void use_or_save ( std::unique_ptr< gbwt::DynamicGBWT > &  index,
GBWTHandler gbwts,
std::vector< std::string > &  filenames,
size_t  i,
bool  show_progress 
)

◆ use_preset()

void use_preset ( std::string  preset_name,
GBWTConfig config 
)

◆ validate_gbwt_config()

void validate_gbwt_config ( GBWTConfig config)