Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:24:56

0001 #ifndef PhotonMCTruthFinder_h
0002 #define PhotonMCTruthFinder_h
0003 #include "SimDataFormats/Track/interface/SimTrack.h"
0004 #include "SimDataFormats/Track/interface/SimTrackContainer.h"
0005 #include "SimDataFormats/Vertex/interface/SimVertex.h"
0006 #include "SimDataFormats/Vertex/interface/SimVertexContainer.h"
0007 
0008 #include <vector>
0009 #include <map>
0010 #include <iostream>
0011 
0012 /** \class PhotonMCTruthFinder
0013  *   
0014  *        
0015  *  \author N. Marinelli  Notre Dame
0016  *
0017  */
0018 
0019 class PhotonMCTruth;
0020 class PhotonMCTruthFinder {
0021 public:
0022   PhotonMCTruthFinder();
0023   virtual ~PhotonMCTruthFinder() {}
0024 
0025   std::vector<PhotonMCTruth> find(const std::vector<SimTrack>& simTracks, const std::vector<SimVertex>& simVertices);
0026 
0027   void clear() { geantToIndex_.clear(); }
0028 
0029 private:
0030   void fill(const std::vector<SimTrack>& theSimTracks, const std::vector<SimVertex>& theSimVertices);
0031   std::map<unsigned, unsigned> geantToIndex_;
0032 };
0033 
0034 #endif