|
| TeVMuonTrackCleaner (const edm::ParameterSet &) |
|
| ~TeVMuonTrackCleaner () |
|
| MuonTrackCleanerBase (const edm::ParameterSet &) |
|
| ~MuonTrackCleanerBase () |
|
| EDProducer () |
|
ModuleDescription const & | moduleDescription () const |
|
virtual | ~EDProducer () |
|
| ProducerBase () |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription
const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
virtual | ~ProducerBase () |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
| EDConsumerBase () |
|
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
|
std::vector
< ProductHolderIndexAndSkipBit >
const & | itemsToGetFromEvent () const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
|
virtual | ~EDConsumerBase () |
|
|
typedef EDProducer | ModuleType |
|
typedef
ProductRegistryHelper::TypeLabelList | TypeLabelList |
|
static const std::string & | baseType () |
|
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
|
static void | prevalidate (ConfigurationDescriptions &descriptions) |
|
enum | { kInnerTrack,
kOuterTrack,
kLink,
kTeV
} |
|
muonMomentumType | getMuonMomentum (const reco::Candidate &) |
|
virtual void | produce (edm::Event &, const edm::EventSetup &) |
|
virtual void | produceTracks (edm::Event &, const edm::EventSetup &) |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
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 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) |
|
double | dRmatch_ |
|
int | maxWarnings_tooFew_ |
|
int | maxWarnings_tooMany_ |
|
std::string | moduleLabel_ |
|
int | numWarnings_tooFew_ |
|
int | numWarnings_tooMany_ |
|
bool | removeDuplicates_ |
|
edm::InputTag | srcSelectedMuons_ |
|
std::vector< todoListEntryType > | todoList_ |
|
int | type_ |
|
int | verbosity_ |
|
Produce collection of reco::Tracks in Z –> mu+ mu- event from which the two muons are removed (later to be replaced by simulated tau decay products)
This class takes care of updating the reco::MuonTrackLinks objects
- Authors
- Christian Veelken, LLR
- Version
- Revision:
- 1.1
- Id:
- GlobalMuonTrackCleaner.cc,v 1.1 2013/03/30 16:41:12 veelken Exp
Produce collection of reco::Tracks in Z –> mu+ mu- event from which the two muons are removed (later to be replaced by simulated tau decay products)
This class takes care of updating the edm::AssociationMap between globalMuons and tevMuons
- Authors
- Christian Veelken, LLR
- Version
- Revision:
- 1.1
- Id:
- TeVMuonTrackCleaner.cc,v 1.1 2013/03/30 16:41:12 veelken Exp
Definition at line 39 of file TeVMuonTrackCleaner.cc.
Implements MuonTrackCleanerBase.
Definition at line 83 of file TeVMuonTrackCleaner.cc.
References gather_cfg::cout, edm::hlt::Exception, edm::Event::getByLabel(), edm::HandleBase::id(), edm::Ref< C, T, F >::id(), edm::InputTag::instance(), edm::Ref< C, T, F >::key(), edm::InputTag::label(), MuonTrackCleanerBase::moduleLabel_, edm::InputTag::process(), edm::Event::put(), srcGlobalMuons_cleaned_, MuonTrackCleanerBase::todoList_, and MuonTrackCleanerBase::verbosity_.
91 <<
" productId = " << globalMuons_cleaned.
id() <<
"): #entries = " << globalMuons_cleaned->size() << std::endl;
94 for (
typename std::vector<todoListEntryType>::const_iterator todoItem =
todoList_.begin();
95 todoItem !=
todoList_.end(); ++todoItem ) {
96 std::auto_ptr<TrackToTrackMap> trackToTrackMap_cleaned(
new TrackToTrackMap());
99 evt.
getByLabel(todoItem->srcTracks_, trackToTrackMap);
101 for (
typename TrackToTrackMap::const_iterator entry = trackToTrackMap->begin();
102 entry != trackToTrackMap->end(); ++entry ) {
103 std::cout <<
"trackToTrackMap[" << entry->key.id() <<
":" << entry->key.key() <<
"] = " << entry->val.id() <<
":" << entry->val.key() << std::endl;
107 size_t numGlobalMuons_cleaned = globalMuons_cleaned->size();
108 for (
size_t iGlobalMuons_cleaned = 0; iGlobalMuons_cleaned < numGlobalMuons_cleaned; ++iGlobalMuons_cleaned ) {
109 reco::TrackRef globalMuonTrack_cleaned(globalMuons_cleaned, iGlobalMuons_cleaned);
111 std::cout <<
" globalMuon(cleaned = " << globalMuonTrack_cleaned.id() <<
":" << globalMuonTrack_cleaned.key() <<
"):"
112 <<
" Pt = " << globalMuonTrack_cleaned->pt() <<
", eta = " << globalMuonTrack_cleaned->eta() <<
", phi = " << globalMuonTrack_cleaned->phi() << std::endl;
116 double dRmatch = 1.e+3;
117 matchMuonTracks(globalMuonTrack_cleaned, *trackToTrackMap, isMatched, tevMuonTrack_matched, dRmatch,
verbosity_);
120 std::cout <<
"--> adding trackToTrackMap[" << globalMuonTrack_cleaned.id() <<
":" << globalMuonTrack_cleaned.key() <<
"]"
121 <<
" = " << tevMuonTrack_matched.
id() <<
":" << tevMuonTrack_matched.
key() << std::endl;
123 trackToTrackMap_cleaned->insert(globalMuonTrack_cleaned, tevMuonTrack_matched);
126 <<
"Failed to find Track association for " << globalMuonTrack_cleaned.id() <<
":" << globalMuonTrack_cleaned.key() <<
"!!\n";
130 evt.
put(trackToTrackMap_cleaned, todoItem->srcTracks_.instance());
key_type key() const
Accessor for product key.
ProductID id() const
Accessor for product ID.
edm::InputTag srcGlobalMuons_cleaned_
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
bool isMatched(TrackingRecHit const &hit)
edm::AssociationMap< edm::OneToOne< reco::TrackCollection, reco::TrackCollection > > TrackToTrackMap
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
std::vector< todoListEntryType > todoList_