CMS 3D CMS Logo

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

#include <AreaSeededTrackingRegionsProducer.h>

Public Types

enum  Mode { BEAM_SPOT_FIXED, BEAM_SPOT_SIGMA, VERTICES_FIXED, VERTICES_SIGMA }
 

Public Member Functions

 AreaSeededTrackingRegionsProducer (const edm::ParameterSet &conf, edm::ConsumesCollector &&iC)
 
std::vector< std::unique_ptr< TrackingRegion > > regions (const edm::Event &e, const edm::EventSetup &es) const
 
 ~AreaSeededTrackingRegionsProducer ()=default
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 

Private Attributes

std::vector< AreaSeededTrackingRegionsBuilder::Aream_areas
 
AreaSeededTrackingRegionsBuilder m_builder
 
VertexBeamspotOrigins m_origins
 

Detailed Description

class AreaSeededTrackingRegionsProducer

eta-phi TrackingRegions producer in directions defined by z-phi area-based objects of interest from the "input" parameters.

Four operational modes are supported ("mode" parameter):

BeamSpotFixed: origin is defined by the beam spot z-half-length is defined by a fixed zErrorBeamSpot parameter BeamSpotSigma: origin is defined by the beam spot z-half-length is defined by nSigmaZBeamSpot * beamSpot.sigmaZ VerticesFixed: origins are defined by vertices from VertexCollection (use maximum MaxNVertices of them) z-half-length is defined by a fixed zErrorVertex parameter VerticesSigma: origins are defined by vertices from VertexCollection (use maximum MaxNVertices of them) z-half-length is defined by nSigmaZVertex * vetex.zError

If, while using one of the "Vertices" modes, there's no vertices in an event, we fall back into either BeamSpotSigma or BeamSpotFixed mode, depending on the positiveness of nSigmaZBeamSpot.

Definition at line 48 of file AreaSeededTrackingRegionsProducer.h.

Member Enumeration Documentation

◆ Mode

Enumerator
BEAM_SPOT_FIXED 
BEAM_SPOT_SIGMA 
VERTICES_FIXED 
VERTICES_SIGMA 

Definition at line 50 of file AreaSeededTrackingRegionsProducer.h.

Constructor & Destructor Documentation

◆ AreaSeededTrackingRegionsProducer()

AreaSeededTrackingRegionsProducer::AreaSeededTrackingRegionsProducer ( const edm::ParameterSet conf,
edm::ConsumesCollector &&  iC 
)
inline

Definition at line 52 of file AreaSeededTrackingRegionsProducer.h.

53  : m_origins(conf.getParameter<edm::ParameterSet>("RegionPSet"), iC),
54  m_builder(conf.getParameter<edm::ParameterSet>("RegionPSet"), iC) {
55  edm::ParameterSet regPSet = conf.getParameter<edm::ParameterSet>("RegionPSet");
56  for (const auto& area : regPSet.getParameter<std::vector<edm::ParameterSet> >("areas")) {
57  m_areas.emplace_back(area.getParameter<double>("rmin"),
58  area.getParameter<double>("rmax"),
59  area.getParameter<double>("phimin"),
60  area.getParameter<double>("phimax"),
61  area.getParameter<double>("zmin"),
62  area.getParameter<double>("zmax"));
63  }
64  if (m_areas.empty())
65  throw cms::Exception("Configuration") << "Empty 'areas' parameter.";
66  }

References custom_jme_cff::area, edm::ParameterSet::getParameter(), and m_areas.

◆ ~AreaSeededTrackingRegionsProducer()

AreaSeededTrackingRegionsProducer::~AreaSeededTrackingRegionsProducer ( )
default

Member Function Documentation

◆ fillDescriptions()

static void AreaSeededTrackingRegionsProducer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
inlinestatic

Definition at line 70 of file AreaSeededTrackingRegionsProducer.h.

70  {
72 
74  descAreas.add<double>("rmin", 0.0);
75  descAreas.add<double>("rmax", 0.0);
76  descAreas.add<double>("zmin", 0.0);
77  descAreas.add<double>("zmax", 0.0);
78  descAreas.add<double>("phimin", 0.0);
79  descAreas.add<double>("phimax", 0.0);
80  std::vector<edm::ParameterSet> vDefaults;
81  desc.addVPSet("areas", descAreas, vDefaults);
82 
85 
86  // Only for backwards-compatibility
88  descRegion.add<edm::ParameterSetDescription>("RegionPSet", desc);
89 
90  descriptions.add("areaSeededTrackingRegion", descRegion);
91  }

References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), edm::ParameterSetDescription::addVPSet(), VertexBeamspotOrigins::fillDescriptions(), and AreaSeededTrackingRegionsBuilder::fillDescriptions().

◆ regions()

std::vector<std::unique_ptr<TrackingRegion> > AreaSeededTrackingRegionsProducer::regions ( const edm::Event e,
const edm::EventSetup es 
) const
inline

Member Data Documentation

◆ m_areas

std::vector<AreaSeededTrackingRegionsBuilder::Area> AreaSeededTrackingRegionsProducer::m_areas
private

◆ m_builder

AreaSeededTrackingRegionsBuilder AreaSeededTrackingRegionsProducer::m_builder
private

Definition at line 101 of file AreaSeededTrackingRegionsProducer.h.

Referenced by regions().

◆ m_origins

VertexBeamspotOrigins AreaSeededTrackingRegionsProducer::m_origins
private

Definition at line 100 of file AreaSeededTrackingRegionsProducer.h.

Referenced by regions().

AreaSeededTrackingRegionsProducer::m_builder
AreaSeededTrackingRegionsBuilder m_builder
Definition: AreaSeededTrackingRegionsProducer.h:101
edm::ParameterSetDescription::add
ParameterDescriptionBase * add(U const &iLabel, T const &value)
Definition: ParameterSetDescription.h:95
VertexBeamspotOrigins::fillDescriptions
static void fillDescriptions(edm::ParameterSetDescription &desc, const std::string &defaultBeamSpot="offlineBeamSpot", const std::string &defaultVertex="firstStepPrimaryVertices", int defaultMaxVertices=-1)
Definition: VertexBeamspotOrigins.cc:38
AreaSeededTrackingRegionsBuilder::fillDescriptions
static void fillDescriptions(edm::ParameterSetDescription &desc)
Definition: AreaSeededTrackingRegionsBuilder.cc:36
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
AreaSeededTrackingRegionsProducer::m_origins
VertexBeamspotOrigins m_origins
Definition: AreaSeededTrackingRegionsProducer.h:100
AreaSeededTrackingRegionsProducer::VERTICES_FIXED
Definition: AreaSeededTrackingRegionsProducer.h:50
AreaSeededTrackingRegionsProducer::BEAM_SPOT_FIXED
Definition: AreaSeededTrackingRegionsProducer.h:50
AreaSeededTrackingRegionsProducer::VERTICES_SIGMA
Definition: AreaSeededTrackingRegionsProducer.h:50
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
AreaSeededTrackingRegionsBuilder::Builder::regions
std::vector< std::unique_ptr< TrackingRegion > > regions(const Origins &origins, const std::vector< Area > &areas) const
Definition: AreaSeededTrackingRegionsBuilder.cc:62
AreaSeededTrackingRegionsProducer::Mode
Mode
Definition: AreaSeededTrackingRegionsProducer.h:50
edm::ParameterSet
Definition: ParameterSet.h:36
AreaSeededTrackingRegionsBuilder::beginEvent
Builder beginEvent(const edm::Event &e) const
Definition: AreaSeededTrackingRegionsBuilder.cc:50
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
AreaSeededTrackingRegionsProducer::BEAM_SPOT_SIGMA
Definition: AreaSeededTrackingRegionsProducer.h:50
cms::Exception
Definition: Exception.h:70
AreaSeededTrackingRegionsProducer::m_areas
std::vector< AreaSeededTrackingRegionsBuilder::Area > m_areas
Definition: AreaSeededTrackingRegionsProducer.h:102
custom_jme_cff.area
area
Definition: custom_jme_cff.py:169
VertexBeamspotOrigins::origins
Origins origins(const edm::Event &iEvent) const
Definition: VertexBeamspotOrigins.cc:53
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37