File indexing completed on 2024-04-06 12:18:39
0001 #ifndef HLTCSCOverlapFilter_h
0002 #define HLTCSCOverlapFilter_h
0003
0004 #include <vector>
0005 #include <map>
0006
0007 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0008 #include "FWCore/Utilities/interface/InputTag.h"
0009 #include "DataFormats/CSCRecHit/interface/CSCRecHit2DCollection.h"
0010 #include "Geometry/CSCGeometry/interface/CSCGeometry.h"
0011 #include "Geometry/Records/interface/MuonGeometryRecord.h"
0012
0013 #include "TH1F.h"
0014
0015 namespace edm {
0016 class ConfigurationDescriptions;
0017 }
0018
0019 class HLTCSCOverlapFilter : public HLTFilter {
0020 public:
0021 explicit HLTCSCOverlapFilter(const edm::ParameterSet &);
0022 ~HLTCSCOverlapFilter() override;
0023 bool hltFilter(edm::Event &,
0024 const edm::EventSetup &,
0025 trigger::TriggerFilterObjectWithRefs &filterproduct) const override;
0026 static void fillDescriptions(edm::ConfigurationDescriptions &descriptions);
0027
0028 private:
0029 edm::ESGetToken<CSCGeometry, MuonGeometryRecord> const muonGeometryRecordToken_;
0030 edm::InputTag m_input;
0031 edm::EDGetTokenT<CSCRecHit2DCollection> cscrechitsToken;
0032 unsigned int m_minHits;
0033 double m_xWindow, m_yWindow;
0034 bool m_ring1, m_ring2;
0035 bool m_fillHists;
0036 TH1F *m_nhitsNoWindowCut, *m_xdiff, *m_ydiff, *m_pairsWithWindowCut;
0037 };
0038
0039 #endif