HFST - Helsinki Finite-State Transducer Technology API  version 3.7.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
hfst_apply_schemas.h
Go to the documentation of this file.
1 // This program is free software: you can redistribute it and/or modify
2 // it under the terms of the GNU General Public License as published by
3 // the Free Software Foundation, version 3 of the License.
4 //
5 // This program is distributed in the hope that it will be useful,
6 // but WITHOUT ANY WARRANTY; without even the implied warranty of
7 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
8 // GNU General Public License for more details.
9 //
10 // You should have received a copy of the GNU General Public License
11 // along with this program. If not, see <http://www.gnu.org/licenses/>.
12 
16 HfstTransducer &apply(
17 #if HAVE_SFST
18  SFST::Transducer * (*sfst_funct)(SFST::Transducer *),
19 #endif
20 #if HAVE_OPENFST
21  fst::StdVectorFst * (*tropical_ofst_funct)(fst::StdVectorFst *),
22 #if HAVE_OPENFST_LOG
23  hfst::implementations::LogFst * (*log_ofst_funct)
24  (hfst::implementations::LogFst *),
25 #endif
26 #endif
27 #if HAVE_FOMA
28  fsm * (*foma_funct)(fsm *),
29 #endif
30  /* Add your library here */
31  //#if HAVE_MY_TRANSDUCER_LIBRARY
32  //my_namespace::MyFst * (*my_transducer_library_funct)(my_namespace::MyFst *),
33  //#endif
34  bool dummy /* makes sure there is always a parameter after the
35  function pointer parameters, so commas between parameters
36  are easier to handle */
37 );
38 
39 HfstTransducer &apply(
40 #if HAVE_SFST
41  SFST::Transducer * (*sfst_funct)(SFST::Transducer *, unsigned int),
42 #endif
43 #if HAVE_OPENFST
44  fst::StdVectorFst * (*tropical_ofst_funct)(fst::StdVectorFst *, unsigned int),
45 #if HAVE_OPENFST_LOG
46  hfst::implementations::LogFst * (*log_ofst_funct)
47  (hfst::implementations::LogFst *, unsigned int),
48 #endif
49 #endif
50 #if HAVE_FOMA
51  fsm * (*foma_funct)(fsm *, unsigned int),
52 #endif
53  /* Add your library here */
54  //#if HAVE_MY_TRANSDUCER_LIBRARY
55  //my_namespace::MyFst * (*my_transducer_library_funct)
56  //(my_namespace::MyFst *, unsigned int),
57  //#endif
58  unsigned int n);
59 
60 HfstTransducer &apply(
61 #if HAVE_SFST
62  SFST::Transducer * (*sfst_funct)(SFST::Transducer *, String, String),
63 #endif
64 #if HAVE_OPENFST
65  fst::StdVectorFst * (*tropical_ofst_funct)(fst::StdVectorFst *,String,
66  String),
67 #if HAVE_OPENFST_LOG
68  hfst::implementations::LogFst * (*log_ofst_funct)
69  (hfst::implementations::LogFst *,
70  String,String),
71 #endif
72 #endif
73 #if HAVE_FOMA
74  fsm * (*foma_funct)(fsm *, String, String),
75 #endif
76  /* Add your library here */
77  //#if HAVE_MY_TRANSDUCER_LIBRARY
78  //my_namespace::MyFst * (*my_transducer_library_funct)
79  // (my_namespace::MyFst *, String, String),
80  //#endif
81  String k1, String k2);
82 
83 HfstTransducer &apply(
84 #if HAVE_SFST
85  SFST::Transducer * (*sfst_funct)(SFST::Transducer *,
86  SFST::Transducer *),
87 #endif
88 #if HAVE_OPENFST
89  fst::StdVectorFst * (*tropical_ofst_funct)(fst::StdVectorFst *,
90  fst::StdVectorFst *),
91 #if HAVE_OPENFST_LOG
92  hfst::implementations::LogFst * (*log_ofst_funct)
93  (hfst::implementations::LogFst *,
94  hfst::implementations::LogFst *),
95 #endif
96 #endif
97 #if HAVE_FOMA
98  fsm * (*foma_funct)(fsm *,
99  fsm *),
100 #endif
101  /* Add your library here */
102  //#if HAVE_MY_TRANSDUCER_LIBRARY
103  //my_namespace::MyFst * (*my_transducer_library_funct)
104  // (my_namespace::MyFst *, my_namespace::MyFst *),
105  //#endif
106  HfstTransducer &another, bool harmonize );
std::string String
A UTF-8 symbol in a transition.
Definition: HfstSymbolDefs.h:60