vg
tools for working with variation graphs
Public Member Functions | List of all members
vg::OrientedDistanceMeasurer Class Referenceabstract

#include <cluster.hpp>

Inheritance diagram for vg::OrientedDistanceMeasurer:
vg::PathOrientedDistanceMeasurer vg::SnarlOrientedDistanceMeasurer

Public Member Functions

virtual ~OrientedDistanceMeasurer ()=default
 
virtual int64_t oriented_distance (const pos_t &pos_1, const pos_t &pos_2)=0
 
virtual vector< vector< size_t > > get_buckets (const function< pos_t(size_t)> &get_position, size_t num_items)=0
 
virtual vector< pair< size_t, size_t > > exclude_merges (vector< vector< size_t >> &current_groups, const function< pos_t(size_t)> &get_position)=0
 

Constructor & Destructor Documentation

◆ ~OrientedDistanceMeasurer()

virtual vg::OrientedDistanceMeasurer::~OrientedDistanceMeasurer ( )
virtualdefault

Member Function Documentation

◆ exclude_merges()

virtual vector<pair<size_t, size_t> > vg::OrientedDistanceMeasurer::exclude_merges ( vector< vector< size_t >> &  current_groups,
const function< pos_t(size_t)> &  get_position 
)
pure virtual

Return a vector of pairs of groups (referred to by indexes in the current_groups vector) that cannot have finite distances between them (typically because they are on separate components).

Implemented in vg::SnarlOrientedDistanceMeasurer, and vg::PathOrientedDistanceMeasurer.

◆ get_buckets()

virtual vector<vector<size_t> > vg::OrientedDistanceMeasurer::get_buckets ( const function< pos_t(size_t)> &  get_position,
size_t  num_items 
)
pure virtual

Return a vector of groups that we believe will have finite distances under this metric, can be empty.

Implemented in vg::SnarlOrientedDistanceMeasurer, and vg::PathOrientedDistanceMeasurer.

◆ oriented_distance()

virtual int64_t vg::OrientedDistanceMeasurer::oriented_distance ( const pos_t pos_1,
const pos_t pos_2 
)
pure virtual

Returns a signed distance, where positive indicates that pos_2 is to the right of pos_1, and negative indicates to the left. If the distance is infinite or can't be determined, returns numeric_limits<int64_t>::max().

Implemented in vg::SnarlOrientedDistanceMeasurer, and vg::PathOrientedDistanceMeasurer.


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