This commit is contained in:
Eva Hasler 2012-06-07 11:16:52 +01:00
commit e1c1a5343c
756 changed files with 28804 additions and 74369 deletions

8
.gitignore vendored
View File

@ -1,3 +1,6 @@
*.pyc
*.lo
*.o
*.so
*.lo
*.o
@ -7,6 +10,7 @@
*.save
*.cmd
*~
*.gch
dist*
jam-files/bjam
jam-files/engine/bootstrap
@ -18,6 +22,7 @@ mert/extractor
mert/mert
mert/megam_i686.opt
mert/pro
mert/kbmira
misc/processLexicalTable
misc/processPhraseTable
misc/queryLexicalTable
@ -55,5 +60,4 @@ scripts/training/symal/symal
scripts/training/train-model.perl
dist
bin
srilm
giza-pp
previous.sh

View File

@ -73,7 +73,7 @@ you're ready to install packages in non-standard paths:
#For Boost:
./bootstrap.sh
./b2 --prefix=$PREFIX --libdir=$PREFIX/lib64 link=static,shared threading=multi install
./b2 --prefix=$PREFIX --libdir=$PREFIX/lib64 --layout=tagged link=static,shared threading=multi install
--------------------------------------------------------------------------
@ -88,8 +88,17 @@ Common options are:
--with-giza=/path/to/giza to enable training scripts
-jN where N is the number of CPUs
--with-macports=/path/to/macports use MacPorts on Mac OS X.
If you leave out /path/to/macports bjam will use the /opt/local as default.
You don't have to use --with-boost with-macports as it is implicitly set.
Also note that using --with-macports automatically triggers "using darwin".
Binaries will appear in dist/bin.
You can clean up data from previous builds using
./bjam --clean
For further documentation, run
./bjam --help

View File

@ -1,337 +0,0 @@
#!/bin/bash
#Moses used to run autotools. This helps people migrate to bjam by deleting files that it generated. Run it in the top-level directory.
while read a; do
rm -rf $a
done <<EOF
Makefile
Makefile.in
OnDiskPt/src/
aclocal.m4
autom4te.cache/
config.guess
config.h
config.log
config.status
config.sub
configure
depcomp
install-sh
libtool
lm/.deps/
lm/.libs/
lm/Makefile
lm/Makefile.in
lm/bhiksha.lo
lm/bhiksha.o
lm/binary_format.lo
lm/binary_format.o
lm/build_binary.o
lm/config.lo
lm/config.o
lm/libkenlm.la
lm/lm_exception.lo
lm/lm_exception.o
lm/model.lo
lm/model.o
lm/ngram_query.o
lm/quantize.lo
lm/quantize.o
lm/read_arpa.lo
lm/read_arpa.o
lm/search_hashed.lo
lm/search_hashed.o
lm/search_trie.lo
lm/search_trie.o
lm/trie.lo
lm/trie.o
lm/trie_sort.lo
lm/trie_sort.o
lm/virtual_interface.lo
lm/virtual_interface.o
lm/vocab.lo
lm/vocab.o
ltmain.sh
m4/
mert/.deps/
mert/Makefile
mert/Makefile.in
misc/.deps/
misc/Makefile
misc/Makefile.in
missing
moses-chart-cmd/src/.deps/
moses-chart-cmd/src/Makefile
moses-chart-cmd/src/Makefile.in
moses-cmd/src/.deps/
moses-cmd/src/Makefile
moses-cmd/src/Makefile.in
moses/src/.deps/
moses/src/AlignmentInfo.lo
moses/src/AlignmentInfo.o
moses/src/AlignmentInfoCollection.lo
moses/src/AlignmentInfoCollection.o
moses/src/Base.lo
moses/src/Base.o
moses/src/BilingualDynSuffixArray.lo
moses/src/BilingualDynSuffixArray.o
moses/src/BitmapContainer.lo
moses/src/BitmapContainer.o
moses/src/ChartCell.lo
moses/src/ChartCell.o
moses/src/ChartCellCollection.lo
moses/src/ChartCellCollection.o
moses/src/ChartHypothesis.lo
moses/src/ChartHypothesis.o
moses/src/ChartHypothesisCollection.lo
moses/src/ChartHypothesisCollection.o
moses/src/ChartManager.lo
moses/src/ChartManager.o
moses/src/ChartRuleLookupManager.lo
moses/src/ChartRuleLookupManager.o
moses/src/ChartRuleLookupManagerMemory.lo
moses/src/ChartRuleLookupManagerMemory.o
moses/src/ChartRuleLookupManagerOnDisk.lo
moses/src/ChartRuleLookupManagerOnDisk.o
moses/src/ChartTranslationOption.lo
moses/src/ChartTranslationOption.o
moses/src/ChartTranslationOptionCollection.lo
moses/src/ChartTranslationOptionCollection.o
moses/src/ChartTranslationOptionList.lo
moses/src/ChartTranslationOptionList.o
moses/src/ChartTrellisDetour.lo
moses/src/ChartTrellisDetour.o
moses/src/ChartTrellisDetourQueue.lo
moses/src/ChartTrellisDetourQueue.o
moses/src/ChartTrellisNode.lo
moses/src/ChartTrellisNode.o
moses/src/ChartTrellisPath.lo
moses/src/ChartTrellisPath.o
moses/src/ConfusionNet.lo
moses/src/ConfusionNet.o
moses/src/DecodeFeature.lo
moses/src/DecodeFeature.o
moses/src/DecodeGraph.lo
moses/src/DecodeGraph.o
moses/src/DecodeStep.lo
moses/src/DecodeStep.o
moses/src/DecodeStepGeneration.lo
moses/src/DecodeStepGeneration.o
moses/src/DecodeStepTranslation.lo
moses/src/DecodeStepTranslation.o
moses/src/Dictionary.lo
moses/src/Dictionary.o
moses/src/DotChart.lo
moses/src/DotChart.o
moses/src/DotChartInMemory.lo
moses/src/DotChartInMemory.o
moses/src/DotChartOnDisk.lo
moses/src/DotChartOnDisk.o
moses/src/DummyScoreProducers.lo
moses/src/DummyScoreProducers.o
moses/src/DynSuffixArray.lo
moses/src/DynSuffixArray.o
moses/src/FFState.lo
moses/src/FFState.o
moses/src/Factor.lo
moses/src/Factor.o
moses/src/FactorCollection.lo
moses/src/FactorCollection.o
moses/src/FactorTypeSet.lo
moses/src/FactorTypeSet.o
moses/src/Factory.lo
moses/src/Factory.o
moses/src/FeatureFunction.lo
moses/src/FeatureFunction.o
moses/src/FloydWarshall.lo
moses/src/FloydWarshall.o
moses/src/GenerationDictionary.lo
moses/src/GenerationDictionary.o
moses/src/GlobalLexicalModel.lo
moses/src/GlobalLexicalModel.o
moses/src/Hypothesis.lo
moses/src/Hypothesis.o
moses/src/HypothesisStack.lo
moses/src/HypothesisStack.o
moses/src/HypothesisStackCubePruning.lo
moses/src/HypothesisStackCubePruning.o
moses/src/HypothesisStackNormal.lo
moses/src/HypothesisStackNormal.o
moses/src/Implementation.lo
moses/src/Implementation.o
moses/src/InputFileStream.lo
moses/src/InputFileStream.o
moses/src/InputType.lo
moses/src/InputType.o
moses/src/Joint.lo
moses/src/Joint.o
moses/src/Ken.lo
moses/src/Ken.o
moses/src/LMList.lo
moses/src/LMList.o
moses/src/LVoc.lo
moses/src/LVoc.o
moses/src/LexicalReordering.lo
moses/src/LexicalReordering.o
moses/src/LexicalReorderingState.lo
moses/src/LexicalReorderingState.o
moses/src/LexicalReorderingTable.lo
moses/src/LexicalReorderingTable.o
moses/src/Makefile
moses/src/Makefile.in
moses/src/Manager.lo
moses/src/Manager.o
moses/src/MultiFactor.lo
moses/src/MultiFactor.o
moses/src/PCNTools.lo
moses/src/PCNTools.o
moses/src/Parameter.lo
moses/src/Parameter.o
moses/src/PartialTranslOptColl.lo
moses/src/PartialTranslOptColl.o
moses/src/Phrase.lo
moses/src/Phrase.o
moses/src/PhraseDictionary.lo
moses/src/PhraseDictionary.o
moses/src/PhraseDictionaryALSuffixArray.lo
moses/src/PhraseDictionaryALSuffixArray.o
moses/src/PhraseDictionaryDynSuffixArray.lo
moses/src/PhraseDictionaryDynSuffixArray.o
moses/src/PhraseDictionaryHiero.lo
moses/src/PhraseDictionaryHiero.o
moses/src/PhraseDictionaryMemory.lo
moses/src/PhraseDictionaryMemory.o
moses/src/PhraseDictionaryNode.lo
moses/src/PhraseDictionaryNode.o
moses/src/PhraseDictionaryNodeSCFG.lo
moses/src/PhraseDictionaryNodeSCFG.o
moses/src/PhraseDictionaryOnDisk.lo
moses/src/PhraseDictionaryOnDisk.o
moses/src/PhraseDictionarySCFG.lo
moses/src/PhraseDictionarySCFG.o
moses/src/PhraseDictionaryTree.lo
moses/src/PhraseDictionaryTree.o
moses/src/PhraseDictionaryTreeAdaptor.lo
moses/src/PhraseDictionaryTreeAdaptor.o
moses/src/PrefixTreeMap.lo
moses/src/PrefixTreeMap.o
moses/src/Remote.lo
moses/src/Remote.o
moses/src/ReorderingConstraint.lo
moses/src/ReorderingConstraint.o
moses/src/ReorderingStack.lo
moses/src/ReorderingStack.o
moses/src/RuleCube.lo
moses/src/RuleCube.o
moses/src/RuleCubeItem.lo
moses/src/RuleCubeItem.o
moses/src/RuleCubeQueue.lo
moses/src/RuleCubeQueue.o
moses/src/RuleTableLoaderCompact.lo
moses/src/RuleTableLoaderCompact.o
moses/src/RuleTableLoaderFactory.lo
moses/src/RuleTableLoaderFactory.o
moses/src/RuleTableLoaderHiero.lo
moses/src/RuleTableLoaderHiero.o
moses/src/RuleTableLoaderStandard.lo
moses/src/RuleTableLoaderStandard.o
moses/src/ScoreComponentCollection.lo
moses/src/ScoreComponentCollection.o
moses/src/ScoreIndexManager.lo
moses/src/ScoreIndexManager.o
moses/src/ScoreProducer.lo
moses/src/ScoreProducer.o
moses/src/Search.lo
moses/src/Search.o
moses/src/SearchCubePruning.lo
moses/src/SearchCubePruning.o
moses/src/SearchNormal.lo
moses/src/SearchNormal.o
moses/src/Sentence.lo
moses/src/Sentence.o
moses/src/SentenceStats.lo
moses/src/SentenceStats.o
moses/src/SingleFactor.lo
moses/src/SingleFactor.o
moses/src/SquareMatrix.lo
moses/src/SquareMatrix.o
moses/src/TargetPhrase.lo
moses/src/TargetPhrase.o
moses/src/TargetPhraseCollection.lo
moses/src/TargetPhraseCollection.o
moses/src/ThreadPool.lo
moses/src/ThreadPool.o
moses/src/Timer.lo
moses/src/Timer.o
moses/src/TranslationOption.lo
moses/src/TranslationOption.o
moses/src/TranslationOptionCollection.lo
moses/src/TranslationOptionCollection.o
moses/src/TranslationOptionCollectionConfusionNet.lo
moses/src/TranslationOptionCollectionConfusionNet.o
moses/src/TranslationOptionCollectionText.lo
moses/src/TranslationOptionCollectionText.o
moses/src/TranslationOptionList.lo
moses/src/TranslationOptionList.o
moses/src/TranslationSystem.lo
moses/src/TranslationSystem.o
moses/src/file.lo
moses/src/file.o
moses/src/hash.lo
moses/src/hash.o
moses/src/vocab.lo
moses/src/vocab.o
scripts/ems/biconcor/Alignment.o
scripts/ems/biconcor/Mismatch.o
scripts/ems/biconcor/PhrasePair.o
scripts/ems/biconcor/PhrasePairCollection.o
scripts/ems/biconcor/SuffixArray.o
scripts/ems/biconcor/TargetCorpus.o
scripts/ems/biconcor/Vocabulary.o
scripts/ems/biconcor/base64.o
scripts/ems/biconcor/biconcor.o
scripts/training/compact-rule-table/config.log
scripts/training/compact-rule-table/config.status
scripts/training/eppex/
scripts/training/lexical-reordering/reordering_classes.o
scripts/training/memscore/
scripts/training/phrase-extract/AlignmentPhrase.o
scripts/training/phrase-extract/ExtractedRule.o
scripts/training/phrase-extract/HoleCollection.o
scripts/training/phrase-extract/InputFileStream.o
scripts/training/phrase-extract/PhraseAlignment.o
scripts/training/phrase-extract/SentenceAlignment.o
scripts/training/phrase-extract/SentenceAlignmentWithSyntax.o
scripts/training/phrase-extract/SyntaxTree.o
scripts/training/phrase-extract/XmlTree.o
scripts/training/phrase-extract/consolidate-direct.o
scripts/training/phrase-extract/consolidate-reverse.o
scripts/training/phrase-extract/consolidate.o
scripts/training/phrase-extract/extract-lex.o
scripts/training/phrase-extract/extract-rules.o
scripts/training/phrase-extract/extract.o
scripts/training/phrase-extract/relax-parse.o
scripts/training/phrase-extract/score.o
scripts/training/phrase-extract/statistics.o
scripts/training/phrase-extract/tables-core.o
scripts/training/symal/cmd.o
stamp-h1
util/.deps/
util/.libs/
util/Makefile
util/Makefile.in
util/bit_packing.lo
util/bit_packing.o
util/ersatz_progress.lo
util/ersatz_progress.o
util/exception.lo
util/exception.o
util/file.lo
util/file.o
util/file_piece.lo
util/file_piece.o
util/libkenutil.la
util/mmap.lo
util/mmap.o
util/murmur_hash.lo
util/murmur_hash.o
EOF

135
Jamroot
View File

@ -19,6 +19,8 @@
#Indicates where binaries GIZA++, snt2cooc.out, and mkcls live.
#Builds scripts/training/train-model.perl using these paths.
#
#Thread-caching malloc (optional):
#--with-tcmalloc
#
#REGRESSION TESTING
#--with-regtest=/path/to/moses-reg-test-data
@ -28,6 +30,8 @@
#--prefix=/path/to/prefix sets the install prefix [dist].
#--bindir=/path/to/prefix/bin sets the bin directory [PREFIX/bin]
#--libdir=/path/to/prefix/lib sets the lib directory [PREFIX/lib]
#--includedir=/path/to/prefix/include installs headers.
# Does not install if missing. No argument defaults to PREFIX/include .
#--install-scripts=/path/to/scripts copies scripts into a directory.
#--git appends the git revision to the prefix directory.
#
@ -58,101 +62,16 @@
import option ;
import modules ;
import path ;
path-constant TOP : . ;
include $(TOP)/jam-files/sanity.jam ;
# Shell with trailing line removed http://lists.boost.org/boost-build/2007/08/17051.php
rule trim-nl ( str extras * ) {
return [ MATCH "([^
]*)" : $(str) ] $(extras) ;
}
rule _shell ( cmd : extras * ) {
return [ trim-nl [ SHELL $(cmd) : $(extras) ] ] ;
}
boost 103600 ;
external-lib z ;
local cleaning = [ option.get "clean" : : yes ] ;
cleaning ?= [ option.get "clean-all" : no : yes ] ;
if "clean" in [ modules.peek : ARGV ] {
cleaning = yes ;
}
constant CLEANING : $(cleaning) ;
#Run g++ with empty main and these arguments to see if it passes.
rule test_flags ( flags ) {
if [ SHELL $(TOP)"/jam-files/test.sh "$(flags) ] = 0 {
return true ;
} else {
return ;
}
}
#Determine if a library can be compiled statically.
rule auto_shared ( name : additional ? ) {
additional ?= "" ;
if [ test_flags $(additional)" -static -l"$(name) ] {
return ;
} else {
return "<link>shared" ;
}
}
with-boost = [ option.get "with-boost" ] ;
if $(with-boost) {
L-boost-search = -L$(with-boost)/lib" "-L$(with-boost)/lib64 ;
boost-search = <search>$(with-boost)/lib <search>$(with-boost)/lib64 ;
I-boost-include = -I$(with-boost)/include ;
boost-include = <include>$(with-boost)/include ;
} else {
L-boost-search = "" ;
boost-search = ;
I-boost-include = "" ;
boost-include = ;
}
boost-shell = [ SHELL "g++ "$(I-boost-include)" -dM -x c++ -E /dev/null -include boost/version.hpp 2>/dev/null |grep '#define BOOST_VERSION '" : exit-status ] ;
if $(boost-shell[2]) != 0 && $(CLEANING) = no {
exit Boost does not seem to be installed or g++ is confused. : 1 ;
}
boost-version = [ MATCH "#define BOOST_VERSION ([0-9]*)" : $(boost-shell[1]) ] ;
if $(boost-version) < 103600 && $(cleaning) = no {
exit You have Boost $(boost-version). Moses requires at least 103600 (and preferably newer). : 1 ;
}
#Are we linking static binaries against shared boost?
boost-auto-shared = [ auto_shared "boost_program_options" : $(L-boost-search) ] ;
#Convenience rule for boost libraries. Defines library boost_$(name).
rule boost_lib ( name macro ) {
#Link multi-threaded programs against the -mt version if available. Old
#versions of boost do not have -mt tagged versions of all libraries. Sadly,
#boost.jam does not handle this correctly.
if [ test_flags $(L-boost-search)" -lboost_"$(name)"-mt" ] {
lib inner_boost_$(name) : : <threading>single $(boost-search) <name>boost_$(name) ;
lib inner_boost_$(name) : : <threading>multi $(boost-search) <name>boost_$(name)-mt ;
} else {
lib inner_boost_$(name) : : $(boost-search) <name>boost_$(name) ;
}
alias boost_$(name) : inner_boost_$(name) : $(boost-auto-shared) : : <link>shared:<define>BOOST_$(macro) $(boost-include) ;
}
#See tools/build/v2/contrib/boost.jam in a boost distribution for a table of macros to define.
boost_lib thread THREAD_DYN_DLL ;
boost_lib program_options PROGRAM_OPTIONS_DYN_LINK ;
boost_lib unit_test_framework TEST_DYN_LINK ;
boost_lib mpi MPI_DYN_LINK ;
boost_lib serialization SERIALIZATION_DYN_LINK ;
#Link normally to a library, but sometimes static isn't installed so fall back to dynamic.
rule external_lib ( name ) {
lib $(name) : : [ auto_shared $(name) ] ;
}
external_lib z ;
requirements = ;
#libSegFault prints a stack trace on segfault. Link against it if available.
if [ test_flags "-lSegfault" ] {
external_lib SegFault ;
requirements += <library>SegFault ;
if [ option.get "with-tcmalloc" : : "yes" ] {
external-lib tcmalloc ;
requirements += <library>tcmalloc ;
}
if [ option.get "enable-mpi" : : "yes" ] {
@ -166,12 +85,6 @@ if [ option.get "enable-mpi" : : "yes" ] {
requirements += [ option.get "notrace" : <define>TRACE_ENABLE=1 ] ;
requirements += [ option.get "enable-boost-pool" : : <define>USE_BOOST_POOL ] ;
import os ;
cxxflags = [ os.environ "CXXFLAGS" ] ;
cflags = [ os.environ "CFLAGS" ] ;
ldflags = [ os.environ "LDFLAGS" ] ;
project : default-build
<threading>multi
@ -186,9 +99,6 @@ project : requirements
<threading>multi:<library>boost_thread
<define>_FILE_OFFSET_BITS=64 <define>_LARGE_FILES
$(requirements)
<cxxflags>$(cxxflags)
<cflags>$(cflags)
<linkflags>$(ldflags)
;
#Add directories here if you want their incidental targets too (i.e. tests).
@ -205,17 +115,14 @@ build-project scripts ;
#Regression tests (only does anything if --with-regtest is passed)
build-project regression-testing ;
if [ option.get "git" : : "yes" ] {
local revision = [ _shell "git rev-parse --verify HEAD |head -c 7" ] ;
constant GITTAG : "/"$(revision) ;
} else {
constant GITTAG : "" ;
alias programs : lm//query lm//build_binary moses-chart-cmd/src//moses_chart moses-cmd/src//programs OnDiskPt//CreateOnDisk OnDiskPt//queryOnDiskPt mert//programs contrib/server//mosesserver misc//programs mira//programs ;
install-bin-libs programs ;
install-headers headers-base : [ glob-tree *.h *.hh : jam-files dist kenlm moses ] : . ;
install-headers headers-moses : moses/src//headers-to-install : moses/src ;
alias install : prefix-bin prefix-lib headers-base headers-moses ;
if ! [ option.get "includedir" : : $(prefix)/include ] {
explicit install headers-base headers-moses ;
}
alias programs : lm//query lm//build_binary moses-chart-cmd/src//moses_chart moses-cmd/src//programs OnDiskPt//CreateOnDisk mert//programs contrib/server//mosesserver misc//programs mira//programs ;
prefix = [ option.get "prefix" : $(TOP)/dist$(GITTAG) ] ;
bindir = [ option.get "bindir" : $(prefix)/bin ] ;
libdir = [ option.get "libdir" : $(prefix)/lib ] ;
install prefix-bin : programs : <location>$(bindir) <install-dependencies>on <install-type>EXE <link>shared:<dll-path>$(libdir) ;
install prefix-lib : programs : <location>$(libdir) <install-dependencies>on <install-type>LIB <link>shared:<dll-path>$(libdir) ;

View File

@ -1,2 +1,5 @@
lib OnDiskPt : OnDiskWrapper.cpp SourcePhrase.cpp TargetPhrase.cpp Word.cpp Phrase.cpp PhraseNode.cpp TargetPhraseCollection.cpp Vocab.cpp ../moses/src//headers ;
exe CreateOnDisk : Main.cpp ../moses/src//moses OnDiskPt ;
exe queryOnDiskPt : queryOnDiskPt.cpp ../moses/src//moses OnDiskPt ;

View File

@ -23,6 +23,7 @@
#include <string>
#include <vector>
#include <iterator>
#include <cassert>
#include "../moses/src/InputFileStream.h"
#include "../moses/src/Util.h"
#include "../moses/src/UserMessage.h"
@ -45,15 +46,15 @@ int main (int argc, char * const argv[])
assert(argc == 8);
int numSourceFactors = Moses::Scan<int>(argv[1])
, numTargetFactors = Moses::Scan<int>(argv[2])
, numScores = Moses::Scan<int>(argv[3])
, tableLimit = Moses::Scan<int>(argv[4]);
int numSourceFactors = Moses::Scan<int>(argv[1])
, numTargetFactors = Moses::Scan<int>(argv[2])
, numScores = Moses::Scan<int>(argv[3])
, tableLimit = Moses::Scan<int>(argv[4]);
TargetPhraseCollection::s_sortScoreInd = Moses::Scan<int>(argv[5]);
assert(TargetPhraseCollection::s_sortScoreInd < numScores);
const string filePath = argv[6]
,destPath = argv[7];
const string filePath = argv[6]
,destPath = argv[7];
Moses::InputFileStream inStream(filePath);

View File

@ -98,6 +98,15 @@ bool Phrase::operator==(const Phrase &compare) const
return ret == 0;
}
void Phrase::DebugPrint(ostream &out, const Vocab &vocab) const
{
for (size_t pos = 0; pos < GetSize(); ++pos) {
const Word &word = GetWord(pos);
word.DebugPrint(out, vocab);
out << " ";
}
}
std::ostream& operator<<(std::ostream &out, const Phrase &phrase)
{
for (size_t pos = 0; pos < phrase.GetSize(); ++pos) {

View File

@ -24,6 +24,7 @@
namespace OnDiskPt
{
class Vocab;
class Phrase
{
@ -48,6 +49,8 @@ public:
return m_words.size();
}
virtual void DebugPrint(std::ostream &out, const Vocab &vocab) const;
int Compare(const Phrase &compare) const;
bool operator<(const Phrase &compare) const;
bool operator>(const Phrase &compare) const;

View File

@ -38,10 +38,10 @@ size_t PhraseNode::GetNodeSize(size_t numChildren, size_t wordSize, size_t count
}
PhraseNode::PhraseNode()
:m_currChild(NULL)
: m_value(0)
,m_currChild(NULL)
,m_saved(false)
,m_memLoad(NULL)
,m_value(0)
{
}
@ -55,8 +55,8 @@ PhraseNode::PhraseNode(UINT64 filePos, OnDiskWrapper &onDiskWrapper)
std::fstream &file = onDiskWrapper.GetFileSource();
file.seekg(filePos);
CHECK(filePos == file.tellg());
CHECK(filePos == (UINT64)file.tellg());
file.read((char*) &m_numChildrenLoad, sizeof(UINT64));
size_t memAlloc = GetNodeSize(m_numChildrenLoad, onDiskWrapper.GetSourceWordSize(), countSize);
@ -64,11 +64,11 @@ PhraseNode::PhraseNode(UINT64 filePos, OnDiskWrapper &onDiskWrapper)
// go to start of node again
file.seekg(filePos);
CHECK(filePos == file.tellg());
CHECK(filePos == (UINT64)file.tellg());
// read everything into memory
file.read(m_memLoad, memAlloc);
CHECK(filePos + memAlloc == file.tellg());
CHECK(filePos + memAlloc == (UINT64)file.tellg());
// get value
m_value = ((UINT64*)m_memLoad)[1];

View File

@ -279,7 +279,7 @@ Moses::TargetPhrase *TargetPhrase::ConvertToMoses(const std::vector<Moses::Facto
UINT64 TargetPhrase::ReadOtherInfoFromFile(UINT64 filePos, std::fstream &fileTPColl)
{
CHECK(filePos == fileTPColl.tellg());
CHECK(filePos == (UINT64)fileTPColl.tellg());
UINT64 memUsed = 0;
fileTPColl.read((char*) &m_filePos, sizeof(UINT64));
@ -287,10 +287,10 @@ UINT64 TargetPhrase::ReadOtherInfoFromFile(UINT64 filePos, std::fstream &fileTPC
CHECK(m_filePos != 0);
memUsed += ReadAlignFromFile(fileTPColl);
CHECK((memUsed + filePos) == fileTPColl.tellg());
CHECK((memUsed + filePos) == (UINT64)fileTPColl.tellg());
memUsed += ReadScoresFromFile(fileTPColl);
CHECK((memUsed + filePos) == fileTPColl.tellg());
CHECK((memUsed + filePos) == (UINT64)fileTPColl.tellg());
return memUsed;
}
@ -365,6 +365,23 @@ UINT64 TargetPhrase::ReadScoresFromFile(std::fstream &fileTPColl)
return bytesRead;
}
void TargetPhrase::DebugPrint(ostream &out, const Vocab &vocab) const
{
Phrase::DebugPrint(out, vocab);
for (size_t ind = 0; ind < m_align.size(); ++ind) {
const AlignPair &alignPair = m_align[ind];
out << alignPair.first << "-" << alignPair.second << " ";
}
out << ", ";
for (size_t ind = 0; ind < m_scores.size(); ++ind) {
out << m_scores[ind] << " ";
}
return;
}
std::ostream& operator<<(std::ostream &out, const TargetPhrase &phrase)
{
out << (const Phrase&) phrase << ", " ;

View File

@ -41,6 +41,8 @@ namespace OnDiskPt
typedef std::pair<UINT64, UINT64> AlignPair;
typedef std::vector<AlignPair> AlignType;
class Vocab;
class TargetPhrase: public Phrase
{
friend std::ostream& operator<<(std::ostream&, const TargetPhrase&);
@ -102,6 +104,8 @@ public:
UINT64 ReadOtherInfoFromFile(UINT64 filePos, std::fstream &fileTPColl);
UINT64 ReadFromFile(std::fstream &fileTP, size_t numFactors, size_t numSourceFactors);
virtual void DebugPrint(std::ostream &out, const Vocab &vocab) const;
};
}

View File

@ -196,6 +196,12 @@ void TargetPhraseCollection::SetDebugStr(const std::string &str)
m_debugStr = str;
}
const TargetPhrase &TargetPhraseCollection::GetTargetPhrase(size_t ind) const
{
assert(ind < GetSize());
return *m_coll[ind];
}
}

View File

@ -64,6 +64,9 @@ public:
size_t GetSize() const {
return m_coll.size();
}
const TargetPhrase &GetTargetPhrase(size_t ind) const;
UINT64 GetFilePos() const;
Moses::TargetPhraseCollection *ConvertToMoses(const std::vector<Moses::FactorType> &inputFactors

View File

@ -41,10 +41,6 @@ protected:
std::vector<std::string> m_lookup; // opposite of m_vocabColl
UINT64 m_nextId; // starts @ 1
const std::string &GetString(UINT32 vocabId) const {
return m_lookup[vocabId];
}
public:
Vocab()
:m_nextId(1)
@ -52,6 +48,9 @@ public:
UINT64 AddVocabId(const std::string &factorString);
UINT64 GetVocabId(const std::string &factorString, bool &found) const;
const Moses::Factor *GetFactor(UINT32 vocabId, Moses::FactorType factorType, Moses::FactorDirection direction, bool isNonTerminal) const;
const std::string &GetString(UINT32 vocabId) const {
return m_lookup[vocabId];
}
bool Load(OnDiskWrapper &onDiskWrapper);
void Save(OnDiskWrapper &onDiskWrapper);

View File

@ -145,9 +145,24 @@ bool Word::operator==(const Word &compare) const
return ret == 0;
}
void Word::DebugPrint(ostream &out, const Vocab &vocab) const
{
std::vector<UINT64>::const_iterator iter;
for (size_t ind = 0; ind < m_factors.size() - 1; ++ind) {
UINT64 vocabId = *iter;
const string &str = vocab.GetString(vocabId);
out << str << "|";
}
// last
UINT64 vocabId = m_factors.back();
const string &str = vocab.GetString(vocabId);
out << str;
}
std::ostream& operator<<(std::ostream &out, const Word &word)
{
out << "[";
out << "(";
std::vector<UINT64>::const_iterator iter;
for (iter = word.m_factors.begin(); iter != word.m_factors.end(); ++iter) {
@ -155,7 +170,7 @@ std::ostream& operator<<(std::ostream &out, const Word &word)
}
out << (word.m_isNonTerminal ? "n" : "t");
out << "]";
out << ")";
return out;
}

View File

@ -31,6 +31,7 @@ class Word;
namespace OnDiskPt
{
class Vocab;
class Word
{
@ -70,6 +71,8 @@ public:
, const std::vector<Moses::FactorType> &outputFactorsVec
, const Vocab &vocab) const;
virtual void DebugPrint(std::ostream &out, const Vocab &vocab) const;
int Compare(const Word &compare) const;
bool operator<(const Word &compare) const;
bool operator==(const Word &compare) const;

174
OnDiskPt/queryOnDiskPt.cpp Normal file
View File

@ -0,0 +1,174 @@
// Query binary phrase tables.
// Christian Hardmeier, 16 May 2010
#include <cstdlib>
#include <cstring>
#include <string>
#include <vector>
#include "Util.h"
#include "OnDiskWrapper.h"
#include "SourcePhrase.h"
using namespace std;
using namespace OnDiskPt;
void usage();
typedef unsigned int uint;
void Tokenize(OnDiskPt::Phrase &phrase
, const std::string &token, bool addSourceNonTerm, bool addTargetNonTerm
, OnDiskPt::OnDiskWrapper &onDiskWrapper)
{
bool nonTerm = false;
size_t tokSize = token.size();
int comStr =token.compare(0, 1, "[");
if (comStr == 0) {
comStr = token.compare(tokSize - 1, 1, "]");
nonTerm = comStr == 0;
}
if (nonTerm) {
// non-term
size_t splitPos = token.find_first_of("[", 2);
string wordStr = token.substr(0, splitPos);
if (splitPos == string::npos) {
// lhs - only 1 word
Word *word = new Word();
word->CreateFromString(wordStr, onDiskWrapper.GetVocab());
phrase.AddWord(word);
} else {
// source & target non-terms
if (addSourceNonTerm) {
Word *word = new Word();
word->CreateFromString(wordStr, onDiskWrapper.GetVocab());
phrase.AddWord(word);
}
wordStr = token.substr(splitPos, tokSize - splitPos);
if (addTargetNonTerm) {
Word *word = new Word();
word->CreateFromString(wordStr, onDiskWrapper.GetVocab());
phrase.AddWord(word);
}
}
} else {
// term
Word *word = new Word();
word->CreateFromString(token, onDiskWrapper.GetVocab());
phrase.AddWord(word);
}
}
int main(int argc, char **argv)
{
int tableLimit = 20;
std::string ttable = "";
bool useAlignments = false;
for(int i = 1; i < argc; i++) {
if(!strcmp(argv[i], "-tlimit")) {
if(i + 1 == argc)
usage();
tableLimit = atoi(argv[++i]);
} else if(!strcmp(argv[i], "-t")) {
if(i + 1 == argc)
usage();
ttable = argv[++i];
}
else
usage();
}
if(ttable == "")
usage();
OnDiskWrapper onDiskWrapper;
bool retDb = onDiskWrapper.BeginLoad(ttable);
CHECK(retDb);
cerr << "Ready..." << endl;
std::string line;
while(getline(std::cin, line)) {
std::vector<std::string> tokens;
tokens = Moses::Tokenize(line, " ");
cerr << "line: " << line << endl;
// create source phrase
SourcePhrase sourcePhrase;
for (size_t pos = 0; pos < tokens.size(); ++pos)
{
const string &tok = tokens[pos];
if (pos == tokens.size() - 1)
{ // last position. LHS non-term
Tokenize(sourcePhrase, tok, false, true, onDiskWrapper);
}
else
{
Tokenize(sourcePhrase, tok, true, true, onDiskWrapper);
}
}
const PhraseNode *node = &onDiskWrapper.GetRootSourceNode();
cerr << "node=" << node << endl;
assert(node);
for (size_t pos = 0; pos < sourcePhrase.GetSize(); ++pos)
{
const Word &word = sourcePhrase.GetWord(pos);
cerr << word << " ";
node = node->GetChild(word, onDiskWrapper);
cerr << "node=" << node << endl;
if (node == NULL)
{
break;
}
}
if (node)
{ // source phrase points to a bunch of rules
const TargetPhraseCollection *coll = node->GetTargetPhraseCollection(tableLimit, onDiskWrapper);
string str = coll->GetDebugStr();
cout << "Found " << coll->GetSize() << endl;
for (size_t ind = 0; ind < coll->GetSize(); ++ind)
{
const TargetPhrase &targetPhrase = coll->GetTargetPhrase(ind);
cerr << " ";
targetPhrase.DebugPrint(cerr, onDiskWrapper.GetVocab());
cerr << endl;
}
}
else
{
cout << "Not found" << endl;
}
std::cout << '\n';
std::cout.flush();
}
cerr << "Finished." << endl;
}
void usage()
{
std::cerr << "Usage: queryOnDiskPt [-n <nscores>] [-a] -t <ttable>\n"
"-tlimit <table limit> max number of rules per source phrase (default: 20)\n"
"-t <ttable> phrase table\n";
exit(1);
}

13
bjam
View File

@ -1,13 +1,14 @@
#!/bin/bash
set -e
if
which bjam >/dev/null 2>/dev/null && #Have a bjam in path
! grep UFIHGUFIHBDJKNCFZXAEVA "$(which bjam)" >/dev/null && #bjam in path isn't this script
bjam --help >/dev/null 2>/dev/null && #bjam in path isn't broken (i.e. has boost-build)
bjam --version |grep "Boost.Build 201" >/dev/null 2>/dev/null #It's recent enough.
if
bjam="$(which bjam 2>/dev/null)" && #exists
[ ${#bjam} != 0 ] && #paranoia about which printing nothing then returning true
! grep UFIHGUFIHBDJKNCFZXAEVA "${bjam}" </dev/null >/dev/null && #bjam in path isn't this script
"${bjam}" --help >/dev/null 2>/dev/null && #bjam in path isn't broken (i.e. has boost-build)
"${bjam}" --version |grep "Boost.Build 201" >/dev/null 2>/dev/null #It's recent enough.
then
#Delegate to system bjam
exec bjam "$@"
exec "${bjam}" "$@"
fi
top="$(dirname "$0")"

View File

@ -55,10 +55,10 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/moses/src;$(SolutionDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../../moses/src;$(SolutionDir)/../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalDependencies>zdll.lib;$(SolutionDir)$(Configuration)\moses.lib;$(SolutionDir)$(Configuration)\kenlm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>zdll.lib;$(SolutionDir)/$(Configuration)/moses.lib;$(SolutionDir)/$(Configuration)/kenlm.lib;$(SolutionDir)/$(Configuration)/OnDiskPt.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
@ -75,10 +75,10 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/moses/src;$(SolutionDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../../moses/src;$(SolutionDir)/../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalDependencies>zdll.lib;$(SolutionDir)$(Configuration)\moses.lib;$(SolutionDir)$(Configuration)\kenlm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>zdll.lib;$(SolutionDir)/$(Configuration)/moses.lib;$(SolutionDir)/$(Configuration)/kenlm.lib;$(SolutionDir)/$(Configuration)/OnDiskPt.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
@ -87,20 +87,12 @@
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\Main.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\Main.h" />
<ClInclude Include="..\..\OnDiskPt\Main.h" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\moses\moses.vcxproj">
<Project>{8122157a-0de5-44ff-8e5b-024ed6ace7af}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\OnDiskPt\OnDiskPt.vcxproj">
<Project>{8b07671b-cbaf-4514-affd-ce238cd427e9}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ClCompile Include="..\..\OnDiskPt\Main.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View File

@ -7,39 +7,54 @@
objects = {
/* Begin PBXBuildFile section */
1ED4FB4B11BDBAA7004E826A /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB4911BDBAA7004E826A /* Main.cpp */; };
1ED4FB6011BDBAFB004E826A /* libOnDiskPt.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1ED4FB5F11BDBAE6004E826A /* libOnDiskPt.a */; };
1ED4FB6111BDBB00004E826A /* libmoses.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1ED4FB5611BDBAD7004E826A /* libmoses.a */; };
1EBA432514B97B35003CC0EA /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA432314B97B35003CC0EA /* Main.cpp */; };
1EF0707114B9EE800052152A /* liblm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EBA45C014B97EF1003CC0EA /* liblm.a */; };
1EF0707214B9EE800052152A /* libmoses.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EBA432E14B97CA1003CC0EA /* libmoses.a */; };
1EF0707314B9EE800052152A /* libOnDiskPt.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EBA433714B97CA6003CC0EA /* libOnDiskPt.a */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
1ED4FB5511BDBAD7004E826A /* PBXContainerItemProxy */ = {
1EBA432D14B97CA1003CC0EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1ED4FB4E11BDBAD7004E826A /* moses.xcodeproj */;
containerPortal = 1EBA432614B97CA1003CC0EA /* moses.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = moses;
};
1ED4FB5E11BDBAE6004E826A /* PBXContainerItemProxy */ = {
1EBA433614B97CA6003CC0EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1ED4FB5711BDBAE6004E826A /* OnDiskPt.xcodeproj */;
containerPortal = 1EBA432F14B97CA6003CC0EA /* OnDiskPt.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = OnDiskPt;
};
1ED4FB7211BDBC05004E826A /* PBXContainerItemProxy */ = {
1EBA45BF14B97EF1003CC0EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1ED4FB4E11BDBAD7004E826A /* moses.xcodeproj */;
containerPortal = 1EBA45B414B97EF1003CC0EA /* lm.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 1EE8C2E91476A48E002496F2;
remoteInfo = lm;
};
1EF0707614B9EE930052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EBA432F14B97CA6003CC0EA /* OnDiskPt.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = OnDiskPt;
};
1EF0707814B9EE980052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EBA432614B97CA1003CC0EA /* moses.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = moses;
};
1ED4FB7411BDBC09004E826A /* PBXContainerItemProxy */ = {
1EF0707A14B9EE9C0052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1ED4FB5711BDBAE6004E826A /* OnDiskPt.xcodeproj */;
containerPortal = 1EBA45B414B97EF1003CC0EA /* lm.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = OnDiskPt;
remoteGlobalIDString = 1EE8C2E81476A48E002496F2;
remoteInfo = lm;
};
/* End PBXContainerItemProxy section */
@ -57,10 +72,11 @@
/* Begin PBXFileReference section */
1E4FC4861251FFBF00FB0D9D /* CreateOnDisk */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = CreateOnDisk; sourceTree = BUILT_PRODUCTS_DIR; };
1ED4FB4911BDBAA7004E826A /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = src/Main.cpp; sourceTree = "<group>"; };
1ED4FB4A11BDBAA7004E826A /* Main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Main.h; path = src/Main.h; sourceTree = "<group>"; };
1ED4FB4E11BDBAD7004E826A /* moses.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = moses.xcodeproj; path = ../moses/moses.xcodeproj; sourceTree = SOURCE_ROOT; };
1ED4FB5711BDBAE6004E826A /* OnDiskPt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = OnDiskPt.xcodeproj; path = ../OnDiskPt/OnDiskPt.xcodeproj; sourceTree = SOURCE_ROOT; };
1EBA432314B97B35003CC0EA /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = ../../OnDiskPt/Main.cpp; sourceTree = "<group>"; };
1EBA432414B97B35003CC0EA /* Main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Main.h; path = ../../OnDiskPt/Main.h; sourceTree = "<group>"; };
1EBA432614B97CA1003CC0EA /* moses.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = moses.xcodeproj; sourceTree = "<group>"; };
1EBA432F14B97CA6003CC0EA /* OnDiskPt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = OnDiskPt.xcodeproj; sourceTree = "<group>"; };
1EBA45B414B97EF1003CC0EA /* lm.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = lm.xcodeproj; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -68,8 +84,9 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
1ED4FB6111BDBB00004E826A /* libmoses.a in Frameworks */,
1ED4FB6011BDBAFB004E826A /* libOnDiskPt.a in Frameworks */,
1EF0707114B9EE800052152A /* liblm.a in Frameworks */,
1EF0707214B9EE800052152A /* libmoses.a in Frameworks */,
1EF0707314B9EE800052152A /* libOnDiskPt.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -79,11 +96,12 @@
08FB7794FE84155DC02AAC07 /* CreateOnDisk */ = {
isa = PBXGroup;
children = (
1ED4FB5711BDBAE6004E826A /* OnDiskPt.xcodeproj */,
1ED4FB4E11BDBAD7004E826A /* moses.xcodeproj */,
08FB7795FE84155DC02AAC07 /* Source */,
C6859E8C029090F304C91782 /* Documentation */,
1AB674ADFE9D54B511CA2CBB /* Products */,
1EBA432614B97CA1003CC0EA /* moses.xcodeproj */,
1EBA432F14B97CA6003CC0EA /* OnDiskPt.xcodeproj */,
1EBA45B414B97EF1003CC0EA /* lm.xcodeproj */,
);
name = CreateOnDisk;
sourceTree = "<group>";
@ -91,8 +109,8 @@
08FB7795FE84155DC02AAC07 /* Source */ = {
isa = PBXGroup;
children = (
1ED4FB4911BDBAA7004E826A /* Main.cpp */,
1ED4FB4A11BDBAA7004E826A /* Main.h */,
1EBA432314B97B35003CC0EA /* Main.cpp */,
1EBA432414B97B35003CC0EA /* Main.h */,
);
name = Source;
sourceTree = "<group>";
@ -105,18 +123,26 @@
name = Products;
sourceTree = "<group>";
};
1ED4FB4F11BDBAD7004E826A /* Products */ = {
1EBA432714B97CA1003CC0EA /* Products */ = {
isa = PBXGroup;
children = (
1ED4FB5611BDBAD7004E826A /* libmoses.a */,
1EBA432E14B97CA1003CC0EA /* libmoses.a */,
);
name = Products;
sourceTree = "<group>";
};
1ED4FB5811BDBAE6004E826A /* Products */ = {
1EBA433014B97CA6003CC0EA /* Products */ = {
isa = PBXGroup;
children = (
1ED4FB5F11BDBAE6004E826A /* libOnDiskPt.a */,
1EBA433714B97CA6003CC0EA /* libOnDiskPt.a */,
);
name = Products;
sourceTree = "<group>";
};
1EBA45B514B97EF1003CC0EA /* Products */ = {
isa = PBXGroup;
children = (
1EBA45C014B97EF1003CC0EA /* liblm.a */,
);
name = Products;
sourceTree = "<group>";
@ -142,8 +168,9 @@
buildRules = (
);
dependencies = (
1ED4FB7311BDBC05004E826A /* PBXTargetDependency */,
1ED4FB7511BDBC09004E826A /* PBXTargetDependency */,
1EF0707B14B9EE9C0052152A /* PBXTargetDependency */,
1EF0707914B9EE980052152A /* PBXTargetDependency */,
1EF0707714B9EE930052152A /* PBXTargetDependency */,
);
name = CreateOnDisk;
productInstallPath = "$(HOME)/bin";
@ -170,12 +197,16 @@
projectDirPath = "";
projectReferences = (
{
ProductGroup = 1ED4FB4F11BDBAD7004E826A /* Products */;
ProjectRef = 1ED4FB4E11BDBAD7004E826A /* moses.xcodeproj */;
ProductGroup = 1EBA45B514B97EF1003CC0EA /* Products */;
ProjectRef = 1EBA45B414B97EF1003CC0EA /* lm.xcodeproj */;
},
{
ProductGroup = 1ED4FB5811BDBAE6004E826A /* Products */;
ProjectRef = 1ED4FB5711BDBAE6004E826A /* OnDiskPt.xcodeproj */;
ProductGroup = 1EBA432714B97CA1003CC0EA /* Products */;
ProjectRef = 1EBA432614B97CA1003CC0EA /* moses.xcodeproj */;
},
{
ProductGroup = 1EBA433014B97CA6003CC0EA /* Products */;
ProjectRef = 1EBA432F14B97CA6003CC0EA /* OnDiskPt.xcodeproj */;
},
);
projectRoot = "";
@ -186,18 +217,25 @@
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
1ED4FB5611BDBAD7004E826A /* libmoses.a */ = {
1EBA432E14B97CA1003CC0EA /* libmoses.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libmoses.a;
remoteRef = 1ED4FB5511BDBAD7004E826A /* PBXContainerItemProxy */;
remoteRef = 1EBA432D14B97CA1003CC0EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1ED4FB5F11BDBAE6004E826A /* libOnDiskPt.a */ = {
1EBA433714B97CA6003CC0EA /* libOnDiskPt.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libOnDiskPt.a;
remoteRef = 1ED4FB5E11BDBAE6004E826A /* PBXContainerItemProxy */;
remoteRef = 1EBA433614B97CA6003CC0EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1EBA45C014B97EF1003CC0EA /* liblm.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = liblm.a;
remoteRef = 1EBA45BF14B97EF1003CC0EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
@ -207,22 +245,27 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1ED4FB4B11BDBAA7004E826A /* Main.cpp in Sources */,
1EBA432514B97B35003CC0EA /* Main.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
1ED4FB7311BDBC05004E826A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = moses;
targetProxy = 1ED4FB7211BDBC05004E826A /* PBXContainerItemProxy */;
};
1ED4FB7511BDBC09004E826A /* PBXTargetDependency */ = {
1EF0707714B9EE930052152A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = OnDiskPt;
targetProxy = 1ED4FB7411BDBC09004E826A /* PBXContainerItemProxy */;
targetProxy = 1EF0707614B9EE930052152A /* PBXContainerItemProxy */;
};
1EF0707914B9EE980052152A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = moses;
targetProxy = 1EF0707814B9EE980052152A /* PBXContainerItemProxy */;
};
1EF0707B14B9EE9C0052152A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = lm;
targetProxy = 1EF0707A14B9EE9C0052152A /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
@ -236,12 +279,15 @@
GCC_ENABLE_FIX_AND_CONTINUE = YES;
GCC_MODEL_TUNING = G5;
GCC_OPTIMIZATION_LEVEL = 0;
HEADER_SEARCH_PATHS = (
../../,
../../irstlm/include,
);
INSTALL_PATH = /usr/local/bin;
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../randlm/lib,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
../../randlm/lib,
);
OTHER_LDFLAGS = (
"-lz",
@ -251,7 +297,6 @@
"-loolm",
"-lflm",
"-llattice",
"-lkenlm",
"-lrandlm",
);
PRODUCT_NAME = CreateOnDisk;
@ -264,12 +309,15 @@
ALWAYS_SEARCH_USER_PATHS = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_MODEL_TUNING = G5;
HEADER_SEARCH_PATHS = (
../../,
../../irstlm/include,
);
INSTALL_PATH = /usr/local/bin;
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../randlm/lib,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
../../randlm/lib,
);
OTHER_LDFLAGS = (
"-lz",
@ -279,7 +327,6 @@
"-loolm",
"-lflm",
"-llattice",
"-lkenlm",
"-lrandlm",
);
PRODUCT_NAME = CreateOnDisk;

View File

@ -10,6 +10,28 @@
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\OnDiskPt\Main.h" />
<ClInclude Include="..\..\OnDiskPt\OnDiskWrapper.h" />
<ClInclude Include="..\..\OnDiskPt\Phrase.h" />
<ClInclude Include="..\..\OnDiskPt\PhraseNode.h" />
<ClInclude Include="..\..\OnDiskPt\SourcePhrase.h" />
<ClInclude Include="..\..\OnDiskPt\TargetPhrase.h" />
<ClInclude Include="..\..\OnDiskPt\TargetPhraseCollection.h" />
<ClInclude Include="..\..\OnDiskPt\Vocab.h" />
<ClInclude Include="..\..\OnDiskPt\Word.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\OnDiskPt\Main.cpp" />
<ClCompile Include="..\..\OnDiskPt\OnDiskWrapper.cpp" />
<ClCompile Include="..\..\OnDiskPt\Phrase.cpp" />
<ClCompile Include="..\..\OnDiskPt\PhraseNode.cpp" />
<ClCompile Include="..\..\OnDiskPt\SourcePhrase.cpp" />
<ClCompile Include="..\..\OnDiskPt\TargetPhrase.cpp" />
<ClCompile Include="..\..\OnDiskPt\TargetPhraseCollection.cpp" />
<ClCompile Include="..\..\OnDiskPt\Vocab.cpp" />
<ClCompile Include="..\..\OnDiskPt\Word.cpp" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{8B07671B-CBAF-4514-AFFD-CE238CD427E9}</ProjectGuid>
<RootNamespace>OnDiskPt</RootNamespace>
@ -55,7 +77,7 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<AdditionalIncludeDirectories>$(SolutionDir)/moses/src;$(SolutionDir)/kenlm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(SolutionDir)/../../moses/src;$(SolutionDir)/../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@ -69,29 +91,9 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<AdditionalIncludeDirectories>$(SolutionDir)/moses/src;$(SolutionDir)/kenlm;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>$(SolutionDir)/../../moses/src;$(SolutionDir)/../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\OnDiskWrapper.cpp" />
<ClCompile Include="src\Phrase.cpp" />
<ClCompile Include="src\PhraseNode.cpp" />
<ClCompile Include="src\SourcePhrase.cpp" />
<ClCompile Include="src\TargetPhrase.cpp" />
<ClCompile Include="src\TargetPhraseCollection.cpp" />
<ClCompile Include="src\Vocab.cpp" />
<ClCompile Include="src\Word.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\OnDiskWrapper.h" />
<ClInclude Include="src\Phrase.h" />
<ClInclude Include="src\PhraseNode.h" />
<ClInclude Include="src\SourcePhrase.h" />
<ClInclude Include="src\TargetPhrase.h" />
<ClInclude Include="src\TargetPhraseCollection.h" />
<ClInclude Include="src\Vocab.h" />
<ClInclude Include="src\Word.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>

View File

@ -7,41 +7,41 @@
objects = {
/* Begin PBXBuildFile section */
1ED4FB1911BDBA2B004E826A /* OnDiskWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB0811BDBA2B004E826A /* OnDiskWrapper.cpp */; };
1ED4FB1A11BDBA2B004E826A /* OnDiskWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB0911BDBA2B004E826A /* OnDiskWrapper.h */; };
1ED4FB1B11BDBA2B004E826A /* Phrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB0A11BDBA2B004E826A /* Phrase.cpp */; };
1ED4FB1C11BDBA2B004E826A /* Phrase.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB0B11BDBA2B004E826A /* Phrase.h */; };
1ED4FB1D11BDBA2B004E826A /* PhraseNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB0C11BDBA2B004E826A /* PhraseNode.cpp */; };
1ED4FB1E11BDBA2B004E826A /* PhraseNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB0D11BDBA2B004E826A /* PhraseNode.h */; };
1ED4FB1F11BDBA2B004E826A /* SourcePhrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB0E11BDBA2B004E826A /* SourcePhrase.cpp */; };
1ED4FB2011BDBA2B004E826A /* SourcePhrase.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB0F11BDBA2B004E826A /* SourcePhrase.h */; };
1ED4FB2111BDBA2B004E826A /* TargetPhrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB1011BDBA2B004E826A /* TargetPhrase.cpp */; };
1ED4FB2211BDBA2B004E826A /* TargetPhrase.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB1111BDBA2B004E826A /* TargetPhrase.h */; };
1ED4FB2311BDBA2B004E826A /* TargetPhraseCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB1211BDBA2B004E826A /* TargetPhraseCollection.cpp */; };
1ED4FB2411BDBA2B004E826A /* TargetPhraseCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB1311BDBA2B004E826A /* TargetPhraseCollection.h */; };
1ED4FB2511BDBA2B004E826A /* Vocab.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB1411BDBA2B004E826A /* Vocab.cpp */; };
1ED4FB2611BDBA2B004E826A /* Vocab.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB1511BDBA2B004E826A /* Vocab.h */; };
1ED4FB2711BDBA2B004E826A /* Word.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1ED4FB1611BDBA2B004E826A /* Word.cpp */; };
1ED4FB2811BDBA2B004E826A /* Word.h in Headers */ = {isa = PBXBuildFile; fileRef = 1ED4FB1711BDBA2B004E826A /* Word.h */; };
1EBA430C14B97ABF003CC0EA /* OnDiskWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA42FA14B97ABF003CC0EA /* OnDiskWrapper.cpp */; };
1EBA430D14B97ABF003CC0EA /* OnDiskWrapper.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA42FB14B97ABF003CC0EA /* OnDiskWrapper.h */; };
1EBA430E14B97ABF003CC0EA /* Phrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA42FC14B97ABF003CC0EA /* Phrase.cpp */; };
1EBA430F14B97ABF003CC0EA /* Phrase.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA42FD14B97ABF003CC0EA /* Phrase.h */; };
1EBA431014B97ABF003CC0EA /* PhraseNode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA42FE14B97ABF003CC0EA /* PhraseNode.cpp */; };
1EBA431114B97ABF003CC0EA /* PhraseNode.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA42FF14B97ABF003CC0EA /* PhraseNode.h */; };
1EBA431214B97ABF003CC0EA /* SourcePhrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA430014B97ABF003CC0EA /* SourcePhrase.cpp */; };
1EBA431314B97ABF003CC0EA /* SourcePhrase.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA430114B97ABF003CC0EA /* SourcePhrase.h */; };
1EBA431414B97ABF003CC0EA /* TargetPhrase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA430214B97ABF003CC0EA /* TargetPhrase.cpp */; };
1EBA431514B97ABF003CC0EA /* TargetPhrase.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA430314B97ABF003CC0EA /* TargetPhrase.h */; };
1EBA431614B97ABF003CC0EA /* TargetPhraseCollection.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA430414B97ABF003CC0EA /* TargetPhraseCollection.cpp */; };
1EBA431714B97ABF003CC0EA /* TargetPhraseCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA430514B97ABF003CC0EA /* TargetPhraseCollection.h */; };
1EBA431814B97ABF003CC0EA /* Vocab.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA430614B97ABF003CC0EA /* Vocab.cpp */; };
1EBA431914B97ABF003CC0EA /* Vocab.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA430714B97ABF003CC0EA /* Vocab.h */; };
1EBA431A14B97ABF003CC0EA /* Word.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA430814B97ABF003CC0EA /* Word.cpp */; };
1EBA431B14B97ABF003CC0EA /* Word.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA430914B97ABF003CC0EA /* Word.h */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
1ED4FB0811BDBA2B004E826A /* OnDiskWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = OnDiskWrapper.cpp; path = src/OnDiskWrapper.cpp; sourceTree = "<group>"; };
1ED4FB0911BDBA2B004E826A /* OnDiskWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OnDiskWrapper.h; path = src/OnDiskWrapper.h; sourceTree = "<group>"; };
1ED4FB0A11BDBA2B004E826A /* Phrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Phrase.cpp; path = src/Phrase.cpp; sourceTree = "<group>"; };
1ED4FB0B11BDBA2B004E826A /* Phrase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Phrase.h; path = src/Phrase.h; sourceTree = "<group>"; };
1ED4FB0C11BDBA2B004E826A /* PhraseNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhraseNode.cpp; path = src/PhraseNode.cpp; sourceTree = "<group>"; };
1ED4FB0D11BDBA2B004E826A /* PhraseNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhraseNode.h; path = src/PhraseNode.h; sourceTree = "<group>"; };
1ED4FB0E11BDBA2B004E826A /* SourcePhrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SourcePhrase.cpp; path = src/SourcePhrase.cpp; sourceTree = "<group>"; };
1ED4FB0F11BDBA2B004E826A /* SourcePhrase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SourcePhrase.h; path = src/SourcePhrase.h; sourceTree = "<group>"; };
1ED4FB1011BDBA2B004E826A /* TargetPhrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TargetPhrase.cpp; path = src/TargetPhrase.cpp; sourceTree = "<group>"; };
1ED4FB1111BDBA2B004E826A /* TargetPhrase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TargetPhrase.h; path = src/TargetPhrase.h; sourceTree = "<group>"; };
1ED4FB1211BDBA2B004E826A /* TargetPhraseCollection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TargetPhraseCollection.cpp; path = src/TargetPhraseCollection.cpp; sourceTree = "<group>"; };
1ED4FB1311BDBA2B004E826A /* TargetPhraseCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TargetPhraseCollection.h; path = src/TargetPhraseCollection.h; sourceTree = "<group>"; };
1ED4FB1411BDBA2B004E826A /* Vocab.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Vocab.cpp; path = src/Vocab.cpp; sourceTree = "<group>"; };
1ED4FB1511BDBA2B004E826A /* Vocab.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Vocab.h; path = src/Vocab.h; sourceTree = "<group>"; };
1ED4FB1611BDBA2B004E826A /* Word.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Word.cpp; path = src/Word.cpp; sourceTree = "<group>"; };
1ED4FB1711BDBA2B004E826A /* Word.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Word.h; path = src/Word.h; sourceTree = "<group>"; };
1EBA42FA14B97ABF003CC0EA /* OnDiskWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = OnDiskWrapper.cpp; path = ../../OnDiskPt/OnDiskWrapper.cpp; sourceTree = "<group>"; };
1EBA42FB14B97ABF003CC0EA /* OnDiskWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OnDiskWrapper.h; path = ../../OnDiskPt/OnDiskWrapper.h; sourceTree = "<group>"; };
1EBA42FC14B97ABF003CC0EA /* Phrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Phrase.cpp; path = ../../OnDiskPt/Phrase.cpp; sourceTree = "<group>"; };
1EBA42FD14B97ABF003CC0EA /* Phrase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Phrase.h; path = ../../OnDiskPt/Phrase.h; sourceTree = "<group>"; };
1EBA42FE14B97ABF003CC0EA /* PhraseNode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = PhraseNode.cpp; path = ../../OnDiskPt/PhraseNode.cpp; sourceTree = "<group>"; };
1EBA42FF14B97ABF003CC0EA /* PhraseNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PhraseNode.h; path = ../../OnDiskPt/PhraseNode.h; sourceTree = "<group>"; };
1EBA430014B97ABF003CC0EA /* SourcePhrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SourcePhrase.cpp; path = ../../OnDiskPt/SourcePhrase.cpp; sourceTree = "<group>"; };
1EBA430114B97ABF003CC0EA /* SourcePhrase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SourcePhrase.h; path = ../../OnDiskPt/SourcePhrase.h; sourceTree = "<group>"; };
1EBA430214B97ABF003CC0EA /* TargetPhrase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TargetPhrase.cpp; path = ../../OnDiskPt/TargetPhrase.cpp; sourceTree = "<group>"; };
1EBA430314B97ABF003CC0EA /* TargetPhrase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TargetPhrase.h; path = ../../OnDiskPt/TargetPhrase.h; sourceTree = "<group>"; };
1EBA430414B97ABF003CC0EA /* TargetPhraseCollection.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TargetPhraseCollection.cpp; path = ../../OnDiskPt/TargetPhraseCollection.cpp; sourceTree = "<group>"; };
1EBA430514B97ABF003CC0EA /* TargetPhraseCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TargetPhraseCollection.h; path = ../../OnDiskPt/TargetPhraseCollection.h; sourceTree = "<group>"; };
1EBA430614B97ABF003CC0EA /* Vocab.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Vocab.cpp; path = ../../OnDiskPt/Vocab.cpp; sourceTree = "<group>"; };
1EBA430714B97ABF003CC0EA /* Vocab.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Vocab.h; path = ../../OnDiskPt/Vocab.h; sourceTree = "<group>"; };
1EBA430814B97ABF003CC0EA /* Word.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Word.cpp; path = ../../OnDiskPt/Word.cpp; sourceTree = "<group>"; };
1EBA430914B97ABF003CC0EA /* Word.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Word.h; path = ../../OnDiskPt/Word.h; sourceTree = "<group>"; };
D2AAC046055464E500DB518D /* libOnDiskPt.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libOnDiskPt.a; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@ -69,22 +69,22 @@
08FB7795FE84155DC02AAC07 /* Source */ = {
isa = PBXGroup;
children = (
1ED4FB0811BDBA2B004E826A /* OnDiskWrapper.cpp */,
1ED4FB0911BDBA2B004E826A /* OnDiskWrapper.h */,
1ED4FB0A11BDBA2B004E826A /* Phrase.cpp */,
1ED4FB0B11BDBA2B004E826A /* Phrase.h */,
1ED4FB0C11BDBA2B004E826A /* PhraseNode.cpp */,
1ED4FB0D11BDBA2B004E826A /* PhraseNode.h */,
1ED4FB0E11BDBA2B004E826A /* SourcePhrase.cpp */,
1ED4FB0F11BDBA2B004E826A /* SourcePhrase.h */,
1ED4FB1011BDBA2B004E826A /* TargetPhrase.cpp */,
1ED4FB1111BDBA2B004E826A /* TargetPhrase.h */,
1ED4FB1211BDBA2B004E826A /* TargetPhraseCollection.cpp */,
1ED4FB1311BDBA2B004E826A /* TargetPhraseCollection.h */,
1ED4FB1411BDBA2B004E826A /* Vocab.cpp */,
1ED4FB1511BDBA2B004E826A /* Vocab.h */,
1ED4FB1611BDBA2B004E826A /* Word.cpp */,
1ED4FB1711BDBA2B004E826A /* Word.h */,
1EBA42FA14B97ABF003CC0EA /* OnDiskWrapper.cpp */,
1EBA42FB14B97ABF003CC0EA /* OnDiskWrapper.h */,
1EBA42FC14B97ABF003CC0EA /* Phrase.cpp */,
1EBA42FD14B97ABF003CC0EA /* Phrase.h */,
1EBA42FE14B97ABF003CC0EA /* PhraseNode.cpp */,
1EBA42FF14B97ABF003CC0EA /* PhraseNode.h */,
1EBA430014B97ABF003CC0EA /* SourcePhrase.cpp */,
1EBA430114B97ABF003CC0EA /* SourcePhrase.h */,
1EBA430214B97ABF003CC0EA /* TargetPhrase.cpp */,
1EBA430314B97ABF003CC0EA /* TargetPhrase.h */,
1EBA430414B97ABF003CC0EA /* TargetPhraseCollection.cpp */,
1EBA430514B97ABF003CC0EA /* TargetPhraseCollection.h */,
1EBA430614B97ABF003CC0EA /* Vocab.cpp */,
1EBA430714B97ABF003CC0EA /* Vocab.h */,
1EBA430814B97ABF003CC0EA /* Word.cpp */,
1EBA430914B97ABF003CC0EA /* Word.h */,
);
name = Source;
sourceTree = "<group>";
@ -111,14 +111,14 @@
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
1ED4FB1A11BDBA2B004E826A /* OnDiskWrapper.h in Headers */,
1ED4FB1C11BDBA2B004E826A /* Phrase.h in Headers */,
1ED4FB1E11BDBA2B004E826A /* PhraseNode.h in Headers */,
1ED4FB2011BDBA2B004E826A /* SourcePhrase.h in Headers */,
1ED4FB2211BDBA2B004E826A /* TargetPhrase.h in Headers */,
1ED4FB2411BDBA2B004E826A /* TargetPhraseCollection.h in Headers */,
1ED4FB2611BDBA2B004E826A /* Vocab.h in Headers */,
1ED4FB2811BDBA2B004E826A /* Word.h in Headers */,
1EBA430D14B97ABF003CC0EA /* OnDiskWrapper.h in Headers */,
1EBA430F14B97ABF003CC0EA /* Phrase.h in Headers */,
1EBA431114B97ABF003CC0EA /* PhraseNode.h in Headers */,
1EBA431314B97ABF003CC0EA /* SourcePhrase.h in Headers */,
1EBA431514B97ABF003CC0EA /* TargetPhrase.h in Headers */,
1EBA431714B97ABF003CC0EA /* TargetPhraseCollection.h in Headers */,
1EBA431914B97ABF003CC0EA /* Vocab.h in Headers */,
1EBA431B14B97ABF003CC0EA /* Word.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -171,14 +171,14 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1ED4FB1911BDBA2B004E826A /* OnDiskWrapper.cpp in Sources */,
1ED4FB1B11BDBA2B004E826A /* Phrase.cpp in Sources */,
1ED4FB1D11BDBA2B004E826A /* PhraseNode.cpp in Sources */,
1ED4FB1F11BDBA2B004E826A /* SourcePhrase.cpp in Sources */,
1ED4FB2111BDBA2B004E826A /* TargetPhrase.cpp in Sources */,
1ED4FB2311BDBA2B004E826A /* TargetPhraseCollection.cpp in Sources */,
1ED4FB2511BDBA2B004E826A /* Vocab.cpp in Sources */,
1ED4FB2711BDBA2B004E826A /* Word.cpp in Sources */,
1EBA430C14B97ABF003CC0EA /* OnDiskWrapper.cpp in Sources */,
1EBA430E14B97ABF003CC0EA /* Phrase.cpp in Sources */,
1EBA431014B97ABF003CC0EA /* PhraseNode.cpp in Sources */,
1EBA431214B97ABF003CC0EA /* SourcePhrase.cpp in Sources */,
1EBA431414B97ABF003CC0EA /* TargetPhrase.cpp in Sources */,
1EBA431614B97ABF003CC0EA /* TargetPhraseCollection.cpp in Sources */,
1EBA431814B97ABF003CC0EA /* Vocab.cpp in Sources */,
1EBA431A14B97ABF003CC0EA /* Word.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -196,8 +196,7 @@
GCC_OPTIMIZATION_LEVEL = 0;
HEADER_SEARCH_PATHS = (
/opt/local/include,
../kenlm,
../,
../..,
);
INSTALL_PATH = /usr/local/lib;
PRODUCT_NAME = OnDiskPt;
@ -212,8 +211,7 @@
GCC_MODEL_TUNING = G5;
HEADER_SEARCH_PATHS = (
/opt/local/include,
../kenlm,
../,
../..,
);
INSTALL_PATH = /usr/local/lib;
PRODUCT_NAME = OnDiskPt;

View File

@ -0,0 +1,131 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/OnDiskPt"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/OnDiskPt/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="OnDiskPt"/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978" name="Debug" parent="cdt.managedbuild.config.gnu.macosx.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.debug.725420545" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.debug.1586272140" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.debug"/>
<builder buildPath="${workspace_loc:/OnDiskPt/Debug}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.debug.1909553559" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug.30521110" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug.478334849" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.1328561226" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug.108239817" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1825070846" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.901309550" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.2001028511" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug">
<option id="gnu.cpp.compilermacosx.exe.debug.option.optimization.level.676959181" name="Optimization Level" superClass="gnu.cpp.compilermacosx.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level.1484480101" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1556683035" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
<listOptionValue builtIn="false" value="/opt/local/include"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1930757481" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.1161943634" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.macosx.exe.debug.option.optimization.level.576529322" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.debug.option.debugging.level.426851981" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1925590121" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978.726316251" name="Main.h" rcbsApplicability="disable" resourcePath="Main.h" toolsToInvoke=""/>
<sourceEntries>
<entry excluding="Main.h|Main.cpp" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.macosx.exe.release.701931933">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.macosx.exe.release.701931933" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.macosx.exe.release.701931933" name="Release" parent="cdt.managedbuild.config.macosx.exe.release">
<folderInfo id="cdt.managedbuild.config.macosx.exe.release.701931933." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.release.5036266" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.release.396818757" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.release"/>
<builder buildPath="${workspace_loc:/OnDiskPt/Release}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.release.1081186575" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release.894082374" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release.640159085" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.1673993744" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release.596082362" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.851420859" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.385722535" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.983488413" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release">
<option id="gnu.cpp.compiler.macosx.exe.release.option.optimization.level.21058138" name="Optimization Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.release.option.debugging.level.1704184753" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1034344194" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.1029035384" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.macosx.exe.release.option.optimization.level.171488636" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.release.option.debugging.level.843129626" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1014721928" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="OnDiskPt.cdt.managedbuild.target.macosx.exe.542902806" name="Executable" projectType="cdt.managedbuild.target.macosx.exe"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.701931933;cdt.managedbuild.config.macosx.exe.release.701931933.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.1029035384;cdt.managedbuild.tool.gnu.c.compiler.input.1014721928">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978;cdt.managedbuild.config.gnu.macosx.exe.debug.846397978.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.1161943634;cdt.managedbuild.tool.gnu.c.compiler.input.1925590121">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.846397978;cdt.managedbuild.config.gnu.macosx.exe.debug.846397978.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.2001028511;cdt.managedbuild.tool.gnu.cpp.compiler.input.1930757481">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.701931933;cdt.managedbuild.config.macosx.exe.release.701931933.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.983488413;cdt.managedbuild.tool.gnu.cpp.compiler.input.1034344194">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="refreshScope" versionNumber="1">
<resource resourceType="PROJECT" workspacePath="/OnDiskPt"/>
</storageModule>
</cproject>

View File

@ -0,0 +1,185 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>OnDiskPt</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/OnDiskPt/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>Jamfile</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Jamfile</locationURI>
</link>
<link>
<name>Main.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Main.cpp</locationURI>
</link>
<link>
<name>Main.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Main.h</locationURI>
</link>
<link>
<name>OnDiskWrapper.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/OnDiskWrapper.cpp</locationURI>
</link>
<link>
<name>OnDiskWrapper.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/OnDiskWrapper.h</locationURI>
</link>
<link>
<name>Phrase.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Phrase.cpp</locationURI>
</link>
<link>
<name>Phrase.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Phrase.h</locationURI>
</link>
<link>
<name>PhraseNode.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/PhraseNode.cpp</locationURI>
</link>
<link>
<name>PhraseNode.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/PhraseNode.h</locationURI>
</link>
<link>
<name>SourcePhrase.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/SourcePhrase.cpp</locationURI>
</link>
<link>
<name>SourcePhrase.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/SourcePhrase.h</locationURI>
</link>
<link>
<name>TargetPhrase.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/TargetPhrase.cpp</locationURI>
</link>
<link>
<name>TargetPhrase.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/TargetPhrase.h</locationURI>
</link>
<link>
<name>TargetPhraseCollection.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/TargetPhraseCollection.cpp</locationURI>
</link>
<link>
<name>TargetPhraseCollection.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/TargetPhraseCollection.h</locationURI>
</link>
<link>
<name>Vocab.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Vocab.cpp</locationURI>
</link>
<link>
<name>Vocab.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Vocab.h</locationURI>
</link>
<link>
<name>Word.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Word.cpp</locationURI>
</link>
<link>
<name>Word.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/Word.h</locationURI>
</link>
<link>
<name>queryOnDiskPt.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/OnDiskPt/queryOnDiskPt.cpp</locationURI>
</link>
</linkedResources>
</projectDescription>

View File

@ -0,0 +1,159 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<None Include="..\..\lm\bhiksha.hh" />
<None Include="..\..\lm\binary_format.hh" />
<None Include="..\..\lm\blank.hh" />
<None Include="..\..\lm\clean.sh" />
<None Include="..\..\lm\compile.sh" />
<None Include="..\..\lm\config.hh" />
<None Include="..\..\lm\COPYING" />
<None Include="..\..\lm\COPYING.LESSER" />
<None Include="..\..\lm\enumerate_vocab.hh" />
<None Include="..\..\lm\facade.hh" />
<None Include="..\..\lm\Jamfile" />
<None Include="..\..\lm\left.hh" />
<None Include="..\..\lm\LICENSE" />
<None Include="..\..\lm\lm_exception.hh" />
<None Include="..\..\lm\max_order.hh" />
<None Include="..\..\lm\model.hh" />
<None Include="..\..\lm\model_type.hh" />
<None Include="..\..\lm\quantize.hh" />
<None Include="..\..\lm\README" />
<None Include="..\..\lm\read_arpa.hh" />
<None Include="..\..\lm\return.hh" />
<None Include="..\..\lm\search_hashed.hh" />
<None Include="..\..\lm\search_trie.hh" />
<None Include="..\..\lm\test.arpa" />
<None Include="..\..\lm\test.sh" />
<None Include="..\..\lm\test_nounk.arpa" />
<None Include="..\..\lm\trie.hh" />
<None Include="..\..\lm\trie_sort.hh" />
<None Include="..\..\lm\virtual_interface.hh" />
<None Include="..\..\lm\vocab.hh" />
<None Include="..\..\lm\weights.hh" />
<None Include="..\..\lm\word_index.hh" />
<None Include="..\..\util\bit_packing.hh" />
<None Include="..\..\util\check.hh" />
<None Include="..\..\util\COPYING" />
<None Include="..\..\util\COPYING.LESSER" />
<None Include="..\..\util\ersatz_progress.hh" />
<None Include="..\..\util\exception.hh" />
<None Include="..\..\util\file.hh" />
<None Include="..\..\util\file_piece.hh" />
<None Include="..\..\util\getopt.hh" />
<None Include="..\..\util\have.hh" />
<None Include="..\..\util\Jamfile" />
<None Include="..\..\util\joint_sort.hh" />
<None Include="..\..\util\key_value_packing.hh" />
<None Include="..\..\util\LICENSE" />
<None Include="..\..\util\mmap.hh" />
<None Include="..\..\util\murmur_hash.hh" />
<None Include="..\..\util\probing_hash_table.hh" />
<None Include="..\..\util\proxy_iterator.hh" />
<None Include="..\..\util\scoped.hh" />
<None Include="..\..\util\sized_iterator.hh" />
<None Include="..\..\util\sorted_uniform.hh" />
<None Include="..\..\util\string_piece.hh" />
<None Include="..\..\util\tokenize_piece.hh" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\lm\bhiksha.cc" />
<ClCompile Include="..\..\lm\binary_format.cc" />
<ClCompile Include="..\..\lm\build_binary.cc" />
<ClCompile Include="..\..\lm\config.cc" />
<ClCompile Include="..\..\lm\left_test.cc" />
<ClCompile Include="..\..\lm\lm_exception.cc" />
<ClCompile Include="..\..\lm\model.cc" />
<ClCompile Include="..\..\lm\ngram_query.cc" />
<ClCompile Include="..\..\lm\quantize.cc" />
<ClCompile Include="..\..\lm\read_arpa.cc" />
<ClCompile Include="..\..\lm\search_hashed.cc" />
<ClCompile Include="..\..\lm\search_trie.cc" />
<ClCompile Include="..\..\lm\trie.cc" />
<ClCompile Include="..\..\lm\trie_sort.cc" />
<ClCompile Include="..\..\lm\virtual_interface.cc" />
<ClCompile Include="..\..\lm\vocab.cc" />
<ClCompile Include="..\..\util\bit_packing.cc" />
<ClCompile Include="..\..\util\ersatz_progress.cc" />
<ClCompile Include="..\..\util\exception.cc" />
<ClCompile Include="..\..\util\file.cc" />
<ClCompile Include="..\..\util\file_piece.cc" />
<ClCompile Include="..\..\util\getopt.c" />
<ClCompile Include="..\..\util\mmap.cc" />
<ClCompile Include="..\..\util\murmur_hash.cc" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{A5402E0B-6ED7-465C-9669-E4124A0CDDCB}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>kenlm</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup />
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../..</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../..</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,584 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
1EBA44AD14B97E22003CC0EA /* bhiksha.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA442B14B97E22003CC0EA /* bhiksha.cc */; };
1EBA44AE14B97E22003CC0EA /* bhiksha.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA442C14B97E22003CC0EA /* bhiksha.hh */; };
1EBA44D414B97E22003CC0EA /* binary_format.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA447D14B97E22003CC0EA /* binary_format.cc */; };
1EBA44D514B97E22003CC0EA /* binary_format.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA447E14B97E22003CC0EA /* binary_format.hh */; };
1EBA44D614B97E22003CC0EA /* blank.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA447F14B97E22003CC0EA /* blank.hh */; };
1EBA44D814B97E22003CC0EA /* config.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA448314B97E22003CC0EA /* config.cc */; };
1EBA44D914B97E22003CC0EA /* config.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA448414B97E22003CC0EA /* config.hh */; };
1EBA44DA14B97E22003CC0EA /* enumerate_vocab.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA448714B97E22003CC0EA /* enumerate_vocab.hh */; };
1EBA44DB14B97E22003CC0EA /* facade.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA448814B97E22003CC0EA /* facade.hh */; };
1EBA44DC14B97E22003CC0EA /* Jamfile in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA448914B97E22003CC0EA /* Jamfile */; };
1EBA44DD14B97E22003CC0EA /* left_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA448A14B97E22003CC0EA /* left_test.cc */; };
1EBA44DE14B97E22003CC0EA /* left.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA448B14B97E22003CC0EA /* left.hh */; };
1EBA44DF14B97E22003CC0EA /* lm_exception.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA448D14B97E22003CC0EA /* lm_exception.cc */; };
1EBA44E014B97E22003CC0EA /* lm_exception.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA448E14B97E22003CC0EA /* lm_exception.hh */; };
1EBA44E114B97E22003CC0EA /* max_order.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA448F14B97E22003CC0EA /* max_order.hh */; };
1EBA44E214B97E22003CC0EA /* model_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449014B97E22003CC0EA /* model_test.cc */; };
1EBA44E314B97E22003CC0EA /* model_type.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449114B97E22003CC0EA /* model_type.hh */; };
1EBA44E414B97E22003CC0EA /* model.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449214B97E22003CC0EA /* model.cc */; };
1EBA44E514B97E22003CC0EA /* model.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449314B97E22003CC0EA /* model.hh */; };
1EBA44E614B97E22003CC0EA /* ngram_query.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449414B97E22003CC0EA /* ngram_query.cc */; };
1EBA44E714B97E22003CC0EA /* ngram_query.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449514B97E22003CC0EA /* ngram_query.hh */; };
1EBA44E814B97E22003CC0EA /* quantize.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449614B97E22003CC0EA /* quantize.cc */; };
1EBA44E914B97E22003CC0EA /* quantize.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449714B97E22003CC0EA /* quantize.hh */; };
1EBA44EA14B97E22003CC0EA /* read_arpa.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449814B97E22003CC0EA /* read_arpa.cc */; };
1EBA44EB14B97E22003CC0EA /* read_arpa.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449914B97E22003CC0EA /* read_arpa.hh */; };
1EBA44EC14B97E22003CC0EA /* return.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449B14B97E22003CC0EA /* return.hh */; };
1EBA44ED14B97E22003CC0EA /* search_hashed.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449C14B97E22003CC0EA /* search_hashed.cc */; };
1EBA44EE14B97E22003CC0EA /* search_hashed.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449D14B97E22003CC0EA /* search_hashed.hh */; };
1EBA44EF14B97E22003CC0EA /* search_trie.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA449E14B97E22003CC0EA /* search_trie.cc */; };
1EBA44F014B97E22003CC0EA /* search_trie.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA449F14B97E22003CC0EA /* search_trie.hh */; };
1EBA44F114B97E22003CC0EA /* trie_sort.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA44A314B97E22003CC0EA /* trie_sort.cc */; };
1EBA44F214B97E22003CC0EA /* trie_sort.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA44A414B97E22003CC0EA /* trie_sort.hh */; };
1EBA44F314B97E22003CC0EA /* trie.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA44A514B97E22003CC0EA /* trie.cc */; };
1EBA44F414B97E22003CC0EA /* trie.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA44A614B97E22003CC0EA /* trie.hh */; };
1EBA44F514B97E22003CC0EA /* virtual_interface.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA44A714B97E22003CC0EA /* virtual_interface.cc */; };
1EBA44F614B97E22003CC0EA /* virtual_interface.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA44A814B97E22003CC0EA /* virtual_interface.hh */; };
1EBA44F714B97E22003CC0EA /* vocab.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA44A914B97E22003CC0EA /* vocab.cc */; };
1EBA44F814B97E22003CC0EA /* vocab.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA44AA14B97E22003CC0EA /* vocab.hh */; };
1EBA44F914B97E22003CC0EA /* weights.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA44AB14B97E22003CC0EA /* weights.hh */; };
1EBA44FA14B97E22003CC0EA /* word_index.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA44AC14B97E22003CC0EA /* word_index.hh */; };
1EBA457F14B97E92003CC0EA /* bit_packing_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA453614B97E92003CC0EA /* bit_packing_test.cc */; };
1EBA458014B97E92003CC0EA /* bit_packing.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA453714B97E92003CC0EA /* bit_packing.cc */; };
1EBA458114B97E92003CC0EA /* bit_packing.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA453814B97E92003CC0EA /* bit_packing.hh */; };
1EBA458214B97E92003CC0EA /* check.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA453914B97E92003CC0EA /* check.hh */; };
1EBA458314B97E92003CC0EA /* ersatz_progress.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA453C14B97E92003CC0EA /* ersatz_progress.cc */; };
1EBA458414B97E92003CC0EA /* ersatz_progress.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA453D14B97E92003CC0EA /* ersatz_progress.hh */; };
1EBA458514B97E92003CC0EA /* exception.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA453E14B97E92003CC0EA /* exception.cc */; };
1EBA458614B97E92003CC0EA /* exception.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA453F14B97E92003CC0EA /* exception.hh */; };
1EBA458714B97E92003CC0EA /* file_piece_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454014B97E92003CC0EA /* file_piece_test.cc */; };
1EBA458814B97E92003CC0EA /* file_piece.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454114B97E92003CC0EA /* file_piece.cc */; };
1EBA458914B97E92003CC0EA /* file_piece.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA454214B97E92003CC0EA /* file_piece.hh */; };
1EBA458A14B97E92003CC0EA /* file.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454314B97E92003CC0EA /* file.cc */; };
1EBA458B14B97E92003CC0EA /* file.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA454414B97E92003CC0EA /* file.hh */; };
1EBA458C14B97E92003CC0EA /* getopt.c in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454514B97E92003CC0EA /* getopt.c */; };
1EBA458D14B97E92003CC0EA /* getopt.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA454614B97E92003CC0EA /* getopt.hh */; };
1EBA458E14B97E92003CC0EA /* have.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA454714B97E92003CC0EA /* have.hh */; };
1EBA458F14B97E92003CC0EA /* Jamfile in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454814B97E92003CC0EA /* Jamfile */; };
1EBA459014B97E92003CC0EA /* joint_sort_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454914B97E92003CC0EA /* joint_sort_test.cc */; };
1EBA459114B97E92003CC0EA /* joint_sort.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA454A14B97E92003CC0EA /* joint_sort.hh */; };
1EBA459414B97E92003CC0EA /* mmap.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA454E14B97E92003CC0EA /* mmap.cc */; };
1EBA459514B97E92003CC0EA /* mmap.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA454F14B97E92003CC0EA /* mmap.hh */; };
1EBA459614B97E92003CC0EA /* murmur_hash.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA455014B97E92003CC0EA /* murmur_hash.cc */; };
1EBA459714B97E92003CC0EA /* murmur_hash.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455114B97E92003CC0EA /* murmur_hash.hh */; };
1EBA459814B97E92003CC0EA /* probing_hash_table_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA455214B97E92003CC0EA /* probing_hash_table_test.cc */; };
1EBA459914B97E92003CC0EA /* probing_hash_table.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455314B97E92003CC0EA /* probing_hash_table.hh */; };
1EBA459A14B97E92003CC0EA /* proxy_iterator.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455414B97E92003CC0EA /* proxy_iterator.hh */; };
1EBA459B14B97E92003CC0EA /* scoped.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455514B97E92003CC0EA /* scoped.hh */; };
1EBA459C14B97E92003CC0EA /* sized_iterator.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455614B97E92003CC0EA /* sized_iterator.hh */; };
1EBA459D14B97E92003CC0EA /* sorted_uniform_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA455714B97E92003CC0EA /* sorted_uniform_test.cc */; };
1EBA459E14B97E92003CC0EA /* sorted_uniform.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455814B97E92003CC0EA /* sorted_uniform.hh */; };
1EBA459F14B97E92003CC0EA /* string_piece.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455914B97E92003CC0EA /* string_piece.hh */; };
1EBA45A014B97E92003CC0EA /* tokenize_piece_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EBA455A14B97E92003CC0EA /* tokenize_piece_test.cc */; };
1EBA45A114B97E92003CC0EA /* tokenize_piece.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EBA455B14B97E92003CC0EA /* tokenize_piece.hh */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
1EBA45A314B97E93003CC0EA /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EBA455C14B97E92003CC0EA /* util.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 1EE8C2711476A262002496F2;
remoteInfo = util;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
1EBA442B14B97E22003CC0EA /* bhiksha.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bhiksha.cc; path = ../../lm/bhiksha.cc; sourceTree = "<group>"; };
1EBA442C14B97E22003CC0EA /* bhiksha.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = bhiksha.hh; path = ../../lm/bhiksha.hh; sourceTree = "<group>"; };
1EBA447D14B97E22003CC0EA /* binary_format.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = binary_format.cc; path = ../../lm/binary_format.cc; sourceTree = "<group>"; };
1EBA447E14B97E22003CC0EA /* binary_format.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = binary_format.hh; path = ../../lm/binary_format.hh; sourceTree = "<group>"; };
1EBA447F14B97E22003CC0EA /* blank.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = blank.hh; path = ../../lm/blank.hh; sourceTree = "<group>"; };
1EBA448114B97E22003CC0EA /* clean.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = clean.sh; path = ../../lm/clean.sh; sourceTree = "<group>"; };
1EBA448214B97E22003CC0EA /* compile.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = compile.sh; path = ../../lm/compile.sh; sourceTree = "<group>"; };
1EBA448314B97E22003CC0EA /* config.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = config.cc; path = ../../lm/config.cc; sourceTree = "<group>"; };
1EBA448414B97E22003CC0EA /* config.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = config.hh; path = ../../lm/config.hh; sourceTree = "<group>"; };
1EBA448514B97E22003CC0EA /* COPYING */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = COPYING; path = ../../lm/COPYING; sourceTree = "<group>"; };
1EBA448614B97E22003CC0EA /* COPYING.LESSER */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = COPYING.LESSER; path = ../../lm/COPYING.LESSER; sourceTree = "<group>"; };
1EBA448714B97E22003CC0EA /* enumerate_vocab.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = enumerate_vocab.hh; path = ../../lm/enumerate_vocab.hh; sourceTree = "<group>"; };
1EBA448814B97E22003CC0EA /* facade.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = facade.hh; path = ../../lm/facade.hh; sourceTree = "<group>"; };
1EBA448914B97E22003CC0EA /* Jamfile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.jam; name = Jamfile; path = ../../lm/Jamfile; sourceTree = "<group>"; };
1EBA448A14B97E22003CC0EA /* left_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = left_test.cc; path = ../../lm/left_test.cc; sourceTree = "<group>"; };
1EBA448B14B97E22003CC0EA /* left.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = left.hh; path = ../../lm/left.hh; sourceTree = "<group>"; };
1EBA448C14B97E22003CC0EA /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LICENSE; path = ../../lm/LICENSE; sourceTree = "<group>"; };
1EBA448D14B97E22003CC0EA /* lm_exception.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = lm_exception.cc; path = ../../lm/lm_exception.cc; sourceTree = "<group>"; };
1EBA448E14B97E22003CC0EA /* lm_exception.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = lm_exception.hh; path = ../../lm/lm_exception.hh; sourceTree = "<group>"; };
1EBA448F14B97E22003CC0EA /* max_order.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = max_order.hh; path = ../../lm/max_order.hh; sourceTree = "<group>"; };
1EBA449014B97E22003CC0EA /* model_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = model_test.cc; path = ../../lm/model_test.cc; sourceTree = "<group>"; };
1EBA449114B97E22003CC0EA /* model_type.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = model_type.hh; path = ../../lm/model_type.hh; sourceTree = "<group>"; };
1EBA449214B97E22003CC0EA /* model.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = model.cc; path = ../../lm/model.cc; sourceTree = "<group>"; };
1EBA449314B97E22003CC0EA /* model.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = model.hh; path = ../../lm/model.hh; sourceTree = "<group>"; };
1EBA449414B97E22003CC0EA /* ngram_query.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ngram_query.cc; path = ../../lm/ngram_query.cc; sourceTree = "<group>"; };
1EBA449514B97E22003CC0EA /* ngram_query.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = ngram_query.hh; path = ../../lm/ngram_query.hh; sourceTree = "<group>"; };
1EBA449614B97E22003CC0EA /* quantize.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = quantize.cc; path = ../../lm/quantize.cc; sourceTree = "<group>"; };
1EBA449714B97E22003CC0EA /* quantize.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = quantize.hh; path = ../../lm/quantize.hh; sourceTree = "<group>"; };
1EBA449814B97E22003CC0EA /* read_arpa.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = read_arpa.cc; path = ../../lm/read_arpa.cc; sourceTree = "<group>"; };
1EBA449914B97E22003CC0EA /* read_arpa.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = read_arpa.hh; path = ../../lm/read_arpa.hh; sourceTree = "<group>"; };
1EBA449A14B97E22003CC0EA /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README; path = ../../lm/README; sourceTree = "<group>"; };
1EBA449B14B97E22003CC0EA /* return.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = return.hh; path = ../../lm/return.hh; sourceTree = "<group>"; };
1EBA449C14B97E22003CC0EA /* search_hashed.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = search_hashed.cc; path = ../../lm/search_hashed.cc; sourceTree = "<group>"; };
1EBA449D14B97E22003CC0EA /* search_hashed.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = search_hashed.hh; path = ../../lm/search_hashed.hh; sourceTree = "<group>"; };
1EBA449E14B97E22003CC0EA /* search_trie.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = search_trie.cc; path = ../../lm/search_trie.cc; sourceTree = "<group>"; };
1EBA449F14B97E22003CC0EA /* search_trie.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = search_trie.hh; path = ../../lm/search_trie.hh; sourceTree = "<group>"; };
1EBA44A014B97E22003CC0EA /* test_nounk.arpa */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = test_nounk.arpa; path = ../../lm/test_nounk.arpa; sourceTree = "<group>"; };
1EBA44A114B97E22003CC0EA /* test.arpa */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = test.arpa; path = ../../lm/test.arpa; sourceTree = "<group>"; };
1EBA44A214B97E22003CC0EA /* test.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; name = test.sh; path = ../../lm/test.sh; sourceTree = "<group>"; };
1EBA44A314B97E22003CC0EA /* trie_sort.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = trie_sort.cc; path = ../../lm/trie_sort.cc; sourceTree = "<group>"; };
1EBA44A414B97E22003CC0EA /* trie_sort.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = trie_sort.hh; path = ../../lm/trie_sort.hh; sourceTree = "<group>"; };
1EBA44A514B97E22003CC0EA /* trie.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = trie.cc; path = ../../lm/trie.cc; sourceTree = "<group>"; };
1EBA44A614B97E22003CC0EA /* trie.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = trie.hh; path = ../../lm/trie.hh; sourceTree = "<group>"; };
1EBA44A714B97E22003CC0EA /* virtual_interface.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = virtual_interface.cc; path = ../../lm/virtual_interface.cc; sourceTree = "<group>"; };
1EBA44A814B97E22003CC0EA /* virtual_interface.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = virtual_interface.hh; path = ../../lm/virtual_interface.hh; sourceTree = "<group>"; };
1EBA44A914B97E22003CC0EA /* vocab.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = vocab.cc; path = ../../lm/vocab.cc; sourceTree = "<group>"; };
1EBA44AA14B97E22003CC0EA /* vocab.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = vocab.hh; path = ../../lm/vocab.hh; sourceTree = "<group>"; };
1EBA44AB14B97E22003CC0EA /* weights.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = weights.hh; path = ../../lm/weights.hh; sourceTree = "<group>"; };
1EBA44AC14B97E22003CC0EA /* word_index.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = word_index.hh; path = ../../lm/word_index.hh; sourceTree = "<group>"; };
1EBA453614B97E92003CC0EA /* bit_packing_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bit_packing_test.cc; path = ../../util/bit_packing_test.cc; sourceTree = "<group>"; };
1EBA453714B97E92003CC0EA /* bit_packing.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = bit_packing.cc; path = ../../util/bit_packing.cc; sourceTree = "<group>"; };
1EBA453814B97E92003CC0EA /* bit_packing.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = bit_packing.hh; path = ../../util/bit_packing.hh; sourceTree = "<group>"; };
1EBA453914B97E92003CC0EA /* check.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = check.hh; path = ../../util/check.hh; sourceTree = "<group>"; };
1EBA453A14B97E92003CC0EA /* COPYING */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = COPYING; path = ../../util/COPYING; sourceTree = "<group>"; };
1EBA453B14B97E92003CC0EA /* COPYING.LESSER */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = COPYING.LESSER; path = ../../util/COPYING.LESSER; sourceTree = "<group>"; };
1EBA453C14B97E92003CC0EA /* ersatz_progress.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = ersatz_progress.cc; path = ../../util/ersatz_progress.cc; sourceTree = "<group>"; };
1EBA453D14B97E92003CC0EA /* ersatz_progress.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = ersatz_progress.hh; path = ../../util/ersatz_progress.hh; sourceTree = "<group>"; };
1EBA453E14B97E92003CC0EA /* exception.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = exception.cc; path = ../../util/exception.cc; sourceTree = "<group>"; };
1EBA453F14B97E92003CC0EA /* exception.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = exception.hh; path = ../../util/exception.hh; sourceTree = "<group>"; };
1EBA454014B97E92003CC0EA /* file_piece_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = file_piece_test.cc; path = ../../util/file_piece_test.cc; sourceTree = "<group>"; };
1EBA454114B97E92003CC0EA /* file_piece.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = file_piece.cc; path = ../../util/file_piece.cc; sourceTree = "<group>"; };
1EBA454214B97E92003CC0EA /* file_piece.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = file_piece.hh; path = ../../util/file_piece.hh; sourceTree = "<group>"; };
1EBA454314B97E92003CC0EA /* file.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = file.cc; path = ../../util/file.cc; sourceTree = "<group>"; };
1EBA454414B97E92003CC0EA /* file.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = file.hh; path = ../../util/file.hh; sourceTree = "<group>"; };
1EBA454514B97E92003CC0EA /* getopt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = getopt.c; path = ../../util/getopt.c; sourceTree = "<group>"; };
1EBA454614B97E92003CC0EA /* getopt.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = getopt.hh; path = ../../util/getopt.hh; sourceTree = "<group>"; };
1EBA454714B97E92003CC0EA /* have.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = have.hh; path = ../../util/have.hh; sourceTree = "<group>"; };
1EBA454814B97E92003CC0EA /* Jamfile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.jam; name = Jamfile; path = ../../util/Jamfile; sourceTree = "<group>"; };
1EBA454914B97E92003CC0EA /* joint_sort_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = joint_sort_test.cc; path = ../../util/joint_sort_test.cc; sourceTree = "<group>"; };
1EBA454A14B97E92003CC0EA /* joint_sort.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = joint_sort.hh; path = ../../util/joint_sort.hh; sourceTree = "<group>"; };
1EBA454D14B97E92003CC0EA /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LICENSE; path = ../../util/LICENSE; sourceTree = "<group>"; };
1EBA454E14B97E92003CC0EA /* mmap.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mmap.cc; path = ../../util/mmap.cc; sourceTree = "<group>"; };
1EBA454F14B97E92003CC0EA /* mmap.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = mmap.hh; path = ../../util/mmap.hh; sourceTree = "<group>"; };
1EBA455014B97E92003CC0EA /* murmur_hash.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = murmur_hash.cc; path = ../../util/murmur_hash.cc; sourceTree = "<group>"; };
1EBA455114B97E92003CC0EA /* murmur_hash.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = murmur_hash.hh; path = ../../util/murmur_hash.hh; sourceTree = "<group>"; };
1EBA455214B97E92003CC0EA /* probing_hash_table_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = probing_hash_table_test.cc; path = ../../util/probing_hash_table_test.cc; sourceTree = "<group>"; };
1EBA455314B97E92003CC0EA /* probing_hash_table.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = probing_hash_table.hh; path = ../../util/probing_hash_table.hh; sourceTree = "<group>"; };
1EBA455414B97E92003CC0EA /* proxy_iterator.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = proxy_iterator.hh; path = ../../util/proxy_iterator.hh; sourceTree = "<group>"; };
1EBA455514B97E92003CC0EA /* scoped.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = scoped.hh; path = ../../util/scoped.hh; sourceTree = "<group>"; };
1EBA455614B97E92003CC0EA /* sized_iterator.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = sized_iterator.hh; path = ../../util/sized_iterator.hh; sourceTree = "<group>"; };
1EBA455714B97E92003CC0EA /* sorted_uniform_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = sorted_uniform_test.cc; path = ../../util/sorted_uniform_test.cc; sourceTree = "<group>"; };
1EBA455814B97E92003CC0EA /* sorted_uniform.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = sorted_uniform.hh; path = ../../util/sorted_uniform.hh; sourceTree = "<group>"; };
1EBA455914B97E92003CC0EA /* string_piece.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = string_piece.hh; path = ../../util/string_piece.hh; sourceTree = "<group>"; };
1EBA455A14B97E92003CC0EA /* tokenize_piece_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = tokenize_piece_test.cc; path = ../../util/tokenize_piece_test.cc; sourceTree = "<group>"; };
1EBA455B14B97E92003CC0EA /* tokenize_piece.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; name = tokenize_piece.hh; path = ../../util/tokenize_piece.hh; sourceTree = "<group>"; };
1EBA455C14B97E92003CC0EA /* util.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = util.xcodeproj; path = ../../util/util.xcodeproj; sourceTree = "<group>"; };
1EE8C2E91476A48E002496F2 /* liblm.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblm.a; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
1EE8C2E61476A48E002496F2 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
1EBA44FB14B97E6A003CC0EA /* lm */ = {
isa = PBXGroup;
children = (
1EBA442B14B97E22003CC0EA /* bhiksha.cc */,
1EBA442C14B97E22003CC0EA /* bhiksha.hh */,
1EBA447D14B97E22003CC0EA /* binary_format.cc */,
1EBA447E14B97E22003CC0EA /* binary_format.hh */,
1EBA447F14B97E22003CC0EA /* blank.hh */,
1EBA448114B97E22003CC0EA /* clean.sh */,
1EBA448214B97E22003CC0EA /* compile.sh */,
1EBA448314B97E22003CC0EA /* config.cc */,
1EBA448414B97E22003CC0EA /* config.hh */,
1EBA448514B97E22003CC0EA /* COPYING */,
1EBA448614B97E22003CC0EA /* COPYING.LESSER */,
1EBA448714B97E22003CC0EA /* enumerate_vocab.hh */,
1EBA448814B97E22003CC0EA /* facade.hh */,
1EBA448914B97E22003CC0EA /* Jamfile */,
1EBA448A14B97E22003CC0EA /* left_test.cc */,
1EBA448B14B97E22003CC0EA /* left.hh */,
1EBA448C14B97E22003CC0EA /* LICENSE */,
1EBA448D14B97E22003CC0EA /* lm_exception.cc */,
1EBA448E14B97E22003CC0EA /* lm_exception.hh */,
1EBA448F14B97E22003CC0EA /* max_order.hh */,
1EBA449014B97E22003CC0EA /* model_test.cc */,
1EBA449114B97E22003CC0EA /* model_type.hh */,
1EBA449214B97E22003CC0EA /* model.cc */,
1EBA449314B97E22003CC0EA /* model.hh */,
1EBA449414B97E22003CC0EA /* ngram_query.cc */,
1EBA449514B97E22003CC0EA /* ngram_query.hh */,
1EBA449614B97E22003CC0EA /* quantize.cc */,
1EBA449714B97E22003CC0EA /* quantize.hh */,
1EBA449814B97E22003CC0EA /* read_arpa.cc */,
1EBA449914B97E22003CC0EA /* read_arpa.hh */,
1EBA449A14B97E22003CC0EA /* README */,
1EBA449B14B97E22003CC0EA /* return.hh */,
1EBA449C14B97E22003CC0EA /* search_hashed.cc */,
1EBA449D14B97E22003CC0EA /* search_hashed.hh */,
1EBA449E14B97E22003CC0EA /* search_trie.cc */,
1EBA449F14B97E22003CC0EA /* search_trie.hh */,
1EBA44A014B97E22003CC0EA /* test_nounk.arpa */,
1EBA44A114B97E22003CC0EA /* test.arpa */,
1EBA44A214B97E22003CC0EA /* test.sh */,
1EBA44A314B97E22003CC0EA /* trie_sort.cc */,
1EBA44A414B97E22003CC0EA /* trie_sort.hh */,
1EBA44A514B97E22003CC0EA /* trie.cc */,
1EBA44A614B97E22003CC0EA /* trie.hh */,
1EBA44A714B97E22003CC0EA /* virtual_interface.cc */,
1EBA44A814B97E22003CC0EA /* virtual_interface.hh */,
1EBA44A914B97E22003CC0EA /* vocab.cc */,
1EBA44AA14B97E22003CC0EA /* vocab.hh */,
1EBA44AB14B97E22003CC0EA /* weights.hh */,
1EBA44AC14B97E22003CC0EA /* word_index.hh */,
);
name = lm;
sourceTree = "<group>";
};
1EBA44FC14B97E81003CC0EA /* util */ = {
isa = PBXGroup;
children = (
1EBA453614B97E92003CC0EA /* bit_packing_test.cc */,
1EBA453714B97E92003CC0EA /* bit_packing.cc */,
1EBA453814B97E92003CC0EA /* bit_packing.hh */,
1EBA453914B97E92003CC0EA /* check.hh */,
1EBA453A14B97E92003CC0EA /* COPYING */,
1EBA453B14B97E92003CC0EA /* COPYING.LESSER */,
1EBA453C14B97E92003CC0EA /* ersatz_progress.cc */,
1EBA453D14B97E92003CC0EA /* ersatz_progress.hh */,
1EBA453E14B97E92003CC0EA /* exception.cc */,
1EBA453F14B97E92003CC0EA /* exception.hh */,
1EBA454014B97E92003CC0EA /* file_piece_test.cc */,
1EBA454114B97E92003CC0EA /* file_piece.cc */,
1EBA454214B97E92003CC0EA /* file_piece.hh */,
1EBA454314B97E92003CC0EA /* file.cc */,
1EBA454414B97E92003CC0EA /* file.hh */,
1EBA454514B97E92003CC0EA /* getopt.c */,
1EBA454614B97E92003CC0EA /* getopt.hh */,
1EBA454714B97E92003CC0EA /* have.hh */,
1EBA454814B97E92003CC0EA /* Jamfile */,
1EBA454914B97E92003CC0EA /* joint_sort_test.cc */,
1EBA454A14B97E92003CC0EA /* joint_sort.hh */,
1EBA454D14B97E92003CC0EA /* LICENSE */,
1EBA454E14B97E92003CC0EA /* mmap.cc */,
1EBA454F14B97E92003CC0EA /* mmap.hh */,
1EBA455014B97E92003CC0EA /* murmur_hash.cc */,
1EBA455114B97E92003CC0EA /* murmur_hash.hh */,
1EBA455214B97E92003CC0EA /* probing_hash_table_test.cc */,
1EBA455314B97E92003CC0EA /* probing_hash_table.hh */,
1EBA455414B97E92003CC0EA /* proxy_iterator.hh */,
1EBA455514B97E92003CC0EA /* scoped.hh */,
1EBA455614B97E92003CC0EA /* sized_iterator.hh */,
1EBA455714B97E92003CC0EA /* sorted_uniform_test.cc */,
1EBA455814B97E92003CC0EA /* sorted_uniform.hh */,
1EBA455914B97E92003CC0EA /* string_piece.hh */,
1EBA455A14B97E92003CC0EA /* tokenize_piece_test.cc */,
1EBA455B14B97E92003CC0EA /* tokenize_piece.hh */,
1EBA455C14B97E92003CC0EA /* util.xcodeproj */,
);
name = util;
sourceTree = "<group>";
};
1EBA455D14B97E92003CC0EA /* Products */ = {
isa = PBXGroup;
children = (
1EBA45A414B97E93003CC0EA /* libutil.a */,
);
name = Products;
sourceTree = "<group>";
};
1EE8C2DE1476A48E002496F2 = {
isa = PBXGroup;
children = (
1EBA44FC14B97E81003CC0EA /* util */,
1EBA44FB14B97E6A003CC0EA /* lm */,
1EE8C2EA1476A48E002496F2 /* Products */,
);
sourceTree = "<group>";
};
1EE8C2EA1476A48E002496F2 /* Products */ = {
isa = PBXGroup;
children = (
1EE8C2E91476A48E002496F2 /* liblm.a */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
1EE8C2E71476A48E002496F2 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
1EBA44AE14B97E22003CC0EA /* bhiksha.hh in Headers */,
1EBA44D514B97E22003CC0EA /* binary_format.hh in Headers */,
1EBA44D614B97E22003CC0EA /* blank.hh in Headers */,
1EBA44D914B97E22003CC0EA /* config.hh in Headers */,
1EBA44DA14B97E22003CC0EA /* enumerate_vocab.hh in Headers */,
1EBA44DB14B97E22003CC0EA /* facade.hh in Headers */,
1EBA44DE14B97E22003CC0EA /* left.hh in Headers */,
1EBA44E014B97E22003CC0EA /* lm_exception.hh in Headers */,
1EBA44E114B97E22003CC0EA /* max_order.hh in Headers */,
1EBA44E314B97E22003CC0EA /* model_type.hh in Headers */,
1EBA44E514B97E22003CC0EA /* model.hh in Headers */,
1EBA44E714B97E22003CC0EA /* ngram_query.hh in Headers */,
1EBA44E914B97E22003CC0EA /* quantize.hh in Headers */,
1EBA44EB14B97E22003CC0EA /* read_arpa.hh in Headers */,
1EBA44EC14B97E22003CC0EA /* return.hh in Headers */,
1EBA44EE14B97E22003CC0EA /* search_hashed.hh in Headers */,
1EBA44F014B97E22003CC0EA /* search_trie.hh in Headers */,
1EBA44F214B97E22003CC0EA /* trie_sort.hh in Headers */,
1EBA44F414B97E22003CC0EA /* trie.hh in Headers */,
1EBA44F614B97E22003CC0EA /* virtual_interface.hh in Headers */,
1EBA44F814B97E22003CC0EA /* vocab.hh in Headers */,
1EBA44F914B97E22003CC0EA /* weights.hh in Headers */,
1EBA44FA14B97E22003CC0EA /* word_index.hh in Headers */,
1EBA458114B97E92003CC0EA /* bit_packing.hh in Headers */,
1EBA458214B97E92003CC0EA /* check.hh in Headers */,
1EBA458414B97E92003CC0EA /* ersatz_progress.hh in Headers */,
1EBA458614B97E92003CC0EA /* exception.hh in Headers */,
1EBA458914B97E92003CC0EA /* file_piece.hh in Headers */,
1EBA458B14B97E92003CC0EA /* file.hh in Headers */,
1EBA458D14B97E92003CC0EA /* getopt.hh in Headers */,
1EBA458E14B97E92003CC0EA /* have.hh in Headers */,
1EBA459114B97E92003CC0EA /* joint_sort.hh in Headers */,
1EBA459514B97E92003CC0EA /* mmap.hh in Headers */,
1EBA459714B97E92003CC0EA /* murmur_hash.hh in Headers */,
1EBA459914B97E92003CC0EA /* probing_hash_table.hh in Headers */,
1EBA459A14B97E92003CC0EA /* proxy_iterator.hh in Headers */,
1EBA459B14B97E92003CC0EA /* scoped.hh in Headers */,
1EBA459C14B97E92003CC0EA /* sized_iterator.hh in Headers */,
1EBA459E14B97E92003CC0EA /* sorted_uniform.hh in Headers */,
1EBA459F14B97E92003CC0EA /* string_piece.hh in Headers */,
1EBA45A114B97E92003CC0EA /* tokenize_piece.hh in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
1EE8C2E81476A48E002496F2 /* lm */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1EE8C2ED1476A48E002496F2 /* Build configuration list for PBXNativeTarget "lm" */;
buildPhases = (
1EE8C2E51476A48E002496F2 /* Sources */,
1EE8C2E61476A48E002496F2 /* Frameworks */,
1EE8C2E71476A48E002496F2 /* Headers */,
);
buildRules = (
);
dependencies = (
);
name = lm;
productName = lm;
productReference = 1EE8C2E91476A48E002496F2 /* liblm.a */;
productType = "com.apple.product-type.library.static";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
1EE8C2E01476A48E002496F2 /* Project object */ = {
isa = PBXProject;
buildConfigurationList = 1EE8C2E31476A48E002496F2 /* Build configuration list for PBXProject "lm" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = 1EE8C2DE1476A48E002496F2;
productRefGroup = 1EE8C2EA1476A48E002496F2 /* Products */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = 1EBA455D14B97E92003CC0EA /* Products */;
ProjectRef = 1EBA455C14B97E92003CC0EA /* util.xcodeproj */;
},
);
projectRoot = "";
targets = (
1EE8C2E81476A48E002496F2 /* lm */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
1EBA45A414B97E93003CC0EA /* libutil.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libutil.a;
remoteRef = 1EBA45A314B97E93003CC0EA /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXSourcesBuildPhase section */
1EE8C2E51476A48E002496F2 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1EBA44AD14B97E22003CC0EA /* bhiksha.cc in Sources */,
1EBA44D414B97E22003CC0EA /* binary_format.cc in Sources */,
1EBA44D814B97E22003CC0EA /* config.cc in Sources */,
1EBA44DC14B97E22003CC0EA /* Jamfile in Sources */,
1EBA44DD14B97E22003CC0EA /* left_test.cc in Sources */,
1EBA44DF14B97E22003CC0EA /* lm_exception.cc in Sources */,
1EBA44E214B97E22003CC0EA /* model_test.cc in Sources */,
1EBA44E414B97E22003CC0EA /* model.cc in Sources */,
1EBA44E614B97E22003CC0EA /* ngram_query.cc in Sources */,
1EBA44E814B97E22003CC0EA /* quantize.cc in Sources */,
1EBA44EA14B97E22003CC0EA /* read_arpa.cc in Sources */,
1EBA44ED14B97E22003CC0EA /* search_hashed.cc in Sources */,
1EBA44EF14B97E22003CC0EA /* search_trie.cc in Sources */,
1EBA44F114B97E22003CC0EA /* trie_sort.cc in Sources */,
1EBA44F314B97E22003CC0EA /* trie.cc in Sources */,
1EBA44F514B97E22003CC0EA /* virtual_interface.cc in Sources */,
1EBA44F714B97E22003CC0EA /* vocab.cc in Sources */,
1EBA457F14B97E92003CC0EA /* bit_packing_test.cc in Sources */,
1EBA458014B97E92003CC0EA /* bit_packing.cc in Sources */,
1EBA458314B97E92003CC0EA /* ersatz_progress.cc in Sources */,
1EBA458514B97E92003CC0EA /* exception.cc in Sources */,
1EBA458714B97E92003CC0EA /* file_piece_test.cc in Sources */,
1EBA458814B97E92003CC0EA /* file_piece.cc in Sources */,
1EBA458A14B97E92003CC0EA /* file.cc in Sources */,
1EBA458C14B97E92003CC0EA /* getopt.c in Sources */,
1EBA458F14B97E92003CC0EA /* Jamfile in Sources */,
1EBA459014B97E92003CC0EA /* joint_sort_test.cc in Sources */,
1EBA459414B97E92003CC0EA /* mmap.cc in Sources */,
1EBA459614B97E92003CC0EA /* murmur_hash.cc in Sources */,
1EBA459814B97E92003CC0EA /* probing_hash_table_test.cc in Sources */,
1EBA459D14B97E92003CC0EA /* sorted_uniform_test.cc in Sources */,
1EBA45A014B97E92003CC0EA /* tokenize_piece_test.cc in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
1EE8C2EB1476A48E002496F2 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
COPY_PHASE_STRIP = NO;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
../..,
/opt/local/include,
);
MACOSX_DEPLOYMENT_TARGET = 10.7;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
};
name = Debug;
};
1EE8C2EC1476A48E002496F2 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
../..,
/opt/local/include,
);
MACOSX_DEPLOYMENT_TARGET = 10.7;
SDKROOT = macosx;
};
name = Release;
};
1EE8C2EE1476A48E002496F2 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
EXECUTABLE_PREFIX = lib;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"\"$(SRCROOT)/../../lm/bin/darwin-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
"\"$(SRCROOT)/../../lm/bin/darwin-4.2.1/release/link-static/threading-multi\"",
"\"$(SRCROOT)/../../lm/bin/gcc-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
"\"$(SRCROOT)/../../util/bin/darwin-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
"\"$(SRCROOT)/../../util/bin/darwin-4.2.1/release/link-static/threading-multi\"",
"\"$(SRCROOT)/../../util/bin/gcc-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
);
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
1EE8C2EF1476A48E002496F2 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
EXECUTABLE_PREFIX = lib;
LIBRARY_SEARCH_PATHS = (
"$(inherited)",
"\"$(SRCROOT)/../../lm/bin/darwin-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
"\"$(SRCROOT)/../../lm/bin/darwin-4.2.1/release/link-static/threading-multi\"",
"\"$(SRCROOT)/../../lm/bin/gcc-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
"\"$(SRCROOT)/../../util/bin/darwin-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
"\"$(SRCROOT)/../../util/bin/darwin-4.2.1/release/link-static/threading-multi\"",
"\"$(SRCROOT)/../../util/bin/gcc-4.2.1/release/debug-symbols-on/link-static/threading-multi\"",
);
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1EE8C2E31476A48E002496F2 /* Build configuration list for PBXProject "lm" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1EE8C2EB1476A48E002496F2 /* Debug */,
1EE8C2EC1476A48E002496F2 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
1EE8C2ED1476A48E002496F2 /* Build configuration list for PBXNativeTarget "lm" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1EE8C2EE1476A48E002496F2 /* Debug */,
1EE8C2EF1476A48E002496F2 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 1EE8C2E01476A48E002496F2 /* Project object */;
}

View File

@ -0,0 +1,125 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.macosx.exe.debug.351042750">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.macosx.exe.debug.351042750" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/lm"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/lm/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="lm"/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.macosx.exe.debug.351042750" name="Debug" parent="cdt.managedbuild.config.gnu.macosx.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.351042750." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.debug.640882096" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.debug.793478365" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.debug"/>
<builder buildPath="${workspace_loc:/lm/Debug}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.debug.36011795" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug.1252826468" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug.1024598065" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.139111896" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug.62265891" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.588438623" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.775866405" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1024092140" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug">
<option id="gnu.cpp.compilermacosx.exe.debug.option.optimization.level.586969644" name="Optimization Level" superClass="gnu.cpp.compilermacosx.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level.7139692" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1988092227" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/opt/local/include"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.20502600" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.34201722" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.macosx.exe.debug.option.optimization.level.934764060" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.debug.option.debugging.level.2078705375" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1028526865" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.macosx.exe.release.203229648">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.macosx.exe.release.203229648" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.macosx.exe.release.203229648" name="Release" parent="cdt.managedbuild.config.macosx.exe.release">
<folderInfo id="cdt.managedbuild.config.macosx.exe.release.203229648." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.release.1942852701" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.release.2107180060" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.release"/>
<builder buildPath="${workspace_loc:/lm/Release}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.release.127652112" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release.1668850519" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release.934899611" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.794276660" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release.362272521" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.370659018" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.2103660404" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.2026817795" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release">
<option id="gnu.cpp.compiler.macosx.exe.release.option.optimization.level.1671568858" name="Optimization Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.release.option.debugging.level.230723898" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1058671602" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.990116990" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.macosx.exe.release.option.optimization.level.1934130159" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.release.option.debugging.level.1848737807" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1294441742" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="lm.cdt.managedbuild.target.macosx.exe.1399596076" name="Executable" projectType="cdt.managedbuild.target.macosx.exe"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.351042750;cdt.managedbuild.config.gnu.macosx.exe.debug.351042750.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1024092140;cdt.managedbuild.tool.gnu.cpp.compiler.input.20502600">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.203229648;cdt.managedbuild.config.macosx.exe.release.203229648.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.990116990;cdt.managedbuild.tool.gnu.c.compiler.input.1294441742">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.351042750;cdt.managedbuild.config.gnu.macosx.exe.debug.351042750.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.34201722;cdt.managedbuild.tool.gnu.c.compiler.input.1028526865">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.203229648;cdt.managedbuild.config.macosx.exe.release.203229648.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.2026817795;cdt.managedbuild.tool.gnu.cpp.compiler.input.1058671602">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="refreshScope"/>
</cproject>

View File

@ -0,0 +1,360 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>lm</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/lm/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>.DS_Store</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/.DS_Store</locationURI>
</link>
<link>
<name>COPYING</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/COPYING</locationURI>
</link>
<link>
<name>COPYING.LESSER</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/COPYING.LESSER</locationURI>
</link>
<link>
<name>Jamfile</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/Jamfile</locationURI>
</link>
<link>
<name>LICENSE</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/LICENSE</locationURI>
</link>
<link>
<name>README</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/README</locationURI>
</link>
<link>
<name>bhiksha.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/bhiksha.cc</locationURI>
</link>
<link>
<name>bhiksha.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/bhiksha.hh</locationURI>
</link>
<link>
<name>binary_format.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/binary_format.cc</locationURI>
</link>
<link>
<name>binary_format.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/binary_format.hh</locationURI>
</link>
<link>
<name>blank.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/blank.hh</locationURI>
</link>
<link>
<name>build_binary</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/build_binary</locationURI>
</link>
<link>
<name>build_binary.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/build_binary.cc</locationURI>
</link>
<link>
<name>clean.sh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/clean.sh</locationURI>
</link>
<link>
<name>compile.sh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/compile.sh</locationURI>
</link>
<link>
<name>config.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/config.cc</locationURI>
</link>
<link>
<name>config.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/config.hh</locationURI>
</link>
<link>
<name>enumerate_vocab.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/enumerate_vocab.hh</locationURI>
</link>
<link>
<name>facade.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/facade.hh</locationURI>
</link>
<link>
<name>left.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/left.hh</locationURI>
</link>
<link>
<name>left_test.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/left_test.cc</locationURI>
</link>
<link>
<name>libkenlm.dylib</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/libkenlm.dylib</locationURI>
</link>
<link>
<name>libkenutil.dylib</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/libkenutil.dylib</locationURI>
</link>
<link>
<name>lm_exception.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/lm_exception.cc</locationURI>
</link>
<link>
<name>lm_exception.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/lm_exception.hh</locationURI>
</link>
<link>
<name>max_order.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/max_order.hh</locationURI>
</link>
<link>
<name>model.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/model.cc</locationURI>
</link>
<link>
<name>model.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/model.hh</locationURI>
</link>
<link>
<name>model_test.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/model_test.cc</locationURI>
</link>
<link>
<name>model_type.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/model_type.hh</locationURI>
</link>
<link>
<name>ngram_query.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/ngram_query.cc</locationURI>
</link>
<link>
<name>ngram_query.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/ngram_query.hh</locationURI>
</link>
<link>
<name>quantize.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/quantize.cc</locationURI>
</link>
<link>
<name>quantize.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/quantize.hh</locationURI>
</link>
<link>
<name>query</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/query</locationURI>
</link>
<link>
<name>read_arpa.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/read_arpa.cc</locationURI>
</link>
<link>
<name>read_arpa.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/read_arpa.hh</locationURI>
</link>
<link>
<name>return.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/return.hh</locationURI>
</link>
<link>
<name>search_hashed.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/search_hashed.cc</locationURI>
</link>
<link>
<name>search_hashed.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/search_hashed.hh</locationURI>
</link>
<link>
<name>search_trie.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/search_trie.cc</locationURI>
</link>
<link>
<name>search_trie.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/search_trie.hh</locationURI>
</link>
<link>
<name>test.arpa</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/test.arpa</locationURI>
</link>
<link>
<name>test.sh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/test.sh</locationURI>
</link>
<link>
<name>test_nounk.arpa</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/test_nounk.arpa</locationURI>
</link>
<link>
<name>trie.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/trie.cc</locationURI>
</link>
<link>
<name>trie.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/trie.hh</locationURI>
</link>
<link>
<name>trie_sort.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/trie_sort.cc</locationURI>
</link>
<link>
<name>trie_sort.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/trie_sort.hh</locationURI>
</link>
<link>
<name>virtual_interface.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/virtual_interface.cc</locationURI>
</link>
<link>
<name>virtual_interface.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/virtual_interface.hh</locationURI>
</link>
<link>
<name>vocab.cc</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/vocab.cc</locationURI>
</link>
<link>
<name>vocab.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/vocab.hh</locationURI>
</link>
<link>
<name>weights.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/weights.hh</locationURI>
</link>
<link>
<name>word_index.hh</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/lm/word_index.hh</locationURI>
</link>
</linkedResources>
</projectDescription>

View File

@ -7,58 +7,57 @@
objects = {
/* Begin PBXBuildFile section */
1E87F09311BDCD2E0033951C /* libmoses.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E87F08D11BDCD1B0033951C /* libmoses.a */; };
1E9DA31511BDC84A00F4DBD1 /* IOWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1E9DA30A11BDC84A00F4DBD1 /* IOWrapper.cpp */; };
1E9DA31611BDC84A00F4DBD1 /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1E9DA30C11BDC84A00F4DBD1 /* Main.cpp */; };
1E9DA31811BDC84A00F4DBD1 /* mbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1E9DA31111BDC84A00F4DBD1 /* mbr.cpp */; };
1E9DA31911BDC84A00F4DBD1 /* TranslationAnalysis.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1E9DA31311BDC84A00F4DBD1 /* TranslationAnalysis.cpp */; };
1E9DA35011BDC97100F4DBD1 /* libOnDiskPt.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E9DA34F11BDC96A00F4DBD1 /* libOnDiskPt.a */; };
1EE8C40B1476ABEC002496F2 /* liblm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EE8C3EC1476AB9B002496F2 /* liblm.a */; };
1EE8C40C1476ABEC002496F2 /* libutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EE8C3F31476ABAF002496F2 /* libutil.a */; };
1EAF9DC614B9F8CD005E8EBD /* liblm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EAF9DC314B9F8BA005E8EBD /* liblm.a */; };
1EAF9DC714B9F8CD005E8EBD /* libmoses.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EAF9DAD14B9F8AD005E8EBD /* libmoses.a */; };
1EAF9DC814B9F8CD005E8EBD /* libOnDiskPt.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EAF9DB614B9F8B1005E8EBD /* libOnDiskPt.a */; };
1EF0719F14B9F1D40052152A /* IOWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EF0718A14B9F1D40052152A /* IOWrapper.cpp */; };
1EF071A214B9F1D40052152A /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EF0718E14B9F1D40052152A /* Main.cpp */; };
1EF071A414B9F1D40052152A /* mbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EF0719114B9F1D40052152A /* mbr.cpp */; };
1EF071A614B9F1D40052152A /* TranslationAnalysis.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EF0719414B9F1D40052152A /* TranslationAnalysis.cpp */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
1E87F08C11BDCD1B0033951C /* PBXContainerItemProxy */ = {
1EAF9DAC14B9F8AD005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1E9DA33311BDC8BB00F4DBD1 /* moses.xcodeproj */;
containerPortal = 1EAF9DA514B9F8AD005E8EBD /* moses.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = moses;
};
1E87F09411BDCD390033951C /* PBXContainerItemProxy */ = {
1EAF9DB514B9F8B1005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1E9DA33311BDC8BB00F4DBD1 /* moses.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = moses;
};
1E9DA34E11BDC96A00F4DBD1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1E9DA34A11BDC96A00F4DBD1 /* OnDiskPt.xcodeproj */;
containerPortal = 1EAF9DAE14B9F8B1005E8EBD /* OnDiskPt.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = OnDiskPt;
};
1E9DA36311BDC9B200F4DBD1 /* PBXContainerItemProxy */ = {
1EAF9DC214B9F8BA005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1E9DA34A11BDC96A00F4DBD1 /* OnDiskPt.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = OnDiskPt;
};
1EE8C3EB1476AB9B002496F2 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EE8C3E71476AB9B002496F2 /* lm.xcodeproj */;
containerPortal = 1EAF9DB714B9F8B9005E8EBD /* lm.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 1EE8C2E91476A48E002496F2;
remoteInfo = lm;
};
1EE8C3F21476ABAF002496F2 /* PBXContainerItemProxy */ = {
1EAF9DCB14B9F8D6005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EE8C3EE1476ABAE002496F2 /* util.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 1EE8C2711476A262002496F2;
remoteInfo = util;
containerPortal = 1EAF9DAE14B9F8B1005E8EBD /* OnDiskPt.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = OnDiskPt;
};
1EAF9DCD14B9F8D6005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EAF9DA514B9F8AD005E8EBD /* moses.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = moses;
};
1EAF9DCF14B9F8D6005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EAF9DB714B9F8B9005E8EBD /* lm.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 1EE8C2E81476A48E002496F2;
remoteInfo = lm;
};
/* End PBXContainerItemProxy section */
@ -75,18 +74,17 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
1E9DA30A11BDC84A00F4DBD1 /* IOWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IOWrapper.cpp; path = src/IOWrapper.cpp; sourceTree = "<group>"; };
1E9DA30B11BDC84A00F4DBD1 /* IOWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IOWrapper.h; path = src/IOWrapper.h; sourceTree = "<group>"; };
1E9DA30C11BDC84A00F4DBD1 /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = src/Main.cpp; sourceTree = "<group>"; };
1E9DA30D11BDC84A00F4DBD1 /* Main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Main.h; path = src/Main.h; sourceTree = "<group>"; };
1E9DA31111BDC84A00F4DBD1 /* mbr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mbr.cpp; path = src/mbr.cpp; sourceTree = "<group>"; };
1E9DA31211BDC84A00F4DBD1 /* mbr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mbr.h; path = src/mbr.h; sourceTree = "<group>"; };
1E9DA31311BDC84A00F4DBD1 /* TranslationAnalysis.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TranslationAnalysis.cpp; path = src/TranslationAnalysis.cpp; sourceTree = "<group>"; };
1E9DA31411BDC84A00F4DBD1 /* TranslationAnalysis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TranslationAnalysis.h; path = src/TranslationAnalysis.h; sourceTree = "<group>"; };
1E9DA33311BDC8BB00F4DBD1 /* moses.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = moses.xcodeproj; path = ../moses/moses.xcodeproj; sourceTree = SOURCE_ROOT; };
1E9DA34A11BDC96A00F4DBD1 /* OnDiskPt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = OnDiskPt.xcodeproj; path = ../OnDiskPt/OnDiskPt.xcodeproj; sourceTree = SOURCE_ROOT; };
1EE8C3E71476AB9B002496F2 /* lm.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = lm.xcodeproj; path = ../lm/lm.xcodeproj; sourceTree = "<group>"; };
1EE8C3EE1476ABAE002496F2 /* util.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = util.xcodeproj; path = ../util/util.xcodeproj; sourceTree = "<group>"; };
1EAF9DA514B9F8AD005E8EBD /* moses.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = moses.xcodeproj; sourceTree = "<group>"; };
1EAF9DAE14B9F8B1005E8EBD /* OnDiskPt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = OnDiskPt.xcodeproj; sourceTree = "<group>"; };
1EAF9DB714B9F8B9005E8EBD /* lm.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = lm.xcodeproj; sourceTree = "<group>"; };
1EF0718A14B9F1D40052152A /* IOWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IOWrapper.cpp; path = "../../moses-chart-cmd/src/IOWrapper.cpp"; sourceTree = "<group>"; };
1EF0718B14B9F1D40052152A /* IOWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IOWrapper.h; path = "../../moses-chart-cmd/src/IOWrapper.h"; sourceTree = "<group>"; };
1EF0718E14B9F1D40052152A /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = "../../moses-chart-cmd/src/Main.cpp"; sourceTree = "<group>"; };
1EF0718F14B9F1D40052152A /* Main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Main.h; path = "../../moses-chart-cmd/src/Main.h"; sourceTree = "<group>"; };
1EF0719114B9F1D40052152A /* mbr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mbr.cpp; path = "../../moses-chart-cmd/src/mbr.cpp"; sourceTree = "<group>"; };
1EF0719214B9F1D40052152A /* mbr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mbr.h; path = "../../moses-chart-cmd/src/mbr.h"; sourceTree = "<group>"; };
1EF0719414B9F1D40052152A /* TranslationAnalysis.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TranslationAnalysis.cpp; path = "../../moses-chart-cmd/src/TranslationAnalysis.cpp"; sourceTree = "<group>"; };
1EF0719514B9F1D40052152A /* TranslationAnalysis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TranslationAnalysis.h; path = "../../moses-chart-cmd/src/TranslationAnalysis.h"; sourceTree = "<group>"; };
8DD76F6C0486A84900D96B5E /* moses-chart-cmd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "moses-chart-cmd"; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@ -95,10 +93,9 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
1EE8C40B1476ABEC002496F2 /* liblm.a in Frameworks */,
1EE8C40C1476ABEC002496F2 /* libutil.a in Frameworks */,
1E87F09311BDCD2E0033951C /* libmoses.a in Frameworks */,
1E9DA35011BDC97100F4DBD1 /* libOnDiskPt.a in Frameworks */,
1EAF9DC614B9F8CD005E8EBD /* liblm.a in Frameworks */,
1EAF9DC714B9F8CD005E8EBD /* libmoses.a in Frameworks */,
1EAF9DC814B9F8CD005E8EBD /* libOnDiskPt.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -108,13 +105,12 @@
08FB7794FE84155DC02AAC07 /* moses-chart-cmd */ = {
isa = PBXGroup;
children = (
1EE8C3EE1476ABAE002496F2 /* util.xcodeproj */,
1EE8C3E71476AB9B002496F2 /* lm.xcodeproj */,
1E9DA34A11BDC96A00F4DBD1 /* OnDiskPt.xcodeproj */,
1E9DA33311BDC8BB00F4DBD1 /* moses.xcodeproj */,
08FB7795FE84155DC02AAC07 /* Source */,
C6859E8C029090F304C91782 /* Documentation */,
1AB674ADFE9D54B511CA2CBB /* Products */,
1EAF9DB714B9F8B9005E8EBD /* lm.xcodeproj */,
1EAF9DA514B9F8AD005E8EBD /* moses.xcodeproj */,
1EAF9DAE14B9F8B1005E8EBD /* OnDiskPt.xcodeproj */,
);
name = "moses-chart-cmd";
sourceTree = "<group>";
@ -122,14 +118,14 @@
08FB7795FE84155DC02AAC07 /* Source */ = {
isa = PBXGroup;
children = (
1E9DA30A11BDC84A00F4DBD1 /* IOWrapper.cpp */,
1E9DA30B11BDC84A00F4DBD1 /* IOWrapper.h */,
1E9DA30C11BDC84A00F4DBD1 /* Main.cpp */,
1E9DA30D11BDC84A00F4DBD1 /* Main.h */,
1E9DA31111BDC84A00F4DBD1 /* mbr.cpp */,
1E9DA31211BDC84A00F4DBD1 /* mbr.h */,
1E9DA31311BDC84A00F4DBD1 /* TranslationAnalysis.cpp */,
1E9DA31411BDC84A00F4DBD1 /* TranslationAnalysis.h */,
1EF0718A14B9F1D40052152A /* IOWrapper.cpp */,
1EF0718B14B9F1D40052152A /* IOWrapper.h */,
1EF0718E14B9F1D40052152A /* Main.cpp */,
1EF0718F14B9F1D40052152A /* Main.h */,
1EF0719114B9F1D40052152A /* mbr.cpp */,
1EF0719214B9F1D40052152A /* mbr.h */,
1EF0719414B9F1D40052152A /* TranslationAnalysis.cpp */,
1EF0719514B9F1D40052152A /* TranslationAnalysis.h */,
);
name = Source;
sourceTree = "<group>";
@ -142,34 +138,26 @@
name = Products;
sourceTree = "<group>";
};
1E9DA33411BDC8BB00F4DBD1 /* Products */ = {
1EAF9DA614B9F8AD005E8EBD /* Products */ = {
isa = PBXGroup;
children = (
1E87F08D11BDCD1B0033951C /* libmoses.a */,
1EAF9DAD14B9F8AD005E8EBD /* libmoses.a */,
);
name = Products;
sourceTree = "<group>";
};
1E9DA34B11BDC96A00F4DBD1 /* Products */ = {
1EAF9DAF14B9F8B1005E8EBD /* Products */ = {
isa = PBXGroup;
children = (
1E9DA34F11BDC96A00F4DBD1 /* libOnDiskPt.a */,
1EAF9DB614B9F8B1005E8EBD /* libOnDiskPt.a */,
);
name = Products;
sourceTree = "<group>";
};
1EE8C3E81476AB9B002496F2 /* Products */ = {
1EAF9DB814B9F8B9005E8EBD /* Products */ = {
isa = PBXGroup;
children = (
1EE8C3EC1476AB9B002496F2 /* liblm.a */,
);
name = Products;
sourceTree = "<group>";
};
1EE8C3EF1476ABAE002496F2 /* Products */ = {
isa = PBXGroup;
children = (
1EE8C3F31476ABAF002496F2 /* libutil.a */,
1EAF9DC314B9F8BA005E8EBD /* liblm.a */,
);
name = Products;
sourceTree = "<group>";
@ -195,8 +183,9 @@
buildRules = (
);
dependencies = (
1E9DA36411BDC9B200F4DBD1 /* PBXTargetDependency */,
1E87F09511BDCD390033951C /* PBXTargetDependency */,
1EAF9DCC14B9F8D6005E8EBD /* PBXTargetDependency */,
1EAF9DCE14B9F8D6005E8EBD /* PBXTargetDependency */,
1EAF9DD014B9F8D6005E8EBD /* PBXTargetDependency */,
);
name = "moses-chart-cmd";
productInstallPath = "$(HOME)/bin";
@ -223,20 +212,16 @@
projectDirPath = "";
projectReferences = (
{
ProductGroup = 1EE8C3E81476AB9B002496F2 /* Products */;
ProjectRef = 1EE8C3E71476AB9B002496F2 /* lm.xcodeproj */;
ProductGroup = 1EAF9DB814B9F8B9005E8EBD /* Products */;
ProjectRef = 1EAF9DB714B9F8B9005E8EBD /* lm.xcodeproj */;
},
{
ProductGroup = 1E9DA33411BDC8BB00F4DBD1 /* Products */;
ProjectRef = 1E9DA33311BDC8BB00F4DBD1 /* moses.xcodeproj */;
ProductGroup = 1EAF9DA614B9F8AD005E8EBD /* Products */;
ProjectRef = 1EAF9DA514B9F8AD005E8EBD /* moses.xcodeproj */;
},
{
ProductGroup = 1E9DA34B11BDC96A00F4DBD1 /* Products */;
ProjectRef = 1E9DA34A11BDC96A00F4DBD1 /* OnDiskPt.xcodeproj */;
},
{
ProductGroup = 1EE8C3EF1476ABAE002496F2 /* Products */;
ProjectRef = 1EE8C3EE1476ABAE002496F2 /* util.xcodeproj */;
ProductGroup = 1EAF9DAF14B9F8B1005E8EBD /* Products */;
ProjectRef = 1EAF9DAE14B9F8B1005E8EBD /* OnDiskPt.xcodeproj */;
},
);
projectRoot = "";
@ -247,32 +232,25 @@
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
1E87F08D11BDCD1B0033951C /* libmoses.a */ = {
1EAF9DAD14B9F8AD005E8EBD /* libmoses.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libmoses.a;
remoteRef = 1E87F08C11BDCD1B0033951C /* PBXContainerItemProxy */;
remoteRef = 1EAF9DAC14B9F8AD005E8EBD /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1E9DA34F11BDC96A00F4DBD1 /* libOnDiskPt.a */ = {
1EAF9DB614B9F8B1005E8EBD /* libOnDiskPt.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libOnDiskPt.a;
remoteRef = 1E9DA34E11BDC96A00F4DBD1 /* PBXContainerItemProxy */;
remoteRef = 1EAF9DB514B9F8B1005E8EBD /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1EE8C3EC1476AB9B002496F2 /* liblm.a */ = {
1EAF9DC314B9F8BA005E8EBD /* liblm.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = liblm.a;
remoteRef = 1EE8C3EB1476AB9B002496F2 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1EE8C3F31476ABAF002496F2 /* libutil.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libutil.a;
remoteRef = 1EE8C3F21476ABAF002496F2 /* PBXContainerItemProxy */;
remoteRef = 1EAF9DC214B9F8BA005E8EBD /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
@ -282,25 +260,30 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1E9DA31511BDC84A00F4DBD1 /* IOWrapper.cpp in Sources */,
1E9DA31611BDC84A00F4DBD1 /* Main.cpp in Sources */,
1E9DA31811BDC84A00F4DBD1 /* mbr.cpp in Sources */,
1E9DA31911BDC84A00F4DBD1 /* TranslationAnalysis.cpp in Sources */,
1EF0719F14B9F1D40052152A /* IOWrapper.cpp in Sources */,
1EF071A214B9F1D40052152A /* Main.cpp in Sources */,
1EF071A414B9F1D40052152A /* mbr.cpp in Sources */,
1EF071A614B9F1D40052152A /* TranslationAnalysis.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
1E87F09511BDCD390033951C /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = moses;
targetProxy = 1E87F09411BDCD390033951C /* PBXContainerItemProxy */;
};
1E9DA36411BDC9B200F4DBD1 /* PBXTargetDependency */ = {
1EAF9DCC14B9F8D6005E8EBD /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = OnDiskPt;
targetProxy = 1E9DA36311BDC9B200F4DBD1 /* PBXContainerItemProxy */;
targetProxy = 1EAF9DCB14B9F8D6005E8EBD /* PBXContainerItemProxy */;
};
1EAF9DCE14B9F8D6005E8EBD /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = moses;
targetProxy = 1EAF9DCD14B9F8D6005E8EBD /* PBXContainerItemProxy */;
};
1EAF9DD014B9F8D6005E8EBD /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = lm;
targetProxy = 1EAF9DCF14B9F8D6005E8EBD /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
@ -319,17 +302,12 @@
_LARGE_FILES,
"_FILE_OFFSET_BITS=64",
);
HEADER_SEARCH_PATHS = (
..,
../moses/src,
../kenlm,
/opt/local/include,
);
HEADER_SEARCH_PATHS = /opt/local/include;
INSTALL_PATH = /usr/local/bin;
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
/opt/local/lib,
);
OTHER_LDFLAGS = (
"-lz",
@ -339,8 +317,10 @@
"-loolm",
"-lflm",
"-llattice",
"-lboost_thread-mt",
);
PRODUCT_NAME = "moses-chart-cmd";
USER_HEADER_SEARCH_PATHS = "../../ ../../moses/src";
};
name = Debug;
};
@ -355,17 +335,12 @@
_LARGE_FILES,
"_FILE_OFFSET_BITS=64",
);
HEADER_SEARCH_PATHS = (
..,
../moses/src,
../kenlm,
/opt/local/include,
);
HEADER_SEARCH_PATHS = /opt/local/include;
INSTALL_PATH = /usr/local/bin;
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
/opt/local/lib,
);
OTHER_LDFLAGS = (
"-lz",
@ -375,8 +350,10 @@
"-loolm",
"-lflm",
"-llattice",
"-lboost_thread-mt",
);
PRODUCT_NAME = "moses-chart-cmd";
USER_HEADER_SEARCH_PATHS = "../../ ../../moses/src";
};
name = Release;
};
@ -386,12 +363,16 @@
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = TRACE_ENABLE;
GCC_PREPROCESSOR_DEFINITIONS = (
TRACE_ENABLE,
WITH_THREADS,
);
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
../moses/src,
../,
../../moses/src,
../..,
"/Users/hieuhoang/workspace/github/moses-smt/moses/src/**",
);
ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO;
@ -404,12 +385,16 @@
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_PREPROCESSOR_DEFINITIONS = TRACE_ENABLE;
GCC_PREPROCESSOR_DEFINITIONS = (
TRACE_ENABLE,
WITH_THREADS,
);
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
../moses/src,
../,
../../moses/src,
../..,
"/Users/hieuhoang/workspace/github/moses-smt/moses/src/**",
);
ONLY_ACTIVE_ARCH = YES;
PREBINDING = NO;

View File

@ -47,7 +47,7 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/moses/src;$(SolutionDir)/kenlm;$(SolutionDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../../moses/src;$(SolutionDir)/../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@ -58,7 +58,7 @@
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>zdll.lib;$(SolutionDir)$(Configuration)\moses.lib;$(SolutionDir)$(Configuration)\kenlm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>zdll.lib;$(SolutionDir)$(Configuration)\moses.lib;$(SolutionDir)$(Configuration)\kenlm.lib;$(SolutionDir)$(Configuration)\OnDiskPt.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
@ -69,7 +69,7 @@
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/moses/src;$(SolutionDir)/kenlm;$(SolutionDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../../moses/src;$(SolutionDir)/../..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<PrecompiledHeader>
@ -78,7 +78,7 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>zdll.lib;$(SolutionDir)$(Configuration)\moses.lib;$(SolutionDir)$(Configuration)\kenlm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>zdll.lib;$(SolutionDir)$(Configuration)\moses.lib;$(SolutionDir)$(Configuration)\kenlm.lib;$(SolutionDir)$(Configuration)\OnDiskPt.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
@ -90,28 +90,20 @@
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="src\IOWrapper.h" />
<ClInclude Include="src\LatticeMBR.h" />
<ClInclude Include="src\Main.h" />
<ClInclude Include="src\mbr.h" />
<ClInclude Include="src\TranslationAnalysis.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\IOWrapper.cpp" />
<ClCompile Include="src\LatticeMBR.cpp" />
<ClCompile Include="src\Main.cpp" />
<ClCompile Include="src\mbr.cpp" />
<ClCompile Include="src\TranslationAnalysis.cpp" />
<ClInclude Include="..\..\moses-cmd\src\IOWrapper.h" />
<ClInclude Include="..\..\moses-cmd\src\LatticeMBR.h" />
<ClInclude Include="..\..\moses-cmd\src\Main.h" />
<ClInclude Include="..\..\moses-cmd\src\mbr.h" />
<ClInclude Include="..\..\moses-cmd\src\TranslationAnalysis.h" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\moses\moses.vcxproj">
<Project>{8122157a-0de5-44ff-8e5b-024ed6ace7af}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\OnDiskPt\OnDiskPt.vcxproj">
<Project>{8b07671b-cbaf-4514-affd-ce238cd427e9}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ClCompile Include="..\..\moses-cmd\src\IOWrapper.cpp" />
<ClCompile Include="..\..\moses-cmd\src\LatticeMBR.cpp" />
<ClCompile Include="..\..\moses-cmd\src\Main.cpp" />
<ClCompile Include="..\..\moses-cmd\src\mbr.cpp" />
<ClCompile Include="..\..\moses-cmd\src\TranslationAnalysis.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View File

@ -7,63 +7,60 @@
objects = {
/* Begin PBXBuildFile section */
03306D820C0B249A00CA1311 /* mbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 03306D800C0B249A00CA1311 /* mbr.cpp */; };
03306D830C0B249A00CA1311 /* mbr.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 03306D810C0B249A00CA1311 /* mbr.h */; };
1C8CFF4D0AD68D3600FA22E2 /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C8CFF450AD68D3600FA22E2 /* Main.cpp */; };
1C8CFF4E0AD68D3600FA22E2 /* Main.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1C8CFF460AD68D3600FA22E2 /* Main.h */; };
1C8CFF4F0AD68D3600FA22E2 /* TranslationAnalysis.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C8CFF470AD68D3600FA22E2 /* TranslationAnalysis.cpp */; };
1C8CFF500AD68D3600FA22E2 /* TranslationAnalysis.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1C8CFF480AD68D3600FA22E2 /* TranslationAnalysis.h */; };
1CE646E411679F6900EC77CC /* libOnDiskPt.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1CE646E311679F5F00EC77CC /* libOnDiskPt.a */; };
1EE8C2DD1476A3F2002496F2 /* libutil.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EE8C2DC1476A34A002496F2 /* libutil.a */; };
1EE8C3C91476AB64002496F2 /* liblm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EE8C3C81476AB3C002496F2 /* liblm.a */; };
B219B8540E93812700EAB407 /* libmoses.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 03306D670C0B240B00CA1311 /* libmoses.a */; };
B219B8580E9381AC00EAB407 /* IOWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B219B8560E9381AC00EAB407 /* IOWrapper.cpp */; };
B28B1ED3110F52BB00AAD188 /* LatticeMBR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B28B1ED2110F52BB00AAD188 /* LatticeMBR.cpp */; };
1EAF9D7A14B9F566005E8EBD /* IOWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EAF9D5B14B9F566005E8EBD /* IOWrapper.cpp */; };
1EAF9D7C14B9F566005E8EBD /* Jamfile in Sources */ = {isa = PBXBuildFile; fileRef = 1EAF9D5E14B9F566005E8EBD /* Jamfile */; };
1EAF9D7D14B9F566005E8EBD /* LatticeMBR.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EAF9D5F14B9F566005E8EBD /* LatticeMBR.cpp */; };
1EAF9D8114B9F566005E8EBD /* Main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EAF9D6414B9F566005E8EBD /* Main.cpp */; };
1EAF9D8314B9F566005E8EBD /* mbr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EAF9D6714B9F566005E8EBD /* mbr.cpp */; };
1EAF9D8514B9F566005E8EBD /* TranslationAnalysis.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1EAF9D6A14B9F566005E8EBD /* TranslationAnalysis.cpp */; };
1EAF9D9D14B9F7B6005E8EBD /* libOnDiskPt.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EAF9D9C14B9F7A6005E8EBD /* libOnDiskPt.a */; };
1EF070A914B9F0380052152A /* liblm.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EF0708A14B9EF070052152A /* liblm.a */; };
1EF070AA14B9F0380052152A /* libmoses.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EF0709014B9EF0E0052152A /* libmoses.a */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
03306D660C0B240B00CA1311 /* PBXContainerItemProxy */ = {
1EAF9D9B14B9F7A6005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 03306D5F0C0B240B00CA1311 /* moses.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = moses;
};
03306D770C0B244800CA1311 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 03306D5F0C0B240B00CA1311 /* moses.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = moses;
};
1CE646E211679F5F00EC77CC /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1CE646DB11679F5F00EC77CC /* OnDiskPt.xcodeproj */;
containerPortal = 1EAF9D9414B9F7A6005E8EBD /* OnDiskPt.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = OnDiskPt;
};
1CE6472D1167A11600EC77CC /* PBXContainerItemProxy */ = {
1EAF9D9E14B9F7BD005E8EBD /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1CE646DB11679F5F00EC77CC /* OnDiskPt.xcodeproj */;
containerPortal = 1EAF9D9414B9F7A6005E8EBD /* OnDiskPt.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = OnDiskPt;
};
1EE8C2DB1476A34A002496F2 /* PBXContainerItemProxy */ = {
1EF0708914B9EF070052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EE8C2D41476A34A002496F2 /* util.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 1EE8C2711476A262002496F2;
remoteInfo = util;
};
1EE8C3C71476AB3C002496F2 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EE8C3C01476AB3C002496F2 /* lm.xcodeproj */;
containerPortal = 1EF0708514B9EF070052152A /* lm.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 1EE8C2E91476A48E002496F2;
remoteInfo = lm;
};
1EF0708F14B9EF0E0052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EF0708B14B9EF0D0052152A /* moses.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = D2AAC046055464E500DB518D;
remoteInfo = moses;
};
1EF070AD14B9F03F0052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EF0708B14B9EF0D0052152A /* moses.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = D2AAC045055464E500DB518D;
remoteInfo = moses;
};
1EF070AF14B9F0430052152A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 1EF0708514B9EF070052152A /* lm.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 1EE8C2E81476A48E002496F2;
remoteInfo = lm;
};
/* End PBXContainerItemProxy section */
/* Begin PBXCopyFilesBuildPhase section */
@ -73,30 +70,27 @@
dstPath = /usr/share/man/man1/;
dstSubfolderSpec = 0;
files = (
1C8CFF4E0AD68D3600FA22E2 /* Main.h in CopyFiles */,
1C8CFF500AD68D3600FA22E2 /* TranslationAnalysis.h in CopyFiles */,
03306D830C0B249A00CA1311 /* mbr.h in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 1;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
03306D5F0C0B240B00CA1311 /* moses.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = moses.xcodeproj; path = ../moses/moses.xcodeproj; sourceTree = SOURCE_ROOT; };
03306D800C0B249A00CA1311 /* mbr.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = mbr.cpp; path = src/mbr.cpp; sourceTree = "<group>"; };
03306D810C0B249A00CA1311 /* mbr.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = mbr.h; path = src/mbr.h; sourceTree = "<group>"; };
1C8CFF450AD68D3600FA22E2 /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = src/Main.cpp; sourceTree = "<group>"; };
1C8CFF460AD68D3600FA22E2 /* Main.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = Main.h; path = src/Main.h; sourceTree = "<group>"; };
1C8CFF470AD68D3600FA22E2 /* TranslationAnalysis.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = TranslationAnalysis.cpp; path = src/TranslationAnalysis.cpp; sourceTree = "<group>"; };
1C8CFF480AD68D3600FA22E2 /* TranslationAnalysis.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = TranslationAnalysis.h; path = src/TranslationAnalysis.h; sourceTree = "<group>"; };
1CE646DB11679F5F00EC77CC /* OnDiskPt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = OnDiskPt.xcodeproj; path = ../OnDiskPt/OnDiskPt.xcodeproj; sourceTree = SOURCE_ROOT; };
1EE8C2D41476A34A002496F2 /* util.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = util.xcodeproj; path = ../util/util.xcodeproj; sourceTree = "<group>"; };
1EE8C3C01476AB3C002496F2 /* lm.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = lm.xcodeproj; path = ../lm/lm.xcodeproj; sourceTree = "<group>"; };
1EAF9D5B14B9F566005E8EBD /* IOWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IOWrapper.cpp; path = "../../moses-cmd/src/IOWrapper.cpp"; sourceTree = "<group>"; };
1EAF9D5C14B9F566005E8EBD /* IOWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IOWrapper.h; path = "../../moses-cmd/src/IOWrapper.h"; sourceTree = "<group>"; };
1EAF9D5E14B9F566005E8EBD /* Jamfile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.jam; name = Jamfile; path = "../../moses-cmd/src/Jamfile"; sourceTree = "<group>"; };
1EAF9D5F14B9F566005E8EBD /* LatticeMBR.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LatticeMBR.cpp; path = "../../moses-cmd/src/LatticeMBR.cpp"; sourceTree = "<group>"; };
1EAF9D6014B9F566005E8EBD /* LatticeMBR.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LatticeMBR.h; path = "../../moses-cmd/src/LatticeMBR.h"; sourceTree = "<group>"; };
1EAF9D6414B9F566005E8EBD /* Main.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Main.cpp; path = "../../moses-cmd/src/Main.cpp"; sourceTree = "<group>"; };
1EAF9D6514B9F566005E8EBD /* Main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Main.h; path = "../../moses-cmd/src/Main.h"; sourceTree = "<group>"; };
1EAF9D6714B9F566005E8EBD /* mbr.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mbr.cpp; path = "../../moses-cmd/src/mbr.cpp"; sourceTree = "<group>"; };
1EAF9D6814B9F566005E8EBD /* mbr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = mbr.h; path = "../../moses-cmd/src/mbr.h"; sourceTree = "<group>"; };
1EAF9D6A14B9F566005E8EBD /* TranslationAnalysis.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = TranslationAnalysis.cpp; path = "../../moses-cmd/src/TranslationAnalysis.cpp"; sourceTree = "<group>"; };
1EAF9D6B14B9F566005E8EBD /* TranslationAnalysis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = TranslationAnalysis.h; path = "../../moses-cmd/src/TranslationAnalysis.h"; sourceTree = "<group>"; };
1EAF9D9414B9F7A6005E8EBD /* OnDiskPt.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = OnDiskPt.xcodeproj; sourceTree = "<group>"; };
1EF0708514B9EF070052152A /* lm.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = lm.xcodeproj; sourceTree = "<group>"; };
1EF0708B14B9EF0D0052152A /* moses.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; path = moses.xcodeproj; sourceTree = "<group>"; };
8DD76F6C0486A84900D96B5E /* moses-cmd */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "moses-cmd"; sourceTree = BUILT_PRODUCTS_DIR; };
B219B8560E9381AC00EAB407 /* IOWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = IOWrapper.cpp; path = src/IOWrapper.cpp; sourceTree = "<group>"; };
B219B8570E9381AC00EAB407 /* IOWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IOWrapper.h; path = src/IOWrapper.h; sourceTree = "<group>"; };
B28B1ED2110F52BB00AAD188 /* LatticeMBR.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = LatticeMBR.cpp; path = src/LatticeMBR.cpp; sourceTree = "<group>"; };
B28B1ED4110F52C600AAD188 /* LatticeMBR.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LatticeMBR.h; path = src/LatticeMBR.h; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -104,34 +98,24 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
1EE8C3C91476AB64002496F2 /* liblm.a in Frameworks */,
1EE8C2DD1476A3F2002496F2 /* libutil.a in Frameworks */,
1CE646E411679F6900EC77CC /* libOnDiskPt.a in Frameworks */,
B219B8540E93812700EAB407 /* libmoses.a in Frameworks */,
1EAF9D9D14B9F7B6005E8EBD /* libOnDiskPt.a in Frameworks */,
1EF070A914B9F0380052152A /* liblm.a in Frameworks */,
1EF070AA14B9F0380052152A /* libmoses.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
03306D600C0B240B00CA1311 /* Products */ = {
isa = PBXGroup;
children = (
03306D670C0B240B00CA1311 /* libmoses.a */,
);
name = Products;
sourceTree = "<group>";
};
08FB7794FE84155DC02AAC07 /* moses-cmd */ = {
isa = PBXGroup;
children = (
1EE8C3C01476AB3C002496F2 /* lm.xcodeproj */,
1EE8C2D41476A34A002496F2 /* util.xcodeproj */,
1CE646DB11679F5F00EC77CC /* OnDiskPt.xcodeproj */,
03306D5F0C0B240B00CA1311 /* moses.xcodeproj */,
08FB7795FE84155DC02AAC07 /* Source */,
C6859E8C029090F304C91782 /* Documentation */,
1AB674ADFE9D54B511CA2CBB /* Products */,
1EAF9D9414B9F7A6005E8EBD /* OnDiskPt.xcodeproj */,
1EF0708514B9EF070052152A /* lm.xcodeproj */,
1EF0708B14B9EF0D0052152A /* moses.xcodeproj */,
);
name = "moses-cmd";
sourceTree = "<group>";
@ -139,16 +123,17 @@
08FB7795FE84155DC02AAC07 /* Source */ = {
isa = PBXGroup;
children = (
B28B1ED4110F52C600AAD188 /* LatticeMBR.h */,
B28B1ED2110F52BB00AAD188 /* LatticeMBR.cpp */,
B219B8560E9381AC00EAB407 /* IOWrapper.cpp */,
B219B8570E9381AC00EAB407 /* IOWrapper.h */,
03306D800C0B249A00CA1311 /* mbr.cpp */,
03306D810C0B249A00CA1311 /* mbr.h */,
1C8CFF450AD68D3600FA22E2 /* Main.cpp */,
1C8CFF460AD68D3600FA22E2 /* Main.h */,
1C8CFF470AD68D3600FA22E2 /* TranslationAnalysis.cpp */,
1C8CFF480AD68D3600FA22E2 /* TranslationAnalysis.h */,
1EAF9D5B14B9F566005E8EBD /* IOWrapper.cpp */,
1EAF9D5C14B9F566005E8EBD /* IOWrapper.h */,
1EAF9D5E14B9F566005E8EBD /* Jamfile */,
1EAF9D5F14B9F566005E8EBD /* LatticeMBR.cpp */,
1EAF9D6014B9F566005E8EBD /* LatticeMBR.h */,
1EAF9D6414B9F566005E8EBD /* Main.cpp */,
1EAF9D6514B9F566005E8EBD /* Main.h */,
1EAF9D6714B9F566005E8EBD /* mbr.cpp */,
1EAF9D6814B9F566005E8EBD /* mbr.h */,
1EAF9D6A14B9F566005E8EBD /* TranslationAnalysis.cpp */,
1EAF9D6B14B9F566005E8EBD /* TranslationAnalysis.h */,
);
name = Source;
sourceTree = "<group>";
@ -161,26 +146,26 @@
name = Products;
sourceTree = "<group>";
};
1CE646DC11679F5F00EC77CC /* Products */ = {
1EAF9D9514B9F7A6005E8EBD /* Products */ = {
isa = PBXGroup;
children = (
1CE646E311679F5F00EC77CC /* libOnDiskPt.a */,
1EAF9D9C14B9F7A6005E8EBD /* libOnDiskPt.a */,
);
name = Products;
sourceTree = "<group>";
};
1EE8C2D51476A34A002496F2 /* Products */ = {
1EF0708614B9EF070052152A /* Products */ = {
isa = PBXGroup;
children = (
1EE8C2DC1476A34A002496F2 /* libutil.a */,
1EF0708A14B9EF070052152A /* liblm.a */,
);
name = Products;
sourceTree = "<group>";
};
1EE8C3C11476AB3C002496F2 /* Products */ = {
1EF0708C14B9EF0D0052152A /* Products */ = {
isa = PBXGroup;
children = (
1EE8C3C81476AB3C002496F2 /* liblm.a */,
1EF0709014B9EF0E0052152A /* libmoses.a */,
);
name = Products;
sourceTree = "<group>";
@ -206,8 +191,9 @@
buildRules = (
);
dependencies = (
03306D780C0B244800CA1311 /* PBXTargetDependency */,
1CE6472E1167A11600EC77CC /* PBXTargetDependency */,
1EAF9D9F14B9F7BD005E8EBD /* PBXTargetDependency */,
1EF070B014B9F0430052152A /* PBXTargetDependency */,
1EF070AE14B9F03F0052152A /* PBXTargetDependency */,
);
name = "moses-cmd";
productInstallPath = "$(HOME)/bin";
@ -234,20 +220,16 @@
projectDirPath = "";
projectReferences = (
{
ProductGroup = 1EE8C3C11476AB3C002496F2 /* Products */;
ProjectRef = 1EE8C3C01476AB3C002496F2 /* lm.xcodeproj */;
ProductGroup = 1EF0708614B9EF070052152A /* Products */;
ProjectRef = 1EF0708514B9EF070052152A /* lm.xcodeproj */;
},
{
ProductGroup = 03306D600C0B240B00CA1311 /* Products */;
ProjectRef = 03306D5F0C0B240B00CA1311 /* moses.xcodeproj */;
ProductGroup = 1EF0708C14B9EF0D0052152A /* Products */;
ProjectRef = 1EF0708B14B9EF0D0052152A /* moses.xcodeproj */;
},
{
ProductGroup = 1CE646DC11679F5F00EC77CC /* Products */;
ProjectRef = 1CE646DB11679F5F00EC77CC /* OnDiskPt.xcodeproj */;
},
{
ProductGroup = 1EE8C2D51476A34A002496F2 /* Products */;
ProjectRef = 1EE8C2D41476A34A002496F2 /* util.xcodeproj */;
ProductGroup = 1EAF9D9514B9F7A6005E8EBD /* Products */;
ProjectRef = 1EAF9D9414B9F7A6005E8EBD /* OnDiskPt.xcodeproj */;
},
);
projectRoot = "";
@ -258,32 +240,25 @@
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
03306D670C0B240B00CA1311 /* libmoses.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libmoses.a;
remoteRef = 03306D660C0B240B00CA1311 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1CE646E311679F5F00EC77CC /* libOnDiskPt.a */ = {
1EAF9D9C14B9F7A6005E8EBD /* libOnDiskPt.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libOnDiskPt.a;
remoteRef = 1CE646E211679F5F00EC77CC /* PBXContainerItemProxy */;
remoteRef = 1EAF9D9B14B9F7A6005E8EBD /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1EE8C2DC1476A34A002496F2 /* libutil.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libutil.a;
remoteRef = 1EE8C2DB1476A34A002496F2 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1EE8C3C81476AB3C002496F2 /* liblm.a */ = {
1EF0708A14B9EF070052152A /* liblm.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = liblm.a;
remoteRef = 1EE8C3C71476AB3C002496F2 /* PBXContainerItemProxy */;
remoteRef = 1EF0708914B9EF070052152A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
1EF0709014B9EF0E0052152A /* libmoses.a */ = {
isa = PBXReferenceProxy;
fileType = archive.ar;
path = libmoses.a;
remoteRef = 1EF0708F14B9EF0E0052152A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
@ -293,26 +268,32 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1C8CFF4D0AD68D3600FA22E2 /* Main.cpp in Sources */,
1C8CFF4F0AD68D3600FA22E2 /* TranslationAnalysis.cpp in Sources */,
03306D820C0B249A00CA1311 /* mbr.cpp in Sources */,
B219B8580E9381AC00EAB407 /* IOWrapper.cpp in Sources */,
B28B1ED3110F52BB00AAD188 /* LatticeMBR.cpp in Sources */,
1EAF9D7A14B9F566005E8EBD /* IOWrapper.cpp in Sources */,
1EAF9D7C14B9F566005E8EBD /* Jamfile in Sources */,
1EAF9D7D14B9F566005E8EBD /* LatticeMBR.cpp in Sources */,
1EAF9D8114B9F566005E8EBD /* Main.cpp in Sources */,
1EAF9D8314B9F566005E8EBD /* mbr.cpp in Sources */,
1EAF9D8514B9F566005E8EBD /* TranslationAnalysis.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
03306D780C0B244800CA1311 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = moses;
targetProxy = 03306D770C0B244800CA1311 /* PBXContainerItemProxy */;
};
1CE6472E1167A11600EC77CC /* PBXTargetDependency */ = {
1EAF9D9F14B9F7BD005E8EBD /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = OnDiskPt;
targetProxy = 1CE6472D1167A11600EC77CC /* PBXContainerItemProxy */;
targetProxy = 1EAF9D9E14B9F7BD005E8EBD /* PBXContainerItemProxy */;
};
1EF070AE14B9F03F0052152A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = moses;
targetProxy = 1EF070AD14B9F03F0052152A /* PBXContainerItemProxy */;
};
1EF070B014B9F0430052152A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = lm;
targetProxy = 1EF070AF14B9F0430052152A /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
@ -330,6 +311,7 @@
LM_SRI,
LM_IRST,
TRACE_ENABLE,
WITH_THREADS,
);
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
@ -341,9 +323,9 @@
);
INSTALL_PATH = "$(HOME)/bin";
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
/opt/local/lib,
);
OTHER_LDFLAGS = (
"-lflm",
@ -352,6 +334,7 @@
"-ldstruct",
"-lz",
"-lirstlm",
"-lboost_thread-mt",
);
PREBINDING = NO;
PRODUCT_NAME = "moses-cmd";
@ -368,9 +351,10 @@
GCC_MODEL_TUNING = G5;
GCC_OPTIMIZATION_LEVEL = 3;
GCC_PREPROCESSOR_DEFINITIONS = (
LM_IRST,
LM_SRI,
LM_IRST,
TRACE_ENABLE,
WITH_THREADS,
);
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
@ -382,9 +366,9 @@
);
INSTALL_PATH = "$(HOME)/bin";
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
/opt/local/lib,
);
OTHER_LDFLAGS = (
"-lflm",
@ -393,6 +377,7 @@
"-ldstruct",
"-lz",
"-lirstlm",
"-lboost_thread-mt",
);
PREBINDING = NO;
PRODUCT_NAME = "moses-cmd";
@ -405,6 +390,12 @@
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = G5;
GCC_PREPROCESSOR_DEFINITIONS = (
LM_SRI,
LM_IRST,
TRACE_ENABLE,
WITH_THREADS,
);
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
@ -415,9 +406,9 @@
);
INSTALL_PATH = "$(HOME)/bin";
LIBRARY_SEARCH_PATHS = (
../irstlm/lib,
../srilm/lib/macosx,
../kenlm,
../../irstlm/lib,
../../srilm/lib/macosx,
/opt/local/lib,
);
OTHER_LDFLAGS = (
"-lflm",
@ -426,6 +417,7 @@
"-ldstruct",
"-lz",
"-lirstlm",
"-lboost_thread-mt",
);
PREBINDING = NO;
PRODUCT_NAME = "moses-cmd";
@ -436,9 +428,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ONLY_ACTIVE_ARCH_PRE_XCODE_3_1)";
HEADER_SEARCH_PATHS = ../kenlm;
ONLY_ACTIVE_ARCH_PRE_XCODE_3_1 = "$(NATIVE_ARCH_ACTUAL)";
SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk";
USER_HEADER_SEARCH_PATHS = "../../moses/src ../../";
VALID_ARCHS = "i386 ppc ppc64 ppc7400 ppc970 x86_64";
};
name = Debug;
@ -447,9 +439,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ONLY_ACTIVE_ARCH_PRE_XCODE_3_1)";
HEADER_SEARCH_PATHS = ../kenlm;
ONLY_ACTIVE_ARCH_PRE_XCODE_3_1 = "$(NATIVE_ARCH_ACTUAL)";
SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk";
USER_HEADER_SEARCH_PATHS = "../../moses/src ../../";
VALID_ARCHS = "i386 ppc ppc64 ppc7400 ppc970 x86_64";
};
name = Release;
@ -458,9 +450,9 @@
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ONLY_ACTIVE_ARCH_PRE_XCODE_3_1)";
HEADER_SEARCH_PATHS = ../kenlm;
ONLY_ACTIVE_ARCH_PRE_XCODE_3_1 = "$(NATIVE_ARCH_ACTUAL)";
SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk";
USER_HEADER_SEARCH_PATHS = "../../moses/src ../../";
VALID_ARCHS = "i386 ppc ppc64 ppc7400 ppc970 x86_64";
};
name = Default;

View File

@ -0,0 +1,140 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.macosx.exe.debug.341255150">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.macosx.exe.debug.341255150" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.macosx.exe.debug.341255150" name="Debug" parent="cdt.managedbuild.config.gnu.macosx.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.341255150." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.debug.1679946908" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.debug.451172468" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.debug"/>
<builder buildPath="${workspace_loc:/moses-cmd/Debug}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.debug.1382407954" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug.2118670613" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug.84059290" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug">
<option id="macosx.cpp.link.option.libs.1641794848" name="Libraries (-l)" superClass="macosx.cpp.link.option.libs" valueType="libs">
<listOptionValue builtIn="false" value="moses"/>
<listOptionValue builtIn="false" value="OnDiskPt"/>
<listOptionValue builtIn="false" value="lm"/>
<listOptionValue builtIn="false" value="util"/>
<listOptionValue builtIn="false" value="irstlm"/>
</option>
<option id="macosx.cpp.link.option.paths.1615268628" name="Library search path (-L)" superClass="macosx.cpp.link.option.paths" valueType="libPaths">
<listOptionValue builtIn="false" value="/Users/hieuhoang/workspace/github/moses-smt/contrib/other-builds/moses/Debug"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/workspace/github/moses-smt/contrib/other-builds/OnDiskPt/Debug"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/workspace/github/moses-smt/contrib/other-builds/lm/Debug"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/workspace/github/moses-smt/contrib/other-builds/util/Debug"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/workspace/github/moses-smt/irstlm/lib"/>
</option>
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.412058804" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug.896987906" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.187427846" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.2033983602" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1808603697" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug">
<option id="gnu.cpp.compilermacosx.exe.debug.option.optimization.level.2018824611" name="Optimization Level" superClass="gnu.cpp.compilermacosx.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level.1176009559" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1024398579" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/opt/local/include"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/moses/src"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.240921565" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.1201400609" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.macosx.exe.debug.option.optimization.level.748558048" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.debug.option.debugging.level.1014626120" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.2031799877" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="LatticeMBRGrid.cpp" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.macosx.exe.release.1916112479">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.macosx.exe.release.1916112479" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.macosx.exe.release.1916112479" name="Release" parent="cdt.managedbuild.config.macosx.exe.release">
<folderInfo id="cdt.managedbuild.config.macosx.exe.release.1916112479." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.release.1528572752" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.release.1976002706" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.release"/>
<builder buildPath="${workspace_loc:/moses-cmd/Release}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.release.1470455063" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release.335066624" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release.1173017253" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.675070011" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release.174060449" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.1018665338" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.440711813" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.1219375865" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release">
<option id="gnu.cpp.compiler.macosx.exe.release.option.optimization.level.1940339824" name="Optimization Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.release.option.debugging.level.1648308879" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.604224475" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.759110223" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.macosx.exe.release.option.optimization.level.2105388501" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.release.option.debugging.level.1692046412" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1452105399" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="moses-cmd.cdt.managedbuild.target.macosx.exe.1016275955" name="Executable" projectType="cdt.managedbuild.target.macosx.exe"/>
</storageModule>
<storageModule moduleId="refreshScope" versionNumber="1">
<resource resourceType="PROJECT" workspacePath="/moses-cmd"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.341255150;cdt.managedbuild.config.gnu.macosx.exe.debug.341255150.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.1201400609;cdt.managedbuild.tool.gnu.c.compiler.input.2031799877">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.1916112479;cdt.managedbuild.config.macosx.exe.release.1916112479.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.759110223;cdt.managedbuild.tool.gnu.c.compiler.input.1452105399">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.1916112479;cdt.managedbuild.config.macosx.exe.release.1916112479.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.1219375865;cdt.managedbuild.tool.gnu.cpp.compiler.input.604224475">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.341255150;cdt.managedbuild.config.gnu.macosx.exe.debug.341255150.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1808603697;cdt.managedbuild.tool.gnu.cpp.compiler.input.240921565">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
</storageModule>
</cproject>

View File

@ -0,0 +1,199 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>moses-cmd</name>
<comment></comment>
<projects>
<project>lm</project>
<project>moses</project>
<project>OnDiskPt</project>
<project>util</project>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/moses-cmd/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>IOWrapper.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/IOWrapper.cpp</locationURI>
</link>
<link>
<name>IOWrapper.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/IOWrapper.h</locationURI>
</link>
<link>
<name>IOWrapper.o</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/IOWrapper.o</locationURI>
</link>
<link>
<name>Jamfile</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/Jamfile</locationURI>
</link>
<link>
<name>LatticeMBR.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/LatticeMBR.cpp</locationURI>
</link>
<link>
<name>LatticeMBR.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/LatticeMBR.h</locationURI>
</link>
<link>
<name>LatticeMBR.o</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/LatticeMBR.o</locationURI>
</link>
<link>
<name>LatticeMBRGrid.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/LatticeMBRGrid.cpp</locationURI>
</link>
<link>
<name>LatticeMBRGrid.o</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/LatticeMBRGrid.o</locationURI>
</link>
<link>
<name>Main.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/Main.cpp</locationURI>
</link>
<link>
<name>Main.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/Main.h</locationURI>
</link>
<link>
<name>Main.o</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/Main.o</locationURI>
</link>
<link>
<name>TranslationAnalysis.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/TranslationAnalysis.cpp</locationURI>
</link>
<link>
<name>TranslationAnalysis.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/TranslationAnalysis.h</locationURI>
</link>
<link>
<name>TranslationAnalysis.o</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/TranslationAnalysis.o</locationURI>
</link>
<link>
<name>libkenlm.dylib</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/libkenlm.dylib</locationURI>
</link>
<link>
<name>libkenutil.dylib</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/libkenutil.dylib</locationURI>
</link>
<link>
<name>lmbrgrid</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/lmbrgrid</locationURI>
</link>
<link>
<name>mbr.cpp</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/mbr.cpp</locationURI>
</link>
<link>
<name>mbr.h</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/mbr.h</locationURI>
</link>
<link>
<name>mbr.o</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/mbr.o</locationURI>
</link>
<link>
<name>moses</name>
<type>1</type>
<locationURI>PARENT-3-PROJECT_LOC/moses-cmd/src/moses</locationURI>
</link>
</linkedResources>
</projectDescription>

View File

@ -1,31 +1,24 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C++ Express 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "processLexicalTable", "misc\processLexicalTable.vcxproj", "{9834EABB-2033-4607-9DAC-36D16E0725B5}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "moses", "moses.vcxproj", "{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "processPhraseTable", "misc\processPhraseTable.vcxproj", "{AA230564-6DF1-4662-9BF9-7AD73DE53B76}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OnDiskPt", "OnDiskPt.vcxproj", "{8B07671B-CBAF-4514-AFFD-CE238CD427E9}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "moses", "moses\moses.vcxproj", "{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "moses-cmd", "moses-cmd.vcxproj", "{E2233DB1-5592-46FE-9420-E529420612FA}"
ProjectSection(ProjectDependencies) = postProject
{A5402E0B-6ED7-465C-9669-E4124A0CDDCB} = {A5402E0B-6ED7-465C-9669-E4124A0CDDCB}
{8B07671B-CBAF-4514-AFFD-CE238CD427E9} = {8B07671B-CBAF-4514-AFFD-CE238CD427E9}
{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF} = {8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "moses-chart-cmd", "moses-chart-cmd\moses-chart-cmd.vcxproj", "{C3AF5C05-D4EC-41D2-8319-D1E69B9B5820}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CreateOnDisk", "CreateOnDisk.vcxproj", "{88AE90C9-72D2-42ED-8389-770ACDCD4308}"
ProjectSection(ProjectDependencies) = postProject
{8B07671B-CBAF-4514-AFFD-CE238CD427E9} = {8B07671B-CBAF-4514-AFFD-CE238CD427E9}
{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF} = {8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "moses-cmd", "moses-cmd\moses-cmd.vcxproj", "{E2233DB1-5592-46FE-9420-E529420612FA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OnDiskPt", "OnDiskPt\OnDiskPt.vcxproj", "{8B07671B-CBAF-4514-AFFD-CE238CD427E9}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CreateOnDisk", "CreateOnDisk\CreateOnDisk.vcxproj", "{88AE90C9-72D2-42ED-8389-770ACDCD4308}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "consolidate", "scripts\training\phrase-extract\consolidate.vcxproj", "{45410EFE-65C0-4078-82E4-D636258F9225}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "consolidate-direct", "scripts\training\phrase-extract\consolidate-direct.vcxproj", "{33775109-60CF-4C1C-A869-5450B3DD88B3}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extract", "scripts\training\phrase-extract\extract.vcxproj", "{2475F8E8-A5C9-4785-8B09-5F4E120FC518}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "extract-rules", "scripts\training\phrase-extract\extract-rules.vcxproj", "{3C5CFAEC-6830-4491-9008-1C9E8C381C50}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "score", "scripts\training\phrase-extract\score.vcxproj", "{34AC84C7-62A1-4BBE-BCA9-4E95B2341039}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kenlm", "kenlm\kenlm.vcxproj", "{E834D71C-5D5F-4FB4-A361-88694C438FF9}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "kenlm", "kenlm.vcxproj", "{A5402E0B-6ED7-465C-9669-E4124A0CDDCB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -33,58 +26,26 @@ Global
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{9834EABB-2033-4607-9DAC-36D16E0725B5}.Debug|Win32.ActiveCfg = Debug|Win32
{9834EABB-2033-4607-9DAC-36D16E0725B5}.Debug|Win32.Build.0 = Debug|Win32
{9834EABB-2033-4607-9DAC-36D16E0725B5}.Release|Win32.ActiveCfg = Release|Win32
{9834EABB-2033-4607-9DAC-36D16E0725B5}.Release|Win32.Build.0 = Release|Win32
{AA230564-6DF1-4662-9BF9-7AD73DE53B76}.Debug|Win32.ActiveCfg = Debug|Win32
{AA230564-6DF1-4662-9BF9-7AD73DE53B76}.Debug|Win32.Build.0 = Debug|Win32
{AA230564-6DF1-4662-9BF9-7AD73DE53B76}.Release|Win32.ActiveCfg = Release|Win32
{AA230564-6DF1-4662-9BF9-7AD73DE53B76}.Release|Win32.Build.0 = Release|Win32
{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}.Debug|Win32.ActiveCfg = Debug|Win32
{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}.Debug|Win32.Build.0 = Debug|Win32
{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}.Release|Win32.ActiveCfg = Release|Win32
{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}.Release|Win32.Build.0 = Release|Win32
{C3AF5C05-D4EC-41D2-8319-D1E69B9B5820}.Debug|Win32.ActiveCfg = Debug|Win32
{C3AF5C05-D4EC-41D2-8319-D1E69B9B5820}.Debug|Win32.Build.0 = Debug|Win32
{C3AF5C05-D4EC-41D2-8319-D1E69B9B5820}.Release|Win32.ActiveCfg = Release|Win32
{C3AF5C05-D4EC-41D2-8319-D1E69B9B5820}.Release|Win32.Build.0 = Release|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Debug|Win32.ActiveCfg = Debug|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Debug|Win32.Build.0 = Debug|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Release|Win32.ActiveCfg = Release|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Release|Win32.Build.0 = Release|Win32
{8B07671B-CBAF-4514-AFFD-CE238CD427E9}.Debug|Win32.ActiveCfg = Debug|Win32
{8B07671B-CBAF-4514-AFFD-CE238CD427E9}.Debug|Win32.Build.0 = Debug|Win32
{8B07671B-CBAF-4514-AFFD-CE238CD427E9}.Release|Win32.ActiveCfg = Release|Win32
{8B07671B-CBAF-4514-AFFD-CE238CD427E9}.Release|Win32.Build.0 = Release|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Debug|Win32.ActiveCfg = Debug|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Debug|Win32.Build.0 = Debug|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Release|Win32.ActiveCfg = Release|Win32
{E2233DB1-5592-46FE-9420-E529420612FA}.Release|Win32.Build.0 = Release|Win32
{88AE90C9-72D2-42ED-8389-770ACDCD4308}.Debug|Win32.ActiveCfg = Debug|Win32
{88AE90C9-72D2-42ED-8389-770ACDCD4308}.Debug|Win32.Build.0 = Debug|Win32
{88AE90C9-72D2-42ED-8389-770ACDCD4308}.Release|Win32.ActiveCfg = Release|Win32
{88AE90C9-72D2-42ED-8389-770ACDCD4308}.Release|Win32.Build.0 = Release|Win32
{45410EFE-65C0-4078-82E4-D636258F9225}.Debug|Win32.ActiveCfg = Debug|Win32
{45410EFE-65C0-4078-82E4-D636258F9225}.Debug|Win32.Build.0 = Debug|Win32
{45410EFE-65C0-4078-82E4-D636258F9225}.Release|Win32.ActiveCfg = Release|Win32
{45410EFE-65C0-4078-82E4-D636258F9225}.Release|Win32.Build.0 = Release|Win32
{33775109-60CF-4C1C-A869-5450B3DD88B3}.Debug|Win32.ActiveCfg = Debug|Win32
{33775109-60CF-4C1C-A869-5450B3DD88B3}.Debug|Win32.Build.0 = Debug|Win32
{33775109-60CF-4C1C-A869-5450B3DD88B3}.Release|Win32.ActiveCfg = Release|Win32
{33775109-60CF-4C1C-A869-5450B3DD88B3}.Release|Win32.Build.0 = Release|Win32
{2475F8E8-A5C9-4785-8B09-5F4E120FC518}.Debug|Win32.ActiveCfg = Debug|Win32
{2475F8E8-A5C9-4785-8B09-5F4E120FC518}.Debug|Win32.Build.0 = Debug|Win32
{2475F8E8-A5C9-4785-8B09-5F4E120FC518}.Release|Win32.ActiveCfg = Release|Win32
{2475F8E8-A5C9-4785-8B09-5F4E120FC518}.Release|Win32.Build.0 = Release|Win32
{3C5CFAEC-6830-4491-9008-1C9E8C381C50}.Debug|Win32.ActiveCfg = Debug|Win32
{3C5CFAEC-6830-4491-9008-1C9E8C381C50}.Debug|Win32.Build.0 = Debug|Win32
{3C5CFAEC-6830-4491-9008-1C9E8C381C50}.Release|Win32.ActiveCfg = Release|Win32
{3C5CFAEC-6830-4491-9008-1C9E8C381C50}.Release|Win32.Build.0 = Release|Win32
{34AC84C7-62A1-4BBE-BCA9-4E95B2341039}.Debug|Win32.ActiveCfg = Debug|Win32
{34AC84C7-62A1-4BBE-BCA9-4E95B2341039}.Debug|Win32.Build.0 = Debug|Win32
{34AC84C7-62A1-4BBE-BCA9-4E95B2341039}.Release|Win32.ActiveCfg = Release|Win32
{34AC84C7-62A1-4BBE-BCA9-4E95B2341039}.Release|Win32.Build.0 = Release|Win32
{E834D71C-5D5F-4FB4-A361-88694C438FF9}.Debug|Win32.ActiveCfg = Debug|Win32
{E834D71C-5D5F-4FB4-A361-88694C438FF9}.Debug|Win32.Build.0 = Debug|Win32
{E834D71C-5D5F-4FB4-A361-88694C438FF9}.Release|Win32.ActiveCfg = Release|Win32
{E834D71C-5D5F-4FB4-A361-88694C438FF9}.Release|Win32.Build.0 = Release|Win32
{A5402E0B-6ED7-465C-9669-E4124A0CDDCB}.Debug|Win32.ActiveCfg = Debug|Win32
{A5402E0B-6ED7-465C-9669-E4124A0CDDCB}.Debug|Win32.Build.0 = Debug|Win32
{A5402E0B-6ED7-465C-9669-E4124A0CDDCB}.Release|Win32.ActiveCfg = Release|Win32
{A5402E0B-6ED7-465C-9669-E4124A0CDDCB}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@ -10,6 +10,254 @@
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\moses\src\AlignmentInfo.h" />
<ClInclude Include="..\..\moses\src\AlignmentInfoCollection.h" />
<ClInclude Include="..\..\moses\src\BitmapContainer.h" />
<ClInclude Include="..\..\moses\src\CellCollection.h" />
<ClInclude Include="..\..\moses\src\ChartCell.h" />
<ClInclude Include="..\..\moses\src\ChartCellCollection.h" />
<ClInclude Include="..\..\moses\src\ChartCellLabel.h" />
<ClInclude Include="..\..\moses\src\ChartCellLabelSet.h" />
<ClInclude Include="..\..\moses\src\ChartHypothesis.h" />
<ClInclude Include="..\..\moses\src\ChartHypothesisCollection.h" />
<ClInclude Include="..\..\moses\src\ChartManager.h" />
<ClInclude Include="..\..\moses\src\ChartRuleLookupManager.h" />
<ClInclude Include="..\..\moses\src\ChartRuleLookupManagerMemory.h" />
<ClInclude Include="..\..\moses\src\ChartRuleLookupManagerOnDisk.h" />
<ClInclude Include="..\..\moses\src\ChartTranslationOption.h" />
<ClInclude Include="..\..\moses\src\ChartTranslationOptionCollection.h" />
<ClInclude Include="..\..\moses\src\ChartTranslationOptionList.h" />
<ClInclude Include="..\..\moses\src\ChartTrellisDetour.h" />
<ClInclude Include="..\..\moses\src\ChartTrellisDetourQueue.h" />
<ClInclude Include="..\..\moses\src\ChartTrellisNode.h" />
<ClInclude Include="..\..\moses\src\ChartTrellisPath.h" />
<ClInclude Include="..\..\moses\src\ChartTrellisPathList.h" />
<ClInclude Include="..\..\moses\src\ConfusionNet.h" />
<ClInclude Include="..\..\moses\src\DecodeFeature.h" />
<ClInclude Include="..\..\moses\src\DecodeGraph.h" />
<ClInclude Include="..\..\moses\src\DecodeStep.h" />
<ClInclude Include="..\..\moses\src\DecodeStepGeneration.h" />
<ClInclude Include="..\..\moses\src\DecodeStepTranslation.h" />
<ClInclude Include="..\..\moses\src\Dictionary.h" />
<ClInclude Include="..\..\moses\src\DotChart.h" />
<ClInclude Include="..\..\moses\src\DotChartInMemory.h" />
<ClInclude Include="..\..\moses\src\DotChartOnDisk.h" />
<ClInclude Include="..\..\moses\src\DummyScoreProducers.h" />
<ClInclude Include="..\..\moses\src\DynSuffixArray.h" />
<ClInclude Include="..\..\moses\src\Factor.h" />
<ClInclude Include="..\..\moses\src\FactorCollection.h" />
<ClInclude Include="..\..\moses\src\FactorTypeSet.h" />
<ClInclude Include="..\..\moses\src\FeatureFunction.h" />
<ClInclude Include="..\..\moses\src\FFState.h" />
<ClInclude Include="..\..\moses\src\File.h" />
<ClInclude Include="..\..\moses\src\FilePtr.h" />
<ClInclude Include="..\..\moses\src\FloydWarshall.h" />
<ClInclude Include="..\..\moses\src\GenerationDictionary.h" />
<ClInclude Include="..\..\moses\src\GlobalLexicalModel.h" />
<ClInclude Include="..\..\moses\src\gzfilebuf.h" />
<ClInclude Include="..\..\moses\src\hash.h" />
<ClInclude Include="..\..\moses\src\Hypothesis.h" />
<ClInclude Include="..\..\moses\src\HypothesisStack.h" />
<ClInclude Include="..\..\moses\src\HypothesisStackCubePruning.h" />
<ClInclude Include="..\..\moses\src\HypothesisStackNormal.h" />
<ClInclude Include="..\..\moses\src\InputFileStream.h" />
<ClInclude Include="..\..\moses\src\InputType.h" />
<ClInclude Include="..\..\moses\src\LexicalReordering.h" />
<ClInclude Include="..\..\moses\src\LexicalReorderingState.h" />
<ClInclude Include="..\..\moses\src\LexicalReorderingTable.h" />
<ClInclude Include="..\..\moses\src\LMList.h" />
<ClInclude Include="..\..\moses\src\LM\Base.h" />
<ClInclude Include="..\..\moses\src\LM\Factory.h" />
<ClInclude Include="..\..\moses\src\LM\Implementation.h" />
<ClInclude Include="..\..\moses\src\LM\Joint.h" />
<ClInclude Include="..\..\moses\src\LM\Ken.h" />
<ClInclude Include="..\..\moses\src\LM\MultiFactor.h" />
<ClInclude Include="..\..\moses\src\LM\SingleFactor.h" />
<ClInclude Include="..\..\moses\src\LVoc.h" />
<ClInclude Include="..\..\moses\src\Manager.h" />
<ClInclude Include="..\..\moses\src\NonTerminal.h" />
<ClInclude Include="..\..\moses\src\ObjectPool.h" />
<ClInclude Include="..\..\moses\src\OutputCollector.h" />
<ClInclude Include="..\..\moses\src\Parameter.h" />
<ClInclude Include="..\..\moses\src\PartialTranslOptColl.h" />
<ClInclude Include="..\..\moses\src\PCNTools.h" />
<ClInclude Include="..\..\moses\src\PDTAimp.h" />
<ClInclude Include="..\..\moses\src\Phrase.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionary.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryALSuffixArray.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryDynSuffixArray.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryMemory.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryNode.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryNodeSCFG.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryOnDisk.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionarySCFG.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryTree.h" />
<ClInclude Include="..\..\moses\src\PhraseDictionaryTreeAdaptor.h" />
<ClInclude Include="..\..\moses\src\PrefixTree.h" />
<ClInclude Include="..\..\moses\src\PrefixTreeMap.h" />
<ClInclude Include="..\..\moses\src\ReorderingConstraint.h" />
<ClInclude Include="..\..\moses\src\ReorderingStack.h" />
<ClInclude Include="..\..\moses\src\RuleCube.h" />
<ClInclude Include="..\..\moses\src\RuleCubeItem.h" />
<ClInclude Include="..\..\moses\src\RuleCubeQueue.h" />
<ClInclude Include="..\..\moses\src\RuleTable\Loader.h" />
<ClInclude Include="..\..\moses\src\RuleTable\LoaderCompact.h" />
<ClInclude Include="..\..\moses\src\RuleTable\LoaderFactory.h" />
<ClInclude Include="..\..\moses\src\RuleTable\LoaderHiero.h" />
<ClInclude Include="..\..\moses\src\RuleTable\LoaderStandard.h" />
<ClInclude Include="..\..\moses\src\RuleTable\Trie.h" />
<ClInclude Include="..\..\moses\src\ScoreComponentCollection.h" />
<ClInclude Include="..\..\moses\src\ScoreIndexManager.h" />
<ClInclude Include="..\..\moses\src\ScoreProducer.h" />
<ClInclude Include="..\..\moses\src\Search.h" />
<ClInclude Include="..\..\moses\src\SearchCubePruning.h" />
<ClInclude Include="..\..\moses\src\SearchNormal.h" />
<ClInclude Include="..\..\moses\src\Sentence.h" />
<ClInclude Include="..\..\moses\src\SentenceStats.h" />
<ClInclude Include="..\..\moses\src\SquareMatrix.h" />
<ClInclude Include="..\..\moses\src\StaticData.h" />
<ClInclude Include="..\..\moses\src\TargetPhrase.h" />
<ClInclude Include="..\..\moses\src\TargetPhraseCollection.h" />
<ClInclude Include="..\..\moses\src\ThreadPool.h" />
<ClInclude Include="..\..\moses\src\Timer.h" />
<ClInclude Include="..\..\moses\src\TranslationOption.h" />
<ClInclude Include="..\..\moses\src\TranslationOptionCollection.h" />
<ClInclude Include="..\..\moses\src\TranslationOptionCollectionConfusionNet.h" />
<ClInclude Include="..\..\moses\src\TranslationOptionCollectionText.h" />
<ClInclude Include="..\..\moses\src\TranslationOptionList.h" />
<ClInclude Include="..\..\moses\src\TranslationSystem.h" />
<ClInclude Include="..\..\moses\src\TreeInput.h" />
<ClInclude Include="..\..\moses\src\TrellisPath.h" />
<ClInclude Include="..\..\moses\src\TrellisPathCollection.h" />
<ClInclude Include="..\..\moses\src\TrellisPathList.h" />
<ClInclude Include="..\..\moses\src\TypeDef.h" />
<ClInclude Include="..\..\moses\src\UniqueObject.h" />
<ClInclude Include="..\..\moses\src\UserMessage.h" />
<ClInclude Include="..\..\moses\src\Util.h" />
<ClInclude Include="..\..\moses\src\Word.h" />
<ClInclude Include="..\..\moses\src\WordLattice.h" />
<ClInclude Include="..\..\moses\src\WordsBitmap.h" />
<ClInclude Include="..\..\moses\src\WordsRange.h" />
<ClInclude Include="..\..\moses\src\XmlOption.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\..\moses\src\AlignmentInfo.cpp" />
<ClCompile Include="..\..\moses\src\AlignmentInfoCollection.cpp" />
<ClCompile Include="..\..\moses\src\BitmapContainer.cpp" />
<ClCompile Include="..\..\moses\src\ChartCell.cpp" />
<ClCompile Include="..\..\moses\src\ChartCellCollection.cpp" />
<ClCompile Include="..\..\moses\src\ChartHypothesis.cpp" />
<ClCompile Include="..\..\moses\src\ChartHypothesisCollection.cpp" />
<ClCompile Include="..\..\moses\src\ChartManager.cpp" />
<ClCompile Include="..\..\moses\src\ChartRuleLookupManager.cpp" />
<ClCompile Include="..\..\moses\src\ChartRuleLookupManagerMemory.cpp" />
<ClCompile Include="..\..\moses\src\ChartRuleLookupManagerOnDisk.cpp" />
<ClCompile Include="..\..\moses\src\ChartTranslationOption.cpp" />
<ClCompile Include="..\..\moses\src\ChartTranslationOptionCollection.cpp" />
<ClCompile Include="..\..\moses\src\ChartTranslationOptionList.cpp" />
<ClCompile Include="..\..\moses\src\ChartTrellisDetour.cpp" />
<ClCompile Include="..\..\moses\src\ChartTrellisDetourQueue.cpp" />
<ClCompile Include="..\..\moses\src\ChartTrellisNode.cpp" />
<ClCompile Include="..\..\moses\src\ChartTrellisPath.cpp" />
<ClCompile Include="..\..\moses\src\ConfusionNet.cpp" />
<ClCompile Include="..\..\moses\src\DecodeFeature.cpp" />
<ClCompile Include="..\..\moses\src\DecodeGraph.cpp" />
<ClCompile Include="..\..\moses\src\DecodeStep.cpp" />
<ClCompile Include="..\..\moses\src\DecodeStepGeneration.cpp" />
<ClCompile Include="..\..\moses\src\DecodeStepTranslation.cpp" />
<ClCompile Include="..\..\moses\src\Dictionary.cpp" />
<ClCompile Include="..\..\moses\src\DotChart.cpp" />
<ClCompile Include="..\..\moses\src\DotChartInMemory.cpp" />
<ClCompile Include="..\..\moses\src\DotChartOnDisk.cpp" />
<ClCompile Include="..\..\moses\src\DummyScoreProducers.cpp" />
<ClCompile Include="..\..\moses\src\DynSuffixArray.cpp" />
<ClCompile Include="..\..\moses\src\Factor.cpp" />
<ClCompile Include="..\..\moses\src\FactorCollection.cpp" />
<ClCompile Include="..\..\moses\src\FactorTypeSet.cpp" />
<ClCompile Include="..\..\moses\src\FeatureFunction.cpp" />
<ClCompile Include="..\..\moses\src\FFState.cpp" />
<ClCompile Include="..\..\moses\src\File.cpp" />
<ClCompile Include="..\..\moses\src\FloydWarshall.cpp" />
<ClCompile Include="..\..\moses\src\GenerationDictionary.cpp" />
<ClCompile Include="..\..\moses\src\GlobalLexicalModel.cpp" />
<ClCompile Include="..\..\moses\src\hash.cpp" />
<ClCompile Include="..\..\moses\src\Hypothesis.cpp" />
<ClCompile Include="..\..\moses\src\HypothesisStack.cpp" />
<ClCompile Include="..\..\moses\src\HypothesisStackCubePruning.cpp" />
<ClCompile Include="..\..\moses\src\HypothesisStackNormal.cpp" />
<ClCompile Include="..\..\moses\src\InputFileStream.cpp" />
<ClCompile Include="..\..\moses\src\InputType.cpp" />
<ClCompile Include="..\..\moses\src\LexicalReordering.cpp" />
<ClCompile Include="..\..\moses\src\LexicalReorderingState.cpp" />
<ClCompile Include="..\..\moses\src\LexicalReorderingTable.cpp" />
<ClCompile Include="..\..\moses\src\LMList.cpp" />
<ClCompile Include="..\..\moses\src\LM\Base.cpp" />
<ClCompile Include="..\..\moses\src\LM\Factory.cpp" />
<ClCompile Include="..\..\moses\src\LM\Implementation.cpp" />
<ClCompile Include="..\..\moses\src\LM\Joint.cpp" />
<ClCompile Include="..\..\moses\src\LM\Ken.cpp" />
<ClCompile Include="..\..\moses\src\LM\MultiFactor.cpp" />
<ClCompile Include="..\..\moses\src\LM\SingleFactor.cpp" />
<ClCompile Include="..\..\moses\src\LVoc.cpp" />
<ClCompile Include="..\..\moses\src\Manager.cpp" />
<ClCompile Include="..\..\moses\src\NonTerminal.cpp" />
<ClCompile Include="..\..\moses\src\Parameter.cpp" />
<ClCompile Include="..\..\moses\src\PartialTranslOptColl.cpp" />
<ClCompile Include="..\..\moses\src\PCNTools.cpp" />
<ClCompile Include="..\..\moses\src\Phrase.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionary.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryALSuffixArray.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryDynSuffixArray.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryMemory.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryNode.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryNodeSCFG.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryOnDisk.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionarySCFG.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryTree.cpp" />
<ClCompile Include="..\..\moses\src\PhraseDictionaryTreeAdaptor.cpp" />
<ClCompile Include="..\..\moses\src\PrefixTreeMap.cpp" />
<ClCompile Include="..\..\moses\src\ReorderingConstraint.cpp" />
<ClCompile Include="..\..\moses\src\ReorderingStack.cpp" />
<ClCompile Include="..\..\moses\src\RuleCube.cpp" />
<ClCompile Include="..\..\moses\src\RuleCubeItem.cpp" />
<ClCompile Include="..\..\moses\src\RuleCubeQueue.cpp" />
<ClCompile Include="..\..\moses\src\RuleTable\LoaderCompact.cpp" />
<ClCompile Include="..\..\moses\src\RuleTable\LoaderFactory.cpp" />
<ClCompile Include="..\..\moses\src\RuleTable\LoaderHiero.cpp" />
<ClCompile Include="..\..\moses\src\RuleTable\LoaderStandard.cpp" />
<ClCompile Include="..\..\moses\src\RuleTable\Trie.cpp" />
<ClCompile Include="..\..\moses\src\ScoreComponentCollection.cpp" />
<ClCompile Include="..\..\moses\src\ScoreIndexManager.cpp" />
<ClCompile Include="..\..\moses\src\ScoreProducer.cpp" />
<ClCompile Include="..\..\moses\src\Search.cpp" />
<ClCompile Include="..\..\moses\src\SearchCubePruning.cpp" />
<ClCompile Include="..\..\moses\src\SearchNormal.cpp" />
<ClCompile Include="..\..\moses\src\Sentence.cpp" />
<ClCompile Include="..\..\moses\src\SentenceStats.cpp" />
<ClCompile Include="..\..\moses\src\SquareMatrix.cpp" />
<ClCompile Include="..\..\moses\src\StaticData.cpp" />
<ClCompile Include="..\..\moses\src\TargetPhrase.cpp" />
<ClCompile Include="..\..\moses\src\TargetPhraseCollection.cpp" />
<ClCompile Include="..\..\moses\src\ThreadPool.cpp" />
<ClCompile Include="..\..\moses\src\Timer.cpp" />
<ClCompile Include="..\..\moses\src\TranslationOption.cpp" />
<ClCompile Include="..\..\moses\src\TranslationOptionCollection.cpp" />
<ClCompile Include="..\..\moses\src\TranslationOptionCollectionConfusionNet.cpp" />
<ClCompile Include="..\..\moses\src\TranslationOptionCollectionText.cpp" />
<ClCompile Include="..\..\moses\src\TranslationOptionList.cpp" />
<ClCompile Include="..\..\moses\src\TranslationSystem.cpp" />
<ClCompile Include="..\..\moses\src\TreeInput.cpp" />
<ClCompile Include="..\..\moses\src\TrellisPath.cpp" />
<ClCompile Include="..\..\moses\src\TrellisPathCollection.cpp" />
<ClCompile Include="..\..\moses\src\UserMessage.cpp" />
<ClCompile Include="..\..\moses\src\Util.cpp" />
<ClCompile Include="..\..\moses\src\Word.cpp" />
<ClCompile Include="..\..\moses\src\WordLattice.cpp" />
<ClCompile Include="..\..\moses\src\WordsBitmap.cpp" />
<ClCompile Include="..\..\moses\src\WordsRange.cpp" />
<ClCompile Include="..\..\moses\src\XmlOption.cpp" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{8122157A-0DE5-44FF-8E5B-024ED6ACE7AF}</ProjectGuid>
<RootNamespace>moses</RootNamespace>
@ -47,11 +295,11 @@
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/moses/src;$(SolutionDir)/kenlm;$(SolutionDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../../moses/src;$(SolutionDir)/../../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;LM_INTERNAL;TRACE_ENABLE;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
@ -66,9 +314,9 @@
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/moses/src;$(SolutionDir)/kenlm;$(SolutionDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>C:\Program Files\boost\boost_1_47;$(SolutionDir)/../../moses/src;$(SolutionDir)/../../;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;LM_INTERNAL;TRACE_ENABLE;_CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
@ -78,250 +326,6 @@
<OutputFile>$(OutDir)$(ProjectName).lib</OutputFile>
</Lib>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\AlignmentInfo.cpp" />
<ClCompile Include="src\AlignmentInfoCollection.cpp" />
<ClCompile Include="src\BitmapContainer.cpp" />
<ClCompile Include="src\ChartCell.cpp" />
<ClCompile Include="src\ChartCellCollection.cpp" />
<ClCompile Include="src\ChartHypothesis.cpp" />
<ClCompile Include="src\ChartHypothesisCollection.cpp" />
<ClCompile Include="src\ChartManager.cpp" />
<ClCompile Include="src\ChartRuleLookupManagerMemory.cpp" />
<ClCompile Include="src\ChartRuleLookupManagerOnDisk.cpp" />
<ClCompile Include="src\ChartTranslationOption.cpp" />
<ClCompile Include="src\ChartTranslationOptionCollection.cpp" />
<ClCompile Include="src\ChartTranslationOptionList.cpp" />
<ClCompile Include="src\ChartTrellisDetour.cpp" />
<ClCompile Include="src\ChartTrellisDetourQueue.cpp" />
<ClCompile Include="src\ChartTrellisNode.cpp" />
<ClCompile Include="src\ChartTrellisPath.cpp" />
<ClCompile Include="src\ConfusionNet.cpp" />
<ClCompile Include="src\DecodeFeature.cpp" />
<ClCompile Include="src\DecodeGraph.cpp" />
<ClCompile Include="src\DecodeStep.cpp" />
<ClCompile Include="src\DecodeStepGeneration.cpp" />
<ClCompile Include="src\DecodeStepTranslation.cpp" />
<ClCompile Include="src\Dictionary.cpp" />
<ClCompile Include="src\DotChart.cpp" />
<ClCompile Include="src\DotChartInMemory.cpp" />
<ClCompile Include="src\DotChartOnDisk.cpp" />
<ClCompile Include="src\DummyScoreProducers.cpp" />
<ClCompile Include="src\Factor.cpp" />
<ClCompile Include="src\FactorCollection.cpp" />
<ClCompile Include="src\FactorTypeSet.cpp" />
<ClCompile Include="src\FeatureFunction.cpp" />
<ClCompile Include="src\FFState.cpp" />
<ClCompile Include="src\File.cpp" />
<ClCompile Include="src\FloydWarshall.cpp" />
<ClCompile Include="src\GenerationDictionary.cpp" />
<ClCompile Include="src\GlobalLexicalModel.cpp" />
<ClCompile Include="src\hash.cpp" />
<ClCompile Include="src\Hypothesis.cpp" />
<ClCompile Include="src\HypothesisStack.cpp" />
<ClCompile Include="src\HypothesisStackCubePruning.cpp" />
<ClCompile Include="src\HypothesisStackNormal.cpp" />
<ClCompile Include="src\InputFileStream.cpp" />
<ClCompile Include="src\InputType.cpp" />
<ClCompile Include="src\LexicalReordering.cpp" />
<ClCompile Include="src\LexicalReorderingState.cpp" />
<ClCompile Include="src\LexicalReorderingTable.cpp" />
<ClCompile Include="src\LMList.cpp" />
<ClCompile Include="src\LM\Base.cpp" />
<ClCompile Include="src\LM\Factory.cpp" />
<ClCompile Include="src\LM\Implementation.cpp" />
<ClCompile Include="src\LM\Joint.cpp" />
<ClCompile Include="src\LM\MultiFactor.cpp" />
<ClCompile Include="src\LM\SingleFactor.cpp" />
<ClCompile Include="src\LVoc.cpp" />
<ClCompile Include="src\Manager.cpp" />
<ClCompile Include="src\Parameter.cpp" />
<ClCompile Include="src\PartialTranslOptColl.cpp" />
<ClCompile Include="src\PCNTools.cpp" />
<ClCompile Include="src\Phrase.cpp" />
<ClCompile Include="src\PhraseDictionary.cpp" />
<ClCompile Include="src\PhraseDictionaryMemory.cpp" />
<ClCompile Include="src\PhraseDictionaryNode.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="src\PhraseDictionaryNodeSCFG.cpp" />
<ClCompile Include="src\PhraseDictionaryOnDisk.cpp" />
<ClCompile Include="src\PhraseDictionarySCFG.cpp" />
<ClCompile Include="src\PhraseDictionaryTree.cpp" />
<ClCompile Include="src\PhraseDictionaryTreeAdaptor.cpp" />
<ClCompile Include="src\PrefixTreeMap.cpp" />
<ClCompile Include="src\ReorderingConstraint.cpp" />
<ClCompile Include="src\ReorderingStack.cpp" />
<ClCompile Include="src\RuleCube.cpp" />
<ClCompile Include="src\RuleCubeItem.cpp" />
<ClCompile Include="src\RuleCubeQueue.cpp" />
<ClCompile Include="src\RuleTableLoaderCompact.cpp" />
<ClCompile Include="src\RuleTableLoaderFactory.cpp" />
<ClCompile Include="src\RuleTableLoaderStandard.cpp" />
<ClCompile Include="src\ScoreComponentCollection.cpp" />
<ClCompile Include="src\ScoreIndexManager.cpp" />
<ClCompile Include="src\ScoreProducer.cpp" />
<ClCompile Include="src\Search.cpp" />
<ClCompile Include="src\SearchCubePruning.cpp" />
<ClCompile Include="src\SearchNormal.cpp" />
<ClCompile Include="src\Sentence.cpp" />
<ClCompile Include="src\SentenceStats.cpp" />
<ClCompile Include="src\SquareMatrix.cpp" />
<ClCompile Include="src\StaticData.cpp" />
<ClCompile Include="src\TargetPhrase.cpp" />
<ClCompile Include="src\TargetPhraseCollection.cpp" />
<ClCompile Include="src\ThreadPool.cpp" />
<ClCompile Include="src\Timer.cpp" />
<ClCompile Include="src\TranslationOption.cpp" />
<ClCompile Include="src\TranslationOptionCollection.cpp" />
<ClCompile Include="src\TranslationOptionCollectionConfusionNet.cpp" />
<ClCompile Include="src\TranslationOptionCollectionText.cpp" />
<ClCompile Include="src\TranslationOptionList.cpp" />
<ClCompile Include="src\TranslationSystem.cpp" />
<ClCompile Include="src\TreeInput.cpp" />
<ClCompile Include="src\TrellisPath.cpp" />
<ClCompile Include="src\TrellisPathCollection.cpp" />
<ClCompile Include="src\UserMessage.cpp" />
<ClCompile Include="src\Util.cpp" />
<ClCompile Include="src\Word.cpp" />
<ClCompile Include="src\WordLattice.cpp" />
<ClCompile Include="src\WordsBitmap.cpp" />
<ClCompile Include="src\WordsRange.cpp" />
<ClCompile Include="src\XmlOption.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\AlignmentInfo.h" />
<ClInclude Include="src\AlignmentInfoCollection.h" />
<ClInclude Include="src\BilingualDynSuffixArray.h" />
<ClInclude Include="src\BitmapContainer.h" />
<ClInclude Include="src\CellCollection.h" />
<ClInclude Include="src\ChartCell.h" />
<ClInclude Include="src\ChartCellCollection.h" />
<ClInclude Include="src\ChartHypothesis.h" />
<ClInclude Include="src\ChartHypothesisCollection.h" />
<ClInclude Include="src\ChartManager.h" />
<ClInclude Include="src\ChartRuleLookupManager.h" />
<ClInclude Include="src\ChartRuleLookupManagerMemory.h" />
<ClInclude Include="src\ChartRuleLookupManagerOnDisk.h" />
<ClInclude Include="src\ChartTranslationOption.h" />
<ClInclude Include="src\ChartTranslationOptionCollection.h" />
<ClInclude Include="src\ChartTranslationOptionList.h" />
<ClInclude Include="src\ChartTrellisDetour.h" />
<ClInclude Include="src\ChartTrellisDetourQueue.h" />
<ClInclude Include="src\ChartTrellisNode.h" />
<ClInclude Include="src\ChartTrellisPath.h" />
<ClInclude Include="src\ChartTrellisPathCollection.h" />
<ClInclude Include="src\ChartTrellisPathList.h" />
<ClInclude Include="src\ConfusionNet.h" />
<ClInclude Include="src\DecodeFeature.h" />
<ClInclude Include="src\DecodeGraph.h" />
<ClInclude Include="src\DecodeStep.h" />
<ClInclude Include="src\DecodeStepGeneration.h" />
<ClInclude Include="src\DecodeStepTranslation.h" />
<ClInclude Include="src\Dictionary.h" />
<ClInclude Include="src\DotChart.h" />
<ClInclude Include="src\DotChartInMemory.h" />
<ClInclude Include="src\DotChartOnDisk.h" />
<ClInclude Include="src\DummyScoreProducers.h" />
<ClInclude Include="src\DynSuffixArray.h" />
<ClInclude Include="src\Factor.h" />
<ClInclude Include="src\FactorCollection.h" />
<ClInclude Include="src\FactorTypeSet.h" />
<ClInclude Include="src\FeatureFunction.h" />
<ClInclude Include="src\FFState.h" />
<ClInclude Include="src\File.h" />
<ClInclude Include="src\FilePtr.h" />
<ClInclude Include="src\FloydWarshall.h" />
<ClInclude Include="src\GenerationDictionary.h" />
<ClInclude Include="src\GlobalLexicalModel.h" />
<ClInclude Include="src\gzfilebuf.h" />
<ClInclude Include="src\hash.h" />
<ClInclude Include="src\Hypothesis.h" />
<ClInclude Include="src\HypothesisStack.h" />
<ClInclude Include="src\HypothesisStackCubePruning.h" />
<ClInclude Include="src\HypothesisStackNormal.h" />
<ClInclude Include="src\InputFileStream.h" />
<ClInclude Include="src\InputType.h" />
<ClInclude Include="src\LexicalReordering.h" />
<ClInclude Include="src\LexicalReorderingState.h" />
<ClInclude Include="src\LexicalReorderingTable.h" />
<ClInclude Include="src\LMList.h" />
<ClInclude Include="src\LM\Base.h" />
<ClInclude Include="src\LM\Factory.h" />
<ClInclude Include="src\LM\Implementation.h" />
<ClInclude Include="src\LM\Joint.h" />
<ClInclude Include="src\LM\MultiFactor.h" />
<ClInclude Include="src\LM\SingleFactor.h" />
<ClInclude Include="src\LVoc.h" />
<ClInclude Include="src\Manager.h" />
<ClInclude Include="src\NGramCollection.h" />
<ClInclude Include="src\NGramNode.h" />
<ClInclude Include="src\NonTerminal.h" />
<ClInclude Include="src\ObjectPool.h" />
<ClInclude Include="src\OutputCollector.h" />
<ClInclude Include="src\Parameter.h" />
<ClInclude Include="src\PartialTranslOptColl.h" />
<ClInclude Include="src\PCNTools.h" />
<ClInclude Include="src\PDTAimp.h" />
<ClInclude Include="src\Phrase.h" />
<ClInclude Include="src\PhraseDictionary.h" />
<ClInclude Include="src\PhraseDictionaryDynSuffixArray.h" />
<ClInclude Include="src\PhraseDictionaryMemory.h" />
<ClInclude Include="src\PhraseDictionaryNode.h" />
<ClInclude Include="src\PhraseDictionaryNodeSCFG.h" />
<ClInclude Include="src\PhraseDictionaryOnDisk.h" />
<ClInclude Include="src\PhraseDictionarySCFG.h" />
<ClInclude Include="src\PhraseDictionaryTree.h" />
<ClInclude Include="src\PhraseDictionaryTreeAdaptor.h" />
<ClInclude Include="src\PrefixTree.h" />
<ClInclude Include="src\PrefixTreeMap.h" />
<ClInclude Include="src\ReorderingConstraint.h" />
<ClInclude Include="src\ReorderingStack.h" />
<ClInclude Include="src\RuleCube.h" />
<ClInclude Include="src\RuleCubeItem.h" />
<ClInclude Include="src\RuleCubeQueue.h" />
<ClInclude Include="src\RuleTableLoader.h" />
<ClInclude Include="src\RuleTableLoaderCompact.h" />
<ClInclude Include="src\RuleTableLoaderFactory.h" />
<ClInclude Include="src\RuleTableLoaderStandard.h" />
<ClInclude Include="src\ScoreComponentCollection.h" />
<ClInclude Include="src\ScoreIndexManager.h" />
<ClInclude Include="src\ScoreProducer.h" />
<ClInclude Include="src\Search.h" />
<ClInclude Include="src\SearchCubePruning.h" />
<ClInclude Include="src\SearchNormal.h" />
<ClInclude Include="src\Sentence.h" />
<ClInclude Include="src\SentenceStats.h" />
<ClInclude Include="src\SquareMatrix.h" />
<ClInclude Include="src\StaticData.h" />
<ClInclude Include="src\TargetPhrase.h" />
<ClInclude Include="src\TargetPhraseCollection.h" />
<ClInclude Include="src\ThreadPool.h" />
<ClInclude Include="src\Timer.h" />
<ClInclude Include="src\TranslationOption.h" />
<ClInclude Include="src\TranslationOptionCollection.h" />
<ClInclude Include="src\TranslationOptionCollectionConfusionNet.h" />
<ClInclude Include="src\TranslationOptionCollectionText.h" />
<ClInclude Include="src\TranslationOptionList.h" />
<ClInclude Include="src\TranslationSystem.h" />
<ClInclude Include="src\TreeInput.h" />
<ClInclude Include="src\TrellisPath.h" />
<ClInclude Include="src\TrellisPathCollection.h" />
<ClInclude Include="src\TrellisPathList.h" />
<ClInclude Include="src\TypeDef.h" />
<ClInclude Include="src\UniqueObject.h" />
<ClInclude Include="src\UserMessage.h" />
<ClInclude Include="src\Util.h" />
<ClInclude Include="src\Word.h" />
<ClInclude Include="src\WordConsumed.h" />
<ClInclude Include="src\WordLattice.h" />
<ClInclude Include="src\WordsBitmap.h" />
<ClInclude Include="src\WordsRange.h" />
<ClInclude Include="src\XmlOption.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,164 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/moses"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/moses/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="moses"/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426" name="Debug" parent="cdt.managedbuild.config.gnu.macosx.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.debug.497902212" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.debug.1820609450" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.debug"/>
<builder buildPath="${workspace_loc:/moses/Debug}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.debug.1998579330" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug.1330311562" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug.1226580551" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.102127808" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool command="as" commandLinePattern="${COMMAND} ${FLAGS} ${OUTPUT_FLAG} ${OUTPUT_PREFIX}${OUTPUT} ${INPUTS}" id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug.1556759720" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.897776351" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.1820797229" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1867588805" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug">
<option id="gnu.cpp.compilermacosx.exe.debug.option.optimization.level.1898625650" name="Optimization Level" superClass="gnu.cpp.compilermacosx.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level.806998992" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1819917957" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/opt/local/include"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/moses/src"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/srilm/include"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/irstlm/include"/>
</option>
<option id="gnu.cpp.compiler.option.preprocessor.def.1569452418" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LM_SRI"/>
<listOptionValue builtIn="false" value="LM_IRST"/>
<listOptionValue builtIn="false" value="TRACE_ENABLE"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1110302565" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.401409202" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.macosx.exe.debug.option.optimization.level.753046525" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.debug.option.debugging.level.1396911098" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1919272901" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.1722029461" name="SyntacticLanguageModelState.h" rcbsApplicability="disable" resourcePath="SyntacticLanguageModelState.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.1432960145" name="SyntacticLanguageModelFiles.h" rcbsApplicability="disable" resourcePath="SyntacticLanguageModelFiles.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.1906856645" name="SyntacticLanguageModel.h" rcbsApplicability="disable" resourcePath="SyntacticLanguageModel.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.460380900" name="Rand.h" rcbsApplicability="disable" resourcePath="LM/Rand.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.1692203139" name="ORLM.h" rcbsApplicability="disable" resourcePath="LM/ORLM.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.538301588" name="Remote.h" rcbsApplicability="disable" resourcePath="LM/Remote.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.854427429" name="LDHT.h" rcbsApplicability="disable" resourcePath="LM/LDHT.h" toolsToInvoke=""/>
<sourceEntries>
<entry excluding="SyntacticLanguageModelState.h|SyntacticLanguageModelFiles.h|SyntacticLanguageModel.h|SyntacticLanguageModel.cpp|LM/LDHT.cpp|LM/LDHT.h|LM/Remote.h|LM/Remote.cpp|LM/Rand.h|LM/Rand.cpp|LM/ORLM.h|LM/ORLM.cpp" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.macosx.exe.release.722580523">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.macosx.exe.release.722580523" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.macosx.exe.release.722580523" name="Release" parent="cdt.managedbuild.config.macosx.exe.release">
<folderInfo id="cdt.managedbuild.config.macosx.exe.release.722580523." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.release.2070671582" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.release.503591386" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.release"/>
<builder buildPath="${workspace_loc:/moses/Release}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.release.108117223" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release.1203406445" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release.1539915639" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.1333560300" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release.1693865756" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.2000339940" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.505919286" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.1662892925" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release">
<option id="gnu.cpp.compiler.macosx.exe.release.option.optimization.level.1036481202" name="Optimization Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.release.option.debugging.level.484015287" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.preprocessor.def.1089615214" name="Defined symbols (-D)" superClass="gnu.cpp.compiler.option.preprocessor.def" valueType="definedSymbols">
<listOptionValue builtIn="false" value="LM_SRI"/>
<listOptionValue builtIn="false" value="LM_IRST"/>
<listOptionValue builtIn="false" value="TRACE_ENABLE"/>
</option>
<option id="gnu.cpp.compiler.option.include.paths.1722702487" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/opt/local/include"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/moses/src"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/srilm/include"/>
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt/irstlm/include"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.936283391" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.1404156839" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.macosx.exe.release.option.optimization.level.1487222992" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.release.option.debugging.level.1171203697" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1172147378" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
<fileInfo id="cdt.managedbuild.config.macosx.exe.release.722580523.1831545277" name="Rand.h" rcbsApplicability="disable" resourcePath="LM/Rand.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.macosx.exe.release.722580523.1743378025" name="ORLM.h" rcbsApplicability="disable" resourcePath="LM/ORLM.h" toolsToInvoke=""/>
<fileInfo id="cdt.managedbuild.config.macosx.exe.release.722580523.1490362543" name="Remote.h" rcbsApplicability="disable" resourcePath="LM/Remote.h" toolsToInvoke=""/>
<sourceEntries>
<entry excluding="LM/LDHT.cpp|LM/Rand.h|LM/Rand.cpp|LM/ORLM.h|LM/ORLM.cpp" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="moses.cdt.managedbuild.target.macosx.exe.1209017164" name="Executable" projectType="cdt.managedbuild.target.macosx.exe"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426;cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.401409202;cdt.managedbuild.tool.gnu.c.compiler.input.1919272901">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.722580523;cdt.managedbuild.config.macosx.exe.release.722580523.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.1404156839;cdt.managedbuild.tool.gnu.c.compiler.input.1172147378">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426;cdt.managedbuild.config.gnu.macosx.exe.debug.1895695426.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1867588805;cdt.managedbuild.tool.gnu.cpp.compiler.input.1110302565">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.722580523;cdt.managedbuild.config.macosx.exe.release.722580523.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.1662892925;cdt.managedbuild.tool.gnu.cpp.compiler.input.936283391">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="refreshScope" versionNumber="1">
<resource resourceType="PROJECT" workspacePath="/moses"/>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets"/>
</cproject>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,133 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings>
<externalSetting>
<entry flags="VALUE_WORKSPACE_PATH" kind="includePath" name="/util"/>
<entry flags="VALUE_WORKSPACE_PATH" kind="libraryPath" name="/util/Debug"/>
<entry flags="RESOLVED" kind="libraryFile" name="util"/>
</externalSetting>
</externalSettings>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactExtension="a" artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.staticLib" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.staticLib" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447" name="Debug" parent="cdt.managedbuild.config.gnu.macosx.exe.debug">
<folderInfo id="cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.debug.1388624938" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.debug">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.debug.1873607607" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.debug"/>
<builder buildPath="${workspace_loc:/util/Debug}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.debug.2045214944" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug.589471640" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.debug"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug.1543780089" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.635667684" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug.726000130" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.debug">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.592875056" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.1252745601" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1018784824" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug">
<option id="gnu.cpp.compilermacosx.exe.debug.option.optimization.level.623959371" name="Optimization Level" superClass="gnu.cpp.compilermacosx.exe.debug.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level.892917290" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.debug.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.1401298824" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
<listOptionValue builtIn="false" value="/opt/local/include"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1420621104" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.1724141901" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug">
<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.macosx.exe.debug.option.optimization.level.36067607" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.debug.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.debug.option.debugging.level.460849578" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.289923594" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
<sourceEntries>
<entry excluding="util/bit_packing_test.cc" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
</sourceEntries>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
<cconfiguration id="cdt.managedbuild.config.macosx.exe.release.172239955">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.macosx.exe.release.172239955" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.MachO64" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.macosx.exe.release.172239955" name="Release" parent="cdt.managedbuild.config.macosx.exe.release">
<folderInfo id="cdt.managedbuild.config.macosx.exe.release.172239955." name="/" resourcePath="">
<toolChain id="cdt.managedbuild.toolchain.gnu.macosx.exe.release.822279811" name="MacOSX GCC" superClass="cdt.managedbuild.toolchain.gnu.macosx.exe.release">
<targetPlatform id="cdt.managedbuild.target.gnu.platform.macosx.exe.release.533470822" name="Debug Platform" superClass="cdt.managedbuild.target.gnu.platform.macosx.exe.release"/>
<builder buildPath="${workspace_loc:/util/Release}" id="cdt.managedbuild.target.gnu.builder.macosx.exe.release.1705559832" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.target.gnu.builder.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release.476073423" name="MacOS X C Linker" superClass="cdt.managedbuild.tool.macosx.c.linker.macosx.exe.release"/>
<tool id="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release.384294309" name="MacOS X C++ Linker" superClass="cdt.managedbuild.tool.macosx.cpp.linker.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.macosx.cpp.linker.input.1583097070" superClass="cdt.managedbuild.tool.macosx.cpp.linker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release.1872669585" name="GCC Assembler" superClass="cdt.managedbuild.tool.gnu.assembler.macosx.exe.release">
<inputType id="cdt.managedbuild.tool.gnu.assembler.input.453642480" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.archiver.macosx.base.1010248526" name="GCC Archiver" superClass="cdt.managedbuild.tool.gnu.archiver.macosx.base"/>
<tool id="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.549134109" name="GCC C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release">
<option id="gnu.cpp.compiler.macosx.exe.release.option.optimization.level.1741196615" name="Optimization Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
<option id="gnu.cpp.compiler.macosx.exe.release.option.debugging.level.1171704152" name="Debug Level" superClass="gnu.cpp.compiler.macosx.exe.release.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
<option id="gnu.cpp.compiler.option.include.paths.883129829" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
<listOptionValue builtIn="false" value="/Users/hieuhoang/unison/workspace/github/moses-smt"/>
</option>
<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.685540722" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
</tool>
<tool id="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.279247859" name="GCC C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release">
<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.macosx.exe.release.option.optimization.level.1371842588" name="Optimization Level" superClass="gnu.c.compiler.macosx.exe.release.option.optimization.level" valueType="enumerated"/>
<option id="gnu.c.compiler.macosx.exe.release.option.debugging.level.1581172024" name="Debug Level" superClass="gnu.c.compiler.macosx.exe.release.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1632081663" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="util.cdt.managedbuild.target.macosx.exe.2006203724" name="Executable" projectType="cdt.managedbuild.target.macosx.exe"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.172239955;cdt.managedbuild.config.macosx.exe.release.172239955.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.release.279247859;cdt.managedbuild.tool.gnu.c.compiler.input.1632081663">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.macosx.exe.release.172239955;cdt.managedbuild.config.macosx.exe.release.172239955.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.release.549134109;cdt.managedbuild.tool.gnu.cpp.compiler.input.685540722">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447;cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447.;cdt.managedbuild.tool.gnu.cpp.compiler.macosx.exe.debug.1018784824;cdt.managedbuild.tool.gnu.cpp.compiler.input.1420621104">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447;cdt.managedbuild.config.gnu.macosx.exe.debug.1869657447.;cdt.managedbuild.tool.gnu.c.compiler.macosx.exe.debug.1724141901;cdt.managedbuild.tool.gnu.c.compiler.input.289923594">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="refreshScope" versionNumber="1">
<resource resourceType="PROJECT" workspacePath="/util"/>
</storageModule>
</cproject>

View File

@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>util</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/util/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
<linkedResources>
<link>
<name>util</name>
<type>2</type>
<locationURI>PARENT-3-PROJECT_LOC/util</locationURI>
</link>
</linkedResources>
</projectDescription>

View File

@ -14,7 +14,7 @@
#include "NBest.h"
#include "Tools.h"
#include "Util.h" // from Moses
#include "../../../moses/src/Util.h"
using namespace std;
@ -33,7 +33,7 @@ int main (int argc, char *argv[])
ifstream inpf;
PARAM_VEC p=parameter->GetParam("input-file");
if (p.size()<1 || p.size()>2) Error("The option -input-file requires one or two arguments");
int in_n=p.size()>1 ? Scan<int>(p[1]) : 0;
int in_n=p.size()>1 ? Moses::Scan<int>(p[1]) : 0;
cout << "NBest version 0.1, written by Holger.Schwenk@lium.univ-lemans.fr" << endl
<< " - reading input from file '" << p[0] << "'";
if (in_n>0) cout << " (limited to the first " << in_n << " hypothesis)";
@ -48,7 +48,7 @@ int main (int argc, char *argv[])
ofstream outf;
p=parameter->GetParam("output-file");
if (p.size()<1 || p.size()>2) Error("The option -output-file requires one or two arguments");
int out_n=p.size()>1 ? Scan<int>(p[1]) : 0;
int out_n=p.size()>1 ? Moses::Scan<int>(p[1]) : 0;
cout << " - writing output to file '" << p[0] << "'";
if (out_n>0) cout << " (limited to the first " << out_n << " hypothesis)";
cout << endl;

View File

@ -1,7 +1,7 @@
# where to find include files and libraries from Moses
MOSES_INC=../../moses/src
LIB_DIR=../../moses/src/
MOSES_INC=../../../moses/src ../../..
LIB_DIR=../../../moses/src/
LIBS=-lmoses -lz
OBJS=Main.o NBest.o Hypo.o Tools.o ParameterNBest.o

View File

@ -0,0 +1,46 @@
//
// Java Sample client for mosesserver (Created by Marwen AZOUZI)
// The XML-RPC libraries are available at Apache (http://ws.apache.org/xmlrpc/)
//
import java.util.HashMap;
import java.net.URL;
import org.apache.xmlrpc.client.XmlRpcClient;
import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
public class SampleClient {
public static void main(String[] args) {
try {
// Create an instance of XmlRpcClient
XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl();
config.setServerURL(new URL("http://localhost:8080/RPC2"));
XmlRpcClient client = new XmlRpcClient();
client.setConfig(config);
// The XML-RPC data type used by mosesserver is <struct>. In Java, this data type can be represented using HashMap.
HashMap<String,String> mosesParams = new HashMap<String,String>();
String textToTranslate = new String("some text to translate .");
mosesParams.put("text", textToTranslate);
mosesParams.put("align", "true");
mosesParams.put("report-all-factors", "true");
// The XmlRpcClient.execute method doesn't accept Hashmap (pParams). It's either Object[] or List.
Object[] params = new Object[] { null };
params[0] = mosesParams;
// Invoke the remote method "translate". The result is an Object, convert it to a HashMap.
HashMap result = (HashMap)client.execute("translate", params);
// Print the returned results
String textTranslation = (String)result.get("text");
System.out.println("Input : "+textToTranslate);
System.out.println("Translation : "+textTranslation);
if (result.get("align") != null){
Object[] aligns = (Object[])result.get("align");
System.out.println("Phrase alignments : [Source Start:Source End][Target Start]");
for ( Object element : aligns) {
HashMap align = (HashMap)element;
System.out.println("["+align.get("src-start")+":"+align.get("src-end")+"]["+align.get("tgt-start")+"]");
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

View File

@ -6,17 +6,15 @@
#include <xmlrpc-c/registry.hpp>
#include <xmlrpc-c/server_abyss.hpp>
#include "ChartManager.h"
#include "Hypothesis.h"
#include "Manager.h"
#include "StaticData.h"
#include "PhraseDictionaryDynSuffixArray.h"
#include "TranslationSystem.h"
#include "TreeInput.h"
#include "LMList.h"
#ifdef LM_ORLM
# include "LanguageModelORLM.h"
#endif
#include <boost/algorithm/string.hpp>
#include "BleuScoreFeature.h"
#include "LM/ORLM.h"
using namespace Moses;
using namespace std;
@ -69,20 +67,12 @@ public:
string source_, target_, alignment_;
bool bounded_, add2ORLM_;
void updateORLM() {
#ifdef LM_ORLM
// TODO(level101): this belongs in the language model, not in moseserver.cpp
vector<string> vl;
map<vector<string>, int> ngSet;
LMList lms = StaticData::Instance().GetLMList(); // get LM
LMList::const_iterator lmIter = lms.begin();
const LanguageModel* lm = *lmIter;
/* currently assumes a single LM that is a ORLM */
#ifdef WITH_THREADS
boost::shared_ptr<LanguageModelORLM> orlm;
orlm = boost::dynamic_pointer_cast<LanguageModelORLM>(lm->GetLMImplementation());
#else
LanguageModelORLM* orlm;
orlm = (LanguageModelORLM*)lm->GetLMImplementation();
#endif
LanguageModelORLM* orlm = static_cast<LanguageModelORLM*>(static_cast<LMRefCount*>(*lmIter)->MosesServerCppShouldNotHaveLMCode());
if(orlm == 0) {
cerr << "WARNING: Unable to add target sentence to ORLM\n";
return;
@ -115,7 +105,6 @@ public:
orlm->UpdateORLM(it->first, it->second);
}
}
#endif
}
void breakOutParams(const params_t& params) {
params_t::const_iterator si = params.find("source");
@ -149,15 +138,12 @@ public:
// system.methodHelp RPC.
this->_signature = "S:S";
this->_help = "Does translation";
const StaticData &staticData = StaticData::Instance();
m_bleuScoreFeature = staticData.GetBleuScoreFeature();
}
BleuScoreFeature *m_bleuScoreFeature;
void
execute(xmlrpc_c::paramList const& paramList,
xmlrpc_c::value * const retvalP) {
void execute(xmlrpc_c::paramList const& paramList,
xmlrpc_c::value * const retvalP) {
const params_t params = paramList.getStruct(0);
paramList.verifyEnd(1);
params_t::const_iterator si = params.find("text");
@ -169,29 +155,7 @@ public:
const string source(
(xmlrpc_c::value_string(si->second)));
si = params.find("id");
if (si == params.end()) {
throw xmlrpc_c::fault("Missing sentence id",
xmlrpc_c::fault::CODE_PARSE);
}
int sentenceid = xmlrpc_c::value_int(si->second);
if (sentenceid < -1) {
throw xmlrpc_c::fault("Sentence id has to be >= 0",
xmlrpc_c::fault::CODE_PARSE);
}
cerr << "Loading reference info for sentence " << sentenceid << endl;
vector<string> sourceTokens;
boost::split(sourceTokens, source, boost::is_any_of("\t "));
m_bleuScoreFeature->SetCurrSourceLength(sourceTokens.size());
bool avgRefLength = false;
if (avgRefLength)
m_bleuScoreFeature->SetCurrAvgRefLength(sentenceid);
else
m_bleuScoreFeature->SetCurrShortestRefLength(sentenceid);
m_bleuScoreFeature->SetCurrReferenceNgrams(sentenceid);
cerr << "Input: " << source;
cerr << "Input: " << source << endl;
si = params.find("align");
bool addAlignInfo = (si != params.end());
si = params.find("sg");
@ -208,36 +172,48 @@ public:
}
const TranslationSystem& system = getTranslationSystem(params);
Sentence sentence;
const vector<FactorType> &inputFactorOrder =
staticData.GetInputFactorOrder();
stringstream in(source + "\n");
sentence.Read(in,inputFactorOrder);
Manager manager(sentence,staticData.GetSearchAlgorithm(), &system);
manager.ProcessSentence();
const Hypothesis* hypo = manager.GetBestHypothesis();
vector<xmlrpc_c::value> alignInfo;
stringstream out, graphInfo, transCollOpts;
outputHypo(out,hypo,addAlignInfo,alignInfo,reportAllFactors);
map<string, xmlrpc_c::value> retData;
SearchAlgorithm searchAlgorithm = staticData.GetSearchAlgorithm();
if (searchAlgorithm == ChartDecoding) {
TreeInput tinput;
const vector<FactorType> &inputFactorOrder =
staticData.GetInputFactorOrder();
stringstream in(source + "\n");
tinput.Read(in,inputFactorOrder);
ChartManager manager(tinput, &system);
manager.ProcessSentence();
const ChartHypothesis *hypo = manager.GetBestHypothesis();
outputChartHypo(out,hypo);
} else {
Sentence sentence;
const vector<FactorType> &inputFactorOrder =
staticData.GetInputFactorOrder();
stringstream in(source + "\n");
sentence.Read(in,inputFactorOrder);
Manager manager(sentence,staticData.GetSearchAlgorithm(), &system);
manager.ProcessSentence();
const Hypothesis* hypo = manager.GetBestHypothesis();
vector<xmlrpc_c::value> alignInfo;
outputHypo(out,hypo,addAlignInfo,alignInfo,reportAllFactors);
if (addAlignInfo) {
retData.insert(pair<string, xmlrpc_c::value>("align", xmlrpc_c::value_array(alignInfo)));
}
if(addGraphInfo) {
insertGraphInfo(manager,retData);
(const_cast<StaticData&>(staticData)).SetOutputSearchGraph(false);
}
if (addTopts) {
insertTranslationOptions(manager,retData);
}
}
pair<string, xmlrpc_c::value>
text("text", xmlrpc_c::value_string(out.str()));
cerr << "\nOutput: " << out.str() << endl << endl;
if (addAlignInfo) {
retData.insert(pair<string, xmlrpc_c::value>("align", xmlrpc_c::value_array(alignInfo)));
}
retData.insert(text);
if(addGraphInfo) {
insertGraphInfo(manager,retData);
(const_cast<StaticData&>(staticData)).SetOutputSearchGraph(false);
}
if (addTopts) {
insertTranslationOptions(manager,retData);
}
cerr << "Output: " << out.str() << endl;
*retvalP = xmlrpc_c::value_struct(retData);
}
@ -268,6 +244,21 @@ public:
}
}
void outputChartHypo(ostream& out, const ChartHypothesis* hypo) {
Phrase outPhrase(20);
hypo->CreateOutputPhrase(outPhrase);
// delete 1st & last
assert(outPhrase.GetSize() >= 2);
outPhrase.RemoveWord(0);
outPhrase.RemoveWord(outPhrase.GetSize() - 1);
for (size_t pos = 0 ; pos < outPhrase.GetSize() ; pos++) {
const Factor *factor = outPhrase.GetFactor(pos, 0);
out << *factor << " ";
}
}
void insertGraphInfo(Manager& manager, map<string, xmlrpc_c::value>& retData) {
vector<xmlrpc_c::value> searchGraphXml;
vector<SearchGraphNode> searchGraph;
@ -289,13 +280,8 @@ public:
}
searchGraphXmlNode["cover-start"] = xmlrpc_c::value_int(hypo->GetCurrSourceWordsRange().GetStartPos());
searchGraphXmlNode["cover-end"] = xmlrpc_c::value_int(hypo->GetCurrSourceWordsRange().GetEndPos());
searchGraphXmlNode["src-phrase"] = xmlrpc_c::value_string(hypo->GetSourcePhraseStringRep());
searchGraphXmlNode["tgt-phrase"] = xmlrpc_c::value_string(hypo->GetTargetPhraseStringRep());
ScoreComponentCollection scoreBreakdown = hypo->GetScoreBreakdown();
scoreBreakdown.MinusEquals(prevHypo->GetScoreBreakdown());
stringstream tmp;
tmp << scoreBreakdown;
searchGraphXmlNode["scores"] = xmlrpc_c::value_string(tmp.str());
searchGraphXmlNode["out"] =
xmlrpc_c::value_string(hypo->GetCurrTargetPhrase().GetStringRep(StaticData::Instance().GetOutputFactorOrder()));
}
searchGraphXml.push_back(xmlrpc_c::value_struct(searchGraphXmlNode));
}
@ -322,11 +308,10 @@ public:
toptXml["start"] = xmlrpc_c::value_int(startPos);
toptXml["end"] = xmlrpc_c::value_int(endPos);
vector<xmlrpc_c::value> scoresXml;
cerr << "Warning: not adding scores to translation options.." << endl;
ScoreComponentCollection scores = topt->GetScoreBreakdown();
// for (size_t j = 0; j < scores.size(); ++j) {
// scoresXml.push_back(xmlrpc_c::value_double(scores[j]));
// }
for (size_t j = 0; j < scores.size(); ++j) {
scoresXml.push_back(xmlrpc_c::value_double(scores[j]));
}
toptXml["scores"] = xmlrpc_c::value_array(scoresXml);
toptsXml.push_back(xmlrpc_c::value_struct(toptXml));
}
@ -334,194 +319,11 @@ public:
}
retData.insert(pair<string, xmlrpc_c::value>("topt", xmlrpc_c::value_array(toptsXml)));
}
};
const char* ffNames[] = { "Distortion", "WordPenalty", "!UnknownWordPenalty 1", "LexicalReordering_wbe-msd-bidirectional-fe-allff_1",
"LexicalReordering_wbe-msd-bidirectional-fe-allff_2", "LexicalReordering_wbe-msd-bidirectional-fe-allff_3",
"LexicalReordering_wbe-msd-bidirectional-fe-allff_4", "LexicalReordering_wbe-msd-bidirectional-fe-allff_5",
"LexicalReordering_wbe-msd-bidirectional-fe-allff_6", "LM", "PhraseModel_1", "PhraseModel_2", "PhraseModel_3",
"PhraseModel_4", "PhraseModel_5", "BleuScoreFeature" };
//const char* ffNames[] = { "Distortion", "WordPenalty", "!UnknownWordPenalty 1", "LM", "PhraseModel_1", "PhraseModel_2" };
bool setCoreWeights(ScoreComponentCollection &weights, vector<string> &coreWeightVector, const vector<const ScoreProducer*> &featureFunctions) {
vector< float > store_weights;
for (size_t i=0; i<coreWeightVector.size(); ++i) {
string name(ffNames[i]);
float weight = Scan<float>(coreWeightVector[i]);
VERBOSE(1, "loading core weight " << name << endl);
for (size_t i=0; i < featureFunctions.size(); ++i) {
std::string prefix = featureFunctions[i]->GetScoreProducerDescription();
if (name.substr( 0, prefix.length() ).compare( prefix ) == 0) {
size_t numberScoreComponents = featureFunctions[i]->GetNumScoreComponents();
if (numberScoreComponents == 1) {
VERBOSE(1, "assign 1 weight for " << featureFunctions[i]->GetScoreProducerDescription());
VERBOSE(1, " (" << weight << ")" << endl << endl);
weights.Assign(featureFunctions[i], weight);
}
else {
store_weights.push_back(weight);
if (store_weights.size() == numberScoreComponents) {
VERBOSE(1, "assign " << store_weights.size() << " weights for " << featureFunctions[i]->GetScoreProducerDescription() << " (");
for (size_t j=0; j < store_weights.size(); ++j)
VERBOSE(1, store_weights[j] << " ");
VERBOSE(1, ")" << endl << endl);
weights.Assign(featureFunctions[i], store_weights);
store_weights.clear();
}
}
}
}
}
return true;
}
class WeightSetter: public xmlrpc_c::method
{
public:
WeightSetter() {
// signature and help strings are documentation -- the client
// can query this information with a system.methodSignature and
// system.methodHelp RPC.
this->_signature = "S:S";
this->_help = "Sets Moses weights";
}
void execute(xmlrpc_c::paramList const& paramList,
xmlrpc_c::value * const retvalP) {
const params_t params = paramList.getStruct(0);
paramList.verifyEnd(1);
ScoreComponentCollection weightUpdate;
params_t::const_iterator si = params.find("core-weights");
string coreWeights;
if (si == params.end()) {
throw xmlrpc_c::fault(
"Missing core weights",
xmlrpc_c::fault::CODE_PARSE);
}
coreWeights = xmlrpc_c::value_string(si->second);
VERBOSE(1, "core weights: " << coreWeights << endl);
StaticData &staticData = StaticData::InstanceNonConst();
const vector<const ScoreProducer*> featureFunctions = staticData.GetTranslationSystem(TranslationSystem::DEFAULT).GetFeatureFunctions();
vector<string> coreWeightVector;
boost::split(coreWeightVector, coreWeights, boost::is_any_of(","));
setCoreWeights(weightUpdate, coreWeightVector, featureFunctions);
si = params.find("sparse-weights");
string sparseWeights;
if (si != params.end()) {
sparseWeights = xmlrpc_c::value_string(si->second);
VERBOSE(1, "sparse weights: " << sparseWeights << endl);
if (sparseWeights != "") {
vector<string> sparseWeightVector;
boost::split(sparseWeightVector, sparseWeights, boost::is_any_of("\t "));
for(size_t i=0; i<sparseWeightVector.size(); ++i) {
vector<string> name_value;
boost::split(name_value, sparseWeightVector[i], boost::is_any_of("="));
if (name_value.size() > 2) {
string tmp1 = name_value[name_value.size()-1];
name_value.erase(name_value.end());
string tmp2 = boost::algorithm::join(name_value, "=");
name_value[0] = tmp2;
name_value[1] = tmp1;
}
const string name(name_value[0]);
float value = Scan<float>(name_value[1]);
VERBOSE(1, "Setting sparse weight " << name << " to value " << value << "." << endl);
weightUpdate.Assign(name, value);
}
}
}
// Set moses weights to new weights
staticData.SetAllWeights(weightUpdate);
cerr << "\nSet weights: " << staticData.GetAllWeights() << endl;
*retvalP = xmlrpc_c::value_string("Weights set!");
}
};
class WeightAdder: public xmlrpc_c::method
{
public:
WeightAdder() {
// signature and help strings are documentation -- the client
// can query this information with a system.methodSignature and
// system.methodHelp RPC.
this->_signature = "S:S";
this->_help = "Adds an update to Moses weights";
}
void execute(xmlrpc_c::paramList const& paramList,
xmlrpc_c::value * const retvalP) {
const params_t params = paramList.getStruct(0);
paramList.verifyEnd(1);
ScoreComponentCollection weightUpdate;
params_t::const_iterator si = params.find("core-weights");
string coreWeights;
if (si == params.end()) {
throw xmlrpc_c::fault(
"Missing core weights",
xmlrpc_c::fault::CODE_PARSE);
}
coreWeights = xmlrpc_c::value_string(si->second);
VERBOSE(1, "core weights: " << coreWeights << endl);
StaticData &staticData = StaticData::InstanceNonConst();
const vector<const ScoreProducer*> featureFunctions = staticData.GetTranslationSystem(TranslationSystem::DEFAULT).GetFeatureFunctions();
vector<string> coreWeightVector;
boost::split(coreWeightVector, coreWeights, boost::is_any_of(","));
setCoreWeights(weightUpdate, coreWeightVector, featureFunctions);
si = params.find("sparse-weights");
string sparseWeights;
if (si != params.end()) {
sparseWeights = xmlrpc_c::value_string(si->second);
VERBOSE(1, "sparse weights: " << sparseWeights << endl);
if (sparseWeights != "") {
vector<string> sparseWeightVector;
boost::split(sparseWeightVector, sparseWeights, boost::is_any_of("\t "));
for(size_t i=0; i<sparseWeightVector.size(); ++i) {
vector<string> name_value;
boost::split(name_value, sparseWeightVector[i], boost::is_any_of("="));
if (name_value.size() > 2) {
string tmp1 = name_value[name_value.size()-1];
name_value.erase(name_value.end());
string tmp2 = boost::algorithm::join(name_value, "=");
name_value[0] = tmp2;
name_value[1] = tmp1;
}
const string name(name_value[0]);
float value = Scan<float>(name_value[1]);
VERBOSE(1, "Setting sparse weight " << name << " to value " << value << "." << endl);
weightUpdate.Assign(name, value);
}
}
}
// add new weights to Moses weights and write back to staticData
weightUpdate.PlusEquals(staticData.GetAllWeights());
staticData.SetAllWeights(weightUpdate);
cerr << "\nUpdated weights: " << staticData.GetAllWeights() << endl;
*retvalP = xmlrpc_c::value_string("Weights updated!");
}
};
/**
* Allocates a char* and copies string into it.
**/
static char* strToChar(const string& s) {
char* c = new char[s.size()+1];
strcpy(c,s.c_str());
return c;
}
int main(int argc, char** argv)
{
@ -529,7 +331,7 @@ int main(int argc, char** argv)
//Extract port and log, send other args to moses
char** mosesargv = new char*[argc+2];
int mosesargc = 0;
int port = 50005;
int port = 8080;
const char* logfile = "/dev/null";
bool isSerial = false;
@ -559,25 +361,6 @@ int main(int argc, char** argv)
++mosesargc;
}
}
cerr << "Switching off translation option cache.." << endl;
mosesargv[mosesargc] = strToChar("-use-persistent-cache");
++mosesargc;
mosesargv[mosesargc] = strToChar("0");
++mosesargc;
mosesargv[mosesargc] = strToChar("-persistent-cache-size");
++mosesargc;
mosesargv[mosesargc] = strToChar("0");
++mosesargc;
mosesargv[mosesargc] = strToChar("-b");
++mosesargc;
mosesargv[mosesargc] = strToChar("0");
++mosesargc;
cerr << "mosesargs: " << endl;
for (int i = 0 ; i < mosesargc ; i++) {
cerr << mosesargv[i] << endl;
}
Parameter* params = new Parameter();
if (!params->LoadParam(mosesargc,mosesargv)) {
@ -588,21 +371,13 @@ int main(int argc, char** argv)
exit(1);
}
cerr << "start weights: " << StaticData::Instance().GetAllWeights() << endl;
xmlrpc_c::registry myRegistry;
xmlrpc_c::methodPtr const translator(new Translator);
xmlrpc_c::methodPtr const updater(new Updater);
xmlrpc_c::methodPtr const weightSetter(new WeightSetter);
xmlrpc_c::methodPtr const weightAdder(new WeightAdder);
myRegistry.addMethod("translate", translator);
myRegistry.addMethod("updater", updater);
myRegistry.addMethod("setWeights", weightSetter);
myRegistry.addMethod("addWeights", weightAdder);
// backwards compatibility
myRegistry.addMethod("updateWeights", weightSetter);
xmlrpc_c::serverAbyss myAbyssServer(
myRegistry,

View File

@ -0,0 +1,88 @@
tmcombine - a tool for Moses translation model combination
Author: Rico Sennrich <sennrich [AT] cl.uzh.ch>
ABOUT
-----
This program handles the combination of Moses phrase tables, either through
linear interpolation of the phrase translation probabilities/lexical weights,
or through a recomputation based on the (weighted) combined counts.
It also supports an automatic search for weights that minimize the cross-entropy
between the model and a tuning set of word/phrase alignments.
REQUIREMENTS
------------
The script requires Python >= 2.6.
SciPy is recommended. If it is missing, an ad-hoc hill-climbing optimizer will be used (which may be slower, but is actually recommended for PyPy and/or a high number of models).
On Debian-based systems, you can install SciPy from the repository:
sudo apt-get install python-scipy
USAGE
-----
for usage information, run
./tmcombine.py -h
Two basic command line examples:
linearly interpolate two translation models with fixed weights:
./tmcombine.py combine_given_weights test/model1 test/model2 -w "0.1,0.9;0.1,1;0.2,0.8;0.5,0.5" -o test/phrase-table_test2
do a count-based combination of two translation models with weights that minimize perplexity on a set of reference phrase pairs.
./tmcombine.py combine_given_tuning_set test/model1 test/model2 -o test/phrase-table_test5 -m counts -r test/extract
Typically, you have to specify one action out of the following:
- `combine_given_weights`: write a new phrase table with defined weights
- `combine_given_tuning_set`: write a new phrase table, using the weights that minimize cross-entropy on a tuning set
- `compare_cross_entropies`: print cross-entropies for each model/feature, using the intersection of phrase pairs.
- `compute_cross_entropy`: return cross-entropy for a tuning set, a set of models and a set of weights.
- `return_best_cross_entropy`: return the set of weights and cross-entropy that is optimal for a tuning set and a set of models.
You can check the docstrings of `Combine_TMs()` for more information and find some example commands in the function `test()`.
Some configuration options (i.e. normalization of linear interpolation) are not accessible from the command line.
You can gain a bit more flexibility by writing/modifying python code that initializes `Combine_TMs()` with your desired arguments, or by just fiddling with the default values in the script.
Regression tests (check if the output files (`test/phrase-table_testN`) differ from the files in the repositorys):
./tmcombine.py test
FURTHER NOTES
-------------
- Different combination algorithms require different statistics. To be on the safe side, apply `train_model.patch` to `train_model.perl` and use the option `-phrase-word-alignment` when training models.
- The script assumes that phrase tables are sorted (to allow incremental, more memory-friendly processing). Sort the tables with `LC_ALL=C`. Phrase tables produced by Moses are sorted correctly.
- Some configurations require additional statistics that are loaded in memory (lexical tables; complete list of target phrases).
If memory consumption is a problem, use the option --lowmem (slightly slower and writes temporary files to disk), or consider pruning your phrase table before combining (e.g. using Johnson et al. 2007).
- The script can read/write gzipped files, but the Python implementation is slow. You're better off unzipping the files on the command line and working with the unzipped files. The script will automatically search for the unzipped file first, and for the gzipped file if the former doesn't exist.
- The cross-entropy estimation assumes that phrase tables contain true probability distributions (i.e. a probability mass of 1 for each conditional probability distribution). If this is not true, the results may be skewed.
- Unknown phrase pairs are not considered for the cross-entropy estimation. A comparison of models with different vocabularies may be misleading.
- Don't directly compare cross-entropies obtained from a combination with different modes. Depending on how some corner cases are treated, linear interpolation does not distribute the full probability mass and thus shows higher (i.e. worse) cross-entropies.
REFERENCES
----------
The algorithms are described in
Sennrich, Rico (2012). Perplexity Minimization for Translation Model Domain Adaptation in Statistical Machine Translation. In: Proceedings of EACL 2012.
The evaluated algorithms are:
- linear interpolation (naive): default
- linear interpolation (modified): use options `--normalized` and `--recompute_lexweights`
- weighted counts: use option `-m counts`

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,22 @@
jngspitz-nordostwand direkt ||| ngspitz : face nordest directe ||| 0-0 1-0 0-1 1-2 1-3 1-4
michel ||| michel ||| 0-0
michel piola ||| michel piola ||| 0-0 1-1
michel piola , ||| michel piola , ||| 0-0 1-1 2-2
michel piola , vernier ||| michel piola , vernier ||| 0-0 1-1 2-2 3-3
piola ||| piola ||| 0-0
piola , ||| piola , ||| 0-0 1-1
piola , vernier ||| piola , vernier ||| 0-0 1-1 2-2
, ||| , ||| 0-0
, vernier ||| , vernier ||| 0-0 1-1
vernier ||| vernier ||| 0-0
die ||| la ||| 0-0
nordostwand ||| face nordest ||| 0-0 0-1
hohe nordostwand ||| face nordest ||| 1-0 1-1
nordostwand des ||| face nordest de ||| 0-0 0-1 1-2
hohe nordostwand des ||| face nordest de ||| 1-0 1-1 2-2
nordostwand des kingspitz ||| face nordest de la kingspitz ||| 0-0 0-1 1-2 2-3 2-4
hohe nordostwand des kingspitz ||| face nordest de la kingspitz ||| 1-0 1-1 2-2 3-3 3-4
nordostwand des kingspitz ||| face nordest de la kingspitz , ||| 0-0 0-1 1-2 2-3 2-4
hohe nordostwand des kingspitz ||| face nordest de la kingspitz , ||| 1-0 1-1 2-2 3-3 3-4
pass ||| col ||| 0-0
sitzung ||| séance ||| 0-0

View File

@ -0,0 +1,8 @@
ad af 500 1000
bd bf 5 10
der le 20285 102586
der NULL 12926 704917
gipfel sommet 3485 7322
pass col 419 2911
pass passeport 7 28
sitzung séance 14 59

View File

@ -0,0 +1,8 @@
af ad 500 1000
bf bd 5 10
col pass 419 615
le der 20285 113635
passeport pass 7 615
retrouvé NULL 34 1016136
séance sitzung 14 33
sommet gipfel 3485 5700

View File

@ -0,0 +1,8 @@
ad af 0.5
bd bf 0.5
der le 0.1977365
der NULL 0.0183369
gipfel sommet 0.4759629
pass col 0.1439368
pass passeport 0.2500000
sitzung séance 0.2372881

View File

@ -0,0 +1,8 @@
af ad 0.5
bf bd 0.5
col pass 0.6813008
le der 0.1785101
passeport pass 0.0113821
retrouvé NULL 0.0000335
séance sitzung 0.4242424
sommet gipfel 0.6114035

View File

@ -0,0 +1,8 @@
ad ||| af ||| 0.5 0.5 0.5 0.5 2.718 ||| 0-0 ||| 1000 1000
bd ||| bf ||| 0.5 0.5 0.5 0.5 2.718 ||| 0-0 ||| 10 10
der gipfel ||| sommet ||| 0.00327135 0.00872768 0.0366795 0.611403 2.718 ||| 1-0 ||| 5808 518
der pass ||| le col ||| 0.0173565 0.0284616 0.288889 0.121619 2.718 ||| 0-0 1-1 ||| 749 45
pass ||| col ||| 0.1952 0.143937 0.628866 0.681301 2.718 ||| 0-0 ||| 1875 582
pass ||| passeport retrouvé ||| 0.5 0.25 0.00171821 3.813e-07 2.718 ||| 0-0 ||| 2 582
pass ||| passeport ||| 0.266667 0.25 0.00687285 0.0113821 2.718 ||| 0-0 ||| 15 582
sitzung ||| séance ||| 0.272727 0.237288 0.352941 0.424242 2.718 ||| 0-0 ||| 22 17

View File

@ -0,0 +1,8 @@
ad af 100 1000
bd bf 1 10
der le 150181 944391
der NULL 54483 3595140
gipfel sommet 3421 9342
pass col 2 70
pass passeport 73 379
sitzung séance 3441 5753

View File

@ -0,0 +1,8 @@
af ad 100 1000
bf bd 1 10
col pass 2 108
le der 150181 1356104
passeport pass 73 108
retrouvé NULL 43 6276240
séance sitzung 3441 6142
sommet gipfel 3421 4908

View File

@ -0,0 +1,8 @@
ad af 0.1
bd bf 0.1
der le 0.1590242
der NULL 0.0151546
gipfel sommet 0.366195
pass col 0.0285714
pass passeport 0.1926121
sitzung séance 0.5981227

View File

@ -0,0 +1,8 @@
af ad 0.1
bf bd 0.1
col pass 0.0185185
le der 0.1107445
passeport pass 0.6759259
retrouvé NULL 0.0000069
séance sitzung 0.5602410
sommet gipfel 0.6970253

View File

@ -0,0 +1,5 @@
ad ||| af ||| 0.1 0.1 0.1 0.1 2.718 ||| 0-0 ||| 1000 1000
bd ||| bf ||| 0.1 0.1 0.1 0.1 2.718 ||| 0-0 ||| 10 10
der pass ||| le passeport ||| 0.16 0.03063 0.4 0.0748551 2.718 ||| 0-0 1-1 ||| 25 10
pass ||| passeport ||| 0.28022 0.192612 0.607143 0.675926 2.718 ||| 0-0 ||| 182 84
sitzung ||| séance ||| 0.784521 0.598123 0.516654 0.560241 2.718 ||| 0-0 ||| 4251 6455

View File

@ -0,0 +1,8 @@
ad ||| af ||| 0.3 0.3 0.3 0.3 2.718 ||| 0-0 ||| 1000 1000
bd ||| bf ||| 0.3 0.3 0.3 0.3 2.718 ||| 0-0 ||| 10 10
der gipfel ||| sommet ||| 0.00163568 0.00436384 0.0183397 0.305702 2.718 ||| 1-0 ||| 5808 518
der pass ||| le col ||| 0.00867825 0.0142308 0.144445 0.0608095 2.718 ||| 0-0 1-1 ||| 749 45
pass ||| col ||| 0.0976 0.0719685 0.314433 0.340651 2.718 ||| 0-0 ||| 1875 582
pass ||| passeport retrouvé ||| 0.25 0.125 0.000859105 1.9065e-07 2.718 ||| 0-0 ||| 2 582
pass ||| passeport ||| 0.273444 0.221306 0.307008 0.343654 2.718 ||| 0-0 ||| 182 84
sitzung ||| séance ||| 0.528624 0.417705 0.434797 0.492241 2.718 ||| 0-0 ||| 4251 6455

View File

@ -0,0 +1,9 @@
ad ||| af ||| 0.14 0.136364 0.18 0.3 2.718 ||| 0-0 ||| 1000 1000
bd ||| bf ||| 0.14 0.136364 0.18 0.3 2.718 ||| 0-0 ||| 10 10
der gipfel ||| sommet ||| 0.000327135 0.000793425 0.0073359 0.305702 2.718 ||| 1-0 ||| 5808 518
der pass ||| le col ||| 0.00173565 0.00258742 0.0577778 0.0608095 2.718 ||| 0-0 1-1 ||| 749 45
der pass ||| le passeport ||| 0.144 0.0278455 0.32 0.0374275 2.718 ||| 0-0 1-1 ||| 25 10
pass ||| col ||| 0.01952 0.0130852 0.125773 0.340651 2.718 ||| 0-0 ||| 1875 582
pass ||| passeport retrouvé ||| 0.05 0.0227273 0.000343642 1.9065e-07 2.718 ||| 0-0 ||| 2 582
pass ||| passeport ||| 0.278865 0.197829 0.487089 0.343654 2.718 ||| 0-0 ||| 182 84
sitzung ||| séance ||| 0.733342 0.56532 0.483911 0.492241 2.718 ||| 0-0 ||| 4251 6455

View File

@ -0,0 +1,9 @@
ad ||| af ||| 0.14 0.136364 0.18 0.3 2.718 ||| 0-0 ||| 10000.0 5000.0
bd ||| bf ||| 0.14 0.136364 0.18 0.3 2.718 ||| 0-0 ||| 100.0 50.0
der gipfel ||| sommet ||| 0.00327135 0.00569336 0.0366795 0.651018 2.718 ||| 1-0 ||| 5808.0 518.0
der pass ||| le col ||| 0.0173565 0.0193836 0.152941 0.0675369 2.718 ||| 0-0 1-1 ||| 749.0 85.0
der pass ||| le passeport ||| 0.16 0.0307772 0.188235 0.0128336 2.718 ||| 0-0 1-1 ||| 225.0 85.0
pass ||| col ||| 0.1952 0.121573 0.398693 0.582296 2.718 ||| 0-0 ||| 1875.0 918.0
pass ||| passeport retrouvé ||| 0.5 0.193033 0.00108932 1.16835e-06 2.718 ||| 0-0 ||| 2.0 918.0
pass ||| passeport ||| 0.280097 0.193033 0.22658 0.11065 2.718 ||| 0-0 ||| 1653.0 918.0
sitzung ||| séance ||| 0.784227 0.597753 0.516546 0.559514 2.718 ||| 0-0 ||| 38281.0 25837.0

View File

@ -0,0 +1,8 @@
ad ||| af ||| 0.5 0.5 0.5 0.5 2.718 ||| 0-0 ||| 1000.0 1000.0
bd ||| bf ||| 0.5 0.5 0.5 0.5 2.718 ||| 0-0 ||| 10.0 10.0
der gipfel ||| sommet ||| 0.00327135 0.00872769 0.0366795 0.611404 2.718 ||| 1-0 ||| 5808.0 518.0
der pass ||| le col ||| 0.0173565 0.0284616 0.288889 0.121619 2.718 ||| 0-0 1-1 ||| 749.0 45.0
pass ||| col ||| 0.1952 0.143937 0.628866 0.681301 2.718 ||| 0-0 ||| 1875.0 582.0
pass ||| passeport retrouvé ||| 0.5 0.25 0.00171821 3.80847e-07 2.718 ||| 0-0 ||| 2.0 582.0
pass ||| passeport ||| 0.266667 0.25 0.00687285 0.0113821 2.718 ||| 0-0 ||| 15.0 582.0
sitzung ||| séance ||| 0.272727 0.237288 0.352941 0.424242 2.718 ||| 0-0 ||| 22.0 17.0

View File

@ -0,0 +1,9 @@
ad ||| af ||| 0.11579 0.35574 0.472359 0.469238 2.718 ||| 0-0 ||| 25332.4712297 1074.23173673
bd ||| bf ||| 0.11579 0.35574 0.472359 0.469238 2.718 ||| 0-0 ||| 253.324712297 10.7423173673
der gipfel ||| sommet ||| 0.00327135 0.00686984 0.0366795 0.617135 2.718 ||| 1-0 ||| 5808.0 518.0
der pass ||| le col ||| 0.0173565 0.023534 0.284201 0.0972183 2.718 ||| 0-0 1-1 ||| 749.0 45.7423173673
der pass ||| le passeport ||| 0.16 0.0329324 0.0064913 0.00303408 2.718 ||| 0-0 1-1 ||| 608.311780741 45.7423173673
pass ||| col ||| 0.1952 0.142393 0.6222 0.671744 2.718 ||| 0-0 ||| 1875.0 588.235465885
pass ||| passeport retrouvé ||| 0.5 0.199258 0.0017 5.11945e-07 2.718 ||| 0-0 ||| 2.0 588.235465885
pass ||| passeport ||| 0.280174 0.199258 0.0132359 0.0209644 2.718 ||| 0-0 ||| 4443.5097638 588.235465885
sitzung ||| séance ||| 0.784412 0.59168 0.511045 0.552002 2.718 ||| 0-0 ||| 103459.335197 496.165860589

View File

@ -0,0 +1,4 @@
ad ||| af ||| 0.117462 0.117462 0.117462 0.117462 2.718 ||| 0-0 ||| 1000 1000
bd ||| bf ||| 0.117462 0.117462 0.117462 0.117462 2.718 ||| 0-0 ||| 10 10
pass ||| passeport ||| 0.278834 0.197701 0.387861 0.449295 2.718 ||| 0-0 ||| 182 84
sitzung ||| séance ||| 0.705857 0.545304 0.497336 0.544877 2.718 ||| 0-0 ||| 4251 6455

View File

@ -0,0 +1 @@
([(1.8744705606119034, 2.0752881273042374, 1.5025010618768841, 1.2370391973008494, 0, 0, 1, 1, 22), (0.35011602922315899, 0.74148657814725749, 0.95272965495298623, 0.83588062023889353, 1, 0, 0, 1, 22)], (1, 22, 20))

View File

@ -0,0 +1,9 @@
ad ||| af ||| 0.5 0.398085 0.5 0.482814 2.718 ||| 0-0 ||| 1000.000001 1000.000001
bd ||| bf ||| 0.5 0.111367 0.5 0.172867 2.718 ||| 0-0 ||| 10.00000001 10.00000001
der gipfel ||| sommet ||| 0.00327135 0.00863717 0.0366795 0.612073 2.718 ||| 1-0 ||| 5808.0 518.0
der pass ||| le col ||| 0.0173565 0.0260469 0.288889 0.113553 2.718 ||| 0-0 1-1 ||| 749.0 45.00000001
der pass ||| le passeport ||| 0.0064 0.0389201 8.88889e-12 0.0101009 2.718 ||| 0-0 1-1 ||| 2.5e-08 45.00000001
pass ||| col ||| 0.1952 0.131811 0.628866 0.63621 2.718 ||| 0-0 ||| 1875.0 582.000000084
pass ||| passeport retrouvé ||| 0.5 0.196956 0.00171821 1.89355e-06 2.718 ||| 0-0 ||| 2.0 582.000000084
pass ||| passeport ||| 0.266667 0.196956 0.00687285 0.0565932 2.718 ||| 0-0 ||| 15.000000182 582.000000084
sitzung ||| séance ||| 0.272727 0.545019 0.352941 0.502625 2.718 ||| 0-0 ||| 22.000004251 17.000006455

1860
contrib/tmcombine/tmcombine.py Executable file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,24 @@
--- train-model.perl 2011-11-01 15:17:04.763230934 +0100
+++ train-model.perl 2011-11-01 15:17:00.033229220 +0100
@@ -1185,15 +1185,21 @@
open(F2E,">$lexical_file.f2e") or die "ERROR: Can't write $lexical_file.f2e";
open(E2F,">$lexical_file.e2f") or die "ERROR: Can't write $lexical_file.e2f";
+ open(F2E2,">$lexical_file.counts.f2e") or die "ERROR: Can't write $lexical_file.counts.f2e";
+ open(E2F2,">$lexical_file.counts.e2f") or die "ERROR: Can't write $lexical_file.counts.e2f";
foreach my $f (keys %WORD_TRANSLATION) {
foreach my $e (keys %{$WORD_TRANSLATION{$f}}) {
printf F2E "%s %s %.7f\n",$e,$f,$WORD_TRANSLATION{$f}{$e}/$TOTAL_FOREIGN{$f};
printf E2F "%s %s %.7f\n",$f,$e,$WORD_TRANSLATION{$f}{$e}/$TOTAL_ENGLISH{$e};
+ printf F2E2 "%s %s %i %i\n",$e,$f,$WORD_TRANSLATION{$f}{$e},$TOTAL_FOREIGN{$f};
+ printf E2F2 "%s %s %i %i\n",$f,$e,$WORD_TRANSLATION{$f}{$e},$TOTAL_ENGLISH{$e};
}
}
close(E2F);
close(F2E);
+ close(E2F2);
+ close(F2E2);
print STDERR "Saved: $lexical_file.f2e and $lexical_file.e2f\n";
}

View File

@ -169,52 +169,6 @@ raw-corpus = $toy-data/nc-5k.$output-extension
#
#lm =
#################################################################
# INTERPOLATING LANGUAGE MODELS
[INTERPOLATED-LM]
# if multiple language models are used, these may be combined
# by optimizing perplexity on a tuning set
# see, for instance [Koehn and Schwenk, IJCNLP 2008]
### script to interpolate language models
# if commented out, no interpolation is performed
#
# script = $moses-script-dir/ems/support/interpolate-lm.perl
### tuning set
# you may use the same set that is used for mert tuning (reference set)
#
#tuning-sgm =
#raw-tuning =
#tokenized-tuning =
#factored-tuning =
#lowercased-tuning =
#split-tuning =
### script to use for binary table format for irstlm or kenlm
# (default: no binarization)
# irstlm
#lm-binarizer = $moses-src-dir/irstlm/bin/compile-lm
# kenlm, also set type to 8
#lm-binarizer = $moses-src-dir/kenlm/build_binary
#type = 8
### script to create quantized language model format (irstlm)
# (default: no quantization)
#
#lm-quantizer = $moses-src-dir/irstlm/bin/quantize-lm
### script to use for converting into randomized table format
# (default: no randomization)
#
#lm-randomizer = "$moses-src-dir/randlm/bin/buildlm -falsepos 8 -values 8"
#################################################################
# TRANSLATION MODEL TRAINING
[TRAINING]

View File

@ -44,7 +44,7 @@ GITREPO="$MCC_GITREPO"
# location of moses regression test data archive (assumes url at the moment)
REGTEST_ARCHIVE="$MCC_REGTEST_ARCHIVE"
[ -n "$REGTEST_ARCHIVE" ] \
|| REGTEST_ARCHIVE="http://www.statmt.org/moses/reg-testing/moses-reg-test-data-9.tgz"
|| REGTEST_ARCHIVE="http://www.statmt.org/moses/reg-testing/moses-reg-test-data-10.tgz"
if [ ! -d "$WORKDIR" ]; then
mkdir "$WORKDIR" || die "Failed to create workdir $WORKDIR"

174
jam-files/sanity.jam Normal file
View File

@ -0,0 +1,174 @@
import modules ;
import option ;
import os ;
import path ;
import project ;
#Shell with trailing line removed http://lists.boost.org/boost-build/2007/08/17051.php
rule trim-nl ( str extras * ) {
return [ MATCH "([^
]*)" : $(str) ] $(extras) ;
}
rule _shell ( cmd : extras * ) {
return [ trim-nl [ SHELL $(cmd) : $(extras) ] ] ;
}
#Run g++ with empty main and these arguments to see if it passes.
rule test_flags ( flags * ) {
local cmd = "bash -c \"g++ "$(flags:J=" ")" -x c++ - <<<'int main() {}' -o /dev/null >/dev/null 2>/dev/null\"" ;
local ret = [ SHELL $(cmd) : exit-status ] ;
if --debug-configuration in [ modules.peek : ARGV ] {
echo $(cmd) ;
echo $(ret) ;
}
if $(ret[2]) = 0 {
return true ;
} else {
return ;
}
}
{
local cleaning = [ option.get "clean" : : yes ] ;
cleaning ?= [ option.get "clean-all" : no : yes ] ;
if "clean" in [ modules.peek : ARGV ] {
cleaning = yes ;
}
constant CLEANING : $(cleaning) ;
}
#Determine if a library can be compiled statically.
rule auto-shared ( name : additional * ) {
additional ?= "" ;
if [ test_flags $(additional)" -static -l"$(name) ] {
return ;
} else {
return "<link>shared" ;
}
}
# MacPorts' default location is /opt/local -- use this if no path is given.
with-macports = [ option.get "with-macports" : : "/opt/local" ] ;
if $(with-macports) {
using darwin ;
ECHO "Using --with-macports=$(with-macports), implying use of darwin GCC" ;
L-boost-search = -L$(with-macports)/lib ;
boost-search = <search>$(with-macports)/lib ;
I-boost-include = -I$(with-macports)/include ;
boost-include = <include>$(with-macports)/include ;
}
else {
with-boost = [ option.get "with-boost" ] ;
if $(with-boost) {
L-boost-search = -L$(with-boost)/lib" "-L$(with-boost)/lib64 ;
boost-search = <search>$(with-boost)/lib <search>$(with-boost)/lib64 ;
I-boost-include = -I$(with-boost)/include ;
boost-include = <include>$(with-boost)/include ;
} else {
L-boost-search = "" ;
boost-search = ;
I-boost-include = "" ;
boost-include = ;
}
}
#Are we linking static binaries against shared boost?
boost-auto-shared = [ auto-shared "boost_program_options" : $(L-boost-search) ] ;
#Convenience rule for boost libraries. Defines library boost_$(name).
rule boost-lib ( name macro ) {
#Link multi-threaded programs against the -mt version if available. Old
#versions of boost do not have -mt tagged versions of all libraries. Sadly,
#boost.jam does not handle this correctly.
if [ test_flags $(L-boost-search)" -lboost_"$(name)"-mt" ] {
lib inner_boost_$(name) : : <threading>single $(boost-search) <name>boost_$(name) ;
lib inner_boost_$(name) : : <threading>multi $(boost-search) <name>boost_$(name)-mt ;
} else {
lib inner_boost_$(name) : : $(boost-search) <name>boost_$(name) ;
}
alias boost_$(name) : inner_boost_$(name) : $(boost-auto-shared) : : <link>shared:<define>BOOST_$(macro) $(boost-include) ;
}
#Argument is e.g. 103600
rule boost ( min-version ) {
local cmd = "bash -c \"g++ "$(I-boost-include)" -dM -x c++ -E /dev/null -include boost/version.hpp 2>/dev/null |grep '#define BOOST_VERSION '\"" ;
local boost-shell = [ SHELL "$(cmd)" : exit-status ] ;
if $(boost-shell[2]) != 0 && $(CLEANING) = no {
echo Failed to run "$(cmd)" ;
exit Boost does not seem to be installed or g++ is confused. : 1 ;
}
boost-version = [ MATCH "#define BOOST_VERSION ([0-9]*)" : $(boost-shell[1]) ] ;
if $(boost-version) < $(min-version) && $(CLEANING) = no {
exit You have Boost $(boost-version). This package requires Boost at least $(min-version) (and preferably newer). : 1 ;
}
#See tools/build/v2/contrib/boost.jam in a boost distribution for a table of macros to define.
boost-lib thread THREAD_DYN_DLL ;
boost-lib program_options PROGRAM_OPTIONS_DYN_LINK ;
boost-lib unit_test_framework TEST_DYN_LINK ;
boost-lib iostreams IOSTREAMS_DYN_LINK ;
}
#Link normally to a library, but sometimes static isn't installed so fall back to dynamic.
rule external-lib ( name : search-path * ) {
lib $(name) : : [ auto-shared $(name) : "-L"$(search-path) ] <search>$(search-path) ;
}
#Write the current command line to previous.sh. This does not do shell escaping.
{
local build-log = $(TOP)/previous.sh ;
if ! [ path.exists $(build-log) ] {
SHELL "touch $(build-log) && chmod +x $(build-log)" ;
}
local script = [ modules.peek : ARGV ] ;
if $(script[1]) = "./jam-files/bjam" {
#The ./bjam shell script calls ./jam-files/bjam so that appears in argv but
#we want ./bjam to appear so the environment variables are set correctly.
script = "./bjam "$(script[2-]:J=" ") ;
} else {
script = $(script:J=" ") ;
}
script = "#!/bin/sh\n$(script)\n" ;
local ignored = @($(build-log):E=$(script)) ;
}
requirements = ;
{
local cxxflags = [ os.environ "CXXFLAGS" ] ;
local cflags = [ os.environ "CFLAGS" ] ;
local ldflags = [ os.environ "LDFLAGS" ] ;
#Boost jam's static clang for Linux is buggy.
requirements += <cxxflags>$(cxxflags) <cflags>$(cflags) <linkflags>$(ldflags) <os>LINUX,<toolset>clang:<link>shared ;
#libSegFault prints a stack trace on segfault. Link against it if available.
if [ test_flags "-lSegFault" ] {
external-lib SegFault ;
requirements += <library>SegFault ;
}
}
if [ option.get "git" : : "yes" ] {
local revision = [ _shell "git rev-parse --verify HEAD |head -c 7" ] ;
constant GITTAG : "/"$(revision) ;
} else {
constant GITTAG : "" ;
}
prefix = [ option.get "prefix" ] ;
if $(prefix) {
prefix = [ path.root $(prefix) [ path.pwd ] ] ;
} else {
prefix = $(TOP)/dist$(GITTAG) ;
}
rule install-bin-libs ( deps * ) {
local bindir = [ option.get "bindir" : $(prefix)/bin ] ;
local libdir = [ option.get "libdir" : $(prefix)/lib ] ;
install prefix-bin : $(deps) : <location>$(bindir) <install-dependencies>on <install-type>EXE <link>shared:<dll-path>$(libdir) ;
install prefix-lib : $(deps) : <location>$(libdir) <install-dependencies>on <install-type>LIB <link>shared:<dll-path>$(libdir) ;
}
rule install-headers ( name : list * : source-root ? ) {
local includedir = [ option.get "includedir" : $(prefix)/include ] ;
source-root ?= "." ;
install $(name) : $(list) : <location>$(includedir) <install-source-root>$(source-root) ;
}

View File

@ -1,3 +0,0 @@
#!/bin/bash
g++ "$@" -x c++ - <<<'int main() {}' -o /dev/null >/dev/null 2>/dev/null
echo -n $?

View File

@ -1,12 +1,12 @@
lib kenlm : bhiksha.cc binary_format.cc config.cc lm_exception.cc model.cc quantize.cc read_arpa.cc search_hashed.cc search_trie.cc trie.cc trie_sort.cc virtual_interface.cc vocab.cc ../util//kenutil : <include>.. : : <include>.. ;
lib kenlm : bhiksha.cc binary_format.cc config.cc lm_exception.cc model.cc quantize.cc read_arpa.cc search_hashed.cc search_trie.cc trie.cc trie_sort.cc virtual_interface.cc vocab.cc ../util//kenutil : <include>.. : : <include>.. <library>../util//kenutil ;
import testing ;
run left_test.cc kenlm ..//boost_unit_test_framework : : test.arpa ;
run model_test.cc kenlm ..//boost_unit_test_framework : : test.arpa test_nounk.arpa ;
run left_test.cc ../util//kenutil kenlm ..//boost_unit_test_framework : : test.arpa ;
run model_test.cc ../util//kenutil kenlm ..//boost_unit_test_framework : : test.arpa test_nounk.arpa ;
exe query : ngram_query.cc kenlm ;
exe build_binary : build_binary.cc kenlm ;
exe query : ngram_query.cc kenlm ../util//kenutil ;
exe build_binary : build_binary.cc kenlm ../util//kenutil ;
install legacy : build_binary query
: <location>$(TOP)/lm <install-type>EXE <install-dependencies>on <link>shared:<dll-path>$(TOP)/lm <link>shared:<install-type>LIB ;

View File

@ -1,29 +1,44 @@
Language model inference code by Kenneth Heafield <infer at kheafield.com>
The official website is http://kheafield.com/code/kenlm/ . If you're a decoder developer, please download the latest version from there instead of copying from Moses.
Language model inference code by Kenneth Heafield <kenlm at kheafield.com>
While the primary means of building kenlm for use in Moses is the Moses build system, you can also compile independently using:
./compile.sh to compile the code
./test.sh to compile and run tests; requires Boost
./clean.sh to clean
THE GIT REPOSITORY https://github.com/kpu/kenlm IS WHERE ACTIVE DEVELOPMENT HAPPENS. IT MAY RETURN SILENTLY WRONG ANSWERS OR BE SILENTLY BINARY-INCOMPATIBLE WITH STABLE RELEASES.
The rest of the documentation is directed at decoder developers.
The website http://kheafield.com/code/kenlm/ has more documentation. If you're a decoder developer, please download the latest version from there instead of copying from another decoder.
Binary format via mmap is supported. Run ./build_binary to make one then pass the binary file name instead.
Two data structures are supported: probing and trie. Probing is a probing hash table with keys that ere 64-bit hashes of n-grams and floats as values. Trie is a fairly standard trie but with bit-level packing so it uses the minimum number of bits to store word indices and pointers. The trie node entries are sorted by word index. Probing is the fastest and uses the most memory. Trie uses the least memory and a bit slower.
Currently, it assumes POSIX APIs for errno, sterror_r, open, close, mmap, munmap, ftruncate, fstat, and read. This is tested on Linux and the non-UNIX Mac OS X. I welcome submissions porting (via #ifdef) to other systems (e.g. Windows) but proudly have no machine on which to test it.
With trie, resident memory is 58% of IRST's smallest version and 21% of SRI's compact version. Simultaneously, trie CPU's use is 81% of IRST's fastest version and 84% of SRI's fast version. KenLM's probing hash table implementation goes even faster at the expense of using more memory. See http://kheafield.com/code/kenlm/benchmark/.
A brief note to Mac OS X users: your gcc is too old to recognize the pack pragma. The warning effectively means that, on 64-bit machines, the model will use 16 bytes instead of 12 bytes per n-gram of maximum order (those of lower order are already 16 bytes) in the probing and sorted models. The trie is not impacted by this.
Binary format via mmap is supported. Run ./build_binary to make one then pass the binary file name to the appropriate Model constructor.
It does not depend on Boost or ICU. However, if you use Boost and/or ICU in the rest of your code, you should define HAVE_BOOST and/or HAVE_ICU in util/have.hh. Defining HAVE_BOOST will let you hash StringPiece. Defining HAVE_ICU will use ICU's StringPiece to prevent a conflict with the one provided here.
The recommend way to use this:
Copy the code and distribute with your decoder.
Set HAVE_ICU and HAVE_BOOST at the top of util/have.hh as instructed above.
Look at compile.sh and reimplement using your build system.
Use either the interface in lm/model.hh or lm/virtual_interface.hh
Interface documentation is in comments of lm/virtual_interface.hh (including for lm/model.hh).
PLATFORMS
murmur_hash.cc and bit_packing.hh perform unaligned reads and writes that make the code architecture-dependent.
It has been sucessfully tested on x86_64, x86, and PPC64.
ARM support is reportedly working, at least on the iphone, but I cannot test this.
I recommend copying the code and distributing it with your decoder. However, please send improvements to me so that they can be integrated into the package.
Runs on Linux, OS X, Cygwin, and MinGW.
Also included:
A wrapper to SRI with the same interface.
Hideo Okuma and Tomoyuki Yoshimura from NICT contributed ports to ARM and MinGW. Hieu Hoang is working on a native Windows port.
DECODER DEVELOPERS
- I recommend copying the code and distributing it with your decoder. However, please send improvements upstream as indicated in CONTRIBUTORS.
- It does not depend on Boost or ICU. If you use ICU, define HAVE_ICU in util/have.hh (uncomment the line) to avoid a name conflict. Defining HAVE_BOOST will let you hash StringPiece.
- Most people have zlib. If you don't want to depend on that, comment out #define HAVE_ZLIB in util/have.hh. This will disable loading gzipped ARPA files.
- There are two build systems: compile.sh and Jamroot+Jamfile. They're pretty simple and are intended to be reimplemented in your build system.
- Use either the interface in lm/model.hh or lm/virtual_interface.hh. Interface documentation is in comments of lm/virtual_interface.hh and lm/model.hh.
- There are several possible data structures in model.hh. Use RecognizeBinary in binary_format.hh to determine which one a user has provided. You probably already implement feature functions as an abstract virtual base class with several children. I suggest you co-opt this existing virtual dispatch by templatizing the language model feature implementation on the KenLM model identified by RecognizeBinary. This is the strategy used in Moses and cdec.
- See lm/config.hh for tuning options.
CONTRIBUTORS
Contributions to KenLM are welcome. Please base your contributions on https://github.com/kpu/kenlm and send pull requests (or I might give you commit access). Downstream copies in Moses and cdec are maintained by overwriting them so do not make changes there.
The name was Hieu Hoang's idea, not mine.

View File

@ -1,6 +1,7 @@
#include "lm/bhiksha.hh"
#include "lm/config.hh"
#include "util/file.hh"
#include "util/exception.hh"
#include <limits>

View File

@ -23,7 +23,7 @@
namespace lm {
namespace ngram {
class Config;
struct Config;
namespace trie {

View File

@ -87,7 +87,7 @@ uint8_t *SetupJustVocab(const Config &config, uint8_t order, std::size_t memory_
strncpy(reinterpret_cast<char*>(backing.vocab.get()), kMagicIncomplete, TotalHeaderSize(order));
return reinterpret_cast<uint8_t*>(backing.vocab.get()) + TotalHeaderSize(order);
} else {
backing.vocab.reset(util::MapAnonymous(memory_size), memory_size, util::scoped_memory::MMAP_ALLOCATED);
util::MapAnonymous(memory_size, backing.vocab);
return reinterpret_cast<uint8_t*>(backing.vocab.get());
}
}
@ -103,32 +103,44 @@ uint8_t *GrowForSearch(const Config &config, std::size_t vocab_pad, std::size_t
throw e;
}
if (config.write_method == Config::WRITE_AFTER) {
util::MapAnonymous(memory_size, backing.search);
return reinterpret_cast<uint8_t*>(backing.search.get());
}
// mmap it now.
// We're skipping over the header and vocab for the search space mmap. mmap likes page aligned offsets, so some arithmetic to round the offset down.
std::size_t page_size = util::SizePage();
std::size_t alignment_cruft = adjusted_vocab % page_size;
backing.search.reset(util::MapOrThrow(alignment_cruft + memory_size, true, util::kFileFlags, false, backing.file.get(), adjusted_vocab - alignment_cruft), alignment_cruft + memory_size, util::scoped_memory::MMAP_ALLOCATED);
return reinterpret_cast<uint8_t*>(backing.search.get()) + alignment_cruft;
} else {
backing.search.reset(util::MapAnonymous(memory_size), memory_size, util::scoped_memory::MMAP_ALLOCATED);
util::MapAnonymous(memory_size, backing.search);
return reinterpret_cast<uint8_t*>(backing.search.get());
}
}
void FinishFile(const Config &config, ModelType model_type, unsigned int search_version, const std::vector<uint64_t> &counts, Backing &backing) {
if (config.write_mmap) {
util::SyncOrThrow(backing.search.get(), backing.search.size());
util::SyncOrThrow(backing.vocab.get(), backing.vocab.size());
// header and vocab share the same mmap. The header is written here because we know the counts.
Parameters params = Parameters();
params.counts = counts;
params.fixed.order = counts.size();
params.fixed.probing_multiplier = config.probing_multiplier;
params.fixed.model_type = model_type;
params.fixed.has_vocabulary = config.include_vocab;
params.fixed.search_version = search_version;
WriteHeader(backing.vocab.get(), params);
void FinishFile(const Config &config, ModelType model_type, unsigned int search_version, const std::vector<uint64_t> &counts, std::size_t vocab_pad, Backing &backing) {
if (!config.write_mmap) return;
util::SyncOrThrow(backing.vocab.get(), backing.vocab.size());
switch (config.write_method) {
case Config::WRITE_MMAP:
util::SyncOrThrow(backing.search.get(), backing.search.size());
break;
case Config::WRITE_AFTER:
util::SeekOrThrow(backing.file.get(), backing.vocab.size() + vocab_pad);
util::WriteOrThrow(backing.file.get(), backing.search.get(), backing.search.size());
util::FSyncOrThrow(backing.file.get());
break;
}
// header and vocab share the same mmap. The header is written here because we know the counts.
Parameters params = Parameters();
params.counts = counts;
params.fixed.order = counts.size();
params.fixed.probing_multiplier = config.probing_multiplier;
params.fixed.model_type = model_type;
params.fixed.has_vocabulary = config.include_vocab;
params.fixed.search_version = search_version;
WriteHeader(backing.vocab.get(), params);
}
namespace detail {
@ -172,7 +184,7 @@ void ReadHeader(int fd, Parameters &out) {
UTIL_THROW(FormatLoadException, "Binary format claims to have a probing multiplier of " << out.fixed.probing_multiplier << " which is < 1.0.");
out.counts.resize(static_cast<std::size_t>(out.fixed.order));
util::ReadOrThrow(fd, &*out.counts.begin(), sizeof(uint64_t) * out.fixed.order);
if (out.fixed.order) util::ReadOrThrow(fd, &*out.counts.begin(), sizeof(uint64_t) * out.fixed.order);
}
void MatchCheck(ModelType model_type, unsigned int search_version, const Parameters &params) {

View File

@ -58,7 +58,7 @@ uint8_t *GrowForSearch(const Config &config, std::size_t vocab_pad, std::size_t
// Write header to binary file. This is done last to prevent incomplete files
// from loading.
void FinishFile(const Config &config, ModelType model_type, unsigned int search_version, const std::vector<uint64_t> &counts, Backing &backing);
void FinishFile(const Config &config, ModelType model_type, unsigned int search_version, const std::vector<uint64_t> &counts, std::size_t vocab_pad, Backing &backing);
namespace detail {

View File

@ -18,11 +18,14 @@ namespace ngram {
namespace {
void Usage(const char *name) {
std::cerr << "Usage: " << name << " [-u log10_unknown_probability] [-s] [-i] [-p probing_multiplier] [-t trie_temporary] [-m trie_building_megabytes] [-q bits] [-b bits] [-a bits] [type] input.arpa [output.mmap]\n\n"
std::cerr << "Usage: " << name << " [-u log10_unknown_probability] [-s] [-i] [-w mmap|after] [-p probing_multiplier] [-t trie_temporary] [-m trie_building_megabytes] [-q bits] [-b bits] [-a bits] [type] input.arpa [output.mmap]\n\n"
"-u sets the log10 probability for <unk> if the ARPA file does not have one.\n"
" Default is -100. The ARPA file will always take precedence.\n"
"-s allows models to be built even if they do not have <s> and </s>.\n"
"-i allows buggy models from IRSTLM by mapping positive log probability to 0.\n\n"
"-i allows buggy models from IRSTLM by mapping positive log probability to 0.\n"
"-w mmap|after determines how writing is done.\n"
" mmap maps the binary file and writes to it. Default for trie.\n"
" after allocates anonymous memory, builds, and writes. Default for probing.\n\n"
"type is either probing or trie. Default is probing.\n\n"
"probing uses a probing hash table. It is the fastest but uses the most memory.\n"
"-p sets the space multiplier and must be >1.0. The default is 1.5.\n\n"
@ -58,7 +61,7 @@ uint8_t ParseBitCount(const char *from) {
unsigned long val = ParseUInt(from);
if (val > 25) {
util::ParseNumberException e(from);
e << " bit counts are limited to 256.";
e << " bit counts are limited to 25.";
}
return val;
}
@ -115,10 +118,10 @@ int main(int argc, char *argv[]) {
using namespace lm::ngram;
try {
bool quantize = false, set_backoff_bits = false, bhiksha = false;
bool quantize = false, set_backoff_bits = false, bhiksha = false, set_write_method = false;
lm::ngram::Config config;
int opt;
while ((opt = getopt(argc, argv, "siu:p:t:m:q:b:a:")) != -1) {
while ((opt = getopt(argc, argv, "q:b:a:u:p:t:m:w:si")) != -1) {
switch(opt) {
case 'q':
config.prob_bits = ParseBitCount(optarg);
@ -132,6 +135,7 @@ int main(int argc, char *argv[]) {
case 'a':
config.pointer_bhiksha_bits = ParseBitCount(optarg);
bhiksha = true;
break;
case 'u':
config.unknown_missing_logprob = ParseFloat(optarg);
break;
@ -144,6 +148,16 @@ int main(int argc, char *argv[]) {
case 'm':
config.building_memory = ParseUInt(optarg) * 1048576;
break;
case 'w':
set_write_method = true;
if (!strcmp(optarg, "mmap")) {
config.write_method = Config::WRITE_MMAP;
} else if (!strcmp(optarg, "after")) {
config.write_method = Config::WRITE_AFTER;
} else {
Usage(argv[0]);
}
break;
case 's':
config.sentence_marker_missing = lm::SILENT;
break;
@ -160,45 +174,45 @@ int main(int argc, char *argv[]) {
}
if (optind + 1 == argc) {
ShowSizes(argv[optind], config);
return 0;
}
const char *model_type, *from_file;
if (optind + 2 == argc) {
model_type = "probing";
from_file = argv[optind];
} else if (optind + 2 == argc) {
config.write_mmap = argv[optind + 1];
} else if (optind + 3 == argc) {
model_type = argv[optind];
from_file = argv[optind + 1];
config.write_mmap = argv[optind + 2];
} else {
Usage(argv[0]);
}
if (!strcmp(model_type, "probing")) {
if (quantize || set_backoff_bits) ProbingQuantizationUnsupported();
ProbingModel(from_file, config);
} else if (!strcmp(model_type, "trie")) {
if (quantize) {
if (bhiksha) {
QuantArrayTrieModel(from_file, config);
ProbingModel(argv[optind], config);
} else if (optind + 3 == argc) {
const char *model_type = argv[optind];
const char *from_file = argv[optind + 1];
config.write_mmap = argv[optind + 2];
if (!strcmp(model_type, "probing")) {
if (!set_write_method) config.write_method = Config::WRITE_AFTER;
if (quantize || set_backoff_bits) ProbingQuantizationUnsupported();
ProbingModel(from_file, config);
} else if (!strcmp(model_type, "trie")) {
if (!set_write_method) config.write_method = Config::WRITE_MMAP;
if (quantize) {
if (bhiksha) {
QuantArrayTrieModel(from_file, config);
} else {
QuantTrieModel(from_file, config);
}
} else {
QuantTrieModel(from_file, config);
if (bhiksha) {
ArrayTrieModel(from_file, config);
} else {
TrieModel(from_file, config);
}
}
} else {
if (bhiksha) {
ArrayTrieModel(from_file, config);
} else {
TrieModel(from_file, config);
}
Usage(argv[0]);
}
} else {
Usage(argv[0]);
}
std::cerr << "Built " << config.write_mmap << " successfully." << std::endl;
} catch (const std::exception &e) {
}
catch (const std::exception &e) {
std::cerr << e.what() << std::endl;
std::cerr << "ERROR" << std::endl;
return 1;
}
std::cerr << "SUCCESS" << std::endl;
return 0;
}

View File

@ -17,6 +17,7 @@ Config::Config() :
temporary_directory_prefix(NULL),
arpa_complain(ALL),
write_mmap(NULL),
write_method(WRITE_AFTER),
include_vocab(true),
prob_bits(8),
backoff_bits(8),

View File

@ -70,9 +70,17 @@ struct Config {
// to NULL to disable.
const char *write_mmap;
typedef enum {
WRITE_MMAP, // Map the file directly.
WRITE_AFTER // Write after we're done.
} WriteMethod;
WriteMethod write_method;
// Include the vocab in the binary file? Only effective if write_mmap != NULL.
bool include_vocab;
// Quantization options. Only effective for QuantTrieModel. One value is
// reserved for each of prob and backoff, so 2^bits - 1 buckets will be used
// to quantize (and one of the remaining backoffs will be 0).

View File

@ -78,7 +78,7 @@ struct Left {
};
inline size_t hash_value(const Left &left) {
return util::MurmurHashNative(&left.length, 1, left.pointers[left.length - 1]);
return util::MurmurHashNative(&left.length, 1, left.length ? left.pointers[left.length - 1] : 0);
}
struct ChartState {
@ -112,7 +112,7 @@ inline size_t hash_value(const ChartState &state) {
size_t hashes[2];
hashes[0] = hash_value(state.left);
hashes[1] = hash_value(state.right);
return util::MurmurHashNative(hashes, sizeof(size_t), state.full);
return util::MurmurHashNative(hashes, sizeof(size_t) * 2, state.full);
}
template <class M> class RuleScore {

View File

@ -1,354 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
1EE8C3981476A73C002496F2 /* bhiksha.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3651476A73C002496F2 /* bhiksha.cc */; };
1EE8C3991476A73C002496F2 /* bhiksha.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3661476A73C002496F2 /* bhiksha.hh */; };
1EE8C39A1476A73C002496F2 /* binary_format.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3671476A73C002496F2 /* binary_format.cc */; };
1EE8C39B1476A73C002496F2 /* binary_format.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3681476A73C002496F2 /* binary_format.hh */; };
1EE8C39C1476A73C002496F2 /* blank.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3691476A73C002496F2 /* blank.hh */; };
1EE8C39D1476A73C002496F2 /* build_binary.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C36A1476A73C002496F2 /* build_binary.cc */; };
1EE8C39E1476A73C002496F2 /* config.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C36D1476A73C002496F2 /* config.cc */; };
1EE8C39F1476A73C002496F2 /* config.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C36E1476A73C002496F2 /* config.hh */; };
1EE8C3A01476A73C002496F2 /* enumerate_vocab.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3711476A73C002496F2 /* enumerate_vocab.hh */; };
1EE8C3A11476A73C002496F2 /* facade.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3721476A73C002496F2 /* facade.hh */; };
1EE8C3A21476A73C002496F2 /* left_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3731476A73C002496F2 /* left_test.cc */; };
1EE8C3A31476A73C002496F2 /* left.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3741476A73C002496F2 /* left.hh */; };
1EE8C3A41476A73C002496F2 /* lm_exception.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3761476A73C002496F2 /* lm_exception.cc */; };
1EE8C3A51476A73C002496F2 /* lm_exception.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3771476A73C002496F2 /* lm_exception.hh */; };
1EE8C3A71476A73C002496F2 /* max_order.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C37B1476A73C002496F2 /* max_order.hh */; };
1EE8C3A81476A73C002496F2 /* model_test.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C37C1476A73C002496F2 /* model_test.cc */; };
1EE8C3A91476A73C002496F2 /* model_type.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C37D1476A73C002496F2 /* model_type.hh */; };
1EE8C3AA1476A73C002496F2 /* model.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C37E1476A73C002496F2 /* model.cc */; };
1EE8C3AB1476A73C002496F2 /* model.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C37F1476A73C002496F2 /* model.hh */; };
1EE8C3AC1476A73C002496F2 /* ngram_query.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3801476A73C002496F2 /* ngram_query.cc */; };
1EE8C3AD1476A73C002496F2 /* quantize.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3811476A73C002496F2 /* quantize.cc */; };
1EE8C3AE1476A73C002496F2 /* quantize.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3821476A73C002496F2 /* quantize.hh */; };
1EE8C3AF1476A73C002496F2 /* read_arpa.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3831476A73C002496F2 /* read_arpa.cc */; };
1EE8C3B01476A73C002496F2 /* read_arpa.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3841476A73C002496F2 /* read_arpa.hh */; };
1EE8C3B11476A73C002496F2 /* return.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3861476A73C002496F2 /* return.hh */; };
1EE8C3B21476A73C002496F2 /* search_hashed.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3871476A73C002496F2 /* search_hashed.cc */; };
1EE8C3B31476A73C002496F2 /* search_hashed.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3881476A73C002496F2 /* search_hashed.hh */; };
1EE8C3B41476A73C002496F2 /* search_trie.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3891476A73C002496F2 /* search_trie.cc */; };
1EE8C3B51476A73C002496F2 /* search_trie.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C38A1476A73C002496F2 /* search_trie.hh */; };
1EE8C3B61476A73C002496F2 /* trie_sort.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C38E1476A73C002496F2 /* trie_sort.cc */; };
1EE8C3B71476A73C002496F2 /* trie_sort.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C38F1476A73C002496F2 /* trie_sort.hh */; };
1EE8C3B81476A73C002496F2 /* trie.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3901476A73C002496F2 /* trie.cc */; };
1EE8C3B91476A73C002496F2 /* trie.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3911476A73C002496F2 /* trie.hh */; };
1EE8C3BA1476A73C002496F2 /* virtual_interface.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3921476A73C002496F2 /* virtual_interface.cc */; };
1EE8C3BB1476A73C002496F2 /* virtual_interface.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3931476A73C002496F2 /* virtual_interface.hh */; };
1EE8C3BC1476A73C002496F2 /* vocab.cc in Sources */ = {isa = PBXBuildFile; fileRef = 1EE8C3941476A73C002496F2 /* vocab.cc */; };
1EE8C3BD1476A73C002496F2 /* vocab.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3951476A73C002496F2 /* vocab.hh */; };
1EE8C3BE1476A73C002496F2 /* weights.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3961476A73C002496F2 /* weights.hh */; };
1EE8C3BF1476A73C002496F2 /* word_index.hh in Headers */ = {isa = PBXBuildFile; fileRef = 1EE8C3971476A73C002496F2 /* word_index.hh */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
1EE8C2E91476A48E002496F2 /* liblm.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = liblm.a; sourceTree = BUILT_PRODUCTS_DIR; };
1EE8C3651476A73C002496F2 /* bhiksha.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bhiksha.cc; sourceTree = "<group>"; };
1EE8C3661476A73C002496F2 /* bhiksha.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = bhiksha.hh; sourceTree = "<group>"; };
1EE8C3671476A73C002496F2 /* binary_format.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = binary_format.cc; sourceTree = "<group>"; };
1EE8C3681476A73C002496F2 /* binary_format.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = binary_format.hh; sourceTree = "<group>"; };
1EE8C3691476A73C002496F2 /* blank.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = blank.hh; sourceTree = "<group>"; };
1EE8C36A1476A73C002496F2 /* build_binary.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = build_binary.cc; sourceTree = "<group>"; };
1EE8C36D1476A73C002496F2 /* config.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = config.cc; sourceTree = "<group>"; };
1EE8C36E1476A73C002496F2 /* config.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = config.hh; sourceTree = "<group>"; };
1EE8C3711476A73C002496F2 /* enumerate_vocab.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = enumerate_vocab.hh; sourceTree = "<group>"; };
1EE8C3721476A73C002496F2 /* facade.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = facade.hh; sourceTree = "<group>"; };
1EE8C3731476A73C002496F2 /* left_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = left_test.cc; sourceTree = "<group>"; };
1EE8C3741476A73C002496F2 /* left.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = left.hh; sourceTree = "<group>"; };
1EE8C3761476A73C002496F2 /* lm_exception.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = lm_exception.cc; sourceTree = "<group>"; };
1EE8C3771476A73C002496F2 /* lm_exception.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = lm_exception.hh; sourceTree = "<group>"; };
1EE8C37B1476A73C002496F2 /* max_order.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = max_order.hh; sourceTree = "<group>"; };
1EE8C37C1476A73C002496F2 /* model_test.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = model_test.cc; sourceTree = "<group>"; };
1EE8C37D1476A73C002496F2 /* model_type.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = model_type.hh; sourceTree = "<group>"; };
1EE8C37E1476A73C002496F2 /* model.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = model.cc; sourceTree = "<group>"; };
1EE8C37F1476A73C002496F2 /* model.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = model.hh; sourceTree = "<group>"; };
1EE8C3801476A73C002496F2 /* ngram_query.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ngram_query.cc; sourceTree = "<group>"; };
1EE8C3811476A73C002496F2 /* quantize.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quantize.cc; sourceTree = "<group>"; };
1EE8C3821476A73C002496F2 /* quantize.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = quantize.hh; sourceTree = "<group>"; };
1EE8C3831476A73C002496F2 /* read_arpa.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = read_arpa.cc; sourceTree = "<group>"; };
1EE8C3841476A73C002496F2 /* read_arpa.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = read_arpa.hh; sourceTree = "<group>"; };
1EE8C3861476A73C002496F2 /* return.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = return.hh; sourceTree = "<group>"; };
1EE8C3871476A73C002496F2 /* search_hashed.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = search_hashed.cc; sourceTree = "<group>"; };
1EE8C3881476A73C002496F2 /* search_hashed.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = search_hashed.hh; sourceTree = "<group>"; };
1EE8C3891476A73C002496F2 /* search_trie.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = search_trie.cc; sourceTree = "<group>"; };
1EE8C38A1476A73C002496F2 /* search_trie.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = search_trie.hh; sourceTree = "<group>"; };
1EE8C38E1476A73C002496F2 /* trie_sort.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = trie_sort.cc; sourceTree = "<group>"; };
1EE8C38F1476A73C002496F2 /* trie_sort.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = trie_sort.hh; sourceTree = "<group>"; };
1EE8C3901476A73C002496F2 /* trie.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = trie.cc; sourceTree = "<group>"; };
1EE8C3911476A73C002496F2 /* trie.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = trie.hh; sourceTree = "<group>"; };
1EE8C3921476A73C002496F2 /* virtual_interface.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = virtual_interface.cc; sourceTree = "<group>"; };
1EE8C3931476A73C002496F2 /* virtual_interface.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = virtual_interface.hh; sourceTree = "<group>"; };
1EE8C3941476A73C002496F2 /* vocab.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = vocab.cc; sourceTree = "<group>"; };
1EE8C3951476A73C002496F2 /* vocab.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = vocab.hh; sourceTree = "<group>"; };
1EE8C3961476A73C002496F2 /* weights.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = weights.hh; sourceTree = "<group>"; };
1EE8C3971476A73C002496F2 /* word_index.hh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = word_index.hh; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
1EE8C2E61476A48E002496F2 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
1EE8C2DE1476A48E002496F2 = {
isa = PBXGroup;
children = (
1EE8C3651476A73C002496F2 /* bhiksha.cc */,
1EE8C3661476A73C002496F2 /* bhiksha.hh */,
1EE8C3671476A73C002496F2 /* binary_format.cc */,
1EE8C3681476A73C002496F2 /* binary_format.hh */,
1EE8C3691476A73C002496F2 /* blank.hh */,
1EE8C36A1476A73C002496F2 /* build_binary.cc */,
1EE8C36D1476A73C002496F2 /* config.cc */,
1EE8C36E1476A73C002496F2 /* config.hh */,
1EE8C3711476A73C002496F2 /* enumerate_vocab.hh */,
1EE8C3721476A73C002496F2 /* facade.hh */,
1EE8C3731476A73C002496F2 /* left_test.cc */,
1EE8C3741476A73C002496F2 /* left.hh */,
1EE8C3761476A73C002496F2 /* lm_exception.cc */,
1EE8C3771476A73C002496F2 /* lm_exception.hh */,
1EE8C37B1476A73C002496F2 /* max_order.hh */,
1EE8C37C1476A73C002496F2 /* model_test.cc */,
1EE8C37D1476A73C002496F2 /* model_type.hh */,
1EE8C37E1476A73C002496F2 /* model.cc */,
1EE8C37F1476A73C002496F2 /* model.hh */,
1EE8C3801476A73C002496F2 /* ngram_query.cc */,
1EE8C3811476A73C002496F2 /* quantize.cc */,
1EE8C3821476A73C002496F2 /* quantize.hh */,
1EE8C3831476A73C002496F2 /* read_arpa.cc */,
1EE8C3841476A73C002496F2 /* read_arpa.hh */,
1EE8C3861476A73C002496F2 /* return.hh */,
1EE8C3871476A73C002496F2 /* search_hashed.cc */,
1EE8C3881476A73C002496F2 /* search_hashed.hh */,
1EE8C3891476A73C002496F2 /* search_trie.cc */,
1EE8C38A1476A73C002496F2 /* search_trie.hh */,
1EE8C38E1476A73C002496F2 /* trie_sort.cc */,
1EE8C38F1476A73C002496F2 /* trie_sort.hh */,
1EE8C3901476A73C002496F2 /* trie.cc */,
1EE8C3911476A73C002496F2 /* trie.hh */,
1EE8C3921476A73C002496F2 /* virtual_interface.cc */,
1EE8C3931476A73C002496F2 /* virtual_interface.hh */,
1EE8C3941476A73C002496F2 /* vocab.cc */,
1EE8C3951476A73C002496F2 /* vocab.hh */,
1EE8C3961476A73C002496F2 /* weights.hh */,
1EE8C3971476A73C002496F2 /* word_index.hh */,
1EE8C2EA1476A48E002496F2 /* Products */,
);
sourceTree = "<group>";
};
1EE8C2EA1476A48E002496F2 /* Products */ = {
isa = PBXGroup;
children = (
1EE8C2E91476A48E002496F2 /* liblm.a */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
1EE8C2E71476A48E002496F2 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
1EE8C3991476A73C002496F2 /* bhiksha.hh in Headers */,
1EE8C39B1476A73C002496F2 /* binary_format.hh in Headers */,
1EE8C39C1476A73C002496F2 /* blank.hh in Headers */,
1EE8C39F1476A73C002496F2 /* config.hh in Headers */,
1EE8C3A01476A73C002496F2 /* enumerate_vocab.hh in Headers */,
1EE8C3A11476A73C002496F2 /* facade.hh in Headers */,
1EE8C3A31476A73C002496F2 /* left.hh in Headers */,
1EE8C3A51476A73C002496F2 /* lm_exception.hh in Headers */,
1EE8C3A71476A73C002496F2 /* max_order.hh in Headers */,
1EE8C3A91476A73C002496F2 /* model_type.hh in Headers */,
1EE8C3AB1476A73C002496F2 /* model.hh in Headers */,
1EE8C3AE1476A73C002496F2 /* quantize.hh in Headers */,
1EE8C3B01476A73C002496F2 /* read_arpa.hh in Headers */,
1EE8C3B11476A73C002496F2 /* return.hh in Headers */,
1EE8C3B31476A73C002496F2 /* search_hashed.hh in Headers */,
1EE8C3B51476A73C002496F2 /* search_trie.hh in Headers */,
1EE8C3B71476A73C002496F2 /* trie_sort.hh in Headers */,
1EE8C3B91476A73C002496F2 /* trie.hh in Headers */,
1EE8C3BB1476A73C002496F2 /* virtual_interface.hh in Headers */,
1EE8C3BD1476A73C002496F2 /* vocab.hh in Headers */,
1EE8C3BE1476A73C002496F2 /* weights.hh in Headers */,
1EE8C3BF1476A73C002496F2 /* word_index.hh in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
1EE8C2E81476A48E002496F2 /* lm */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1EE8C2ED1476A48E002496F2 /* Build configuration list for PBXNativeTarget "lm" */;
buildPhases = (
1EE8C2E51476A48E002496F2 /* Sources */,
1EE8C2E61476A48E002496F2 /* Frameworks */,
1EE8C2E71476A48E002496F2 /* Headers */,
);
buildRules = (
);
dependencies = (
);
name = lm;
productName = lm;
productReference = 1EE8C2E91476A48E002496F2 /* liblm.a */;
productType = "com.apple.product-type.library.static";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
1EE8C2E01476A48E002496F2 /* Project object */ = {
isa = PBXProject;
buildConfigurationList = 1EE8C2E31476A48E002496F2 /* Build configuration list for PBXProject "lm" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
en,
);
mainGroup = 1EE8C2DE1476A48E002496F2;
productRefGroup = 1EE8C2EA1476A48E002496F2 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
1EE8C2E81476A48E002496F2 /* lm */,
);
};
/* End PBXProject section */
/* Begin PBXSourcesBuildPhase section */
1EE8C2E51476A48E002496F2 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
1EE8C3981476A73C002496F2 /* bhiksha.cc in Sources */,
1EE8C39A1476A73C002496F2 /* binary_format.cc in Sources */,
1EE8C39D1476A73C002496F2 /* build_binary.cc in Sources */,
1EE8C39E1476A73C002496F2 /* config.cc in Sources */,
1EE8C3A21476A73C002496F2 /* left_test.cc in Sources */,
1EE8C3A41476A73C002496F2 /* lm_exception.cc in Sources */,
1EE8C3A81476A73C002496F2 /* model_test.cc in Sources */,
1EE8C3AA1476A73C002496F2 /* model.cc in Sources */,
1EE8C3AC1476A73C002496F2 /* ngram_query.cc in Sources */,
1EE8C3AD1476A73C002496F2 /* quantize.cc in Sources */,
1EE8C3AF1476A73C002496F2 /* read_arpa.cc in Sources */,
1EE8C3B21476A73C002496F2 /* search_hashed.cc in Sources */,
1EE8C3B41476A73C002496F2 /* search_trie.cc in Sources */,
1EE8C3B61476A73C002496F2 /* trie_sort.cc in Sources */,
1EE8C3B81476A73C002496F2 /* trie.cc in Sources */,
1EE8C3BA1476A73C002496F2 /* virtual_interface.cc in Sources */,
1EE8C3BC1476A73C002496F2 /* vocab.cc in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
1EE8C2EB1476A48E002496F2 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
COPY_PHASE_STRIP = NO;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
../,
/opt/local/include,
);
MACOSX_DEPLOYMENT_TARGET = 10.7;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
};
name = Debug;
};
1EE8C2EC1476A48E002496F2 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
../,
/opt/local/include,
);
MACOSX_DEPLOYMENT_TARGET = 10.7;
SDKROOT = macosx;
};
name = Release;
};
1EE8C2EE1476A48E002496F2 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
EXECUTABLE_PREFIX = lib;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Debug;
};
1EE8C2EF1476A48E002496F2 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
EXECUTABLE_PREFIX = lib;
PRODUCT_NAME = "$(TARGET_NAME)";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1EE8C2E31476A48E002496F2 /* Build configuration list for PBXProject "lm" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1EE8C2EB1476A48E002496F2 /* Debug */,
1EE8C2EC1476A48E002496F2 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
1EE8C2ED1476A48E002496F2 /* Build configuration list for PBXNativeTarget "lm" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1EE8C2EE1476A48E002496F2 /* Debug */,
1EE8C2EF1476A48E002496F2 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 1EE8C2E01476A48E002496F2 /* Project object */;
}

View File

@ -46,7 +46,7 @@ template <class Search, class VocabularyT> GenericModel<Search, VocabularyT>::Ge
template <class Search, class VocabularyT> void GenericModel<Search, VocabularyT>::InitializeFromBinary(void *start, const Parameters &params, const Config &config, int fd) {
SetupMemory(start, params.counts, config);
vocab_.LoadedBinary(fd, config.enumerate_vocab);
vocab_.LoadedBinary(params.fixed.has_vocabulary, fd, config.enumerate_vocab);
search_.LoadedBinary();
}
@ -82,7 +82,7 @@ template <class Search, class VocabularyT> void GenericModel<Search, VocabularyT
search_.unigram.Unknown().backoff = 0.0;
search_.unigram.Unknown().prob = config.unknown_missing_logprob;
}
FinishFile(config, kModelType, kVersion, counts, backing_);
FinishFile(config, kModelType, kVersion, counts, vocab_.UnkCountChangePadding(), backing_);
} catch (util::Exception &e) {
e << " Byte: " << f.Offset();
throw;
@ -119,7 +119,7 @@ template <class Search, class VocabularyT> FullScoreReturn GenericModel<Search,
}
float backoff;
// i is the order of the backoff we're looking for.
const Middle *mid_iter = search_.MiddleBegin() + start - 2;
typename Search::MiddleIter mid_iter = search_.MiddleBegin() + start - 2;
for (const WordIndex *i = context_rbegin + start - 1; i < context_rend; ++i, ++mid_iter) {
if (!search_.LookupMiddleNoProb(*mid_iter, *i, backoff, node)) break;
ret.prob += backoff;
@ -139,7 +139,7 @@ template <class Search, class VocabularyT> void GenericModel<Search, VocabularyT
search_.LookupUnigram(*context_rbegin, out_state.backoff[0], node, ignored);
out_state.length = HasExtension(out_state.backoff[0]) ? 1 : 0;
float *backoff_out = out_state.backoff + 1;
const typename Search::Middle *mid = search_.MiddleBegin();
typename Search::MiddleIter mid(search_.MiddleBegin());
for (const WordIndex *i = context_rbegin + 1; i < context_rend; ++i, ++backoff_out, ++mid) {
if (!search_.LookupMiddleNoProb(*mid, *i, *backoff_out, node)) {
std::copy(context_rbegin, context_rbegin + out_state.length, out_state.words);
@ -166,7 +166,7 @@ template <class Search, class VocabularyT> FullScoreReturn GenericModel<Search,
// If this function is called, then it does depend on left words.
ret.independent_left = false;
ret.extend_left = extend_pointer;
const typename Search::Middle *mid_iter = search_.MiddleBegin() + extend_length - 1;
typename Search::MiddleIter mid_iter(search_.MiddleBegin() + extend_length - 1);
const WordIndex *i = add_rbegin;
for (; ; ++i, ++backoff_out, ++mid_iter) {
if (i == add_rend) {
@ -235,7 +235,7 @@ template <class Search, class VocabularyT> FullScoreReturn GenericModel<Search,
// Ok start by looking up the bigram.
const WordIndex *hist_iter = context_rbegin;
const typename Search::Middle *mid_iter = search_.MiddleBegin();
typename Search::MiddleIter mid_iter(search_.MiddleBegin());
for (; ; ++mid_iter, ++hist_iter, ++backoff_out) {
if (hist_iter == context_rend) {
// Ran out of history. Typically no backoff, but this could be a blank.

View File

@ -90,7 +90,7 @@ template <class Search, class VocabularyT> class GenericModel : public base::Mod
* TrieModel. To classify binary files, call RecognizeBinary in
* lm/binary_format.hh.
*/
GenericModel(const char *file, const Config &config = Config());
explicit GenericModel(const char *file, const Config &config = Config());
/* Score p(new_word | in_state) and incorporate new_word into out_state.
* Note that in_state and out_state must be different references:

View File

@ -1,92 +1,4 @@
#include "lm/enumerate_vocab.hh"
#include "lm/model.hh"
#include <cstdlib>
#include <fstream>
#include <iostream>
#include <string>
#include <ctype.h>
#if !defined(_WIN32) && !defined(_WIN64)
#include <sys/resource.h>
#include <sys/time.h>
#endif
#if !defined(_WIN32) && !defined(_WIN64)
float FloatSec(const struct timeval &tv) {
return static_cast<float>(tv.tv_sec) + (static_cast<float>(tv.tv_usec) / 1000000000.0);
}
#endif
void PrintUsage(const char *message) {
#if !defined(_WIN32) && !defined(_WIN64)
struct rusage usage;
if (getrusage(RUSAGE_SELF, &usage)) {
perror("getrusage");
return;
}
std::cerr << message;
std::cerr << "user\t" << FloatSec(usage.ru_utime) << "\nsys\t" << FloatSec(usage.ru_stime) << '\n';
// Linux doesn't set memory usage :-(.
std::ifstream status("/proc/self/status", std::ios::in);
std::string line;
while (getline(status, line)) {
if (!strncmp(line.c_str(), "VmRSS:\t", 7)) {
std::cerr << "rss " << (line.c_str() + 7) << '\n';
break;
}
}
#endif
}
template <class Model> void Query(const Model &model, bool sentence_context) {
PrintUsage("Loading statistics:\n");
typename Model::State state, out;
lm::FullScoreReturn ret;
std::string word;
while (std::cin) {
state = sentence_context ? model.BeginSentenceState() : model.NullContextState();
float total = 0.0;
bool got = false;
unsigned int oov = 0;
while (std::cin >> word) {
got = true;
lm::WordIndex vocab = model.GetVocabulary().Index(word);
if (vocab == 0) ++oov;
ret = model.FullScore(state, vocab, out);
total += ret.prob;
std::cout << word << '=' << vocab << ' ' << static_cast<unsigned int>(ret.ngram_length) << ' ' << ret.prob << '\t';
state = out;
char c;
while (true) {
c = std::cin.get();
if (!std::cin) break;
if (c == '\n') break;
if (!isspace(c)) {
std::cin.unget();
break;
}
}
if (c == '\n') break;
}
if (!got && !std::cin) break;
if (sentence_context) {
ret = model.FullScore(state, model.GetVocabulary().EndSentence(), out);
total += ret.prob;
std::cout << "</s>=" << model.GetVocabulary().EndSentence() << ' ' << static_cast<unsigned int>(ret.ngram_length) << ' ' << ret.prob << '\t';
}
std::cout << "Total: " << total << " OOV: " << oov << '\n';
}
PrintUsage("After queries:\n");
}
template <class Model> void Query(const char *name) {
lm::ngram::Config config;
Model model(name, config);
Query(model);
}
#include "lm/ngram_query.hh"
int main(int argc, char *argv[]) {
if (!(argc == 2 || (argc == 3 && !strcmp(argv[2], "null")))) {
@ -96,31 +8,32 @@ int main(int argc, char *argv[]) {
}
try {
bool sentence_context = (argc == 2);
lm::ngram::ModelType model_type;
if (lm::ngram::RecognizeBinary(argv[1], model_type)) {
using namespace lm::ngram;
ModelType model_type;
if (RecognizeBinary(argv[1], model_type)) {
switch(model_type) {
case lm::ngram::HASH_PROBING:
Query<lm::ngram::ProbingModel>(argv[1], sentence_context);
case HASH_PROBING:
Query<lm::ngram::ProbingModel>(argv[1], sentence_context, std::cin, std::cout);
break;
case lm::ngram::TRIE_SORTED:
Query<lm::ngram::TrieModel>(argv[1], sentence_context);
case TRIE_SORTED:
Query<TrieModel>(argv[1], sentence_context, std::cin, std::cout);
break;
case lm::ngram::QUANT_TRIE_SORTED:
Query<lm::ngram::QuantTrieModel>(argv[1], sentence_context);
case QUANT_TRIE_SORTED:
Query<QuantTrieModel>(argv[1], sentence_context, std::cin, std::cout);
break;
case lm::ngram::ARRAY_TRIE_SORTED:
Query<lm::ngram::ArrayTrieModel>(argv[1], sentence_context);
case ARRAY_TRIE_SORTED:
Query<ArrayTrieModel>(argv[1], sentence_context, std::cin, std::cout);
break;
case lm::ngram::QUANT_ARRAY_TRIE_SORTED:
Query<lm::ngram::QuantArrayTrieModel>(argv[1], sentence_context);
case QUANT_ARRAY_TRIE_SORTED:
Query<QuantArrayTrieModel>(argv[1], sentence_context, std::cin, std::cout);
break;
case lm::ngram::HASH_SORTED:
case HASH_SORTED:
default:
std::cerr << "Unrecognized kenlm model type " << model_type << std::endl;
abort();
}
} else {
Query<lm::ngram::ProbingModel>(argv[1], sentence_context);
Query<ProbingModel>(argv[1], sentence_context, std::cin, std::cout);
}
PrintUsage("Total time including destruction:\n");

103
lm/ngram_query.hh Normal file
View File

@ -0,0 +1,103 @@
#ifndef LM_NGRAM_QUERY__
#define LM_NGRAM_QUERY__
#include "lm/enumerate_vocab.hh"
#include "lm/model.hh"
#include <cstdlib>
#include <fstream>
#include <iostream>
#include <string>
#include <ctype.h>
#if !defined(_WIN32) && !defined(_WIN64)
#include <sys/resource.h>
#include <sys/time.h>
#endif
namespace lm {
namespace ngram {
#if !defined(_WIN32) && !defined(_WIN64)
float FloatSec(const struct timeval &tv) {
return static_cast<float>(tv.tv_sec) + (static_cast<float>(tv.tv_usec) / 1000000000.0);
}
#endif
void PrintUsage(const char *message) {
#if !defined(_WIN32) && !defined(_WIN64)
struct rusage usage;
if (getrusage(RUSAGE_SELF, &usage)) {
perror("getrusage");
return;
}
std::cerr << message;
std::cerr << "user\t" << FloatSec(usage.ru_utime) << "\nsys\t" << FloatSec(usage.ru_stime) << '\n';
// Linux doesn't set memory usage :-(.
std::ifstream status("/proc/self/status", std::ios::in);
std::string line;
while (getline(status, line)) {
if (!strncmp(line.c_str(), "VmRSS:\t", 7)) {
std::cerr << "rss " << (line.c_str() + 7) << '\n';
break;
}
}
#endif
}
template <class Model> void Query(const Model &model, bool sentence_context, std::istream &in_stream, std::ostream &out_stream) {
PrintUsage("Loading statistics:\n");
typename Model::State state, out;
lm::FullScoreReturn ret;
std::string word;
while (in_stream) {
state = sentence_context ? model.BeginSentenceState() : model.NullContextState();
float total = 0.0;
bool got = false;
unsigned int oov = 0;
while (in_stream >> word) {
got = true;
lm::WordIndex vocab = model.GetVocabulary().Index(word);
if (vocab == 0) ++oov;
ret = model.FullScore(state, vocab, out);
total += ret.prob;
out_stream << word << '=' << vocab << ' ' << static_cast<unsigned int>(ret.ngram_length) << ' ' << ret.prob << '\t';
state = out;
char c;
while (true) {
c = in_stream.get();
if (!in_stream) break;
if (c == '\n') break;
if (!isspace(c)) {
in_stream.unget();
break;
}
}
if (c == '\n') break;
}
if (!got && !in_stream) break;
if (sentence_context) {
ret = model.FullScore(state, model.GetVocabulary().EndSentence(), out);
total += ret.prob;
out_stream << "</s>=" << model.GetVocabulary().EndSentence() << ' ' << static_cast<unsigned int>(ret.ngram_length) << ' ' << ret.prob << '\t';
}
out_stream << "Total: " << total << " OOV: " << oov << '\n';
}
PrintUsage("After queries:\n");
}
template <class M> void Query(const char *file, bool sentence_context, std::istream &in_stream, std::ostream &out_stream) {
Config config;
// config.load_method = util::LAZY;
M model(file, config);
Query(model, sentence_context, in_stream, out_stream);
}
} // namespace ngram
} // namespace lm
#endif // LM_NGRAM_QUERY__

View File

@ -20,11 +20,11 @@ namespace ngram {
namespace {
void MakeBins(float *values, float *values_end, float *centers, uint32_t bins) {
std::sort(values, values_end);
const float *start = values, *finish;
void MakeBins(std::vector<float> &values, float *centers, uint32_t bins) {
std::sort(values.begin(), values.end());
std::vector<float>::const_iterator start = values.begin(), finish;
for (uint32_t i = 0; i < bins; ++i, ++centers, start = finish) {
finish = values + (((values_end - values) * static_cast<uint64_t>(i + 1)) / bins);
finish = values.begin() + ((values.size() * static_cast<uint64_t>(i + 1)) / bins);
if (finish == start) {
// zero length bucket.
*centers = i ? *(centers - 1) : -std::numeric_limits<float>::infinity();
@ -66,12 +66,12 @@ void SeparatelyQuantize::Train(uint8_t order, std::vector<float> &prob, std::vec
float *centers = start_ + TableStart(order) + ProbTableLength();
*(centers++) = kNoExtensionBackoff;
*(centers++) = kExtensionBackoff;
MakeBins(&*backoff.begin(), &*backoff.end(), centers, (1ULL << backoff_bits_) - 2);
MakeBins(backoff, centers, (1ULL << backoff_bits_) - 2);
}
void SeparatelyQuantize::TrainProb(uint8_t order, std::vector<float> &prob) {
float *centers = start_ + TableStart(order);
MakeBins(&*prob.begin(), &*prob.end(), centers, (1ULL << prob_bits_));
MakeBins(prob, centers, (1ULL << prob_bits_));
}
void SeparatelyQuantize::FinishedLoading(const Config &config) {

View File

@ -16,7 +16,7 @@
namespace lm {
namespace ngram {
class Config;
struct Config;
/* Store values directly and don't quantize. */
class DontQuantize {

View File

@ -7,6 +7,7 @@
#include <vector>
#include <ctype.h>
#include <math.h>
#include <string.h>
#include <stdint.h>
@ -93,7 +94,11 @@ void ReadBackoff(util::FilePiece &in, ProbBackoff &weights) {
case '\t':
weights.backoff = in.ReadFloat();
if (weights.backoff == ngram::kExtensionBackoff) weights.backoff = ngram::kNoExtensionBackoff;
if ((in.get() != '\n')) UTIL_THROW(FormatLoadException, "Expected newline after backoff");
{
int float_class = fpclassify(weights.backoff);
UTIL_THROW_IF(float_class == FP_NAN || float_class == FP_INFINITE, FormatLoadException, "Bad backoff " << weights.backoff);
}
UTIL_THROW_IF((in.get() != '\n'), FormatLoadException, "Expected newline after backoff");
break;
case '\n':
weights.backoff = ngram::kNoExtensionBackoff;

View File

@ -10,6 +10,8 @@
#include <iosfwd>
#include <vector>
#include <math.h>
namespace lm {
void ReadARPACounts(util::FilePiece &in, std::vector<uint64_t> &number);
@ -29,20 +31,26 @@ class PositiveProbWarn {
explicit PositiveProbWarn(WarningAction action) : action_(action) {}
void Warn(float prob);
float ReadProb(util::FilePiece &f) {
float prob = f.ReadFloat();
UTIL_THROW_IF(f.get() != '\t', FormatLoadException, "Expected tab after probability");
UTIL_THROW_IF(isnan(prob), FormatLoadException, "NaN probability");
if (prob > 0.0) {
Warn(prob);
prob = 0.0;
}
return prob;
}
private:
void Warn(float prob);
WarningAction action_;
};
template <class Voc> void Read1Gram(util::FilePiece &f, Voc &vocab, ProbBackoff *unigrams, PositiveProbWarn &warn) {
try {
float prob = f.ReadFloat();
if (prob > 0.0) {
warn.Warn(prob);
prob = 0.0;
}
if (f.get() != '\t') UTIL_THROW(FormatLoadException, "Expected tab after probability");
float prob = warn.ReadProb(f);
ProbBackoff &value = unigrams[vocab.Insert(f.ReadDelimited(kARPASpaces))];
value.prob = prob;
ReadBackoff(f, value);
@ -64,11 +72,7 @@ template <class Voc> void Read1Grams(util::FilePiece &f, std::size_t count, Voc
// Return true if a positive log probability came out.
template <class Voc, class Weights> void ReadNGram(util::FilePiece &f, const unsigned char n, const Voc &vocab, WordIndex *const reverse_indices, Weights &weights, PositiveProbWarn &warn) {
try {
weights.prob = f.ReadFloat();
if (weights.prob > 0.0) {
warn.Warn(weights.prob);
weights.prob = 0.0;
}
weights.prob = warn.ReadProb(f);
for (WordIndex *vocab_out = reverse_indices + n - 1; vocab_out >= reverse_indices; --vocab_out) {
*vocab_out = vocab.Index(f.ReadDelimited(kARPASpaces));
}

View File

@ -84,9 +84,11 @@ template <class Middle> void FixSRI(int lower, float negative_lower_prob, unsign
}
template <class Voc, class Store, class Middle, class Activate> void ReadNGrams(util::FilePiece &f, const unsigned int n, const size_t count, const Voc &vocab, ProbBackoff *unigrams, std::vector<Middle> &middle, Activate activate, Store &store, PositiveProbWarn &warn) {
assert(n >= 2);
ReadNGramHeader(f, n);
// vocab ids of words in reverse order
// Both vocab_ids and keys are non-empty because n >= 2.
// vocab ids of words in reverse order.
std::vector<WordIndex> vocab_ids(n);
std::vector<uint64_t> keys(n-1);
typename Store::Entry::Value value;
@ -147,7 +149,7 @@ template <class MiddleT, class LongestT> uint8_t *TemplateHashedSearch<MiddleT,
template <class MiddleT, class LongestT> template <class Voc> void TemplateHashedSearch<MiddleT, LongestT>::InitializeFromARPA(const char * /*file*/, util::FilePiece &f, const std::vector<uint64_t> &counts, const Config &config, Voc &vocab, Backing &backing) {
// TODO: fix sorted.
SetupMemory(GrowForSearch(config, 0, Size(counts, config), backing), counts, config);
SetupMemory(GrowForSearch(config, vocab.UnkCountChangePadding(), Size(counts, config), backing), counts, config);
PositiveProbWarn warn(config.positive_log_probability);

View File

@ -91,8 +91,10 @@ template <class MiddleT, class LongestT> class TemplateHashedSearch : public Has
template <class Voc> void InitializeFromARPA(const char *file, util::FilePiece &f, const std::vector<uint64_t> &counts, const Config &config, Voc &vocab, Backing &backing);
const Middle *MiddleBegin() const { return &*middle_.begin(); }
const Middle *MiddleEnd() const { return &*middle_.end(); }
typedef typename std::vector<Middle>::const_iterator MiddleIter;
MiddleIter MiddleBegin() const { return middle_.begin(); }
MiddleIter MiddleEnd() const { return middle_.end(); }
Node Unpack(uint64_t extend_pointer, unsigned char extend_length, float &prob) const {
util::FloatEnc val;

View File

@ -197,7 +197,7 @@ class SRISucks {
void ObtainBackoffs(unsigned char total_order, FILE *unigram_file, RecordReader *reader) {
for (unsigned char i = 0; i < kMaxOrder - 1; ++i) {
it_[i] = &*values_[i].begin();
it_[i] = values_[i].empty() ? NULL : &*values_[i].begin();
}
messages_[0].Apply(it_, unigram_file);
BackoffMessages *messages = messages_ + 1;
@ -229,8 +229,8 @@ class SRISucks {
class FindBlanks {
public:
FindBlanks(uint64_t *counts, unsigned char order, const ProbBackoff *unigrams, SRISucks &messages)
: counts_(counts), longest_counts_(counts + order - 1), unigrams_(unigrams), sri_(messages) {}
FindBlanks(unsigned char order, const ProbBackoff *unigrams, SRISucks &messages)
: counts_(order), unigrams_(unigrams), sri_(messages) {}
float UnigramProb(WordIndex index) const {
return unigrams_[index].prob;
@ -250,7 +250,7 @@ class FindBlanks {
}
void Longest(const void * /*data*/) {
++*longest_counts_;
++counts_.back();
}
// Unigrams wrote one past.
@ -258,8 +258,12 @@ class FindBlanks {
--counts_[0];
}
const std::vector<uint64_t> &Counts() const {
return counts_;
}
private:
uint64_t *const counts_, *const longest_counts_;
std::vector<uint64_t> counts_;
const ProbBackoff *unigrams_;
@ -473,14 +477,15 @@ template <class Quant, class Bhiksha> void BuildTrie(SortedFiles &files, std::ve
}
SRISucks sri;
std::vector<uint64_t> fixed_counts(counts.size());
std::vector<uint64_t> fixed_counts;
util::scoped_FILE unigram_file;
util::scoped_fd unigram_fd(files.StealUnigram());
{
util::scoped_memory unigrams;
MapRead(util::POPULATE_OR_READ, unigram_fd.get(), 0, counts[0] * sizeof(ProbBackoff), unigrams);
FindBlanks finder(&*fixed_counts.begin(), counts.size(), reinterpret_cast<const ProbBackoff*>(unigrams.get()), sri);
FindBlanks finder(counts.size(), reinterpret_cast<const ProbBackoff*>(unigrams.get()), sri);
RecursiveInsert(counts.size(), counts[0], inputs, config.messages, "Identifying n-grams omitted by SRI", finder);
fixed_counts = finder.Counts();
}
unigram_file.reset(util::FDOpenOrThrow(unigram_fd));
for (const RecordReader *i = inputs; i != inputs + counts.size() - 2; ++i) {

View File

@ -62,6 +62,8 @@ template <class Quant, class Bhiksha> class TrieSearch {
void LoadedBinary();
typedef const Middle *MiddleIter;
const Middle *MiddleBegin() const { return middle_begin_; }
const Middle *MiddleEnd() const { return middle_end_; }

View File

@ -10,7 +10,7 @@
namespace lm {
namespace ngram {
class Config;
struct Config;
namespace trie {
struct NodeRange {

View File

@ -83,7 +83,12 @@ FILE *WriteContextFile(uint8_t *begin, uint8_t *end, const util::TempMaker &make
PartialIter context_begin(PartialViewProxy(begin + sizeof(WordIndex), entry_size, context_size));
PartialIter context_end(PartialViewProxy(end + sizeof(WordIndex), entry_size, context_size));
std::sort(context_begin, context_end, util::SizedCompare<EntryCompare, PartialViewProxy>(EntryCompare(order - 1)));
#if defined(_WIN32) || defined(_WIN64)
std::stable_sort
#else
std::sort
#endif
(context_begin, context_end, util::SizedCompare<EntryCompare, PartialViewProxy>(EntryCompare(order - 1)));
util::scoped_FILE out(maker.MakeFile());
@ -157,7 +162,10 @@ void RecordReader::Overwrite(const void *start, std::size_t amount) {
UTIL_THROW_IF(fseek(file_, internal - entry_size_, SEEK_CUR), util::ErrnoException, "Couldn't seek backwards for revision");
WriteOrThrow(file_, start, amount);
long forward = entry_size_ - internal - amount;
if (forward) UTIL_THROW_IF(fseek(file_, forward, SEEK_CUR), util::ErrnoException, "Couldn't seek forwards past revision");
#if !defined(_WIN32) && !defined(_WIN64)
if (forward)
#endif
UTIL_THROW_IF(fseek(file_, forward, SEEK_CUR), util::ErrnoException, "Couldn't seek forwards past revision");
}
void RecordReader::Rewind() {
@ -244,8 +252,13 @@ void SortedFiles::ConvertToSorted(util::FilePiece &f, const SortedVocabulary &vo
}
// Sort full records by full n-gram.
util::SizedProxy proxy_begin(begin, entry_size), proxy_end(out_end, entry_size);
// parallel_sort uses too much RAM
std::sort(NGramIter(proxy_begin), NGramIter(proxy_end), util::SizedCompare<EntryCompare>(EntryCompare(order)));
// parallel_sort uses too much RAM. TODO: figure out why windows sort doesn't like my proxies.
#if defined(_WIN32) || defined(_WIN64)
std::stable_sort
#else
std::sort
#endif
(NGramIter(proxy_begin), NGramIter(proxy_end), util::SizedCompare<EntryCompare>(EntryCompare(order)));
files.push_back(DiskFlush(begin, out_end, maker));
contexts.push_back(WriteContextFile(begin, out_end, maker, entry_size, order));

View File

@ -25,7 +25,7 @@ namespace lm {
class PositiveProbWarn;
namespace ngram {
class SortedVocabulary;
class Config;
struct Config;
namespace trie {

View File

@ -125,8 +125,10 @@ WordIndex SortedVocabulary::Insert(const StringPiece &str) {
void SortedVocabulary::FinishedLoading(ProbBackoff *reorder_vocab) {
if (enumerate_) {
util::PairedIterator<ProbBackoff*, std::string*> values(reorder_vocab + 1, &*strings_to_enumerate_.begin());
util::JointSort(begin_, end_, values);
if (!strings_to_enumerate_.empty()) {
util::PairedIterator<ProbBackoff*, std::string*> values(reorder_vocab + 1, &*strings_to_enumerate_.begin());
util::JointSort(begin_, end_, values);
}
for (WordIndex i = 0; i < static_cast<WordIndex>(end_ - begin_); ++i) {
// <unk> strikes again: +1 here.
enumerate_->Add(i + 1, strings_to_enumerate_[i]);
@ -142,11 +144,11 @@ void SortedVocabulary::FinishedLoading(ProbBackoff *reorder_vocab) {
bound_ = end_ - begin_ + 1;
}
void SortedVocabulary::LoadedBinary(int fd, EnumerateVocab *to) {
void SortedVocabulary::LoadedBinary(bool have_words, int fd, EnumerateVocab *to) {
end_ = begin_ + *(reinterpret_cast<const uint64_t*>(begin_) - 1);
SetSpecial(Index("<s>"), Index("</s>"), 0);
bound_ = end_ - begin_ + 1;
ReadWords(fd, to, bound_);
if (have_words) ReadWords(fd, to, bound_);
}
namespace {
@ -201,12 +203,12 @@ void ProbingVocabulary::FinishedLoading(ProbBackoff * /*reorder_vocab*/) {
SetSpecial(Index("<s>"), Index("</s>"), 0);
}
void ProbingVocabulary::LoadedBinary(int fd, EnumerateVocab *to) {
void ProbingVocabulary::LoadedBinary(bool have_words, int fd, EnumerateVocab *to) {
UTIL_THROW_IF(header_->version != kProbingVocabularyVersion, FormatLoadException, "The binary file has probing version " << header_->version << " but the code expects version " << kProbingVocabularyVersion << ". Please rerun build_binary using the same version of the code.");
lookup_.LoadedBinary();
bound_ = header_->bound;
SetSpecial(Index("<s>"), Index("</s>"), 0);
ReadWords(fd, to, bound_);
if (have_words) ReadWords(fd, to, bound_);
}
void MissingUnknown(const Config &config) throw(SpecialWordMissingException) {
@ -229,7 +231,7 @@ void MissingSentenceMarker(const Config &config, const char *str) throw(SpecialW
if (config.messages) *config.messages << "Missing special word " << str << "; will treat it as <unk>.";
break;
case THROW_UP:
UTIL_THROW(SpecialWordMissingException, "The ARPA file is missing " << str << " and the model is configured to reject these models. If you built your APRA with IRSTLM and forgot to run add-start-end.sh, complain to <bertoldi at fbk.eu> stating that you think build-lm.sh should do this by default, then go back and retrain your model from the start. To bypass this check and treat " << str << " as an OOV, pass -s. The resulting model will not work with e.g. Moses.");
UTIL_THROW(SpecialWordMissingException, "The ARPA file is missing " << str << " and the model is configured to reject these models. Run build_binary -s to disable this check.");
}
}

View File

@ -13,11 +13,11 @@
#include <vector>
namespace lm {
class ProbBackoff;
struct ProbBackoff;
class EnumerateVocab;
namespace ngram {
class Config;
struct Config;
namespace detail {
uint64_t HashForVocab(const char *str, std::size_t len);
@ -82,7 +82,7 @@ class SortedVocabulary : public base::Vocabulary {
bool SawUnk() const { return saw_unk_; }
void LoadedBinary(int fd, EnumerateVocab *to);
void LoadedBinary(bool have_words, int fd, EnumerateVocab *to);
private:
uint64_t *begin_, *end_;
@ -143,9 +143,11 @@ class ProbingVocabulary : public base::Vocabulary {
void FinishedLoading(ProbBackoff *reorder_vocab);
std::size_t UnkCountChangePadding() const { return 0; }
bool SawUnk() const { return saw_unk_; }
void LoadedBinary(int fd, EnumerateVocab *to);
void LoadedBinary(bool have_words, int fd, EnumerateVocab *to);
private:
typedef util::ProbingHashTable<ProbingVocabuaryEntry, util::IdentityHash> Lookup;

View File

@ -1,47 +1,56 @@
#include "BleuScorer.h"
#include <algorithm>
#include <cassert>
#include <cmath>
#include <climits>
#include <fstream>
#include <iterator>
#include <iostream>
#include <stdexcept>
#include "util/check.hh"
#include "Ngram.h"
#include "Reference.h"
#include "Util.h"
#include "ScoreDataIterator.h"
#include "FeatureDataIterator.h"
#include "Vocabulary.h"
using namespace std;
namespace {
// configure regularisation
const char KEY_REFLEN[] = "reflen";
const char REFLEN_AVERAGE[] = "average";
const char REFLEN_SHORTEST[] = "shortest";
const char REFLEN_CLOSEST[] = "closest";
} // namespace
BleuScorer::BleuScorer(const string& config)
: StatisticsBasedScorer("BLEU",config),
kLENGTH(4),
_refLengthStrategy(BLEU_CLOSEST) {
//configure regularisation
static string KEY_REFLEN = "reflen";
static string REFLEN_AVERAGE = "average";
static string REFLEN_SHORTEST = "shortest";
static string REFLEN_CLOSEST = "closest";
string reflen = getConfig(KEY_REFLEN,REFLEN_CLOSEST);
: StatisticsBasedScorer("BLEU", config),
m_ref_length_type(CLOSEST) {
const string reflen = getConfig(KEY_REFLEN, REFLEN_CLOSEST);
if (reflen == REFLEN_AVERAGE) {
_refLengthStrategy = BLEU_AVERAGE;
m_ref_length_type = AVERAGE;
} else if (reflen == REFLEN_SHORTEST) {
_refLengthStrategy = BLEU_SHORTEST;
m_ref_length_type = SHORTEST;
} else if (reflen == REFLEN_CLOSEST) {
_refLengthStrategy = BLEU_CLOSEST;
m_ref_length_type = CLOSEST;
} else {
throw runtime_error("Unknown reference length strategy: " + reflen);
}
// cerr << "Using reference length strategy: " << reflen << endl;
}
BleuScorer::~BleuScorer() {}
size_t BleuScorer::countNgrams(const string& line, counts_t& counts, unsigned int n)
size_t BleuScorer::CountNgrams(const string& line, NgramCounts& counts,
unsigned int n)
{
assert(n > 0);
vector<int> encoded_tokens;
//cerr << line << endl;
encode(line,encoded_tokens);
//copy(encoded_tokens.begin(), encoded_tokens.end(), ostream_iterator<int>(cerr," "));
//cerr << endl;
TokenizeAndEncode(line, encoded_tokens);
for (size_t k = 1; k <= n; ++k) {
//ngram order longer than sentence - no point
if (k > encoded_tokens.size()) {
@ -52,167 +61,219 @@ size_t BleuScorer::countNgrams(const string& line, counts_t& counts, unsigned in
for (size_t j = i; j < i+k && j < encoded_tokens.size(); ++j) {
ngram.push_back(encoded_tokens[j]);
}
int count = 1;
counts_iterator oldcount = counts.find(ngram);
if (oldcount != counts.end()) {
count = (oldcount->second) + 1;
}
//cerr << count << endl;
counts[ngram] = count;
//cerr << endl;
counts.Add(ngram);
}
}
//cerr << "counted ngrams" << endl;
//dump_counts(counts);
return encoded_tokens.size();
}
void BleuScorer::setReferenceFiles(const vector<string>& referenceFiles)
{
//make sure reference data is clear
_refcounts.reset();
_reflengths.clear();
_encodings.clear();
// Make sure reference data is clear
m_references.reset();
mert::VocabularyFactory::GetVocabulary()->clear();
//load reference data
for (size_t i = 0; i < referenceFiles.size(); ++i) {
//TRACE_ERR("Loading reference from " << referenceFiles[i] << endl);
ifstream refin(referenceFiles[i].c_str());
if (!refin) {
throw runtime_error("Unable to open: " + referenceFiles[i]);
TRACE_ERR("Loading reference from " << referenceFiles[i] << endl);
if (!OpenReference(referenceFiles[i].c_str(), i)) {
throw runtime_error("Unable to open " + referenceFiles[i]);
}
string line;
size_t sid = 0; //sentence counter
while (getline(refin,line)) {
//cerr << line << endl;
if (i == 0) {
counts_t *counts = new counts_t; //these get leaked
_refcounts.push_back(counts);
vector<size_t> lengths;
_reflengths.push_back(lengths);
}
if (_refcounts.size() <= sid) {
throw runtime_error("File " + referenceFiles[i] + " has too many sentences");
}
counts_t counts;
size_t length = countNgrams(line,counts,kLENGTH);
//for any counts larger than those already there, merge them in
for (counts_iterator ci = counts.begin(); ci != counts.end(); ++ci) {
counts_iterator oldcount_it = _refcounts[sid]->find(ci->first);
int oldcount = 0;
if (oldcount_it != _refcounts[sid]->end()) {
oldcount = oldcount_it->second;
}
int newcount = ci->second;
if (newcount > oldcount) {
_refcounts[sid]->operator[](ci->first) = newcount;
}
}
//add in the length
_reflengths[sid].push_back(length);
if (sid > 0 && sid % 100 == 0) {
TRACE_ERR(".");
}
++sid;
}
TRACE_ERR(endl);
}
}
bool BleuScorer::OpenReference(const char* filename, size_t file_id) {
ifstream ifs(filename);
if (!ifs) {
cerr << "Cannot open " << filename << endl;
return false;
}
return OpenReferenceStream(&ifs, file_id);
}
bool BleuScorer::OpenReferenceStream(istream* is, size_t file_id) {
if (is == NULL) return false;
string line;
size_t sid = 0;
while (getline(*is, line)) {
line = preprocessSentence(line);
if (file_id == 0) {
Reference* ref = new Reference;
m_references.push_back(ref); // Take ownership of the Reference object.
}
if (m_references.size() <= sid) {
cerr << "Reference " << file_id << "has too many sentences." << endl;
return false;
}
NgramCounts counts;
size_t length = CountNgrams(line, counts, kBleuNgramOrder);
//for any counts larger than those already there, merge them in
for (NgramCounts::const_iterator ci = counts.begin(); ci != counts.end(); ++ci) {
const NgramCounts::Key& ngram = ci->first;
const NgramCounts::Value newcount = ci->second;
NgramCounts::Value oldcount = 0;
m_references[sid]->get_counts()->Lookup(ngram, &oldcount);
if (newcount > oldcount) {
m_references[sid]->get_counts()->operator[](ngram) = newcount;
}
}
//add in the length
m_references[sid]->push_back(length);
if (sid > 0 && sid % 100 == 0) {
TRACE_ERR(".");
}
++sid;
}
return true;
}
void BleuScorer::prepareStats(size_t sid, const string& text, ScoreStats& entry)
{
// cerr << text << endl;
// cerr << sid << endl;
//dump_counts(*_refcounts[sid]);
if (sid >= _refcounts.size()) {
if (sid >= m_references.size()) {
stringstream msg;
msg << "Sentence id (" << sid << ") not found in reference set";
throw runtime_error(msg.str());
}
counts_t testcounts;
//stats for this line
vector<float> stats(kLENGTH*2);;
size_t length = countNgrams(text,testcounts,kLENGTH);
//dump_counts(testcounts);
if (_refLengthStrategy == BLEU_SHORTEST) {
//cerr << reflengths.size() << " " << sid << endl;
int shortest = *min_element(_reflengths[sid].begin(),_reflengths[sid].end());
stats.push_back(shortest);
} else if (_refLengthStrategy == BLEU_AVERAGE) {
int total = 0;
for (size_t i = 0; i < _reflengths[sid].size(); ++i) {
total += _reflengths[sid][i];
}
float mean = (float)total/_reflengths[sid].size();
stats.push_back(mean);
} else if (_refLengthStrategy == BLEU_CLOSEST) {
int min_diff = INT_MAX;
int min_idx = 0;
for (size_t i = 0; i < _reflengths[sid].size(); ++i) {
int reflength = _reflengths[sid][i];
if (abs(reflength-(int)length) < abs(min_diff)) { //look for the closest reference
min_diff = reflength-length;
min_idx = i;
} else if (abs(reflength-(int)length) == abs(min_diff)) { // if two references has the same closest length, take the shortest
if (reflength < (int)_reflengths[sid][min_idx]) {
min_idx = i;
}
}
}
stats.push_back(_reflengths[sid][min_idx]);
} else {
throw runtime_error("Unsupported reflength strategy");
}
//cerr << "computed length" << endl;
NgramCounts testcounts;
// stats for this line
vector<ScoreStatsType> stats(kBleuNgramOrder * 2);
string sentence = preprocessSentence(text);
const size_t length = CountNgrams(sentence, testcounts, kBleuNgramOrder);
const int reference_len = CalcReferenceLength(sid, length);
stats.push_back(reference_len);
//precision on each ngram type
for (counts_iterator testcounts_it = testcounts.begin();
for (NgramCounts::const_iterator testcounts_it = testcounts.begin();
testcounts_it != testcounts.end(); ++testcounts_it) {
counts_iterator refcounts_it = _refcounts[sid]->find(testcounts_it->first);
int correct = 0;
int guess = testcounts_it->second;
if (refcounts_it != _refcounts[sid]->end()) {
correct = min(refcounts_it->second,guess);
const NgramCounts::Value guess = testcounts_it->second;
const size_t len = testcounts_it->first.size();
NgramCounts::Value correct = 0;
NgramCounts::Value v = 0;
if (m_references[sid]->get_counts()->Lookup(testcounts_it->first, &v)) {
correct = min(v, guess);
}
size_t len = testcounts_it->first.size();
stats[len*2-2] += correct;
stats[len*2-1] += guess;
stats[len * 2 - 2] += correct;
stats[len * 2 - 1] += guess;
}
stringstream sout;
copy(stats.begin(),stats.end(),ostream_iterator<float>(sout," "));
//TRACE_ERR(sout.str() << endl);
string stats_str = sout.str();
entry.set(stats_str);
entry.set(stats);
}
float BleuScorer::calculateScore(const vector<int>& comps) const
{
//cerr << "BLEU: ";
//copy(comps.begin(),comps.end(), ostream_iterator<int>(cerr," "));
CHECK(comps.size() == kBleuNgramOrder * 2 + 1);
float logbleu = 0.0;
for (int i = 0; i < kLENGTH; ++i) {
for (int i = 0; i < kBleuNgramOrder; ++i) {
if (comps[2*i] == 0) {
return 0.0;
}
logbleu += log(comps[2*i]) - log(comps[2*i+1]);
}
logbleu /= kLENGTH;
float brevity = 1.0 - (float)comps[kLENGTH*2]/comps[1];//reflength divided by test length
logbleu /= kBleuNgramOrder;
// reflength divided by test length
const float brevity = 1.0 - static_cast<float>(comps[kBleuNgramOrder * 2]) / comps[1];
if (brevity < 0.0) {
logbleu += brevity;
}
//cerr << " " << exp(logbleu) << endl;
return exp(logbleu);
}
void BleuScorer::dump_counts(counts_t& counts) const {
for (counts_const_iterator i = counts.begin(); i != counts.end(); ++i) {
cerr << "(";
copy(i->first.begin(), i->first.end(), ostream_iterator<int>(cerr," "));
cerr << ") " << i->second << ", ";
int BleuScorer::CalcReferenceLength(size_t sentence_id, size_t length) {
switch (m_ref_length_type) {
case AVERAGE:
return m_references[sentence_id]->CalcAverage();
break;
case CLOSEST:
return m_references[sentence_id]->CalcClosest(length);
break;
case SHORTEST:
return m_references[sentence_id]->CalcShortest();
break;
default:
cerr << "unknown reference types." << endl;
exit(1);
}
cerr << endl;
}
void BleuScorer::DumpCounts(ostream* os,
const NgramCounts& counts) const {
for (NgramCounts::const_iterator it = counts.begin();
it != counts.end(); ++it) {
*os << "(";
const NgramCounts::Key& keys = it->first;
for (size_t i = 0; i < keys.size(); ++i) {
if (i != 0) {
*os << " ";
}
*os << keys[i];
}
*os << ") : " << it->second << ", ";
}
*os << endl;
}
float sentenceLevelBleuPlusOne(const vector<float>& stats) {
CHECK(stats.size() == kBleuNgramOrder * 2 + 1);
float logbleu = 0.0;
for (int j = 0; j < kBleuNgramOrder; j++) {
logbleu += log(stats[2 * j] + 1.0) - log(stats[2 * j + 1] + 1.0);
}
logbleu /= kBleuNgramOrder;
const float brevity = 1.0 - stats[(kBleuNgramOrder * 2)] / stats[1];
if (brevity < 0.0) {
logbleu += brevity;
}
return exp(logbleu);
}
float sentenceLevelBackgroundBleu(const std::vector<float>& sent, const std::vector<float>& bg)
{
// Sum sent and background
std::vector<float> stats;
CHECK(sent.size()==bg.size());
CHECK(sent.size()==kBleuNgramOrder*2+1);
for(size_t i=0;i<sent.size();i++)
stats.push_back(sent[i]+bg[i]);
// Calculate BLEU
float logbleu = 0.0;
for (int j = 0; j < kBleuNgramOrder; j++) {
logbleu += log(stats[2 * j]) - log(stats[2 * j + 1]);
}
logbleu /= kBleuNgramOrder;
const float brevity = 1.0 - stats[(kBleuNgramOrder * 2)] / stats[1];
if (brevity < 0.0) {
logbleu += brevity;
}
// Exponentiate and scale by reference length (as per Chiang et al 08)
return exp(logbleu) * stats[kBleuNgramOrder*2];
}
float unsmoothedBleu(const std::vector<float>& stats) {
CHECK(stats.size() == kBleuNgramOrder * 2 + 1);
float logbleu = 0.0;
for (int j = 0; j < kBleuNgramOrder; j++) {
logbleu += log(stats[2 * j]) - log(stats[2 * j + 1]);
}
logbleu /= kBleuNgramOrder;
const float brevity = 1.0 - stats[(kBleuNgramOrder * 2)] / stats[1];
if (brevity < 0.0) {
logbleu += brevity;
}
return exp(logbleu);
}
vector<float> BleuScorer::ScoreNbestList(string scoreFile, string featureFile) {

Some files were not shown because too many files have changed in this diff Show More