15 template <
template <
class> class
16 ,
class>
class TaskOneT
17 , template <template <class> class
18 , class> class TaskTwoT
19 , template <class> class DataT
26 TaskOneT< DataT, ArcT>
27 , TaskTwoT< DataT, ArcT>
39 template <
template <
class> class
40 ,
class>
class TaskOneT
41 , template <template <class> class
42 , class> class TaskTwoT
43 , template <template <class> class
44 , class> class TaskThreeT
45 , template <class> class DataT
52 TaskOneT< DataT, ArcT>
53 , TaskTwoT< DataT, ArcT>
54 , TaskThreeT< DataT, ArcT>
60 #ifdef KENLM_MAX_ORDER 72 template<
template <
template <
class,
class> class
74 ,
class>
class RunTaskT
75 , template <class, class> class DataT
79 using namespace lm::ngram;
83 ModelType kenmt = ucam::util::detectkenlm
88 (RunTaskT<DataT, ProbingModel, ArcT>(rg));
91 (RunTaskT<DataT, RestProbingModel, ArcT>(rg));
94 (RunTaskT<DataT, TrieModel, ArcT>(rg));
97 (RunTaskT<DataT, QuantTrieModel, ArcT>(rg));
100 (RunTaskT<DataT, ArrayTrieModel, ArcT>(rg));
102 case QUANT_ARRAY_TRIE:
103 (RunTaskT<DataT, QuantArrayTrieModel, ArcT>(rg));
107 (RunTaskT<DataT, lm::np::Model, ArcT>(rg));
110 std::cerr <<
"Unsuported format: KENLM_NPLM. Did you compile NPLM library?" << std::endl;
Convenience wrapper class that can kick off three type of executions: singlethreaded, multithreaded, or server, triggered by program options. Possibly multithreading with 1 thread would do, but I keep both implementations as any plain bug that might arise will be easier to trace down with a single thread execution. The class is templated three functors, one for each type of execution Note that the details are up to the each of these functors.
Convenience wrapper class that can kick off two type of executions: single or multithreaded, triggered by program options. Possibly multithreading with 1 thread would do, but I keep both implementations as any plain bug that might arise will be easier to trace down with a serialized execution (threadpool uses two, actually). The class is templated with two classes, one for single threading and another for multithreading. Note that the multithreading details are up to the second templated class.
std::string const kLmLoad
Contains wrapper class RegistryPO, which uses boost::program_options to parse parameters, and provides methods to access them.