Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:59:10

0001 #ifndef CalibrationIsolatedParticlesFindCaloHit_h
0002 #define CalibrationIsolatedParticlesFindCaloHit_h
0003 
0004 // system include files
0005 #include <memory>
0006 #include <cmath>
0007 #include <string>
0008 #include <map>
0009 #include <vector>
0010 
0011 // user include files
0012 #include "FWCore/Framework/interface/Frameworkfwd.h"
0013 
0014 #include "DataFormats/Common/interface/Handle.h"
0015 
0016 #include "DataFormats/Candidate/interface/Candidate.h"
0017 
0018 #include "DataFormats/DetId/interface/DetId.h"
0019 #include "DataFormats/EcalDetId/interface/EBDetId.h"
0020 #include "DataFormats/EcalDetId/interface/EEDetId.h"
0021 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
0022 #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
0023 #include "DataFormats/HcalRecHit/interface/HcalRecHitCollections.h"
0024 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
0025 
0026 #include "SimDataFormats/CaloHit/interface/PCaloHitContainer.h"
0027 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
0028 
0029 #include <cmath>
0030 
0031 namespace spr {
0032 
0033   // All types of Hit Collections
0034   template <typename T>
0035   std::vector<typename T::const_iterator> findHit(edm::Handle<T>& hits, DetId thisDet, bool debug = false);
0036 
0037   std::vector<std::vector<PCaloHit>::const_iterator> findHit(std::vector<PCaloHit>& hits,
0038                                                              DetId thisDet,
0039                                                              bool debug = false);
0040 
0041   template <typename T>
0042   void findHit(edm::Handle<T>& hits, DetId thisDet, std::vector<typename T::const_iterator>& hit, bool debug = false);
0043 
0044   // For EB and EE RecHit Collection
0045   void find(edm::Handle<EcalRecHitCollection>& hits,
0046             DetId thisDet,
0047             std::vector<EcalRecHitCollection::const_iterator>& hit,
0048             bool debug = false);
0049 
0050   // For Hcal RecHit Collection
0051   void find(edm::Handle<HBHERecHitCollection>& hits,
0052             DetId thisDet,
0053             std::vector<HBHERecHitCollection::const_iterator>& hit,
0054             bool debug = false);
0055 
0056   // For simHit Collection
0057   void find(edm::Handle<edm::PCaloHitContainer>& hits,
0058             DetId thisDet,
0059             std::vector<edm::PCaloHitContainer::const_iterator>& hit,
0060             bool debug = false);
0061 }  // namespace spr
0062 
0063 #include "Calibration/IsolatedParticles/interface/FindCaloHit.icc"
0064 
0065 #endif