00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef _SIMFACTORY_HPP
00015 #define _SIMFACTORY_HPP
00016
00017 #include "CosSim.hpp"
00018 #include "ClusterParam.hpp"
00019 namespace lemur
00020 {
00021 namespace cluster
00022 {
00024 class SimFactory {
00025 public:
00026 static SimilarityMethod * makeSim(const lemur::api::Index &index,
00027 enum ClusterParam::simTypes simType = ClusterParam::COS) {
00028 switch (simType) {
00029 case ClusterParam::COS:
00030 return new CosSim(index);
00031 default:
00032 cerr << "Unknown similarity method " << simType << endl;
00033 return NULL;
00034 }
00035 }
00036 };
00037 }
00038 }
00039
00040 #endif