CMS 3D CMS Logo

TtDilepEvtSolutionMaker.h
Go to the documentation of this file.
1 #include <string>
2 #include <vector>
3 
8 
11 
13 
15 
16  public:
17 
18  explicit TtDilepEvtSolutionMaker(const edm::ParameterSet & iConfig);
19  ~TtDilepEvtSolutionMaker() override;
20 
21  void beginJob() override;
22  void produce(edm::Event & iEvent, const edm::EventSetup & iSetup) override;
23 
24  private:
25 
26  // next methods are avoidable but they make the code legible
27  inline bool PTComp(const reco::Candidate*, const reco::Candidate*) const;
28  inline bool LepDiffCharge(const reco::Candidate* , const reco::Candidate*) const;
29  inline bool HasPositiveCharge(const reco::Candidate*) const;
30 
31  private:
32 
40  unsigned int nrCombJets_;
44  std::vector<double> nupars_;
45 
48 };
49 
50 inline bool TtDilepEvtSolutionMaker::PTComp(const reco::Candidate* l1, const reco::Candidate* l2) const
51 {
52  return (l1->pt() > l2->pt());
53 }
54 
56 {
57  return (l1->charge() != l2->charge());
58 }
59 
61 {
62  return (l->charge() > 0);
63 }
64 
edm::EDGetTokenT< std::vector< pat::Jet > > jetSourceToken_
edm::EDGetTokenT< std::vector< pat::Muon > > muonSourceToken_
bool HasPositiveCharge(const reco::Candidate *) const
TtDilepEvtSolutionMaker(const edm::ParameterSet &iConfig)
edm::EDGetTokenT< std::vector< pat::Tau > > tauSourceToken_
edm::EDGetTokenT< std::vector< pat::MET > > metSourceToken_
edm::EDGetTokenT< std::vector< pat::Electron > > electronSourceToken_
int iEvent
Definition: GenABIO.cc:224
bool PTComp(const reco::Candidate *, const reco::Candidate *) const
void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
edm::EDGetTokenT< TtGenEvent > evtSourceToken_
virtual double pt() const =0
transverse momentum
std::vector< double > nupars_
bool LepDiffCharge(const reco::Candidate *, const reco::Candidate *) const
virtual int charge() const =0
electric charge
TtDilepLRSignalSelObservables * myLRSignalSelObservables