CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/RecoEgamma/ElectronIdentification/interface/LikelihoodSpecies.h

Go to the documentation of this file.
00001 #ifndef LikelihoodSpecies_h
00002 #define LikelihoodSpecies_h
00003 
00004 #include "RecoEgamma/ElectronIdentification/interface/LikelihoodPdf.h"
00005 #include <vector>
00006 #include <string>
00007 #include <map>
00008 
00009 class LikelihoodSpecies {
00010  public:
00011   LikelihoodSpecies() {};
00012   LikelihoodSpecies(const char* name, float prior);
00013 
00014   virtual ~LikelihoodSpecies();
00015 
00016   // modifiers
00017   void setName(const char* name);
00018   void addPdf(LikelihoodPdf* pdf);
00019   void setPrior(float prior);
00020   void setSplitFraction(std::pair<std::string,float> splitfrac);
00021 
00022   // methods
00023   std::vector<LikelihoodPdf*> getListOfPdfs();
00024   const char* getName();
00025   float getPrior();
00026   std::map<std::string,float> getSplitFractions();
00027 
00028  private:
00029   std::vector<LikelihoodPdf*> _pdfList;
00030   std::string _name;
00031   float _prior;
00032   std::map<std::string,float> _splitFractions;
00033 
00034 };
00035 #endif