CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
FlavorHistoryFilter.h
Go to the documentation of this file.
1 #ifndef PhysicsTools_HepMCCandAlgos_interface_FlavorHistoryFilter_h
2 #define PhysicsTools_HepMCCandAlgos_interface_FlavorHistoryFilter_h
3 
4 
5 // -*- C++ -*-
6 //
7 // Package: FlavorHistoryFilter
8 // Class: FlavorHistoryFilter
9 //
46 //
47 // Original Author: "Salvatore Rappoccio"
48 // Created: Sat Jun 28 00:41:21 CDT 2008
49 //
50 //
51 
52 
53 // system include files
54 #include <memory>
55 
56 // user include files
59 
62 
64 
65 
69 
71 
72 //
73 // class declaration
74 //
75 
77  public:
79  typedef std::vector<int> flavor_vector;
80 
81  explicit FlavorHistoryFilter(const edm::ParameterSet&);
83 
84  private:
85  virtual bool filter(edm::Event&, const edm::EventSetup&) override;
86  virtual void endJob() ;
87 
88  // ----------member data ---------------------------
89  edm::EDGetTokenT<reco::FlavorHistoryEvent> bsrcToken_; // Input b flavor history collection name
90  edm::EDGetTokenT<reco::FlavorHistoryEvent> csrcToken_; // Input c flavor history collection name
91  int pathToSelect_; // Select any of the following paths:
92  double dr_; // dr with which to cut off the events
93  // Note! The "b" and "c" here refer to the number of matched b and c genjets, respectively
94  reco::FlavorHistorySelectorUtil * bb_me_; // To select bb->2 events from matrix element... Path 1
95  reco::FlavorHistorySelectorUtil * b_me_; // To select b->1 events from matrix element... Path 2
96  reco::FlavorHistorySelectorUtil * cc_me_; // To select cc->2 events from matrix element... Path 3
97  reco::FlavorHistorySelectorUtil * c_me_; // To select c->1 events from matrix element... Path 4
98  reco::FlavorHistorySelectorUtil * b_ps_; // To select bb->2 events from parton shower ... Path 5
99  reco::FlavorHistorySelectorUtil * c_ps_; // To select cc->2 events from parton shower ... Path 6
100  reco::FlavorHistorySelectorUtil * bb_me_comp_; // To select bb->1 events from matrix element... Path 7
101  reco::FlavorHistorySelectorUtil * cc_me_comp_; // To select cc->1 events from matrix element... Path 8
102  reco::FlavorHistorySelectorUtil * b_ps_comp_; // To select bb->2 events from parton shower ... Path 9
103  reco::FlavorHistorySelectorUtil * c_ps_comp_; // To select cc->1 events from parton shower ... Path 10
104  // The veto of all of these is ... Path 11
105 };
106 
107 
108 #endif
reco::FlavorHistorySelectorUtil * c_me_
reco::FlavorHistorySelectorUtil * bb_me_
virtual bool filter(edm::Event &, const edm::EventSetup &) override
reco::FlavorHistorySelectorUtil * b_ps_comp_
reco::FlavorHistorySelectorUtil * cc_me_
edm::EDGetTokenT< reco::FlavorHistoryEvent > bsrcToken_
reco::FlavorHistorySelectorUtil * c_ps_comp_
reco::FlavorHistorySelectorUtil * bb_me_comp_
std::vector< int > flavor_vector
reco::FlavorHistorySelectorUtil * cc_me_comp_
FlavorHistoryFilter(const edm::ParameterSet &)
reco::FlavorHistorySelectorUtil * b_me_
reco::FlavorHistorySelectorUtil * b_ps_
edm::EDGetTokenT< reco::FlavorHistoryEvent > csrcToken_
reco::FlavorHistorySelectorUtil * c_ps_
reco::FlavorHistory::FLAVOR_T flavor_type