vg
tools for working with variation graphs
Public Member Functions | Private Attributes | List of all members
vg::AliasGraph Class Reference

#include <index_registry.hpp>

Public Member Functions

 AliasGraph ()=default
 
 ~AliasGraph ()=default
 
void register_alias (const IndexName &aliasor, const IndexFile *aliasee)
 Record that one index is aliasing another. More...
 
vector< pair< IndexName, vector< IndexName > > > non_intermediate_aliases (const IndexingPlan *plan, bool keep_all) const
 

Private Attributes

unordered_map< IndexName, vector< IndexName > > graph
 

Detailed Description

Class to keep track of which indexes are aliasing other indexes

Constructor & Destructor Documentation

◆ AliasGraph()

vg::AliasGraph::AliasGraph ( )
default

◆ ~AliasGraph()

vg::AliasGraph::~AliasGraph ( )
default

Member Function Documentation

◆ non_intermediate_aliases()

vector< pair< IndexName, vector< IndexName > > > vg::AliasGraph::non_intermediate_aliases ( const IndexingPlan plan,
bool  keep_all 
) const

Return a list of all indexes that are being aliased by non-intermediate indexes. If the aliasee is non-intermediate itself, it ill be listed among the aliases too.

◆ register_alias()

void vg::AliasGraph::register_alias ( const IndexName aliasor,
const IndexFile aliasee 
)

Record that one index is aliasing another.

Member Data Documentation

◆ graph

unordered_map<IndexName, vector<IndexName> > vg::AliasGraph::graph
private

The documentation for this class was generated from the following files: