Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-05-12 01:51:33

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 
0030   void run(edm::Event& iEvent,
0031            const edm::EventSetup& iEventSetup,
0032            MuonPathPtrs& inMPath,
0033            MuonPathPtrs& outMPath) override;
0034 
0035   void finish() override{};
0036 
0037   // Other public methods
0038   void removeOutliers(MuonPathPtr& mpath);
0039 
0040   double getMeanTime(MuonPathPtr& mpath);
0041 
0042   void setTimeTolerance(int time) { timeTolerance_ = time; }
0043   int getTimeTolerance() { return timeTolerance_; }
0044 
0045 private:
0046   // Private attributes
0047   const bool debug_;
0048   int timeTolerance_;
0049 };
0050 
0051 #endif