vg
tools for working with variation graphs
|
#include <algorithm>
#include <cstdint>
#include <functional>
#include <iostream>
#include <limits>
#include <memory>
#include <string>
#include <vector>
Classes | |
struct | vg::str_view |
struct | vg::GAFSorterRecord |
struct | vg::GAFSorterFile |
struct | vg::GAFSorterParameters |
Namespaces | |
vg | |
Functions | |
bool | vg::sort_gaf (const std::string &input_file, const std::string &output_file, const GAFSorterParameters ¶ms) |
void | vg::sort_gaf_lines (std::unique_ptr< std::vector< std::string >> lines, GAFSorterRecord::key_type key_type, bool stable, GAFSorterFile &output) |
void | vg::merge_gaf_records (std::unique_ptr< std::vector< GAFSorterFile >> inputs, GAFSorterFile &output, size_t buffer_size) |
Tools for sorting GAF records.
TODO: This could be an independent utility. TODO: Asynchronous I/O. TODO: Option for automatic detection of merge width to guarantee <= 2 rounds. TODO: Switch to std::string_view when we can.