CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/RecoEgamma/EgammaMCTools/interface/PizeroMCTruthFinder.h

Go to the documentation of this file.
00001 #ifndef PizeroMCTruthFinder_h
00002 #define PizeroMCTruthFinder_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/PizeroMCTruth.h"
00010 #include "RecoEgamma/EgammaMCTools/interface/PhotonMCTruth.h"
00011 #include "RecoEgamma/EgammaMCTools/interface/ElectronMCTruth.h"
00012 
00013 
00014 class PhotonMCTruthFinder;
00015 class ElectronMCTruthFinder;
00016 class PizeroMCTruthFinder {
00017 
00018   public:
00019 
00020     PizeroMCTruthFinder();
00021 
00022     virtual ~PizeroMCTruthFinder(); 
00023 
00024     std::vector<PizeroMCTruth> find(std::vector<SimTrack> simTracks, std::vector<SimVertex> simVertices);
00025 
00026   private:
00027 
00028     void fill(std::vector<SimTrack>& theSimTracks, std::vector<SimVertex>& theSimVertices);
00029 
00030     std::map<unsigned, unsigned> geantToIndex_;
00031     PhotonMCTruthFinder* thePhotonMCTruthFinder_;
00032     ElectronMCTruthFinder* theElectronMCTruthFinder_;
00033 
00034 };
00035 
00036 #endif