CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/RecoEgamma/EgammaMCTools/interface/ElectronMCTruthFinder.h

Go to the documentation of this file.
00001 #ifndef ElectronMCTruthFinder_h
00002 #define ElectronMCTruthFinder_h
00003 
00004 #include "SimDataFormats/Track/interface/SimTrack.h"                          
00005 #include "SimDataFormats/Track/interface/SimTrackContainer.h"                 
00006 #include "SimDataFormats/Vertex/interface/SimVertex.h"                        
00007 #include "SimDataFormats/Vertex/interface/SimVertexContainer.h"               
00008 
00009 #include "RecoEgamma/EgammaMCTools/interface/ElectronMCTruth.h"
00010 #include "RecoEgamma/EgammaMCTools/interface/PhotonMCTruth.h"
00011 
00012 class PhotonMCTruthFinder;
00013 class ElectronMCTruthFinder {
00014 
00015   public:
00016 
00017     ElectronMCTruthFinder();
00018 
00019     virtual ~ElectronMCTruthFinder(); 
00020 
00021 
00022     std::vector<ElectronMCTruth> find(std::vector<SimTrack> simTracks, std::vector<SimVertex> simVertices);
00023 
00024   private:
00025 
00026     void fill(std::vector<SimTrack>& theSimTracks, std::vector<SimVertex>& theSimVertices);
00027 
00028     std::map<unsigned, unsigned> geantToIndex_;
00029     PhotonMCTruthFinder* thePhotonMCTruthFinder_;
00030 };
00031 
00032 #endif