Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:19:45

0001 #ifndef L1Trigger_DTTriggerPhase2_MPCleanHitsFilter_h
0002 #define L1Trigger_DTTriggerPhase2_MPCleanHitsFilter_h
0003 
0004 #include "L1Trigger/DTTriggerPhase2/interface/MPFilter.h"
0005 
0006 #include <iostream>
0007 #include <fstream>
0008 
0009 // ===============================================================================
0010 // Previous definitions and declarations
0011 // ===============================================================================
0012 
0013 // ===============================================================================
0014 // Class declarations
0015 // ===============================================================================
0016 
0017 class MPCleanHitsFilter : public MPFilter {
0018 public:
0019   // Constructors and destructor
0020   MPCleanHitsFilter(const edm::ParameterSet& pset);
0021   ~MPCleanHitsFilter() override = default;
0022 
0023   // Main methods
0024   void initialise(const edm::EventSetup& iEventSetup) override{};
0025   void run(edm::Event& iEvent,
0026            const edm::EventSetup& iEventSetup,
0027            std::vector<cmsdt::metaPrimitive>& inMPath,
0028            std::vector<cmsdt::metaPrimitive>& outMPath) override{};
0029   void run(edm::Event& iEvent,
0030            const edm::EventSetup& iEventSetup,
0031            std::vector<cmsdt::metaPrimitive>& inSLMPath,
0032            std::vector<cmsdt::metaPrimitive>& inCorMPath,
0033            std::vector<cmsdt::metaPrimitive>& outMPath) override{};
0034   void run(edm::Event& iEvent,
0035            const edm::EventSetup& iEventSetup,
0036            MuonPathPtrs& inMPath,
0037            MuonPathPtrs& outMPath) override;
0038 
0039   void finish() override{};
0040 
0041   // Other public methods
0042   void removeOutliers(MuonPathPtr& mpath);
0043 
0044   double getMeanTime(MuonPathPtr& mpath);
0045 
0046   void setTimeTolerance(int time) { timeTolerance_ = time; }
0047   int getTimeTolerance() { return timeTolerance_; }
0048 
0049 private:
0050   // Private attributes
0051   const bool debug_;
0052   int timeTolerance_;
0053 };
0054 
0055 #endif