fst-decl.h revision a8a167d6883e4acee42619e0bbfd811984f6e94d
12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// fst-decl.h
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)//
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Licensed under the Apache License, Version 2.0 (the "License");
45d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// you may not use this file except in compliance with the License.
5a3f7b4e666c476898878fa745f637129375cd889Ben Murdoch// You may obtain a copy of the License at
65d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)//
7b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)//      http://www.apache.org/licenses/LICENSE-2.0
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)//
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Unless required by applicable law or agreed to in writing, software
105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// distributed under the License is distributed on an "AS IS" BASIS,
1190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch// See the License for the specific language governing permissions and
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// limitations under the License.
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)//
152a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)//
165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// \file
17a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)// This file contains declarations of classes in the OpenFst library.
187d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
197d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#ifndef FST_LIB_FST_DECL_H__
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#define FST_LIB_FST_DECL_H__
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
22a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)namespace fst {
23a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)
24a3f7b4e666c476898878fa745f637129375cd889Ben Murdochclass SymbolTable;
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class SymbolTableIterator;
263551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
273551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)class LogWeight;
285d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)class TropicalWeight;
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class LogArc;
312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)class StdArc;
322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)template <class A> class ConstFst;
342a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)template <class A> class ExpandedFst;
357d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class Fst;
367d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class MutableFst;
377d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class VectorFst;
38a3f7b4e666c476898878fa745f637129375cd889Ben Murdoch
39ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochtemplate <class A, class C> class ArcSortFst;
403551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)template <class A> class ClosureFst;
417d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class ComposeFst;
425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)template <class A> class ConcatFst;
435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)template <class A> class DeterminizeFst;
448bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)template <class A> class DeterminizeFst;
457d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class DifferenceFst;
467d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class IntersectFst;
475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)template <class A> class InvertFst;
485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)template <class A, class B, class C> class MapFst;
497d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class ProjectFst;
507d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class A> class RelabelFst;
51a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)template <class A> class ReplaceFst;
52f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)template <class A> class RmEpsilonFst;
53f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)template <class A> class UnionFst;
54f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
55f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)template <class T, class Compare> class Heap;
56f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
57f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)typedef ConstFst<StdArc> StdConstFst;
58a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)typedef ExpandedFst<StdArc> StdExpandedFst;
59a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)typedef Fst<StdArc> StdFst;
60a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)typedef MutableFst<StdArc> StdMutableFst;
617d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)typedef VectorFst<StdArc> StdVectorFst;
627d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)
637d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)template <class C> class StdArcSortFst;
647d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)typedef ClosureFst<StdArc> StdClosureFst;
65a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef ComposeFst<StdArc> StdComposeFst;
66a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef ConcatFst<StdArc> StdConcatFst;
67a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)typedef DeterminizeFst<StdArc> StdDeterminizeFst;
6868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)typedef DifferenceFst<StdArc> StdDifferenceFst;
6968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)typedef IntersectFst<StdArc> StdIntersectFst;
7068043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)typedef InvertFst<StdArc> StdInvertFst;
7168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)typedef ProjectFst<StdArc> StdProjectFst;
7268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)typedef RelabelFst<StdArc> StdRelabelFst;
7368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)typedef ReplaceFst<StdArc> StdReplaceFst;
744e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)typedef RmEpsilonFst<StdArc> StdRmEpsilonFst;
754e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)typedef UnionFst<StdArc> StdUnionFst;
764e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
774e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)}
784e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
794e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif  // FST_LIB_FST_DECL_H__
804e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)