1 // fstlib.h 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 // 15 // 16 // \page OpenFst - Weighted Finite State Transducers 17 // This is a library for constructing, combining, optimizing, and 18 // searching "weighted finite-state transducers" (FSTs). Weighted 19 // finite-state transducers are automata where each transition has an 20 // input label, an output label, and a weight. The more familiar 21 // finite-state acceptor is represented as a transducer with each 22 // transition's input and output the same. Finite-state acceptors 23 // are used to represent sets of strings (specifically, "regular" or 24 // "rational sets"); finite-state transducers are used to represent 25 // binary relations between pairs of strings (specifically, "rational 26 // transductions"). The weights can be used to represent the cost of 27 // taking a particular transition. 28 // 29 // In this library, the transducers are templated on the Arc 30 // (transition) definition, which allows changing the label, weight, 31 // and state ID sets. Labels and state IDs are restricted to signed 32 // integral types but the weight can be an arbitrary type whose 33 // members satisfy certain algebraic ("semiring") properties. 34 // 35 // For more information, see the OpenFst web site: 36 // http://www.openfst.org. 37 38 // \file 39 // This convenience file includes all other OpenFst header files. 40 41 #ifndef FST_LIB_FSTLIB_H__ 42 #define FST_LIB_FSTLIB_H__ 43 44 // Abstract FST classes 45 #include "fst/lib/fst.h" 46 #include "fst/lib/expanded-fst.h" 47 #include "fst/lib/mutable-fst.h" 48 49 // Concrete FST classes 50 #include "fst/lib/vector-fst.h" 51 #include "fst/lib/const-fst.h" 52 53 // FST algorithms and delayed FST classes 54 #include "fst/lib/arcsort.h" 55 #include "fst/lib/closure.h" 56 #include "fst/lib/compose.h" 57 #include "fst/lib/concat.h" 58 #include "fst/lib/connect.h" 59 #include "fst/lib/determinize.h" 60 #include "fst/lib/difference.h" 61 #include "fst/lib/encode.h" 62 #include "fst/lib/epsnormalize.h" 63 #include "fst/lib/equal.h" 64 #include "fst/lib/equivalent.h" 65 #include "fst/lib/factor-weight.h" 66 #include "fst/lib/intersect.h" 67 #include "fst/lib/invert.h" 68 #include "fst/lib/map.h" 69 #include "fst/lib/minimize.h" 70 #include "fst/lib/project.h" 71 #include "fst/lib/prune.h" 72 #include "fst/lib/push.h" 73 #include "fst/lib/randgen.h" 74 #include "fst/lib/relabel.h" 75 #include "fst/lib/replace.h" 76 #include "fst/lib/reverse.h" 77 #include "fst/lib/reweight.h" 78 #include "fst/lib/rmepsilon.h" 79 #include "fst/lib/rmfinalepsilon.h" 80 #include "fst/lib/shortest-distance.h" 81 #include "fst/lib/shortest-path.h" 82 #include "fst/lib/synchronize.h" 83 #include "fst/lib/topsort.h" 84 #include "fst/lib/union.h" 85 #include "fst/lib/verify.h" 86 87 #endif // FST_LIB_FSTLIB_H__ 88