File indexing completed on 2024-04-06 12:24:56
0001 #ifndef PizeroMCTruthFinder_h
0002 #define PizeroMCTruthFinder_h
0003
0004 #include "SimDataFormats/Track/interface/SimTrack.h"
0005 #include "SimDataFormats/Track/interface/SimTrackContainer.h"
0006 #include "SimDataFormats/Vertex/interface/SimVertex.h"
0007 #include "SimDataFormats/Vertex/interface/SimVertexContainer.h"
0008
0009 #include "RecoEgamma/EgammaMCTools/interface/PizeroMCTruth.h"
0010 #include "RecoEgamma/EgammaMCTools/interface/PhotonMCTruth.h"
0011 #include "RecoEgamma/EgammaMCTools/interface/ElectronMCTruth.h"
0012
0013 class PhotonMCTruthFinder;
0014 class ElectronMCTruthFinder;
0015 class PizeroMCTruthFinder {
0016 public:
0017 PizeroMCTruthFinder();
0018
0019 virtual ~PizeroMCTruthFinder();
0020
0021 std::vector<PizeroMCTruth> find(const std::vector<SimTrack>& simTracks, const std::vector<SimVertex>& simVertices);
0022
0023 private:
0024 void fill(const std::vector<SimTrack>& theSimTracks, const std::vector<SimVertex>& theSimVertices);
0025
0026 std::map<unsigned, unsigned> geantToIndex_;
0027 PhotonMCTruthFinder* thePhotonMCTruthFinder_;
0028 ElectronMCTruthFinder* theElectronMCTruthFinder_;
0029 };
0030
0031 #endif