CMS 3D CMS Logo

HLTPMMassFilter.h
Go to the documentation of this file.
1 #ifndef HLTPMMassFilter_h
2 #define HLTPMMassFilter_h
3 
13 
18 
20 
23 
25 
28 
30 
33 
36 
39 
40 // TEST
43 
44 #include "TFile.h"
45 #include "TDirectory.h"
46 #include "TH1F.h"
47 #include "TH2F.h"
48 #include "TLorentzVector.h"
49 #include "TVector3.h"
50 
51 //
52 // class declaration
53 //
54 
55 class HLTPMMassFilter : public HLTFilter {
56 
57  public:
58  explicit HLTPMMassFilter(const edm::ParameterSet&);
59  ~HLTPMMassFilter() override;
60  bool hltFilter(edm::Event&, const edm::EventSetup&, trigger::TriggerFilterObjectWithRefs & filterproduct) const override;
61  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
62 
63  private:
64  TLorentzVector approxMomAtVtx( const MagneticField *magField, const GlobalPoint& xvert, const reco::SuperClusterRef sc, int charge) const;
65 
66  edm::InputTag candTag_; // input tag identifying product contains filtered egammas
68  edm::InputTag beamSpot_; // input tag identifying beamSpot product
70  double lowerMassCut_;
71  double upperMassCut_;
72  int nZcandcut_; // number of Z candidates required
74 
78 
79 };
80 
81 #endif //HLTPMMassFilter_h
82 
83 
bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) const override
edm::InputTag candTag_
edm::InputTag beamSpot_
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken_
~HLTPMMassFilter() override
HLTPMMassFilter(const edm::ParameterSet &)
edm::EDGetTokenT< trigger::TriggerFilterObjectWithRefs > candToken_
edm::InputTag l1EGTag_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
TLorentzVector approxMomAtVtx(const MagneticField *magField, const GlobalPoint &xvert, const reco::SuperClusterRef sc, int charge) const