• Home
  • Raw
  • Download

Lines Matching refs:Arc

43 template <class Arc>
44 void Replace(const vector<pair<typename Arc::Label, const Fst<Arc>* > >&,
45 MutableFst<Arc> *, typename Arc::Label, bool);
54 template <class Arc>
57 typedef typename Arc::Label Label;
58 typedef typename Arc::Weight Weight;
59 typedef typename Arc::StateId StateId;
61 typedef pair<Label, const Fst<Arc>*> FstPair;
62 typedef pair<Label, MutableFst<Arc>*> MutableFstPair;
74 ReplaceUtil(const vector<const Fst<Arc> *> &fst_array,
171 bool GetTopOrder(const Fst<Arc> &fst, vector<Label> *toporder) const;
179 vector<const Fst<Arc> *> fst_array_; // Fst per ID
180 vector<MutableFst<Arc> *> mutable_fst_array_; // MutableFst per ID
183 mutable VectorFst<Arc> depfst_; // Fst ID dependencies
191 template <class Arc>
192 ReplaceUtil<Arc>::ReplaceUtil( in ReplaceUtil()
204 MutableFst<Arc> *fst = fst_pairs[i].second; in ReplaceUtil()
215 template <class Arc>
216 ReplaceUtil<Arc>::ReplaceUtil( in ReplaceUtil()
227 const Fst<Arc> *fst = fst_pairs[i].second; in ReplaceUtil()
237 template <class Arc>
238 ReplaceUtil<Arc>::ReplaceUtil( in ReplaceUtil()
239 const vector<const Fst<Arc> *> &fst_array, in ReplaceUtil()
257 template <class Arc>
258 void ReplaceUtil<Arc>::GetDependencies(bool stats) const { in GetDependencies()
281 const Fst<Arc> *ifst = fst_array_[i]; in GetDependencies()
284 for (StateIterator<Fst<Arc> > siter(*ifst); !siter.Done(); siter.Next()) { in GetDependencies()
291 for (ArcIterator<Fst<Arc> > aiter(*ifst, s); in GetDependencies()
295 const Arc& arc = aiter.Value(); in GetDependencies()
301 depfst_.AddArc(i, Arc(arc.olabel, arc.olabel, Weight::One(), j)); in GetDependencies()
314 SccVisitor<Arc> scc_visitor(0, &depaccess_, 0, &depprops_); in GetDependencies()
318 template <class Arc>
319 void ReplaceUtil<Arc>::UpdateStats(Label j) { in UpdateStats()
365 template <class Arc>
366 void ReplaceUtil<Arc>::CheckMutableFsts() { in CheckMutableFsts()
372 mutable_fst_array_.push_back(new VectorFst<Arc>(*fst_array_[i])); in CheckMutableFsts()
380 template <class Arc>
381 void ReplaceUtil<Arc>::Connect() { in Connect()
392 MutableFst<Arc> *fst = mutable_fst_array_[i]; in Connect()
402 template <class Arc>
403 bool ReplaceUtil<Arc>::GetTopOrder(const Fst<Arc> &fst, in GetTopOrder()
409 TopOrderVisitor<Arc> top_order_visitor(&order, &acyclic); in GetTopOrder()
423 template <class Arc>
424 void ReplaceUtil<Arc>::ReplaceLabels(const vector<Label> &labels) { in ReplaceLabels()
433 VectorFst<Arc> pfst(depfst_); in ReplaceLabels()
435 vector<Arc> arcs; in ReplaceLabels()
436 for (ArcIterator< VectorFst<Arc> > aiter(pfst, i); in ReplaceLabels()
438 const Arc &arc = aiter.Value(); in ReplaceLabels()
459 for (ArcIterator< VectorFst<Arc> > aiter(pfst, s); in ReplaceLabels()
461 const Arc &arc = aiter.Value(); in ReplaceLabels()
463 const Fst<Arc> *fst = fst_array_[arc.nextstate]; in ReplaceLabels()
469 const Fst<Arc> *fst = fst_array_[s]; in ReplaceLabels()
477 template <class Arc>
478 void ReplaceUtil<Arc>::ReplaceBySize(size_t nstates, size_t narcs, in ReplaceBySize()
501 template <class Arc>
502 void ReplaceUtil<Arc>::ReplaceByInstances(size_t ninstances) { in ReplaceByInstances()
521 template <class Arc>
522 void ReplaceUtil<Arc>::GetFstPairs(vector<FstPair> *fst_pairs) { in GetFstPairs()
527 const Fst<Arc> *fst = fst_array_[i]; in GetFstPairs()
534 template <class Arc>
535 void ReplaceUtil<Arc>::GetMutableFstPairs( in GetMutableFstPairs()
541 MutableFst<Arc> *fst = mutable_fst_array_[i]; in GetMutableFstPairs()