00001
00002
00003
00005 #ifndef _COMBINE_H
00006 #define _COMBINE_H
00007
00008 #include "Annotation.h"
00009 #include "InputData.h"
00010
00011 class RegionPrediction;
00012 class CustomScore;
00013
00018 class Combine {
00019 public:
00034 Combine(const InputData &, const string&, bool,const CustomScore&, int);
00035
00036 ~Combine();
00037
00038 void run();
00039
00040
00041 list<RegionPrediction*>& getOutput() { return _lst; }
00042 const list<RegionPrediction*>& getOutput() const { return _lst; }
00043 bool empty() const;
00044 Annotation& getAnnotation() { return *_annotation; }
00045
00046 private:
00047 void getAllRelaventData(int,InputData::const_iterator&,bool);
00048 void mergeScoreInsert();
00049 void score(list<RegionPrediction*>&);
00050
00051 private:
00052
00056 const InputData& _inData;
00057 const string& _theSequence;
00058 Annotation* _annotation;
00059 const CustomScore* _cstmScr;
00060 list<RegionPrediction*> _lst;
00061 };
00062
00063 #endif // _COMBINE_H