CMS 3D CMS Logo

DisappearingMuonsSkimming.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: Skimming/DisappearingMuonsSkimming
4 // Class: DisappearingMuonsSkimming
5 //
13 //
14 // Original Author: Michael Revering
15 // Created: Tie, 31 Jan 2023 21:22:23 GMT
16 //
17 //
18 #ifndef Configuration_Skimming_DisappearingMuonsSkimming_h
19 #define Configuration_Skimming_DisappearingMuonsSkimming_h
20 
21 // system include files
22 #include <memory>
23 
24 // user include filter
41 
42 //
43 // class declaration
44 //
45 
47 public:
49  ~DisappearingMuonsSkimming() override = default;
50  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
51 
52 private:
53  bool filter(edm::Event&, const edm::EventSetup&) override;
54 
55  bool passTriggers(const edm::Event& iEvent,
56  const edm::TriggerResults& results,
57  const std::vector<std::string>& m_muonPathsToPass);
58 
59  bool findTrackInVertices(const reco::TrackRef& tkToMatch,
61  unsigned int& vtxIndex,
62  unsigned int& trackIndex);
63 
64  double getTrackIsolation(const reco::TrackRef& tkToMatch, const reco::VertexCollection& vertices);
66 
67  // ----------member data ---------------------------
77  const std::vector<std::string> muonPathsToPass_;
78 
79  //options
80  const double minMuPt_;
81  const double maxMuEta_;
82  const double minTrackEta_;
83  const double maxTrackEta_;
84  const double minTrackPt_;
85  const double maxTransDCA_;
86  const double maxLongDCA_;
87  const double maxVtxChi_;
88  const double minInvMass_;
89  const double maxInvMass_;
90  const double trackIsoConesize_;
91  const double trackIsoInnerCone_;
92  const double ecalIsoConesize_;
93  const double minEcalHitE_;
94  const double maxTrackIso_;
95  const double maxEcalIso_;
96  const double minSigInvMass_;
97  const double maxSigInvMass_;
98  const double minStandaloneDr_;
99  const double maxStandaloneDE_;
100  const bool keepOffPeak_;
101  const bool keepSameSign_;
102  const bool keepTotalRegion_;
103  const bool keepPartialRegion_;
104 };
105 #endif
~DisappearingMuonsSkimming() override=default
const std::vector< std::string > muonPathsToPass_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
const edm::EDGetTokenT< edm::TriggerResults > trigResultsToken_
std::vector< Vertex > VertexCollection
collection of Vertex objects
Definition: VertexFwd.h:9
const edm::EDGetTokenT< reco::VertexCollection > primaryVerticesToken_
int iEvent
Definition: GenABIO.cc:224
const edm::ESGetToken< TransientTrackBuilder, TransientTrackRecord > transientTrackToken_
const edm::EDGetTokenT< EcalRecHitCollection > reducedEndcapRecHitCollectionToken_
bool passTriggers(const edm::Event &iEvent, const edm::TriggerResults &results, const std::vector< std::string > &m_muonPathsToPass)
const edm::EDGetTokenT< reco::MuonCollection > recoMuonToken_
double getECALIsolation(const edm::Event &, const edm::EventSetup &, const reco::TransientTrack &track)
double getTrackIsolation(const reco::TrackRef &tkToMatch, const reco::VertexCollection &vertices)
bool findTrackInVertices(const reco::TrackRef &tkToMatch, const reco::VertexCollection &vertices, unsigned int &vtxIndex, unsigned int &trackIndex)
bool filter(edm::Event &, const edm::EventSetup &) override
const edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geometryToken_
const edm::EDGetTokenT< reco::TrackCollection > standaloneMuonToken_
const edm::EDGetTokenT< EcalRecHitCollection > reducedBarrelRecHitCollectionToken_
const edm::EDGetTokenT< reco::TrackCollection > trackCollectionToken_
DisappearingMuonsSkimming(const edm::ParameterSet &)