vg
tools for working with variation graphs
Loading...
Searching...
No Matches
describe_main.cpp File Reference
#include "subcommand.hpp"
#include "../recombinator.hpp"
#include <xg.hpp>
#include "../zip_code.hpp"
#include <gbwt/gbwt.h>
#include <gbwt/fast_locate.h>
#include <gbwtgraph/gbwtgraph.h>
#include <gbwtgraph/gbz.h>
#include <gbwtgraph/minimizer.h>
#include <gcsa/files.h>
#include <bdsg/hash_graph.hpp>
#include <bdsg/packed_graph.hpp>
#include <bdsg/snarl_distance_index.hpp>
#include <fstream>
#include <iostream>
#include <string>
#include <unordered_map>
#include <getopt.h>
#include <arpa/inet.h>

Functions

void describe_gbwt (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_r_index (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_gbwtgraph (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_gbz (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_minimizer_index (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_gcsa (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_lcp (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
void describe_haplotypes (std::ifstream &in, const std::string &index_type, std::ostream &out, Logger &logger)
template<typename T>
void load_value (std::ifstream &in, T &value)
template<typename T>
T load_and_validate_header (std::ifstream &in, Logger &logger)
void help_describe (char **argv)
void parse_args (int argc, char **argv)
int main_describe (int argc, char **argv)
void list_tags (std::ifstream &in, bool simple_sds, const std::string &index_type, std::ostream &out)

Detailed Description

Defines the "vg describe" subcommand, which attempts to identify and describe a file based on readily available information.

TODO: Try identifying GAM, GAF, GFA, snarls... TODO: Can we get any useful information from graphs? TODO: Could we do this better with vg::io?

Function Documentation

◆ describe_gbwt()

void describe_gbwt ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_gbwtgraph()

void describe_gbwtgraph ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_gbz()

void describe_gbz ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_gcsa()

void describe_gcsa ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_haplotypes()

void describe_haplotypes ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_lcp()

void describe_lcp ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_minimizer_index()

void describe_minimizer_index ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ describe_r_index()

void describe_r_index ( std::ifstream & in,
const std::string & index_type,
std::ostream & out,
Logger & logger )

◆ help_describe()

void help_describe ( char ** argv)

◆ list_tags()

void list_tags ( std::ifstream & in,
bool simple_sds,
const std::string & index_type,
std::ostream & out )

◆ load_and_validate_header()

template<typename T>
T load_and_validate_header ( std::ifstream & in,
Logger & logger )

◆ load_value()

template<typename T>
void load_value ( std::ifstream & in,
T & value )

◆ main_describe()

int main_describe ( int argc,
char ** argv )

◆ parse_args()

void parse_args ( int argc,
char ** argv )