template<typename T1, typename T2>
class MuonDetCleaner< T1, T2 >
Clean collections of hits in muon detectors (CSC, DT and RPC) for original Zmumu event and "embedded" simulated tau decay products
- Author
- Christian Veelken, LLR
Clean Up from STefan Wayand, KIT
Definition at line 36 of file MuonDetCleaner.h.
template<typename T1 , typename T2 >
Definition at line 76 of file MuonDetCleaner.h.
References edm::View< T >::begin(), MuonDetCleaner< T1, T2 >::checkrecHit(), edm::View< T >::end(), MuonDetCleaner< T1, T2 >::fillVetoHits(), spr::find(), edm::Event::getByToken(), MuonDetCleaner< T1, T2 >::getRawDetId(), MuonDetCleaner< T1, T2 >::inputs_, genParticles_cff::map, eostools::move(), MuonDetCleaner< T1, T2 >::mu_input_, nano_cff::muons, convertSQLitetoXML_cfg::output, edm::Event::put(), rpcPointValidation_cfi::recHit, reco::Track::recHitsBegin(), reco::Track::recHitsEnd(), and HiIsolationCommonParameters_cff::track.
78 std::map<T1, std::vector<T2> > recHits_output;
79 std::vector<uint32_t> vetoHits;
87 if( iMuon->isGlobalMuon() ) track = iMuon->outerTrack().get();
88 else if ( iMuon->isStandAloneMuon() ) track = iMuon->outerTrack().get();
89 else if ( iMuon->isRPCMuon() ) track = iMuon->innerTrack().get();
90 else if ( iMuon->isTrackerMuon() ) track = iMuon->innerTrack().get();
92 edm::LogError(
"TauEmbedding")<<
"The imput muon: "<<(*iMuon)<<
" must be either global or does or be tracker muon";
99 if(!(murechit).isValid())
continue;
110 RecHitCollectionHandle RecHitinput;
111 iEvent.
getByToken(input_.second, RecHitinput);
116 recHits_output[detId].push_back(*
recHit);
123 for (
typename std::map<T1, std::vector<T2> >::const_iterator
recHit = recHits_output.begin();
recHit != recHits_output.end(); ++
recHit ) {
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
uint32_t getRawDetId(const T2 &)
bool checkrecHit(const TrackingRecHit &)
edm::RangeMap< T1, edm::OwnVector< T2 > > RecHitCollection
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
C::const_iterator const_iterator
constant access iterator type
const_iterator begin() const
std::map< std::string, edm::EDGetTokenT< RecHitCollection > > inputs_
const edm::EDGetTokenT< edm::View< pat::Muon > > mu_input_
trackingRecHit_iterator recHitsBegin() const
Iterator to first hit on the track.
boost::indirect_iterator< typename seq_t::const_iterator > const_iterator
void fillVetoHits(const TrackingRecHit &, std::vector< uint32_t > *)
const_iterator end() const
trackingRecHit_iterator recHitsEnd() const
Iterator to last hit on the track.