Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/moses-smt/mosesdecoder.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSid Jain <sija@microsoft.com>2020-10-26 11:36:23 +0300
committerSid Jain <sija@microsoft.com>2020-10-26 11:36:23 +0300
commit3cc2f4fde68dffee9904cbee4dc4910b38c3f530 (patch)
treee4435be5b238ebee4c98386f0ca1f502c2e83ba7
parent47129bd4bcbacd36d358d43039eaf641f2231b35 (diff)
Dynamic loading
-rw-r--r--contrib/other-builds/dllImpCheck/Program.cs38
-rw-r--r--contrib/other-builds/moses2/moses2.vcxproj.filters612
-rw-r--r--moses2/DLLEntryApi.cpp39
-rw-r--r--moses2/Moses2Wrapper.cpp10
-rw-r--r--moses2/Moses2Wrapper.h6
5 files changed, 400 insertions, 305 deletions
diff --git a/contrib/other-builds/dllImpCheck/Program.cs b/contrib/other-builds/dllImpCheck/Program.cs
new file mode 100644
index 000000000..4fbd38696
--- /dev/null
+++ b/contrib/other-builds/dllImpCheck/Program.cs
@@ -0,0 +1,38 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Linq;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace dllImpCheck
+{
+ class Program
+ {
+
+ [DllImport("D:/moses-mstranslator/contrib/other-builds/moses2/x64/Debug/moses2.dll", EntryPoint = "getEngineVersion1")]
+ private static extern int getEngineVersion1();
+ [DllImport("D:/moses-mstranslator/contrib/other-builds/moses2/x64/Debug/moses2.dll", EntryPoint = "CreateMosesSystem")]
+ private static extern IntPtr CreateMosesSystem(string s);
+ [DllImport("D:/moses-mstranslator/contrib/other-builds/moses2/x64/Debug/moses2.dll", CallingConvention = CallingConvention.StdCall, EntryPoint = "GetMosesSystem")]
+ private static extern int GetMosesSystem(string s,ref IntPtr system);
+ [DllImport("D:/moses-mstranslator/contrib/other-builds/moses2/x64/Debug/moses2.dll", EntryPoint = "MosesTranslate")]
+ private static extern int MosesTranslate(IntPtr model,int id,string input,StringBuilder output,int output_len);
+ [DllImport("D:/moses-mstranslator/contrib/other-builds/moses2/x64/Debug/moses2.dll", EntryPoint = "ReleaseSystem")]
+ private static extern void ReleaseSystem(IntPtr model);
+ static void Main(string[] args)
+ {
+ string a = "D:/moses-mstranslator/test_sentence_with_candidates/moses_mspt.ini";
+ string cand = "फ ो ट ो ं @@@ ट ||| a ||| 0.5338410658500136 $$$ ट ||| c ||| 0.10587171128910133 $$$ ट ||| m ||| 0.7056508746775306 $$$ ं ||| l ||| 0.29237797398236876 $$$ ं ||| o ||| 0.4026301817948226 $$$ ं ||| r ||| 0.20594041196734436 $$$ फ ||| c ||| 0.46792456587433573 $$$ फ ||| g ||| 0.43855815762641204 $$$ फ ||| x ||| 0.7077570324853759 $$$ ो ||| h ||| 0.9869239425073358 $$$ ो ||| i ||| 0.6660016809625412 $$$ ो ||| h ||| 0.8425506301302961";
+ IntPtr system = new IntPtr(0);
+ int v = GetMosesSystem(a,ref system);
+ StringBuilder output = new StringBuilder();
+ int error_code = MosesTranslate(system,1234678,cand,output,50);
+ Console.WriteLine(output);
+
+ }
+ }
+}
+
diff --git a/contrib/other-builds/moses2/moses2.vcxproj.filters b/contrib/other-builds/moses2/moses2.vcxproj.filters
index 70a76ce23..83f43130c 100644
--- a/contrib/other-builds/moses2/moses2.vcxproj.filters
+++ b/contrib/other-builds/moses2/moses2.vcxproj.filters
@@ -67,508 +67,516 @@
<Filter Include="Source Files\ProbingPT">
<UniqueIdentifier>{8f10d9c1-66d4-4490-b310-d3f4973bad29}</UniqueIdentifier>
</Filter>
+ <Filter Include="Source Files\TranslationModel\Dynamic">
+ <UniqueIdentifier>{8f2f68ba-2b5e-4d2c-92a7-6ece71df74ba}</UniqueIdentifier>
+ </Filter>
</ItemGroup>
<ItemGroup>
- <ClCompile Include="..\..\..\..\util\exception.cc">
- <Filter>Source Files\util</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\..\util\float_to_string.cc">
- <Filter>Source Files\util</Filter>
- </ClCompile>
- <ClCompile Include="..\..\..\..\util\integer_to_string.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\Distortion.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\bignum.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\ExampleStatefulFF.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\bignum-dtoa.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\ExampleStatelessFF.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\cached-powers.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\FeatureFunction.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\diy-fp.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\FeatureFunctions.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\double-conversion.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\FeatureRegistry.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\fast-dtoa.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\FFState.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\fixed-dtoa.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\PhrasePenalty.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\double-conversion\strtod.cc">
- <Filter>Source Files\util\double-conversion</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\PointerState.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\murmur_hash.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\StatefulFeatureFunction.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\pool.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\StatelessFeatureFunction.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\random.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\WordPenalty.cpp">
+ <Filter>Source Files\FF</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\usage.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\OSM\KenOSM.cpp">
+ <Filter>Source Files\FF\OSM</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\Distortion.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\OSM\OpSequenceModel.cpp">
+ <Filter>Source Files\FF\OSM</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\FeatureFunction.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\OSM\osmHyp.cpp">
+ <Filter>Source Files\FF\OSM</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\FeatureFunctions.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\BidirectionalReorderingState.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\FeatureRegistry.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\HReorderingBackwardState.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\FFState.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\HReorderingForwardState.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\PhrasePenalty.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\LexicalReordering.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\PointerState.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\LRModel.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\StatefulFeatureFunction.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\LRState.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\StatelessFeatureFunction.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\PhraseBasedReorderingState.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\WordPenalty.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\FF\LexicalReordering\ReorderingStack.cpp">
+ <Filter>Source Files\FF\LexicalReordering</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Bitmap.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Util2.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Bitmaps.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Timer.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Factor.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\ThreadPool.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\FactorCollection.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Range.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\InputFileStream.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Parameter.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Matrix.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\OutputFileStream.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\OutputFileStream.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Matrix.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Parameter.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\InputFileStream.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Range.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\FactorCollection.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\ThreadPool.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Factor.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Timer.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Bitmaps.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\legacy\Util2.cpp">
+ <ClCompile Include="..\..\..\moses2\legacy\Bitmap.cpp">
<Filter>Source Files\legacy</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\AllOptions.cpp">
- <Filter>Source Files\parameters</Filter>
+ <ClCompile Include="..\..\..\moses2\LM\GPULM.cpp">
+ <Filter>Source Files\Moses2LM</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\BookkeepingOptions.cpp">
- <Filter>Source Files\parameters</Filter>
+ <ClCompile Include="..\..\..\moses2\LM\KENLM.cpp">
+ <Filter>Source Files\Moses2LM</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\ContextParameters.cpp">
+ <ClCompile Include="..\..\..\moses2\LM\KENLMBatch.cpp">
+ <Filter>Source Files\Moses2LM</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\moses2\LM\LanguageModel.cpp">
+ <Filter>Source Files\Moses2LM</Filter>
+ </ClCompile>
+ <ClCompile Include="..\..\..\moses2\parameters\AllOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\CubePruningOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\BookkeepingOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\InputOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\ContextParameters.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\LMBR_Options.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\CubePruningOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\MBR_Options.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\InputOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\NBestOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\LMBR_Options.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\OOVHandlingOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\MBR_Options.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\OptionsBaseClass.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\NBestOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\ReorderingOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\OOVHandlingOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\ReportingOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\OptionsBaseClass.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\SearchOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\ReorderingOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\ServerOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\ReportingOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\parameters\SyntaxOptions.cpp">
+ <ClCompile Include="..\..\..\moses2\parameters\SearchOptions.cpp">
<Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\ActiveChart.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\parameters\SyntaxOptions.cpp">
+ <Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Hypothesis.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\InputPaths.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\InputPath.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Hypothesis.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\InputPaths.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\InputPath.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Manager.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Manager.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Misc.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\PhraseImpl.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\PhraseImpl.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\ReorderingConstraint.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Sentence.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Search.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Stack.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Sentence.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Stacks.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\SentenceWithCandidates.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\TargetPhraseImpl.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\TargetPhraseImpl.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\TargetPhrases.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\TargetPhrases.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\Word.cpp">
- <Filter>Source Files\SCFG</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\TrellisPath.cpp">
+ <Filter>Source Files\PhraseBased</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\server\Server.cpp">
- <Filter>Source Files\server</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Normal\Search.cpp">
+ <Filter>Source Files\PhraseBased\Normal</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\server\TranslationRequest.cpp">
- <Filter>Source Files\server</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Normal\Stack.cpp">
+ <Filter>Source Files\PhraseBased\Normal</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\server\Translator.cpp">
- <Filter>Source Files\server</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\Normal\Stacks.cpp">
+ <Filter>Source Files\PhraseBased\Normal</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\AlignmentInfo.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\CubePruningMiniStack\Misc.cpp">
+ <Filter>Source Files\PhraseBased\CubePruningMiniStack</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\AlignmentInfoCollection.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\CubePruningMiniStack\Search.cpp">
+ <Filter>Source Files\PhraseBased\CubePruningMiniStack</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\ArcLists.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\PhraseBased\CubePruningMiniStack\Stack.cpp">
+ <Filter>Source Files\PhraseBased\CubePruningMiniStack</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\EstimatedScores.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\hash.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\HypothesisBase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\InputFileStream.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\HypothesisColl.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\probing_hash_utils.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\InputPathBase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\querying.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\InputPathsBase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\storing.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\InputType.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\util.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Main.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\probingpt\vocabid.cpp">
+ <Filter>Source Files\ProbingPT</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\ManagerBase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\ActiveChart.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\MemPool.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Hypothesis.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Phrase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\InputPath.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\pugixml.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\InputPaths.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Recycler.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Manager.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Scores.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Misc.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SubPhrase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\PhraseImpl.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\System.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Sentence.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TargetPhrase.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Stack.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TranslationTask.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Stacks.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TrellisPaths.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\TargetPhraseImpl.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TypeDef.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\TargetPhrases.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Vector.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\Word.cpp">
+ <Filter>Source Files\SCFG</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Weights.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\nbest\KBestExtractor.cpp">
+ <Filter>Source Files\SCFG\nbest</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\Word.cpp">
- <Filter>Source Files</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\nbest\NBest.cpp">
+ <Filter>Source Files\SCFG\nbest</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\scoped.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\nbest\NBestColl.cpp">
+ <Filter>Source Files\SCFG\nbest</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TranslationModel\Memory\PhraseTableMemory.cpp">
- <Filter>Source Files\TranslationModel\Memory</Filter>
+ <ClCompile Include="..\..\..\moses2\SCFG\nbest\NBests.cpp">
+ <Filter>Source Files\SCFG\nbest</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TranslationModel\PhraseTable.cpp">
+ <ClCompile Include="..\..\..\moses2\TranslationModel\PhraseTable.cpp">
<Filter>Source Files\TranslationModel</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TranslationModel\Transliteration.cpp">
+ <ClCompile Include="..\..\..\moses2\TranslationModel\ProbingPT.cpp">
<Filter>Source Files\TranslationModel</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TranslationModel\UnknownWordPenalty.cpp">
+ <ClCompile Include="..\..\..\moses2\TranslationModel\UnknownWordPenalty.cpp">
<Filter>Source Files\TranslationModel</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\BidirectionalReorderingState.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\moses2\TranslationModel\Transliteration.cpp">
+ <Filter>Source Files\TranslationModel</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\HReorderingBackwardState.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\moses2\TranslationModel\Memory\PhraseTableMemory.cpp">
+ <Filter>Source Files\TranslationModel\Memory</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\HReorderingForwardState.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\bignum.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\LexicalReordering.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\bignum-dtoa.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\LRModel.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\cached-powers.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\LRState.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\diy-fp.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\PhraseBasedReorderingState.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\fast-dtoa.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\LexicalReordering\ReorderingStack.cpp">
- <Filter>Source Files\FF\LexicalReordering</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\fixed-dtoa.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\OSM\KenOSM.cpp">
- <Filter>Source Files\FF\OSM</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\strtod.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\OSM\OpSequenceModel.cpp">
- <Filter>Source Files\FF\OSM</Filter>
+ <ClCompile Include="..\..\..\util\double-conversion\double-conversion.cc">
+ <Filter>Source Files\util\double-conversion</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\OSM\osmHyp.cpp">
- <Filter>Source Files\FF\OSM</Filter>
+ <ClCompile Include="..\..\..\util\bit_packing.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\file.cc">
+ <ClCompile Include="..\..\..\util\ersatz_progress.cc">
<Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\file_piece.cc">
+ <ClCompile Include="..\..\..\util\exception.cc">
<Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\mmap.cc">
+ <ClCompile Include="..\..\..\util\file.cc">
<Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\parallel_read.cc">
+ <ClCompile Include="..\..\..\util\file_piece.cc">
<Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\read_compressed.cc">
+ <ClCompile Include="..\..\..\util\float_to_string.cc">
<Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\string_piece.cc">
+ <ClCompile Include="..\..\..\util\integer_to_string.cc">
<Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Hypothesis.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\mmap.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\InputPath.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\murmur_hash.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\InputPaths.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\parallel_read.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Manager.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\pool.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\PhraseImpl.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\random.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\ReorderingConstraint.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\read_compressed.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Search.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\scoped.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Sentence.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\string_piece.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\TargetPhraseImpl.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\util\usage.cc">
+ <Filter>Source Files\util</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\TargetPhrases.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\moses2\AlignmentInfo.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\TrellisPath.cpp">
- <Filter>Source Files\PhraseBased</Filter>
+ <ClCompile Include="..\..\..\moses2\AlignmentInfoCollection.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\bhiksha.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\ArcLists.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\binary_format.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\EstimatedScores.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\config.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\HypothesisBase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\lm_exception.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\HypothesisColl.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\model.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\InputPathBase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\quantize.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\InputPathsBase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\read_arpa.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\InputType.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\search_hashed.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\Main.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\search_trie.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\ManagerBase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\sizes.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\MemPool.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\trie.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\Phrase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\trie_sort.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\pugixml.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\value_build.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\Recycler.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\virtual_interface.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\Scores.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\lm\vocab.cc">
- <Filter>Source Files\lm</Filter>
+ <ClCompile Include="..\..\..\moses2\System.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\ersatz_progress.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\TargetPhrase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\util\bit_packing.cc">
- <Filter>Source Files\util</Filter>
+ <ClCompile Include="..\..\..\moses2\TranslationTask.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Normal\Search.cpp">
- <Filter>Source Files\PhraseBased\Normal</Filter>
+ <ClCompile Include="..\..\..\moses2\TrellisPaths.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Normal\Stack.cpp">
- <Filter>Source Files\PhraseBased\Normal</Filter>
+ <ClCompile Include="..\..\..\moses2\TypeDef.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\Normal\Stacks.cpp">
- <Filter>Source Files\PhraseBased\Normal</Filter>
+ <ClCompile Include="..\..\..\moses2\Vector.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\CubePruningMiniStack\Misc.cpp">
- <Filter>Source Files\PhraseBased\CubePruningMiniStack</Filter>
+ <ClCompile Include="..\..\..\moses2\Weights.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\CubePruningMiniStack\Search.cpp">
- <Filter>Source Files\PhraseBased\CubePruningMiniStack</Filter>
+ <ClCompile Include="..\..\..\moses2\Word.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\PhraseBased\CubePruningMiniStack\Stack.cpp">
- <Filter>Source Files\PhraseBased\CubePruningMiniStack</Filter>
+ <ClCompile Include="..\..\..\moses2\SubPhrase.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\LM\GPULM.cpp">
- <Filter>Source Files\Moses2LM</Filter>
+ <ClCompile Include="..\..\..\lm\bhiksha.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\LM\KENLM.cpp">
- <Filter>Source Files\Moses2LM</Filter>
+ <ClCompile Include="..\..\..\lm\binary_format.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\LM\KENLMBatch.cpp">
- <Filter>Source Files\Moses2LM</Filter>
+ <ClCompile Include="..\..\..\lm\config.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\LM\LanguageModel.cpp">
- <Filter>Source Files\Moses2LM</Filter>
+ <ClCompile Include="..\..\..\lm\lm_exception.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\nbest\KBestExtractor.cpp">
- <Filter>Source Files\SCFG\nbest</Filter>
+ <ClCompile Include="..\..\..\lm\model.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\nbest\NBest.cpp">
- <Filter>Source Files\SCFG\nbest</Filter>
+ <ClCompile Include="..\..\..\lm\quantize.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\nbest\NBestColl.cpp">
- <Filter>Source Files\SCFG\nbest</Filter>
+ <ClCompile Include="..\..\..\lm\read_arpa.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\SCFG\nbest\NBests.cpp">
- <Filter>Source Files\SCFG\nbest</Filter>
+ <ClCompile Include="..\..\..\lm\search_hashed.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\TranslationModel\ProbingPT.cpp">
- <Filter>Source Files\TranslationModel</Filter>
+ <ClCompile Include="..\..\..\lm\search_trie.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\querying.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\lm\sizes.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\storing.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\lm\trie.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\vocabid.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\lm\trie_sort.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\util.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\lm\value_build.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\probing_hash_utils.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\lm\virtual_interface.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\InputFileStream.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\lm\vocab.cc">
+ <Filter>Source Files\lm</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\probingpt\hash.cpp">
- <Filter>Source Files\ProbingPT</Filter>
+ <ClCompile Include="..\..\..\moses2\Moses2Wrapper.cpp">
+ <Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\ExampleStatefulFF.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\parameters\ServerOptions.cpp">
+ <Filter>Source Files\parameters</Filter>
</ClCompile>
- <ClCompile Include="..\..\..\..\moses2\FF\ExampleStatelessFF.cpp">
- <Filter>Source Files\FF</Filter>
+ <ClCompile Include="..\..\..\moses2\TranslationModel\Dynamic\DynamicPhraseTable.cpp">
+ <Filter>Source Files\TranslationModel\Dynamic</Filter>
</ClCompile>
</ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\..\..\moses2\Moses2Wrapper.h">
+ <Filter>Source Files</Filter>
+ </ClInclude>
+ </ItemGroup>
</Project> \ No newline at end of file
diff --git a/moses2/DLLEntryApi.cpp b/moses2/DLLEntryApi.cpp
new file mode 100644
index 000000000..cb8def6c0
--- /dev/null
+++ b/moses2/DLLEntryApi.cpp
@@ -0,0 +1,39 @@
+#include "Moses2Wrapper.h"
+using namespace std;
+using namespace Moses2;
+
+extern "C" __declspec(dllexport) Moses2::Moses2Wrapper * __stdcall CreateMosesSystem(const char* filePath) {
+ return new Moses2::Moses2Wrapper(filePath);
+}
+
+extern "C" __declspec(dllexport) int __stdcall GetMosesSystem(const char* filePath, Moses2::Moses2Wrapper ** pObject) {
+ *pObject = new Moses2::Moses2Wrapper(filePath);
+ return 1;
+}
+
+extern "C" __declspec(dllexport) int __stdcall MosesTranslate(Moses2::Moses2Wrapper * pObject, long id, const char* input, char * output, int strlen) {
+ if (pObject != NULL)
+ {
+ std::string tr = pObject->Translate(input, id);
+ std::copy(tr.begin(), tr.end(), output);
+ output[std::min(strlen - 1, (int)tr.size())] = 0;
+ return 1;
+ }
+ else {
+ return 0;
+ }
+}
+extern "C" __declspec(dllexport) int __stdcall ReleaseSystem(Moses2::Moses2Wrapper * pObject) {
+ if (pObject != NULL)
+ {
+ delete pObject;
+ pObject = NULL;
+ return 1;
+ }
+ else {
+ return 0;
+ }
+}
+extern "C" __declspec(dllexport) string __stdcall GetEngineVersion() {
+ return "1.0";
+} \ No newline at end of file
diff --git a/moses2/Moses2Wrapper.cpp b/moses2/Moses2Wrapper.cpp
index f919457d5..8fa4a5156 100644
--- a/moses2/Moses2Wrapper.cpp
+++ b/moses2/Moses2Wrapper.cpp
@@ -1,4 +1,4 @@
-#include "Moses2Wrapper.h"
+#include "Moses2Wrapper.h"
#include "System.h"
#include "legacy/Parameter.h"
#include "TranslationTask.h"
@@ -12,7 +12,13 @@ namespace Moses2 {
std::string Moses2Wrapper::Translate(const std::string &input , long id) {
TranslationTask task(*m_system, input, id);
std::string translation = task.ReturnTranslation();
- //delete translation;
return translation;
}
+ Moses2Wrapper* Moses2Wrapper::getInstance(const std::string& filePath) {
+ Moses2Wrapper *instance = new Moses2Wrapper(filePath);
+ return instance;
+ }
+ Moses2Wrapper::~Moses2Wrapper() {
+ cout << "Destructor is called ";
+ }
} \ No newline at end of file
diff --git a/moses2/Moses2Wrapper.h b/moses2/Moses2Wrapper.h
index f491e1078..21aa19388 100644
--- a/moses2/Moses2Wrapper.h
+++ b/moses2/Moses2Wrapper.h
@@ -3,14 +3,18 @@
namespace Moses2 {
class Parameter;
class System;
- class Moses2Wrapper
+ class Moses2Wrapper
{
Parameter *m_param;
System *m_system;
public:
Moses2Wrapper(const std::string &filePath);
+ ~Moses2Wrapper();
std::string Translate(const std::string &input, long id);
+ Moses2Wrapper* getInstance(const std::string& filePath);
+ int getEngineVersion();
+
};
} \ No newline at end of file