CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
ClusterTPAssociationProducer Class Referencefinal
Inheritance diagram for ClusterTPAssociationProducer:
edm::global::EDProducer<> edm::global::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Types

using OmniClusterCollection = std::vector< OmniClusterRef >
 
- Public Types inherited from edm::global::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
template<typename T >
using BranchAliasSetterT = ProductRegistryHelper::BranchAliasSetterT< T >
 
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > >
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 

Public Member Functions

 ClusterTPAssociationProducer (const edm::ParameterSet &)
 
 ~ClusterTPAssociationProducer () override=default
 
- Public Member Functions inherited from edm::global::EDProducer<>
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
EDProduceroperator= (const EDProducer &)=delete
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
bool wantsStreamLuminosityBlocks () const final
 
bool wantsStreamRuns () const final
 
- Public Member Functions inherited from edm::global::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
std::vector< bool > const & recordProvenanceList () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
TypeLabelList const & typeLabelList () const
 used by the fwk to register the list of products of this module More...
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase)
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &descriptions)
 
- Static Public Member Functions inherited from edm::global::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Member Functions

void produce (edm::StreamID, edm::Event &, const edm::EventSetup &) const override
 

Private Attributes

edm::EDGetTokenT< edmNew::DetSetVector< Phase2TrackerCluster1D > > phase2OTClustersToken_
 
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
 
edm::EDGetTokenT< edm::DetSetVector< PixelDigiSimLink > > siphase2OTSimLinksToken_
 
edm::EDGetTokenT< edm::DetSetVector< PixelDigiSimLink > > sipixelSimLinksToken_
 
edm::EDGetTokenT< edm::DetSetVector< StripDigiSimLink > > sistripSimLinksToken_
 
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > stripClustersToken_
 
bool throwOnMissingCollections_
 
edm::EDGetTokenT< TrackingParticleCollectiontrackingParticleToken_
 

Additional Inherited Members

- Protected Member Functions inherited from edm::ProducerBase
template<Transition Tr = Transition::Event>
auto produces (std::string instanceName) noexcept
 declare what type of product will make and with which optional label More...
 
template<Transition B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<BranchType B>
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
BranchAliasSetter produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces ()
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , BranchType B>
BranchAliasSetterT< ProductType > produces ()
 
template<class ProductType >
BranchAliasSetterT< ProductType > produces (std::string instanceName)
 
template<typename ProductType , Transition B>
BranchAliasSetterT< ProductType > produces ()
 
template<Transition Tr = Transition::Event>
auto produces () noexcept
 
ProducesCollector producesCollector ()
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< Bconsumes (edm::InputTag tag) noexcept
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes ()
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag)
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
void resetItemsToGetFrom (BranchType iType)
 

Detailed Description

Definition at line 54 of file ClusterTPAssociationProducer.cc.

Member Typedef Documentation

◆ OmniClusterCollection

Definition at line 56 of file ClusterTPAssociationProducer.cc.

Constructor & Destructor Documentation

◆ ClusterTPAssociationProducer()

ClusterTPAssociationProducer::ClusterTPAssociationProducer ( const edm::ParameterSet cfg)
explicit

Definition at line 76 of file ClusterTPAssociationProducer.cc.

78  consumes<edm::DetSetVector<PixelDigiSimLink> >(cfg.getParameter<edm::InputTag>("pixelSimLinkSrc"))),
80  consumes<edm::DetSetVector<StripDigiSimLink> >(cfg.getParameter<edm::InputTag>("stripSimLinkSrc"))),
82  consumes<edm::DetSetVector<PixelDigiSimLink> >(cfg.getParameter<edm::InputTag>("phase2OTSimLinkSrc"))),
84  consumes<edmNew::DetSetVector<SiPixelCluster> >(cfg.getParameter<edm::InputTag>("pixelClusterSrc"))),
86  consumes<edmNew::DetSetVector<SiStripCluster> >(cfg.getParameter<edm::InputTag>("stripClusterSrc"))),
88  cfg.getParameter<edm::InputTag>("phase2OTClusterSrc"))),
90  consumes<TrackingParticleCollection>(cfg.getParameter<edm::InputTag>("trackingParticleSrc"))),
91  throwOnMissingCollections_(cfg.getParameter<bool>("throwOnMissingCollections")) {
92  produces<ClusterTPAssociation>();
93 }
edm::EDGetTokenT< edmNew::DetSetVector< Phase2TrackerCluster1D > > phase2OTClustersToken_
edm::EDGetTokenT< edm::DetSetVector< PixelDigiSimLink > > siphase2OTSimLinksToken_
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > stripClustersToken_
edm::EDGetTokenT< TrackingParticleCollection > trackingParticleToken_
edm::EDGetTokenT< edm::DetSetVector< PixelDigiSimLink > > sipixelSimLinksToken_
edm::EDGetTokenT< edm::DetSetVector< StripDigiSimLink > > sistripSimLinksToken_

◆ ~ClusterTPAssociationProducer()

ClusterTPAssociationProducer::~ClusterTPAssociationProducer ( )
overridedefault

Member Function Documentation

◆ fillDescriptions()

void ClusterTPAssociationProducer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Definition at line 95 of file ClusterTPAssociationProducer.cc.

References edm::ConfigurationDescriptions::add(), submitPVResolutionJobs::desc, and HLT_2022v15_cff::InputTag.

95  {
97  desc.add<edm::InputTag>("simTrackSrc", edm::InputTag("g4SimHits"));
98  desc.add<edm::InputTag>("pixelSimLinkSrc", edm::InputTag("simSiPixelDigis"));
99  desc.add<edm::InputTag>("stripSimLinkSrc", edm::InputTag("simSiStripDigis"));
100  desc.add<edm::InputTag>("phase2OTSimLinkSrc", edm::InputTag("simSiPixelDigis", "Tracker"));
101  desc.add<edm::InputTag>("pixelClusterSrc", edm::InputTag("siPixelClusters"));
102  desc.add<edm::InputTag>("stripClusterSrc", edm::InputTag("siStripClusters"));
103  desc.add<edm::InputTag>("phase2OTClusterSrc", edm::InputTag("siPhase2Clusters"));
104  desc.add<edm::InputTag>("trackingParticleSrc", edm::InputTag("mix", "MergedTrackTruth"));
105  desc.add<bool>("throwOnMissingCollections", true);
106  descriptions.add("tpClusterProducerDefault", desc);
107 }
void add(std::string const &label, ParameterSetDescription const &psetDescription)

◆ produce()

void ClusterTPAssociationProducer::produce ( edm::StreamID  ,
edm::Event iEvent,
const edm::EventSetup es 
) const
overrideprivatevirtual

Implements edm::global::EDProducerBase.

Definition at line 109 of file ClusterTPAssociationProducer.cc.

References SiStripCluster::amplitudes(), edmNew::DetSet< T >::begin(), Phase2TrackerCluster1D::column(), runTauDisplay::eid, edmNew::DetSet< T >::end(), dqmdumpme::first, Phase2TrackerCluster1D::firstRow(), SiStripCluster::firstStrip(), iEvent, dqmdumpme::last, edmNew::makeRefTo(), taus_updatedMVAIds_cff::mapping, SiPixelCluster::maxPixelCol(), SiPixelCluster::maxPixelRow(), SiPixelCluster::minPixelCol(), SiPixelCluster::minPixelRow(), eostools::move(), highPtTripletStepClusters_cfi::phase2OTClusters, phase2OTClustersToken_, DQMOffline_LumiMonitoring_cff::pixelClusters, pixelClustersToken_, Phase2TrackerDigi::pixelToChannel(), PixelChannelIdentifier::pixelToChannel(), edm::Handle< T >::product(), siphase2OTSimLinksToken_, sipixelSimLinksToken_, sistripSimLinksToken_, Phase2TrackerCluster1D::size(), SiStripCluster::size(), HLT_2022v15_cff::stripClusters, stripClustersToken_, throwOnMissingCollections_, and trackingParticleToken_.

109  {
110  // Pixel Cluster
112  bool foundPixelClusters = iEvent.getByToken(pixelClustersToken_, pixelClusters);
113 
114  // Strip Cluster
116  bool foundStripClusters = iEvent.getByToken(stripClustersToken_, stripClusters);
117 
118  // Phase2 Cluster
120  bool foundPhase2OTClusters = iEvent.getByToken(phase2OTClustersToken_, phase2OTClusters);
121 
122  // Pixel DigiSimLink
124  auto pixelSimLinksFound = iEvent.getByToken(sipixelSimLinksToken_, sipixelSimLinks);
125  if (not throwOnMissingCollections_ and foundPixelClusters and not pixelSimLinksFound) {
126  auto clusterTPList = std::make_unique<ClusterTPAssociation>();
127  iEvent.put(std::move(clusterTPList));
128  return;
129  }
130 
131  // SiStrip DigiSimLink
133  auto stripSimLinksFound = iEvent.getByToken(sistripSimLinksToken_, sistripSimLinks);
134  if (not throwOnMissingCollections_ and foundStripClusters and not stripSimLinksFound) {
135  auto clusterTPList = std::make_unique<ClusterTPAssociation>();
136  iEvent.put(std::move(clusterTPList));
137  return;
138  }
139 
140  // Phase2 OT DigiSimLink
142  auto phase2OTSimLinksFound = iEvent.getByToken(siphase2OTSimLinksToken_, siphase2OTSimLinks);
143  if (not throwOnMissingCollections_ and foundPhase2OTClusters and not phase2OTSimLinksFound) {
144  auto clusterTPList = std::make_unique<ClusterTPAssociation>();
145  iEvent.put(std::move(clusterTPList));
146  return;
147  }
148 
149  // TrackingParticle
151  auto tpFound = iEvent.getByToken(trackingParticleToken_, TPCollectionH);
152  if (not throwOnMissingCollections_ and not tpFound) {
153  auto clusterTPList = std::make_unique<ClusterTPAssociation>();
154  iEvent.put(std::move(clusterTPList));
155  return;
156  }
157 
158  auto clusterTPList = std::make_unique<ClusterTPAssociation>(TPCollectionH);
159 
160  // prepare temporary map between SimTrackId and TrackingParticle index
161  std::unordered_map<UniqueSimTrackId, TrackingParticleRef, UniqueSimTrackIdHash> mapping;
162  auto const& tpColl = *TPCollectionH.product();
163  for (TrackingParticleCollection::size_type itp = 0; itp < tpColl.size(); ++itp) {
164  TrackingParticleRef trackingParticleRef(TPCollectionH, itp);
165  auto const& trackingParticle = tpColl[itp];
166  // SimTracks inside TrackingParticle
167  EncodedEventId eid(trackingParticle.eventId());
168  //size_t index = 0;
169  for (auto const& trk : trackingParticle.g4Tracks()) {
170  UniqueSimTrackId trkid(trk.trackId(), eid);
171  //std::cout << "creating map for id: " << trkid.first << " with tp: " << trackingParticle.key() << std::endl;
172  mapping.insert(std::make_pair(trkid, trackingParticleRef));
173  }
174  }
175 
176  std::unordered_set<UniqueSimTrackId, UniqueSimTrackIdHash> simTkIds;
177  std::vector<UniqueSimTrackId> trkid;
178  if (foundPixelClusters) {
179  // Pixel Clusters
180  clusterTPList->addKeyID(pixelClusters.id());
182  iter != pixelClusters->end();
183  ++iter) {
184  uint32_t detid = iter->id();
185  DetId detId(detid);
186  edmNew::DetSet<SiPixelCluster> link_pixel = (*iter);
187  for (edmNew::DetSet<SiPixelCluster>::const_iterator di = link_pixel.begin(); di != link_pixel.end(); ++di) {
188  const SiPixelCluster& cluster = (*di);
190 
191  simTkIds.clear();
192  for (int irow = cluster.minPixelRow(); irow <= cluster.maxPixelRow(); ++irow) {
193  for (int icol = cluster.minPixelCol(); icol <= cluster.maxPixelCol(); ++icol) {
194  uint32_t channel = PixelChannelIdentifier::pixelToChannel(irow, icol);
195  trkid.clear();
196  getSimTrackId<PixelDigiSimLink>(trkid, sipixelSimLinks, detId, channel);
197  simTkIds.insert(trkid.begin(), trkid.end());
198  }
199  }
200  for (auto iset = simTkIds.begin(); iset != simTkIds.end(); iset++) {
201  auto ipos = mapping.find(*iset);
202  if (ipos != mapping.end()) {
203  //std::cout << "cluster in detid: " << detid << " from tp: " << ipos->second.key() << " " << iset->first << std::endl;
204  clusterTPList->emplace_back(OmniClusterRef(c_ref), ipos->second);
205  }
206  }
207  }
208  }
209  }
210 
211  if (foundStripClusters) {
212  // Strip Clusters
213  clusterTPList->addKeyID(stripClusters.id());
215  eter = stripClusters->end(false);
216  iter != eter;
217  ++iter) {
218  if (!(*iter).isValid())
219  continue;
220  uint32_t detid = iter->id();
221  DetId detId(detid);
222  edmNew::DetSet<SiStripCluster> link_strip = (*iter);
223  for (edmNew::DetSet<SiStripCluster>::const_iterator di = link_strip.begin(); di != link_strip.end(); di++) {
224  const SiStripCluster& cluster = (*di);
226 
227  simTkIds.clear();
228  int first = cluster.firstStrip();
229  int last = first + cluster.amplitudes().size();
230 
231  for (int istr = first; istr < last; ++istr) {
232  trkid.clear();
233  getSimTrackId<StripDigiSimLink>(trkid, sistripSimLinks, detId, istr);
234  simTkIds.insert(trkid.begin(), trkid.end());
235  }
236  for (auto iset = simTkIds.begin(); iset != simTkIds.end(); iset++) {
237  auto ipos = mapping.find(*iset);
238  if (ipos != mapping.end()) {
239  //std::cout << "cluster in detid: " << detid << " from tp: " << ipos->second.key() << " " << iset->first << std::endl;
240  clusterTPList->emplace_back(OmniClusterRef(c_ref), ipos->second);
241  }
242  }
243  }
244  }
245  }
246 
247  if (foundPhase2OTClusters) {
248  // Phase2 Clusters
249  clusterTPList->addKeyID(phase2OTClusters.id());
250  if (phase2OTClusters.isValid()) {
252  eter = phase2OTClusters->end(false);
253  iter != eter;
254  ++iter) {
255  if (!(*iter).isValid())
256  continue;
257  uint32_t detid = iter->id();
258  DetId detId(detid);
259  edmNew::DetSet<Phase2TrackerCluster1D> link_phase2 = (*iter);
260  for (edmNew::DetSet<Phase2TrackerCluster1D>::const_iterator di = link_phase2.begin(); di != link_phase2.end();
261  di++) {
262  const Phase2TrackerCluster1D& cluster = (*di);
265 
266  simTkIds.clear();
267 
268  for (unsigned int istr(0); istr < cluster.size(); ++istr) {
269  uint32_t channel = Phase2TrackerDigi::pixelToChannel(cluster.firstRow() + istr, cluster.column());
270  trkid.clear();
271  getSimTrackId<PixelDigiSimLink>(trkid, siphase2OTSimLinks, detId, channel);
272  simTkIds.insert(trkid.begin(), trkid.end());
273  }
274 
275  for (auto iset = simTkIds.begin(); iset != simTkIds.end(); iset++) {
276  auto ipos = mapping.find(*iset);
277  if (ipos != mapping.end()) {
278  clusterTPList->emplace_back(OmniClusterRef(c_ref), ipos->second);
279  }
280  }
281  }
282  }
283  }
284  }
285  clusterTPList->sortAndUnique();
286  iEvent.put(std::move(clusterTPList));
287 }
edm::Ref< typename HandleT::element_type, typename HandleT::element_type::value_type::value_type > makeRefTo(const HandleT &iHandle, typename HandleT::element_type::value_type::const_iterator itIter)
uint16_t firstStrip() const
std::pair< uint32_t, EncodedEventId > UniqueSimTrackId
edm::EDGetTokenT< edmNew::DetSetVector< Phase2TrackerCluster1D > > phase2OTClustersToken_
int maxPixelRow() const
T const * product() const
Definition: Handle.h:70
data_type const * const_iterator
Definition: DetSetNew.h:31
uint16_t size_type
edm::EDGetTokenT< edm::DetSetVector< PixelDigiSimLink > > siphase2OTSimLinksToken_
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > pixelClustersToken_
int minPixelRow() const
edm::EDGetTokenT< edmNew::DetSetVector< SiStripCluster > > stripClustersToken_
int iEvent
Definition: GenABIO.cc:224
int minPixelCol() const
SiStripCluster const & amplitudes() const
auto size() const
static PackedDigiType pixelToChannel(unsigned int row, unsigned int col)
unsigned int firstRow() const
int maxPixelCol() const
edm::EDGetTokenT< TrackingParticleCollection > trackingParticleToken_
boost::transform_iterator< IterHelp, const_IdIter > const_iterator
Definition: DetId.h:17
unsigned int column() const
edm::EDGetTokenT< edm::DetSetVector< PixelDigiSimLink > > sipixelSimLinksToken_
Pixel cluster – collection of neighboring pixels above threshold.
iterator end()
Definition: DetSetNew.h:56
static int pixelToChannel(int row, int col)
edm::EDGetTokenT< edm::DetSetVector< StripDigiSimLink > > sistripSimLinksToken_
def move(src, dest)
Definition: eostools.py:511
iterator begin()
Definition: DetSetNew.h:54

Member Data Documentation

◆ phase2OTClustersToken_

edm::EDGetTokenT<edmNew::DetSetVector<Phase2TrackerCluster1D> > ClusterTPAssociationProducer::phase2OTClustersToken_
private

Definition at line 71 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ pixelClustersToken_

edm::EDGetTokenT<edmNew::DetSetVector<SiPixelCluster> > ClusterTPAssociationProducer::pixelClustersToken_
private

Definition at line 69 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ siphase2OTSimLinksToken_

edm::EDGetTokenT<edm::DetSetVector<PixelDigiSimLink> > ClusterTPAssociationProducer::siphase2OTSimLinksToken_
private

Definition at line 68 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ sipixelSimLinksToken_

edm::EDGetTokenT<edm::DetSetVector<PixelDigiSimLink> > ClusterTPAssociationProducer::sipixelSimLinksToken_
private

Definition at line 66 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ sistripSimLinksToken_

edm::EDGetTokenT<edm::DetSetVector<StripDigiSimLink> > ClusterTPAssociationProducer::sistripSimLinksToken_
private

Definition at line 67 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ stripClustersToken_

edm::EDGetTokenT<edmNew::DetSetVector<SiStripCluster> > ClusterTPAssociationProducer::stripClustersToken_
private

Definition at line 70 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ throwOnMissingCollections_

bool ClusterTPAssociationProducer::throwOnMissingCollections_
private

Definition at line 73 of file ClusterTPAssociationProducer.cc.

Referenced by produce().

◆ trackingParticleToken_

edm::EDGetTokenT<TrackingParticleCollection> ClusterTPAssociationProducer::trackingParticleToken_
private

Definition at line 72 of file ClusterTPAssociationProducer.cc.

Referenced by produce().