FST  openfst-1.7.3
OpenFst Library
Public Types | Public Member Functions | List of all members
fst::IntervalSet< T, Store > Class Template Reference

#include <interval-set.h>

Public Types

using Interval = IntInterval< T >
 

Public Member Functions

template<class... A>
 IntervalSet (A...args)
 
std::vector< Interval > * MutableIntervals ()
 
const IntervalIntervals () const
 
bool Empty () const
 
Size () const
 
Count () const
 
void Clear ()
 
void Union (const IntervalSet< T, Store > &iset)
 
bool Member (T value) const
 
bool operator== (const IntervalSet< T, Store > &iset) const
 
bool operator!= (const IntervalSet< T, Store > &iset) const
 
bool Singleton () const
 
void Normalize ()
 
void Intersect (const IntervalSet< T, Store > &iset, IntervalSet< T, Store > *oset) const
 
void Complement (T maxval, IntervalSet< T, Store > *oset) const
 
void Difference (const IntervalSet< T, Store > &iset, IntervalSet< T, Store > *oset) const
 
bool Overlaps (const IntervalSet< T, Store > &iset) const
 
bool StrictlyOverlaps (const IntervalSet< T, Store > &iset) const
 
bool Contains (const IntervalSet< T, Store > &iset) const
 
std::istream & Read (std::istream &strm)
 
std::ostream & Write (std::ostream &strm) const
 
Store::Iterator begin () const
 
Store::Iterator end () const
 

Detailed Description

template<class T, class Store = VectorIntervalStore<T>>
class fst::IntervalSet< T, Store >

Definition at line 106 of file interval-set.h.

Member Typedef Documentation

template<class T, class Store = VectorIntervalStore<T>>
using fst::IntervalSet< T, Store >::Interval = IntInterval<T>

Definition at line 108 of file interval-set.h.

Constructor & Destructor Documentation

template<class T, class Store = VectorIntervalStore<T>>
template<class... A>
fst::IntervalSet< T, Store >::IntervalSet ( A...  args)
inlineexplicit

Definition at line 111 of file interval-set.h.

Member Function Documentation

template<class T, class Store = VectorIntervalStore<T>>
Store::Iterator fst::IntervalSet< T, Store >::begin ( ) const
inline

Definition at line 199 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
void fst::IntervalSet< T, Store >::Clear ( )
inline

Definition at line 128 of file interval-set.h.

template<typename T , class Store >
void fst::IntervalSet< T, Store >::Complement ( maxval,
IntervalSet< T, Store > *  oset 
) const

Definition at line 262 of file interval-set.h.

template<typename T , class Store >
bool fst::IntervalSet< T, Store >::Contains ( const IntervalSet< T, Store > &  iset) const

Definition at line 362 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
T fst::IntervalSet< T, Store >::Count ( ) const
inline

Definition at line 126 of file interval-set.h.

template<typename T , class Store >
void fst::IntervalSet< T, Store >::Difference ( const IntervalSet< T, Store > &  iset,
IntervalSet< T, Store > *  oset 
) const

Definition at line 288 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
bool fst::IntervalSet< T, Store >::Empty ( ) const
inline

Definition at line 121 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
Store::Iterator fst::IntervalSet< T, Store >::end ( ) const
inline

Definition at line 201 of file interval-set.h.

template<typename T , class Store >
void fst::IntervalSet< T, Store >::Intersect ( const IntervalSet< T, Store > &  iset,
IntervalSet< T, Store > *  oset 
) const

Definition at line 233 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
const Interval* fst::IntervalSet< T, Store >::Intervals ( ) const
inline

Definition at line 119 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
bool fst::IntervalSet< T, Store >::Member ( value) const
inline

Definition at line 138 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
std::vector<Interval>* fst::IntervalSet< T, Store >::MutableIntervals ( )
inline

Definition at line 114 of file interval-set.h.

template<typename T , class Store >
void fst::IntervalSet< T, Store >::Normalize ( )

Definition at line 209 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
bool fst::IntervalSet< T, Store >::operator!= ( const IntervalSet< T, Store > &  iset) const
inline

Definition at line 153 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
bool fst::IntervalSet< T, Store >::operator== ( const IntervalSet< T, Store > &  iset) const
inline

Definition at line 146 of file interval-set.h.

template<typename T , class Store >
bool fst::IntervalSet< T, Store >::Overlaps ( const IntervalSet< T, Store > &  iset) const

Definition at line 303 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
std::istream& fst::IntervalSet< T, Store >::Read ( std::istream &  strm)
inline

Definition at line 193 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
bool fst::IntervalSet< T, Store >::Singleton ( ) const
inline

Definition at line 159 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
T fst::IntervalSet< T, Store >::Size ( ) const
inline

Definition at line 123 of file interval-set.h.

template<typename T , class Store >
bool fst::IntervalSet< T, Store >::StrictlyOverlaps ( const IntervalSet< T, Store > &  iset) const

Definition at line 321 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
void fst::IntervalSet< T, Store >::Union ( const IntervalSet< T, Store > &  iset)
inline

Definition at line 131 of file interval-set.h.

template<class T, class Store = VectorIntervalStore<T>>
std::ostream& fst::IntervalSet< T, Store >::Write ( std::ostream &  strm) const
inline

Definition at line 195 of file interval-set.h.


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