CMS 3D CMS Logo

Onia2MuMuPAT.h
Go to the documentation of this file.
1 #ifndef HeavyFlavorAnalysis_Onia2MuMu_Onia2MuMuPAT_h
2 #define HeavyFlavorAnalysis_Onia2MuMu_Onia2MuMuPAT_h
3 
4 
5 // system include files
6 #include <memory>
7 
8 // FW include files
15 
16 // DataFormat includes
19 
22 
24 
25 template<typename T>
27  bool operator()( const T & t1, const T & t2 ) const {
28  return t1.userFloat("vProb") > t2.userFloat("vProb");
29  }
30 };
31 
32 
33 //
34 // class decleration
35 //
36 
37 class Onia2MuMuPAT : public edm::EDProducer {
38  public:
39  explicit Onia2MuMuPAT(const edm::ParameterSet&);
40  ~Onia2MuMuPAT() override;
41 
42  private:
43  void beginJob() override ;
44  void produce(edm::Event&, const edm::EventSetup&) override;
45  void endJob() override ;
46  bool isAbHadron(int pdgID);
47  bool isAMixedbHadron(int pdgID, int momPdgID);
48  std::pair<int, float> findJpsiMCInfo(reco::GenParticleRef genJpsi);
49 
50  // ----------member data ---------------------------
51  private:
52 
61  bool addCommonVertex_, addMuonlessPrimaryVertex_;
65 
67 
68 };
69 
70 //
71 // constants, enums and typedefs
72 //
73 
74 
75 //
76 // static data member definitions
77 //
78 
79 //
80 // constructors and destructor
81 //
82 
83 #endif
bool operator()(const T &t1, const T &t2) const
Definition: Onia2MuMuPAT.h:27
StringCutObjectSelector< pat::Muon > higherPuritySelection_
Definition: Onia2MuMuPAT.h:58
InvariantMassFromVertex massCalculator
Definition: Onia2MuMuPAT.h:66
void beginJob()
Definition: Breakpoints.cc:15
edm::EDGetTokenT< reco::BeamSpot > revtxbs_
Definition: Onia2MuMuPAT.h:57
auto const T2 &decltype(t1.eta()) t2
Definition: deltaR.h:16
StringCutObjectSelector< reco::Candidate, true > dimuonSelection_
Definition: Onia2MuMuPAT.h:60
edm::EDGetTokenT< reco::TrackCollection > revtxtrks_
Definition: Onia2MuMuPAT.h:56
bool addMuonlessPrimaryVertex_
Definition: Onia2MuMuPAT.h:61
bool resolveAmbiguity_
Definition: Onia2MuMuPAT.h:62
StringCutObjectSelector< pat::Muon > lowerPuritySelection_
Definition: Onia2MuMuPAT.h:59
bool addMCTruth_
Definition: Onia2MuMuPAT.h:63
edm::EDGetTokenT< reco::BeamSpot > thebeamspot_
Definition: Onia2MuMuPAT.h:54
edm::EDGetTokenT< reco::VertexCollection > thePVs_
Definition: Onia2MuMuPAT.h:55
GreaterByVProb< pat::CompositeCandidate > vPComparator_
Definition: Onia2MuMuPAT.h:64
long double T
edm::EDGetTokenT< edm::View< pat::Muon > > muons_
Definition: Onia2MuMuPAT.h:53