Go to the documentation of this file.00001 #ifndef SiPixelMuonHLT_SiPixelMuonHLT_h
00002 #define SiPixelMuonHLT_SiPixelMuonHLT_h
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00017
00018
00019
00020
00021
00023
00024 #include <memory>
00025 #include <string>
00026
00027
00028 #include "FWCore/Framework/interface/Frameworkfwd.h"
00029 #include "FWCore/Framework/interface/EDAnalyzer.h"
00030 #include "FWCore/Framework/interface/MakerMacros.h"
00031 #include "FWCore/Framework/interface/EDProducer.h"
00032 #include "FWCore/Framework/interface/Event.h"
00033 #include "FWCore/Framework/interface/EventSetup.h"
00034 #include "FWCore/Framework/interface/ESHandle.h"
00035 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00036 #include "FWCore/ServiceRegistry/interface/Service.h"
00037 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00038 #include "DQM/SiStripCommon/interface/SiStripFolderOrganizer.h"
00039
00040 #include "DQMServices/Core/interface/MonitorElement.h"
00041 #include "DQMServices/Core/interface/DQMStore.h"
00042
00043 #include "DataFormats/Common/interface/Handle.h"
00044 #include "DataFormats/Common/interface/DetSetVectorNew.h"
00045 #include "DataFormats/Common/interface/LazyGetter.h"
00046 #include "DataFormats/DetId/interface/DetId.h"
00047 #include "DataFormats/SiPixelDigi/interface/PixelDigi.h"
00048 #include "DataFormats/SiPixelCluster/interface/SiPixelCluster.h"
00049 #include "DataFormats/SiPixelDetId/interface/PixelSubdetector.h"
00050 #include "DataFormats/SiPixelDetId/interface/PixelBarrelName.h"
00051 #include "DataFormats/SiPixelDetId/interface/PixelEndcapName.h"
00052 #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHit.h"
00053
00054 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h"
00055 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidateFwd.h"
00056 #include "DataFormats/TrackReco/interface/Track.h"
00057 #include "DataFormats/MuonReco/interface/MuonFwd.h"
00058 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
00059 #include "DataFormats/MuonSeed/interface/L2MuonTrajectorySeed.h"
00060 #include "DataFormats/MuonSeed/interface/L2MuonTrajectorySeedCollection.h"
00061 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h"
00062 #include "DataFormats/MuonSeed/interface/L3MuonTrajectorySeed.h"
00063 #include "DataFormats/MuonSeed/interface/L3MuonTrajectorySeedCollection.h"
00064 #include "DataFormats/Common/interface/TriggerResults.h"
00065
00066 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
00067 #include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h"
00068 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
00069 #include "Geometry/Records/interface/GlobalTrackingGeometryRecord.h"
00070 #include "Geometry/CommonTopologies/interface/PixelTopology.h"
00071 #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h"
00072 #include "Geometry/CommonDetUnit/interface/GeomDet.h"
00073 #include "Geometry/Records/interface/GlobalTrackingGeometryRecord.h"
00074 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
00075 #include "MagneticField/Engine/interface/MagneticField.h"
00076 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateTransform.h"
00077 #include "TrackingTools/DetLayers/interface/DetLayer.h"
00078
00079 #include "TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHit.h"
00080 #include "TrackingTools/TransientTrackingRecHit/interface/TransientTrackingRecHitBuilder.h"
00081 #include "TrackingTools/Records/interface/TransientRecHitRecord.h"
00082
00083 #include <boost/cstdint.hpp>
00084
00085 class SiPixelMuonHLT : public edm::EDAnalyzer {
00086
00087 struct LayerMEs{
00088 MonitorElement* EtaPhiAllClustersMap;
00089 };
00090
00091 public:
00092 explicit SiPixelMuonHLT(const edm::ParameterSet& conf);
00093 ~SiPixelMuonHLT();
00094
00095 typedef edmNew::DetSet<SiPixelCluster>::const_iterator ClusterIterator;
00096
00097 virtual void analyze(const edm::Event&, const edm::EventSetup&);
00098 virtual void beginJob() ;
00099 virtual void endJob() ;
00100
00101 virtual void Histo_init();
00102
00103 private:
00104 edm::ParameterSet conf_;
00105 edm::InputTag src_;
00106 bool saveOUTput_;
00107 int eventNo;
00108 DQMStore* theDMBE;
00109
00110 edm::ParameterSet parameters_;
00111 std::string monitorName_;
00112 std::string outputFile_;
00113
00114 int counterEvt_;
00115 int prescaleEvt_;
00116 bool verbose_;
00117
00118
00119
00120
00121
00122
00123 edm::InputTag clusterCollectionTag_;
00124 edm::InputTag rechitsCollectionTag_;
00125 edm::InputTag l3MuonCollectionTag_;
00126
00127 SiStripFolderOrganizer folder_organizer;
00128 std::map<int, MonitorElement*> MEContainerAllBarrelEtaPhi;
00129 std::map<int, MonitorElement*> MEContainerAllBarrelZPhi;
00130 std::map<int, MonitorElement*> MEContainerAllBarrelEta;
00131 std::map<int, MonitorElement*> MEContainerAllBarrelZ;
00132 std::map<int, MonitorElement*> MEContainerAllBarrelPhi;
00133 std::map<int, MonitorElement*> MEContainerAllBarrelN;
00134 std::map<int, MonitorElement*> MEContainerAllEndcapXY;
00135 std::map<int, MonitorElement*> MEContainerAllEndcapPhi;
00136 std::map<int, MonitorElement*> MEContainerAllEndcapN;
00137 std::map<int, MonitorElement*> MEContainerOnTrackBarrelEtaPhi;
00138 std::map<int, MonitorElement*> MEContainerOnTrackBarrelZPhi;
00139 std::map<int, MonitorElement*> MEContainerOnTrackBarrelEta;
00140 std::map<int, MonitorElement*> MEContainerOnTrackBarrelZ;
00141 std::map<int, MonitorElement*> MEContainerOnTrackBarrelPhi;
00142 std::map<int, MonitorElement*> MEContainerOnTrackBarrelN;
00143 std::map<int, MonitorElement*> MEContainerOnTrackEndcapXY;
00144 std::map<int, MonitorElement*> MEContainerOnTrackEndcapPhi;
00145 std::map<int, MonitorElement*> MEContainerOnTrackEndcapN;
00146
00147 };
00148
00149 #endif