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

#include <interval_union.hpp>

Public Member Functions

 IntervalUnion ()=default
 
 ~IntervalUnion ()=default
 
void add (size_t begin, size_t end)
 
void add (const pair< size_t, size_t > &interval)
 
void clear ()
 
size_t overlap (size_t begin, size_t end) const
 
size_t overlap (const pair< size_t, size_t > &interval) const
 
size_t total_size () const
 
size_t component_size () const
 
vector< pair< size_t, size_t > > get_union () const
 

Private Attributes

map< size_t, size_t > irvl_union
 
size_t union_size = 0
 

Detailed Description

The union of a collection of intervals

Constructor & Destructor Documentation

◆ IntervalUnion()

vg::IntervalUnion::IntervalUnion ( )
default

◆ ~IntervalUnion()

vg::IntervalUnion::~IntervalUnion ( )
default

Member Function Documentation

◆ add() [1/2]

void vg::IntervalUnion::add ( const pair< size_t, size_t > &  interval)
inline

◆ add() [2/2]

void vg::IntervalUnion::add ( size_t  begin,
size_t  end 
)

◆ clear()

void vg::IntervalUnion::clear ( )

◆ component_size()

size_t vg::IntervalUnion::component_size ( ) const

◆ get_union()

vector< pair< size_t, size_t > > vg::IntervalUnion::get_union ( ) const

◆ overlap() [1/2]

size_t vg::IntervalUnion::overlap ( const pair< size_t, size_t > &  interval) const
inline

◆ overlap() [2/2]

size_t vg::IntervalUnion::overlap ( size_t  begin,
size_t  end 
) const

◆ total_size()

size_t vg::IntervalUnion::total_size ( ) const

Member Data Documentation

◆ irvl_union

map<size_t, size_t> vg::IntervalUnion::irvl_union
private

◆ union_size

size_t vg::IntervalUnion::union_size = 0
private

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