53 LogTrace(
"DTDQM|DTMonitorModule|DTRunConditionVar") <<
"DTRunConditionVar: destructor called";
61 LogTrace(
"DTDQM|DTMonitorModule|DTRunConditionVar") <<
"DTRunConditionVar: bookHistograms";
83 LogTrace(
"DTDQM|DTMonitorModule|DTRunConditionVar")
84 <<
"--- [DTRunConditionVar] Event analysed #Run: " <<
event.id().run() <<
" #Event: " <<
event.id().event()
104 uint32_t indexCh = DTid.
rawId();
107 if ((*segment).hasPhi()) {
108 int nHitsPhi = (*segment).phiSegment()->degreesOfFreedom() + 2;
109 double xdir = (*segment).phiSegment()->localDirection().x();
110 double zdir = (*segment).phiSegment()->localDirection().z();
112 double anglePhiSegm = fabs(atan(xdir / zdir)) * 180. /
TMath::Pi();
115 double segmentVDrift = segment->phiSegment()->vDrift();
120 float vDriftPhi1(0.), vDriftPhi2(0.);
121 float ResPhi1(0.), ResPhi2(0.);
125 if (status1 != 0 || status2 != 0) {
127 throw cms::Exception(
"DTRunConditionVarClient") <<
"Could not find vDrift entry in DB for" << sl << endl;
130 float vDriftMed = (vDriftPhi1 + vDriftPhi2) / 2.;
132 segmentVDrift = vDriftMed * (1. - segmentVDrift);
134 double segmentT0 = segment->phiSegment()->t0();
136 if (segment->phiSegment()->ist0Valid())
138 if (segmentVDrift != vDriftMed)
149 int wh = dtCh.
wheel();
159 string bookingFolder =
"DT/02-Segments/Wheel" + wheel.str() +
"/Sector" + sector.str() +
"/Station" + station.str();
160 string histoTag =
"_W" + wheel.str() +
"_Sec" + sector.str() +
"_St" + station.str();
164 LogTrace(
"DTDQM|DTMonitorModule|DTRunConditionVar")
165 <<
"[DTRunConditionVar]: booking histos in " << bookingFolder << endl;
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX)
edm::ESHandle< DTMtime > mTime
edm::EDGetTokenT< DTRecSegment4DCollection > dt4DSegmentsToken_
void setCurrentFolder(std::string const &fullpath)
constexpr uint32_t rawId() const
get the raw id
void analyze(const edm::Event &event, const edm::EventSetup &eventSetup) override
const DTMtime * mTimeMap_
C::const_iterator const_iterator
constant access iterator type
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
void dqmBeginRun(const edm::Run &, const edm::EventSetup &) override
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
std::map< uint32_t, std::map< std::string, MonitorElement * > > chamberHistos
int get(int wheelId, int stationId, int sectorId, int slId, float &mTime, float &mTrms, DTTimeUnits::type unit) const
~DTRunConditionVar() override
void bookChamberHistos(DQMStore::IBooker &, const DTChamberId &dtCh, std::string histoType, int, float, float)
int station() const
Return the station number.
int wheel() const
Return the wheel number.
edm::ESHandle< DTGeometry > dtGeom
DTRunConditionVar(const edm::ParameterSet &pset)