Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:57

0001 #ifndef RecoTracker_TkTrackingRegions_TrackingSeedCandidates_h
0002 #define RecoTracker_TkTrackingRegions_TrackingSeedCandidates_h
0003 
0004 #include "FWCore/Framework/interface/Event.h"
0005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0006 #include "FWCore/ParameterSet/interface/ParameterSetDescription.h"
0007 #include "FWCore/Framework/interface/ConsumesCollector.h"
0008 #include "DataFormats/Candidate/interface/Candidate.h"
0009 #include "DataFormats/Common/interface/Handle.h"
0010 
0011 #include <vector>
0012 #include <utility>
0013 
0014 class TrackingSeedCandidates {
0015 public:
0016   enum class SeedingMode { CANDIDATE_SEEDED, GLOBAL };
0017   //using Objects = std::pair< edm::Handle< reco::CandidateView > , std::pair < float, float > > ; // (origin, half-length in z)
0018   using Objects = std::pair<const reco::CandidateView*, std::pair<float, float> >;  // (origin, half-length in z)
0019   TrackingSeedCandidates(const edm::ParameterSet& regPSet, edm::ConsumesCollector&& iC)
0020       : TrackingSeedCandidates(regPSet, iC) {}
0021   TrackingSeedCandidates(const edm::ParameterSet& regPSet, edm::ConsumesCollector& iC);
0022   ~TrackingSeedCandidates() = default;
0023 
0024   static void fillDescriptions(edm::ParameterSetDescription& desc);
0025 
0026   Objects objects(const edm::Event& iEvent) const;
0027 
0028 private:
0029   SeedingMode m_seedingMode;
0030   float m_deltaEta_Cand;
0031   float m_deltaPhi_Cand;
0032 
0033   edm::EDGetTokenT<reco::CandidateView> m_token_input;
0034 };
0035 
0036 #endif