File indexing completed on 2024-04-06 12:09:38
0001 #ifndef MuonSeedsAnalyzer_H
0002 #define MuonSeedsAnalyzer_H
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <memory>
0012 #include <fstream>
0013 #include "FWCore/Framework/interface/Frameworkfwd.h"
0014 #include "FWCore/Framework/interface/Event.h"
0015 #include "FWCore/Framework/interface/MakerMacros.h"
0016 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0017 #include "FWCore/ServiceRegistry/interface/Service.h"
0018 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0019 #include "DQMServices/Core/interface/DQMStore.h"
0020 #include "RecoMuon/TrackingTools/interface/MuonServiceProxy.h"
0021
0022 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h"
0023 #include "DataFormats/TrajectorySeed/interface/TrajectorySeedCollection.h"
0024
0025 class TrajectoryStateOnSurface;
0026 class TrajectorySeed;
0027 class MuonServiceProxy;
0028
0029 class MuonSeedsAnalyzer : public DQMEDAnalyzer {
0030 public:
0031
0032 MuonSeedsAnalyzer(const edm::ParameterSet&);
0033
0034
0035 ~MuonSeedsAnalyzer() override;
0036
0037 void analyze(const edm::Event&, const edm::EventSetup&) override;
0038 void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
0039
0040 private:
0041
0042 MuonServiceProxy* theService;
0043 edm::ParameterSet parameters;
0044
0045
0046 edm::EDGetTokenT<TrajectorySeedCollection> theSeedsCollectionLabel_;
0047
0048
0049 std::string metname;
0050
0051
0052 int seedHitBin;
0053 double seedHitMin;
0054 double seedHitMax;
0055
0056 int PhiBin;
0057 double PhiMin;
0058 double PhiMax;
0059
0060 int EtaBin;
0061 double EtaMin;
0062 double EtaMax;
0063
0064 int ThetaBin;
0065 double ThetaMin;
0066 double ThetaMax;
0067
0068 int Chi2Bin;
0069 double Chi2Min;
0070 double Chi2Max;
0071
0072 int seedPtBin;
0073 double seedPtMin;
0074 double seedPtMax;
0075
0076 int seedPxyzBin;
0077 double seedPxyzMin;
0078 double seedPxyzMax;
0079
0080 int pErrBin;
0081 double pErrMin;
0082 double pErrMax;
0083
0084 int pxyzErrBin;
0085 double pxyzErrMin;
0086 double pxyzErrMax;
0087
0088 int phiErrBin;
0089 double phiErrMin;
0090 double phiErrMax;
0091
0092 int etaErrBin;
0093 double etaErrMin;
0094 double etaErrMax;
0095
0096
0097 MonitorElement* NumberOfRecHitsPerSeed;
0098 MonitorElement* seedPhi;
0099 MonitorElement* seedEta;
0100 MonitorElement* seedTheta;
0101 MonitorElement* seedPt;
0102 MonitorElement* seedPx;
0103 MonitorElement* seedPy;
0104 MonitorElement* seedPz;
0105 MonitorElement* seedPtErr;
0106 MonitorElement* seedPtErrVsPhi;
0107 MonitorElement* seedPtErrVsEta;
0108 MonitorElement* seedPtErrVsPt;
0109 MonitorElement* seedPxErr;
0110 MonitorElement* seedPyErr;
0111 MonitorElement* seedPzErr;
0112 MonitorElement* seedPErr;
0113 MonitorElement* seedPErrVsPhi;
0114 MonitorElement* seedPErrVsEta;
0115 MonitorElement* seedPErrVsPt;
0116 MonitorElement* seedPhiErr;
0117 MonitorElement* seedEtaErr;
0118 };
0119 #endif