Public Types | Public Member Functions

fst::PushLabelsComposeFilter< F, M1, M2, MT > Class Template Reference

#include <fst/lookahead-filter.h>

Collaboration diagram for fst::PushLabelsComposeFilter< F, M1, M2, MT >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef F::FST1 FST1
typedef F::FST2 FST2
typedef F::Arc Arc
typedef Arc::StateId StateId
typedef Arc::Label Label
typedef Arc::Weight Weight
typedef MultiEpsMatcher
< typename F::Matcher1 > 
Matcher1
typedef MultiEpsMatcher
< typename F::Matcher2 > 
Matcher2
typedef F::FilterState FilterState1
typedef IntegerFilterState
< typename Arc::Label > 
FilterState2
typedef PairFilterState
< FilterState1, FilterState2
FilterState

Public Member Functions

 PushLabelsComposeFilter (const FST1 &fst1, const FST2 &fst2, M1 *matcher1, M2 *matcher2)
 PushLabelsComposeFilter (const PushLabelsComposeFilter< F, M1, M2, MT > &filter, bool safe=false)
FilterState Start () const
void SetState (StateId s1, StateId s2, const FilterState &f)
FilterState FilterArc (Arc *arc1, Arc *arc2) const
 modified below when pushing.
void FilterFinal (Weight *weight1, Weight *weight2) const
Matcher1GetMatcher1 ()
 Return resp matchers. Ownership states with filter.
Matcher2GetMatcher2 ()
uint64 Properties (uint64 iprops) const

Detailed Description

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
class fst::PushLabelsComposeFilter< F, M1, M2, MT >

This filter adds label-pushing to a lookahead composition filter using the LookAheadPrefix() method of the matcher argument. It is templated on an underlying filter, typically the basic lookahead or weight-pushing lookahead filter. Label-pushing in composition matches labels as early as possible based on the lookahead information.

Definition at line 419 of file lookahead-filter.h.


Member Typedef Documentation

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef F::Arc fst::PushLabelsComposeFilter< F, M1, M2, MT >::Arc

Definition at line 423 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef PairFilterState<FilterState1, FilterState2> fst::PushLabelsComposeFilter< F, M1, M2, MT >::FilterState

Definition at line 432 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef F::FilterState fst::PushLabelsComposeFilter< F, M1, M2, MT >::FilterState1

Definition at line 430 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef IntegerFilterState<typename Arc::Label> fst::PushLabelsComposeFilter< F, M1, M2, MT >::FilterState2

Definition at line 431 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef F::FST1 fst::PushLabelsComposeFilter< F, M1, M2, MT >::FST1

Definition at line 421 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef F::FST2 fst::PushLabelsComposeFilter< F, M1, M2, MT >::FST2

Definition at line 422 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef Arc::Label fst::PushLabelsComposeFilter< F, M1, M2, MT >::Label

Definition at line 425 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef MultiEpsMatcher<typename F::Matcher1> fst::PushLabelsComposeFilter< F, M1, M2, MT >::Matcher1

Definition at line 428 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef MultiEpsMatcher<typename F::Matcher2> fst::PushLabelsComposeFilter< F, M1, M2, MT >::Matcher2

Definition at line 429 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef Arc::StateId fst::PushLabelsComposeFilter< F, M1, M2, MT >::StateId

Definition at line 424 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
typedef Arc::Weight fst::PushLabelsComposeFilter< F, M1, M2, MT >::Weight

Definition at line 426 of file lookahead-filter.h.


Constructor & Destructor Documentation

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
fst::PushLabelsComposeFilter< F, M1, M2, MT >::PushLabelsComposeFilter ( const FST1 fst1,
const FST2 fst2,
M1 *  matcher1,
M2 *  matcher2 
) [inline]

Definition at line 434 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
fst::PushLabelsComposeFilter< F, M1, M2, MT >::PushLabelsComposeFilter ( const PushLabelsComposeFilter< F, M1, M2, MT > &  filter,
bool  safe = false 
) [inline]

Definition at line 449 of file lookahead-filter.h.


Member Function Documentation

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
FilterState fst::PushLabelsComposeFilter< F, M1, M2, MT >::FilterArc ( Arc arc1,
Arc arc2 
) const [inline]

modified below when pushing.

Definition at line 489 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
void fst::PushLabelsComposeFilter< F, M1, M2, MT >::FilterFinal ( Weight weight1,
Weight weight2 
) const [inline]

Definition at line 511 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
Matcher1* fst::PushLabelsComposeFilter< F, M1, M2, MT >::GetMatcher1 (  )  [inline]

Return resp matchers. Ownership states with filter.

Definition at line 524 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
Matcher2* fst::PushLabelsComposeFilter< F, M1, M2, MT >::GetMatcher2 (  )  [inline]

Definition at line 525 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
uint64 fst::PushLabelsComposeFilter< F, M1, M2, MT >::Properties ( uint64  iprops  )  const [inline]

Definition at line 527 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
void fst::PushLabelsComposeFilter< F, M1, M2, MT >::SetState ( StateId  s1,
StateId  s2,
const FilterState f 
) [inline]

Definition at line 469 of file lookahead-filter.h.

template<class F, class M1 = LookAheadMatcher<typename F::FST1>, class M2 = M1, MatchType MT = MATCH_BOTH>
FilterState fst::PushLabelsComposeFilter< F, M1, M2, MT >::Start (  )  const [inline]

Definition at line 465 of file lookahead-filter.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines