mosesdecoder/moses/Search.cpp
2012-11-12 19:56:18 +00:00

35 lines
754 B
C++

#include "Manager.h"
#include "SearchCubePruning.h"
#include "SearchNormal.h"
#include "SearchNormalBatch.h"
#include "UserMessage.h"
namespace Moses
{
Search *Search::CreateSearch(Manager& manager, const InputType &source,
SearchAlgorithm searchAlgorithm, const TranslationOptionCollection &transOptColl)
{
switch(searchAlgorithm) {
case Normal:
return new SearchNormal(manager,source, transOptColl);
case CubePruning:
return new SearchCubePruning(manager, source, transOptColl);
case CubeGrowing:
return NULL;
case NormalBatch:
return new SearchNormalBatch(manager, source, transOptColl);
default:
UserMessage::Add("ERROR: search. Aborting\n");
abort();
return NULL;
}
}
}