CMS 3D CMS Logo

MCParticlePairFilter.h
Go to the documentation of this file.
1 #ifndef MCParticlePairFilter_h
2 #define MCParticlePairFilter_h
3 // -*- C++ -*-
4 //
5 // Package: MCParticlePairFilter
6 // Class: MCParticlePairFilter
7 //
8 /*
9 
10  Description: filter events based on the Pythia particle information
11 
12  Implementation: inherits from generic EDFilter
13 
14 */
15 //
16 // Original Author: Fabian Stoeckli
17 // Created: Mon Sept 11 10:57:54 CET 2006
18 //
19 //
20 
21 
22 // system include files
23 #include <memory>
24 
25 // user include files
28 
31 
33 
34 
35 //
36 // class decleration
37 //
38 namespace edm {
39  class HepMCProduct;
40 }
41 
43  public:
44  explicit MCParticlePairFilter(const edm::ParameterSet&);
45  ~MCParticlePairFilter() override;
46 
47 
48  bool filter(edm::StreamID, edm::Event&, const edm::EventSetup&) const override;
49  private:
50  // ----------memeber function----------------------
51  int charge(int Id) const;
52 
53  // ----------member data ---------------------------
54 
56  std::vector<int> particleID1;
57  std::vector<int> particleID2;
58  std::vector<double> ptMin;
59  std::vector<double> pMin;
60  std::vector<double> etaMin;
61  std::vector<double> etaMax;
62  std::vector<int> status;
63  const int particleCharge;
64  const double minInvMass;
65  const double maxInvMass;
66  const double minDeltaPhi;
67  const double maxDeltaPhi;
68  const double minDeltaR;
69  const double maxDeltaR;
70  const double betaBoost;
71 
72 };
73 #endif
std::vector< double > ptMin
std::vector< double > pMin
std::vector< double > etaMin
std::vector< int > particleID1
std::vector< double > etaMax
std::vector< int > particleID2
const edm::EDGetTokenT< edm::HepMCProduct > token_
HLT enums.
std::vector< int > status