CMS 3D CMS Logo

PATTauProducer.h
Go to the documentation of this file.
1 //
2 //
3 
4 #ifndef PhysicsTools_PatAlgos_PATTauProducer_h
5 #define PhysicsTools_PatAlgos_PATTauProducer_h
6 
22 
26 
28 
32 
34 
37 
42 
43 #include <string>
44 
47 namespace pat {
48 
50  public:
51  explicit PATTauProducer(const edm::ParameterSet& iConfig);
52  ~PATTauProducer() override;
53 
54  void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override;
55 
56  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
57 
58  private:
59  bool firstOccurence_; // used to print LogWarnings only at first occurnece in the event loop
60 
61  // configurables
80 
83  std::vector<edm::EDGetTokenT<edm::Association<reco::GenParticleCollection> > > genMatchTokens_;
84 
88 
90  std::vector<edm::EDGetTokenT<edm::ValueMap<TauJetCorrFactors> > > tauJetCorrFactorsTokens_;
91 
92  bool addTauID_;
93  typedef std::pair<std::string, edm::InputTag> NameTag;
94  typedef std::pair<std::string, std::string> WPCfg;
95  typedef std::pair<WPCfg, int> WPIdx;
96  typedef std::pair<std::string, WPIdx> NameWPIdx;
97  typedef std::pair<edm::InputTag, std::vector<NameWPIdx> >
98  IDContainerData; //to save input module tag and corresponding pairs <working point name for the output tree, WP index in the input ID container>
99  std::vector<NameTag> tauIDSrcs_;
100  std::vector<std::vector<NameWPIdx> > tauIDSrcContainers_;
101  std::vector<edm::EDGetTokenT<reco::PFTauDiscriminator> > pfTauIDTokens_;
102  std::vector<edm::EDGetTokenT<reco::TauDiscriminatorContainer> > pfTauIDContainerTokens_;
105  // tools
107 
109  pat::helper::MultiIsolator::IsolationValuePairs isolatorTmpStorage_; // better here than recreate at each event
110  std::vector<std::pair<pat::IsolationKeys, edm::InputTag> > isoDepositLabels_;
111  std::vector<edm::EDGetTokenT<edm::ValueMap<IsoDeposit> > > isoDepositTokens_;
112 
115 
118 
121 
122  template <typename TauCollectionType, typename TauDiscrType>
125  size_t,
127  int);
128  };
129 
130 } // namespace pat
131 
132 #endif
pat::PATTauProducer::firstOccurence_
bool firstOccurence_
Definition: PATTauProducer.h:59
ProcessHistoryID.h
pat::PATTauProducer::pfTauToken_
edm::EDGetTokenT< reco::PFTauCollection > pfTauToken_
Definition: PATTauProducer.h:64
Handle.h
PATUserDataMerger.h
pat::PATUserDataHelper< pat::Tau >
GreaterByPt
Definition: PtComparator.h:24
pat::PATTauProducer::addGenJetMatch_
bool addGenJetMatch_
Definition: PATTauProducer.h:85
pat::PATTauProducer::PATTauProducer
PATTauProducer(const edm::ParameterSet &iConfig)
Definition: PATTauProducer.cc:30
PFTauDiscriminator.h
pat::PATTauProducer::tauIDSrcContainers_
std::vector< std::vector< NameWPIdx > > tauIDSrcContainers_
Definition: PATTauProducer.h:100
pat::helper::EfficiencyLoader
Definition: EfficiencyLoader.h:16
pat::PATTauProducer::WPIdx
std::pair< WPCfg, int > WPIdx
Definition: PATTauProducer.h:95
edm::EDGetTokenT
Definition: EDGetToken.h:33
pat::PATTauProducer
Produces pat::Tau's.
Definition: PATTauProducer.h:49
pat::PATTauProducer::embedIsolationPFNeutralHadrCands_
bool embedIsolationPFNeutralHadrCands_
Definition: PATTauProducer.h:78
pat::PATTauProducer::embedSignalTracks_
bool embedSignalTracks_
Definition: PATTauProducer.h:68
pat::PATTauProducer::embedIsolationTracks_
bool embedIsolationTracks_
Definition: PATTauProducer.h:66
pat::PATTauProducer::embedGenMatch_
bool embedGenMatch_
Definition: PATTauProducer.h:82
PFTauTIPAssociationByRef
edm::AssociationVector< reco::PFTauRefProd, std::vector< reco::PFTauTransverseImpactParameterRef > > PFTauTIPAssociationByRef
Definition: PATTauProducer.h:46
EDProducer.h
PtComparator.h
pat::PATTauProducer::embedLeadPFCand_
bool embedLeadPFCand_
Definition: PATTauProducer.h:69
pat::PATTauProducer::embedIsolationPFGammaCands_
bool embedIsolationPFGammaCands_
Definition: PATTauProducer.h:79
pat::PATTauProducer::embedLeadPFChargedHadrCand_
bool embedLeadPFChargedHadrCand_
Definition: PATTauProducer.h:70
pat::PATTauProducer::isolator_
pat::helper::MultiIsolator isolator_
Definition: PATTauProducer.h:108
pat::PATTauProducer::pfTauIDContainerTokens_
std::vector< edm::EDGetTokenT< reco::TauDiscriminatorContainer > > pfTauIDContainerTokens_
Definition: PATTauProducer.h:102
pat::PATTauProducer::addGenMatch_
bool addGenMatch_
Definition: PATTauProducer.h:81
edm::Handle
Definition: AssociativeIterator.h:50
Tau.h
pat::helper::MultiIsolator::IsolationValuePairs
std::vector< std::pair< pat::IsolationKeys, float > > IsolationValuePairs
Definition: MultiIsolator.h:17
MultiIsolator.h
EfficiencyLoader.h
pat::PATTauProducer::phID_
edm::ProcessHistoryID phID_
Definition: PATTauProducer.h:104
pat::PATTauProducer::addResolutions_
bool addResolutions_
Definition: PATTauProducer.h:116
pat::PATTauProducer::embedSignalPFGammaCands_
bool embedSignalPFGammaCands_
Definition: PATTauProducer.h:75
pat::PATTauProducer::genMatchTokens_
std::vector< edm::EDGetTokenT< edm::Association< reco::GenParticleCollection > > > genMatchTokens_
Definition: PATTauProducer.h:83
pat::PATTauProducer::NameTag
std::pair< std::string, edm::InputTag > NameTag
Definition: PATTauProducer.h:93
pat::PATTauProducer::embedLeadTrack_
bool embedLeadTrack_
Definition: PATTauProducer.h:67
pat::PATTauProducer::isoDepositLabels_
std::vector< std::pair< pat::IsolationKeys, edm::InputTag > > isoDepositLabels_
Definition: PATTauProducer.h:110
pat::PATTauProducer::isolatorTmpStorage_
pat::helper::MultiIsolator::IsolationValuePairs isolatorTmpStorage_
Definition: PATTauProducer.h:109
ProductProvenance.h
pat::PATTauProducer::NameWPIdx
std::pair< std::string, WPIdx > NameWPIdx
Definition: PATTauProducer.h:96
pat::helper::KinResolutionsLoader
Definition: KinResolutionsLoader.h:18
KinResolutionsLoader.h
pat::PATTauProducer::~PATTauProducer
~PATTauProducer() override
Definition: PATTauProducer.cc:172
edm::Hash< ProcessHistoryType >
pat::PATTauProducer::tauIDSrcs_
std::vector< NameTag > tauIDSrcs_
Definition: PATTauProducer.h:99
pat::PATTauProducer::genJetMatchToken_
edm::EDGetTokenT< edm::Association< reco::GenJetCollection > > genJetMatchToken_
Definition: PATTauProducer.h:87
pat::PATTauProducer::addTauJetCorrFactors_
bool addTauJetCorrFactors_
Definition: PATTauProducer.h:89
PFTauTransverseImpactParameterFwd.h
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
edm::AssociationVector
Definition: AssociationVector.h:67
pat::PATTauProducer::WPCfg
std::pair< std::string, std::string > WPCfg
Definition: PATTauProducer.h:94
edm::ParameterSet
Definition: ParameterSet.h:36
pat::PATTauProducer::embedSignalPFChargedHadrCands_
bool embedSignalPFChargedHadrCands_
Definition: PATTauProducer.h:73
Event.h
pat::PATTauProducer::efficiencyLoader_
pat::helper::EfficiencyLoader efficiencyLoader_
Definition: PATTauProducer.h:114
UserData.h
pat::PATTauProducer::pfTauIDTokens_
std::vector< edm::EDGetTokenT< reco::PFTauDiscriminator > > pfTauIDTokens_
Definition: PATTauProducer.h:101
pat::PATTauProducer::baseTauToken_
edm::EDGetTokenT< edm::View< reco::BaseTau > > baseTauToken_
Definition: PATTauProducer.h:62
pat::PATTauProducer::skipMissingTauID_
bool skipMissingTauID_
Definition: PATTauProducer.h:103
iEvent
int iEvent
Definition: GenABIO.cc:224
pat::PATTauProducer::isoDepositTokens_
std::vector< edm::EDGetTokenT< edm::ValueMap< IsoDeposit > > > isoDepositTokens_
Definition: PATTauProducer.h:111
pat::PATTauProducer::embedSignalPFNeutralHadrCands_
bool embedSignalPFNeutralHadrCands_
Definition: PATTauProducer.h:74
pat::PATTauProducer::embedIsolationPFCands_
bool embedIsolationPFCands_
Definition: PATTauProducer.h:76
edm::stream::EDProducer
Definition: EDProducer.h:38
TauDiscriminatorContainer.h
edm::EventSetup
Definition: EventSetup.h:57
pat
Definition: HeavyIon.h:7
pat::PATTauProducer::embedGenJetMatch_
bool embedGenJetMatch_
Definition: PATTauProducer.h:86
InputTag.h
pat::helper::MultiIsolator
Definition: MultiIsolator.h:15
pat::PATTauProducer::pTTauComparator_
GreaterByPt< Tau > pTTauComparator_
Definition: PATTauProducer.h:106
pat::PATTauProducer::userDataHelper_
pat::PATUserDataHelper< pat::Tau > userDataHelper_
Definition: PATTauProducer.h:120
pat::PATTauProducer::embedIsolationPFChargedHadrCands_
bool embedIsolationPFChargedHadrCands_
Definition: PATTauProducer.h:77
pat::PATTauProducer::addTauID_
bool addTauID_
Definition: PATTauProducer.h:92
pat::PATTauProducer::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: PATTauProducer.cc:688
pat::PATTauProducer::embedLeadPFNeutralCand_
bool embedLeadPFNeutralCand_
Definition: PATTauProducer.h:71
pat::PATTauProducer::getTauIdDiscriminator
float getTauIdDiscriminator(const edm::Handle< TauCollectionType > &, size_t, const edm::Handle< TauDiscrType > &)
Definition: PATTauProducer.cc:662
Provenance.h
PATUserDataHelper.h
pat::PATTauProducer::getTauIdDiscriminatorFromContainer
float getTauIdDiscriminatorFromContainer(const edm::Handle< reco::PFTauCollection > &, size_t, const edm::Handle< reco::TauDiscriminatorContainer > &, int)
Definition: PATTauProducer.cc:668
pat::PATTauProducer::tauJetCorrFactorsTokens_
std::vector< edm::EDGetTokenT< edm::ValueMap< TauJetCorrFactors > > > tauJetCorrFactorsTokens_
Definition: PATTauProducer.h:90
pat::PATTauProducer::resolutionLoader_
pat::helper::KinResolutionsLoader resolutionLoader_
Definition: PATTauProducer.h:117
pat::PATTauProducer::tauTransverseImpactParameterToken_
edm::EDGetTokenT< PFTauTIPAssociationByRef > tauTransverseImpactParameterToken_
Definition: PATTauProducer.h:63
pat::PATTauProducer::embedSignalPFCands_
bool embedSignalPFCands_
Definition: PATTauProducer.h:72
pat::PATTauProducer::tauTransverseImpactParameterSrc_
edm::InputTag tauTransverseImpactParameterSrc_
Definition: PATTauProducer.h:65
ParameterSet.h
pat::PATTauProducer::useUserData_
bool useUserData_
Definition: PATTauProducer.h:119
pat::PATTauProducer::produce
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
Definition: PATTauProducer.cc:174
edm::Event
Definition: Event.h:73
pat::PATTauProducer::addEfficiencies_
bool addEfficiencies_
Definition: PATTauProducer.h:113
edm::InputTag
Definition: InputTag.h:15
pat::PATTauProducer::IDContainerData
std::pair< edm::InputTag, std::vector< NameWPIdx > > IDContainerData
Definition: PATTauProducer.h:98