Lines Matching full:stateid
42 PdtStack<typename Arc::StateId, typename Arc::Label> *stack;
43 PdtStateTable<typename Arc::StateId, typename Arc::StateId> *state_table;
48 PdtStack<typename Arc::StateId, typename Arc::Label> *s = 0,
49 PdtStateTable<typename Arc::StateId, typename Arc::StateId> *st = 0)
81 typedef typename A::StateId StateId;
82 typedef StateId StackId;
83 typedef PdtStateTuple<StateId, StackId> StateTuple;
90 stack_(opts.stack ? opts.stack: new PdtStack<StateId, Label>(parens)),
92 new PdtStateTable<StateId, StackId>()),
107 stack_(new PdtStack<StateId, Label>(*impl.stack_)),
108 state_table_(new PdtStateTable<StateId, StackId>()),
125 StateId Start() {
127 StateId s = fst_->Start();
131 StateId start = state_table_->FindState(tuple);
137 Weight Final(StateId s) {
149 size_t NumArcs(StateId s) {
156 size_t NumInputEpsilons(StateId s) {
162 size_t NumOutputEpsilons(StateId s) {
168 void InitArcIterator(StateId s, ArcIteratorData<A> *data) {
176 void ExpandState(StateId s) {
199 const PdtStateTable<StateId, StackId> &GetStateTable() const {
207 PdtStateTable<StateId, StackId> *state_table_;
233 typedef typename A::StateId StateId;
234 typedef StateId StackId;
260 virtual void InitArcIterator(StateId s, ArcIteratorData<A> *data) const {
268 const PdtStateTable<StateId, StackId> &GetStateTable() const {
295 typedef typename A::StateId StateId;
297 ArcIterator(const ExpandFst<A> &fst, StateId s)
339 typedef typename A::StateId StateId;
341 typedef StateId StackId;
343 typedef PdtStateTable<StateId, StackId> StateTable;
364 PdtShortestPathOptions<A, FifoQueue<StateId> >(true, false));
399 bool operator()(StateId s1, StateId s2) const {
432 : public ShortestFirstQueue<StateId, StackCompare> {
435 const PdtStateTable<StateId, StackId> &st,
439 : ShortestFirstQueue<StateId, StackCompare>(
445 Weight DistanceToDest(StateId state, StateId source) const;
446 uint8 Flags(StateId s) const;
447 void SetFlags(StateId s, uint8 flags, uint8 mask);
448 Weight Distance(StateId s) const;
449 void SetDistance(StateId s, Weight w);
450 Weight FinalDistance(StateId s) const;
451 void SetFinalDistance(StateId s, Weight w);
452 StateId SourceState(StateId s) const;
453 void SetSourceState(StateId s, StateId p);
454 void AddStateAndEnqueue(StateId s);
455 void Relax(StateId s, const A &arc, Weight w);
456 bool PruneArc(StateId s, const A &arc);
458 void ProcFinal(StateId s);
459 bool ProcNonParen(StateId s, const A &arc, bool add_arc);
460 bool ProcOpenParen(StateId s, const A &arc, StackId si, StackId nsi);
461 bool ProcCloseParen(StateId s, const A &arc);
462 void ProcDestStates(StateId s, StackId si);
475 vector<StateId> sources_; // PDT source state for each expanded state
477 typedef PdtShortestPath<Arc, FifoQueue<StateId> > SP;
487 typedef unordered_map<StateId, Weight> DestMap;
498 StateId cached_source_;
499 slist<pair<StateId, Weight> > cached_dest_list_;
528 StateId s = siter.Value();
547 typename A::Weight PrunedExpand<A>::DistanceToDest(StateId source,
548 StateId dest) const {
557 uint8 PrunedExpand<A>::Flags(StateId s) const {
563 void PrunedExpand<A>::SetFlags(StateId s, uint8 flags, uint8 mask) {
572 typename A::Weight PrunedExpand<A>::Distance(StateId s) const {
578 void PrunedExpand<A>::SetDistance(StateId s, Weight w) {
586 typename A::Weight PrunedExpand<A>::FinalDistance(StateId s) const {
592 void PrunedExpand<A>::SetFinalDistance(StateId s, Weight w) {
599 typename A::StateId PrunedExpand<A>::SourceState(StateId s) const {
605 void PrunedExpand<A>::SetSourceState(StateId s, StateId p) {
613 void PrunedExpand<A>::AddStateAndEnqueue(StateId s) {
631 void PrunedExpand<A>::Relax(StateId s, const A &arc, Weight fd) {
647 bool PrunedExpand<A>::PruneArc(StateId s, const A &arc) {
660 StateId dest = set_iter.Element();
672 for (typename slist<pair<StateId, Weight> >::const_iterator iter =
690 StateId s = efst_.Start();
705 PdtStateTuple<StateId, StackId> tuple(rfst_.Start() - 1, 0);
715 void PrunedExpand<A>::ProcFinal(StateId s) {
725 bool PrunedExpand<A>::ProcNonParen(StateId s, const A &arc, bool add_arc) {
745 bool PrunedExpand<A>::ProcOpenParen(StateId s, const A &arc, StackId si,
752 StateId ns = arc.nextstate;
758 slist<StateId> sources;
764 for (typename slist<StateId>::const_iterator sources_iter = sources.begin();
767 StateId source = *sources_iter;
775 PdtStateTuple<StateId, StackId> tuple(meta_arc.nextstate, si);
814 bool PrunedExpand<A>::ProcCloseParen(StateId s, const A &arc) {
831 void PrunedExpand<A>::ProcDestStates(StateId s, StackId si) {
847 StateId dest_state = set_iter.Element();
857 PdtStateTuple<StateId, StackId> tuple(arc.nextstate, stack_.Pop(si));
884 StateId s = queue_.Head();
939 typedef typename Arc::StateId StateId;