FST  openfst-1.7.2
OpenFst Library
Public Types | Public Member Functions | List of all members
fst::LabelReachable< Arc, Accumulator, D > Class Template Reference

#include <label-reachable.h>

Public Types

using Label = typename Arc::Label
 
using StateId = typename Arc::StateId
 
using Weight = typename Arc::Weight
 
using Data = D
 
using LabelIntervalSet = typename Data::LabelIntervalSet
 
using Interval = typename LabelIntervalSet::Interval
 

Public Member Functions

 LabelReachable (const Fst< Arc > &fst, bool reach_input, Accumulator *accumulator=nullptr, bool keep_relabel_data=true)
 
 LabelReachable (std::shared_ptr< Data > data, Accumulator *accumulator=nullptr)
 
 LabelReachable (const LabelReachable< Arc, Accumulator, Data > &reachable, bool safe=false)
 
 ~LabelReachable ()
 
Label Relabel (Label label)
 
void Relabel (MutableFst< Arc > *fst, bool relabel_input)
 
void RelabelPairs (std::vector< std::pair< Label, Label >> *pairs, bool avoid_collisions=false)
 
void SetState (StateId s, StateId aiter_s=kNoStateId)
 
bool Reach (Label label) const
 
bool ReachFinal () const
 
template<class FST >
void ReachInit (const FST &fst, bool reach_input, bool copy=false)
 
template<class Iterator >
bool Reach (Iterator *aiter, ssize_t aiter_begin, ssize_t aiter_end, bool compute_weight)
 
ssize_t ReachBegin () const
 
ssize_t ReachEnd () const
 
Weight ReachWeight () const
 
const std::unordered_map< Label, Label > & Label2Index () const
 
const DataGetData () const
 
std::shared_ptr< DataGetSharedData () const
 
bool Error () const
 

Detailed Description

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
class fst::LabelReachable< Arc, Accumulator, D >

Definition at line 123 of file label-reachable.h.

Member Typedef Documentation

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
using fst::LabelReachable< Arc, Accumulator, D >::Data = D

Definition at line 128 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
using fst::LabelReachable< Arc, Accumulator, D >::Interval = typename LabelIntervalSet::Interval

Definition at line 132 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
using fst::LabelReachable< Arc, Accumulator, D >::Label = typename Arc::Label

Definition at line 125 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
using fst::LabelReachable< Arc, Accumulator, D >::LabelIntervalSet = typename Data::LabelIntervalSet

Definition at line 130 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
using fst::LabelReachable< Arc, Accumulator, D >::StateId = typename Arc::StateId

Definition at line 126 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
using fst::LabelReachable< Arc, Accumulator, D >::Weight = typename Arc::Weight

Definition at line 127 of file label-reachable.h.

Constructor & Destructor Documentation

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
fst::LabelReachable< Arc, Accumulator, D >::LabelReachable ( const Fst< Arc > &  fst,
bool  reach_input,
Accumulator *  accumulator = nullptr,
bool  keep_relabel_data = true 
)
inline

Definition at line 134 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
fst::LabelReachable< Arc, Accumulator, D >::LabelReachable ( std::shared_ptr< Data data,
Accumulator *  accumulator = nullptr 
)
inlineexplicit

Definition at line 151 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
fst::LabelReachable< Arc, Accumulator, D >::LabelReachable ( const LabelReachable< Arc, Accumulator, Data > &  reachable,
bool  safe = false 
)
inline

Definition at line 161 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
fst::LabelReachable< Arc, Accumulator, D >::~LabelReachable ( )
inline

Definition at line 171 of file label-reachable.h.

Member Function Documentation

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
bool fst::LabelReachable< Arc, Accumulator, D >::Error ( ) const
inline

Definition at line 371 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
const Data* fst::LabelReachable< Arc, Accumulator, D >::GetData ( ) const
inline

Definition at line 367 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
std::shared_ptr<Data> fst::LabelReachable< Arc, Accumulator, D >::GetSharedData ( ) const
inline

Definition at line 369 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
const std::unordered_map<Label, Label>& fst::LabelReachable< Arc, Accumulator, D >::Label2Index ( ) const
inline

Definition at line 363 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
bool fst::LabelReachable< Arc, Accumulator, D >::Reach ( Label  label) const
inline

Definition at line 248 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
template<class Iterator >
bool fst::LabelReachable< Arc, Accumulator, D >::Reach ( Iterator *  aiter,
ssize_t  aiter_begin,
ssize_t  aiter_end,
bool  compute_weight 
)
inline

Definition at line 281 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
ssize_t fst::LabelReachable< Arc, Accumulator, D >::ReachBegin ( ) const
inline

Definition at line 351 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
ssize_t fst::LabelReachable< Arc, Accumulator, D >::ReachEnd ( ) const
inline

Definition at line 354 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
bool fst::LabelReachable< Arc, Accumulator, D >::ReachFinal ( ) const
inline

Definition at line 254 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
template<class FST >
void fst::LabelReachable< Arc, Accumulator, D >::ReachInit ( const FST &  fst,
bool  reach_input,
bool  copy = false 
)
inline

Definition at line 265 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
Weight fst::LabelReachable< Arc, Accumulator, D >::ReachWeight ( ) const
inline

Definition at line 358 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
Label fst::LabelReachable< Arc, Accumulator, D >::Relabel ( Label  label)
inline

Definition at line 179 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
void fst::LabelReachable< Arc, Accumulator, D >::Relabel ( MutableFst< Arc > *  fst,
bool  relabel_input 
)
inline

Definition at line 188 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
void fst::LabelReachable< Arc, Accumulator, D >::RelabelPairs ( std::vector< std::pair< Label, Label >> *  pairs,
bool  avoid_collisions = false 
)
inline

Definition at line 214 of file label-reachable.h.

template<class Arc, class Accumulator = DefaultAccumulator<Arc>, class D = LabelReachableData<typename Arc::Label>>
void fst::LabelReachable< Arc, Accumulator, D >::SetState ( StateId  s,
StateId  aiter_s = kNoStateId 
)
inline

Definition at line 238 of file label-reachable.h.


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