File indexing completed on 2023-03-17 10:56:11
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 #ifndef SiPixelMonitorTrack_SiPixelTrackResidualModule_h
0015 #define SiPixelMonitorTrack_SiPixelTrackResidualModule_h
0016
0017 #include "DQMServices/Core/interface/DQMStore.h"
0018 #include "DataFormats/GeometryCommonDetAlgo/interface/MeasurementVector.h"
0019 #include "DataFormats/TrackerRecHit2D/interface/SiPixelRecHitCollection.h"
0020 #include "DataFormats/TrackerCommon/interface/TrackerTopology.h"
0021 #include "Geometry/Records/interface/TrackerTopologyRcd.h"
0022 #include <cstdint>
0023
0024 namespace edm {
0025 class EventSetup;
0026 }
0027
0028 class SiPixelTrackResidualModule {
0029 public:
0030 typedef dqm::reco::DQMStore DQMStore;
0031 typedef dqm::reco::MonitorElement MonitorElement;
0032
0033 SiPixelTrackResidualModule();
0034 SiPixelTrackResidualModule(const uint32_t);
0035 ~SiPixelTrackResidualModule();
0036
0037 void book(const edm::ParameterSet &,
0038 const TrackerTopology *,
0039 DQMStore::IBooker &,
0040 bool reducedSet = true,
0041 int type = 0,
0042 bool isUpgrade = false);
0043 void fill(const Measurement2DVector &,
0044 bool reducedSet = true,
0045 bool modon = true,
0046 bool ladon = true,
0047 bool layon = true,
0048 bool phion = true,
0049 bool bladeon = true,
0050 bool diskon = true,
0051 bool ringon = true);
0052 void fill(const SiPixelCluster &clust,
0053 bool onTrack,
0054 double corrCharge,
0055 bool reducedSet,
0056 bool modon,
0057 bool ladon,
0058 bool layon,
0059 bool phion,
0060 bool bladeon,
0061 bool diskon,
0062 bool ringon);
0063 void nfill(int onTrack,
0064 int offTrack,
0065 bool reducedSet,
0066 bool modon,
0067 bool ladon,
0068 bool layon,
0069 bool phion,
0070 bool bladeon,
0071 bool diskon,
0072 bool ringon);
0073
0074 private:
0075 uint32_t id_;
0076 bool bBookTracks;
0077
0078 MonitorElement *meResidualX_;
0079 MonitorElement *meResidualY_;
0080 MonitorElement *meNClusters_onTrack_;
0081 MonitorElement *meCharge_onTrack_;
0082 MonitorElement *meSize_onTrack_;
0083 MonitorElement *meSizeX_onTrack_;
0084 MonitorElement *meSizeY_onTrack_;
0085 MonitorElement *meNClusters_offTrack_;
0086 MonitorElement *meCharge_offTrack_;
0087 MonitorElement *meSize_offTrack_;
0088 MonitorElement *meSizeX_offTrack_;
0089 MonitorElement *meSizeY_offTrack_;
0090
0091
0092 MonitorElement *meResidualXLad_;
0093 MonitorElement *meResidualYLad_;
0094 MonitorElement *meNClusters_onTrackLad_;
0095 MonitorElement *meCharge_onTrackLad_;
0096 MonitorElement *meSize_onTrackLad_;
0097 MonitorElement *meSizeX_onTrackLad_;
0098 MonitorElement *meSizeY_onTrackLad_;
0099 MonitorElement *meNClusters_offTrackLad_;
0100 MonitorElement *meCharge_offTrackLad_;
0101 MonitorElement *meSize_offTrackLad_;
0102 MonitorElement *meSizeX_offTrackLad_;
0103 MonitorElement *meSizeY_offTrackLad_;
0104
0105 MonitorElement *meResidualXLay_;
0106 MonitorElement *meResidualYLay_;
0107 MonitorElement *meNClusters_onTrackLay_;
0108 MonitorElement *meCharge_onTrackLay_;
0109 MonitorElement *meSize_onTrackLay_;
0110 MonitorElement *meSizeX_onTrackLay_;
0111 MonitorElement *meSizeY_onTrackLay_;
0112 MonitorElement *meNClusters_offTrackLay_;
0113 MonitorElement *meCharge_offTrackLay_;
0114 MonitorElement *meSize_offTrackLay_;
0115 MonitorElement *meSizeX_offTrackLay_;
0116 MonitorElement *meSizeY_offTrackLay_;
0117
0118 MonitorElement *meResidualXPhi_;
0119 MonitorElement *meResidualYPhi_;
0120 MonitorElement *meNClusters_onTrackPhi_;
0121 MonitorElement *meCharge_onTrackPhi_;
0122 MonitorElement *meSize_onTrackPhi_;
0123 MonitorElement *meSizeX_onTrackPhi_;
0124 MonitorElement *meSizeY_onTrackPhi_;
0125 MonitorElement *meNClusters_offTrackPhi_;
0126 MonitorElement *meCharge_offTrackPhi_;
0127 MonitorElement *meSize_offTrackPhi_;
0128 MonitorElement *meSizeX_offTrackPhi_;
0129 MonitorElement *meSizeY_offTrackPhi_;
0130
0131
0132 MonitorElement *meResidualXBlade_;
0133 MonitorElement *meResidualYBlade_;
0134 MonitorElement *meNClusters_onTrackBlade_;
0135 MonitorElement *meCharge_onTrackBlade_;
0136 MonitorElement *meSize_onTrackBlade_;
0137 MonitorElement *meSizeX_onTrackBlade_;
0138 MonitorElement *meSizeY_onTrackBlade_;
0139 MonitorElement *meNClusters_offTrackBlade_;
0140 MonitorElement *meCharge_offTrackBlade_;
0141 MonitorElement *meSize_offTrackBlade_;
0142 MonitorElement *meSizeX_offTrackBlade_;
0143 MonitorElement *meSizeY_offTrackBlade_;
0144
0145 MonitorElement *meResidualXDisk_;
0146 MonitorElement *meResidualYDisk_;
0147 MonitorElement *meNClusters_onTrackDisk_;
0148 MonitorElement *meCharge_onTrackDisk_;
0149 MonitorElement *meSize_onTrackDisk_;
0150 MonitorElement *meSizeX_onTrackDisk_;
0151 MonitorElement *meSizeY_onTrackDisk_;
0152 MonitorElement *meNClusters_offTrackDisk_;
0153 MonitorElement *meCharge_offTrackDisk_;
0154 MonitorElement *meSize_offTrackDisk_;
0155 MonitorElement *meSizeX_offTrackDisk_;
0156 MonitorElement *meSizeY_offTrackDisk_;
0157
0158 MonitorElement *meResidualXRing_;
0159 MonitorElement *meResidualYRing_;
0160 MonitorElement *meNClusters_onTrackRing_;
0161 MonitorElement *meCharge_onTrackRing_;
0162 MonitorElement *meSize_onTrackRing_;
0163 MonitorElement *meSizeX_onTrackRing_;
0164 MonitorElement *meSizeY_onTrackRing_;
0165 MonitorElement *meNClusters_offTrackRing_;
0166 MonitorElement *meCharge_offTrackRing_;
0167 MonitorElement *meSize_offTrackRing_;
0168 MonitorElement *meSizeX_offTrackRing_;
0169 MonitorElement *meSizeY_offTrackRing_;
0170 };
0171
0172 #endif