CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Attributes
TrackingSeedCandidates Class Reference

#include <TrackingSeedCandidates.h>

Public Types

using Objects = std::pair< const reco::CandidateView *, std::pair< float, float > >
 
enum  SeedingMode { SeedingMode::CANDIDATE_SEEDED, SeedingMode::GLOBAL }
 

Public Member Functions

Objects objects (const edm::Event &iEvent) const
 
 TrackingSeedCandidates (const edm::ParameterSet &regPSet, edm::ConsumesCollector &&iC)
 
 TrackingSeedCandidates (const edm::ParameterSet &regPSet, edm::ConsumesCollector &iC)
 
 ~TrackingSeedCandidates ()=default
 

Static Public Member Functions

static void fillDescriptions (edm::ParameterSetDescription &desc)
 

Private Attributes

float m_deltaEta_Cand
 
float m_deltaPhi_Cand
 
SeedingMode m_seedingMode
 
edm::EDGetTokenT< reco::CandidateViewm_token_input
 

Detailed Description

Definition at line 14 of file TrackingSeedCandidates.h.

Member Typedef Documentation

using TrackingSeedCandidates::Objects = std::pair<const reco::CandidateView*, std::pair<float, float> >

Definition at line 18 of file TrackingSeedCandidates.h.

Member Enumeration Documentation

Enumerator
CANDIDATE_SEEDED 
GLOBAL 

Definition at line 16 of file TrackingSeedCandidates.h.

16 { CANDIDATE_SEEDED, GLOBAL };

Constructor & Destructor Documentation

TrackingSeedCandidates::TrackingSeedCandidates ( const edm::ParameterSet regPSet,
edm::ConsumesCollector &&  iC 
)
inline

Definition at line 19 of file TrackingSeedCandidates.h.

References fillDescriptions(), iEvent, objects(), and ~TrackingSeedCandidates().

20  : TrackingSeedCandidates(regPSet, iC) {}
TrackingSeedCandidates(const edm::ParameterSet &regPSet, edm::ConsumesCollector &&iC)
TrackingSeedCandidates::TrackingSeedCandidates ( const edm::ParameterSet regPSet,
edm::ConsumesCollector iC 
)

Definition at line 3 of file TrackingSeedCandidates.cc.

References CANDIDATE_SEEDED, edm::errors::Configuration, edm::ConsumesCollector::consumes(), Exception, edm::ParameterSet::getParameter(), GLOBAL, m_deltaEta_Cand, m_deltaPhi_Cand, m_seedingMode, m_token_input, and AlCaHLTBitMon_QueryRunRegistry::string.

3  {
4  // operation mode
5  //
6  std::string seedingModeString = regPSet.getParameter<std::string>("seedingMode");
7  if (seedingModeString == "Candidate")
9  else if (seedingModeString == "Global")
11  else
12  throw edm::Exception(edm::errors::Configuration) << "Unknown seeding mode string: " << seedingModeString;
13 
14  m_deltaEta_Cand = regPSet.getParameter<double>("deltaEta_Cand");
15  m_deltaPhi_Cand = regPSet.getParameter<double>("deltaPhi_Cand");
16 
17  // basic inputs
20  if (m_deltaEta_Cand < 0 || m_deltaPhi_Cand < 0)
22  << "Delta eta and phi parameters must be set for candidates in candidate seeding mode";
23  }
24 }
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
edm::EDGetTokenT< reco::CandidateView > m_token_input
TrackingSeedCandidates::~TrackingSeedCandidates ( )
default

Referenced by TrackingSeedCandidates().

Member Function Documentation

void TrackingSeedCandidates::fillDescriptions ( edm::ParameterSetDescription desc)
static

Definition at line 26 of file TrackingSeedCandidates.cc.

References edm::ParameterSetDescription::add(), HLT_2018_cff::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by AreaSeededTrackingRegionsBuilder::fillDescriptions(), and TrackingSeedCandidates().

26  {
27  desc.add<std::string>("seedingMode", "Global");
28  desc.add<edm::InputTag>("input", edm::InputTag());
29  desc.add<double>("deltaEta_Cand", -1.);
30  desc.add<double>("deltaPhi_Cand", -1.);
31 }
ParameterDescriptionBase * add(U const &iLabel, T const &value)
TrackingSeedCandidates::Objects TrackingSeedCandidates::objects ( const edm::Event iEvent) const

Definition at line 33 of file TrackingSeedCandidates.cc.

References CANDIDATE_SEEDED, HistogramManager_cfi::dimensions, edm::Event::getByToken(), m_deltaEta_Cand, m_deltaPhi_Cand, m_seedingMode, m_token_input, edm::Handle< T >::product(), and mps_fire::result.

Referenced by AreaSeededTrackingRegionsBuilder::beginEvent(), and TrackingSeedCandidates().

33  {
35  std::pair<float, float> dimensions = std::make_pair(m_deltaEta_Cand, m_deltaPhi_Cand);
37 
39  iEvent.getByToken(m_token_input, objects);
40  result = std::make_pair(objects.product(), dimensions);
41  } else
42  result = std::make_pair(nullptr, dimensions);
43  return result;
44 }
std::pair< const reco::CandidateView *, std::pair< float, float > > Objects
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:525
T const * product() const
Definition: Handle.h:69
edm::EDGetTokenT< reco::CandidateView > m_token_input
Objects objects(const edm::Event &iEvent) const

Member Data Documentation

float TrackingSeedCandidates::m_deltaEta_Cand
private

Definition at line 30 of file TrackingSeedCandidates.h.

Referenced by objects(), and TrackingSeedCandidates().

float TrackingSeedCandidates::m_deltaPhi_Cand
private

Definition at line 31 of file TrackingSeedCandidates.h.

Referenced by objects(), and TrackingSeedCandidates().

SeedingMode TrackingSeedCandidates::m_seedingMode
private

Definition at line 29 of file TrackingSeedCandidates.h.

Referenced by objects(), and TrackingSeedCandidates().

edm::EDGetTokenT<reco::CandidateView> TrackingSeedCandidates::m_token_input
private

Definition at line 33 of file TrackingSeedCandidates.h.

Referenced by objects(), and TrackingSeedCandidates().