26 , conf_(iConfig), m_cacheID_(0)
54 for(std::map<int32_t, MonitorElement*>::const_iterator it =
HitResidual.begin(),
80 double d_residual_xmin =
Parameters.getParameter<
double>(
"xmin");
81 double d_residual_xmax =
Parameters.getParameter<
double>(
"xmax");
83 int32_t i_normres_Nbins = Parameters.
getParameter<int32_t>(
"Nbinx");
84 double d_normres_xmin = Parameters.getParameter<
double>(
"xmin");
85 double d_normres_xmax = Parameters.getParameter<
double>(
"xmax");
97 std::vector<uint32_t> activeDets;
99 tkmechstruct->addActiveDetectorsRawIds(activeDets);
103 std::vector<uint32_t> DetIds = activeDets;
106 for (std::vector<uint32_t>::const_iterator DetItr=activeDets.begin(),
107 DetItrEnd = activeDets.end(); DetItr!=DetItrEnd; ++DetItr)
109 uint ModuleID = (*DetItr);
117 std::string hid = hidmanager.createHistoId(
"HitResiduals",
"det",ModuleID);
118 std::string normhid = hidmanager.createHistoId(
"NormalizedHitResiduals",
"det",ModuleID);
120 i_residuals_Nbins,d_residual_xmin,d_residual_xmax);
121 HitResidual[ModuleID]->setAxisTitle(
"(x_{pred} - x_{rec})' [cm]");
123 i_normres_Nbins,d_normres_xmin,d_normres_xmax);
131 std::string histoname = Form(subdetandlayer.first.find(
"B") != std::string::npos ?
132 "HitResiduals_%s__Layer__%d" :
"HitResiduals_%s__wheel__%d" ,
133 subdetandlayer.first.c_str(),
std::abs(subdetandlayer.second));
135 Form(subdetandlayer.first.find(
"B") != std::string::npos ?
136 "NormalizedHitResidual_%s__Layer__%d" :
"NormalizedHitResidual_%s__wheel__%d" ,
137 subdetandlayer.first.c_str(),
std::abs(subdetandlayer.second));
140 i_residuals_Nbins,d_residual_xmin,d_residual_xmax);
141 m_SubdetLayerResiduals[subdetandlayer]->
setAxisTitle(
"(x_{pred} - x_{rec})' [cm]");
144 i_normres_Nbins,d_normres_xmin,d_normres_xmax);
173 if(outputMEsInRootFile){
190 std::vector<TrackerValidationVariables::AVHitStruct> v_hitstruct;
192 for (std::vector<TrackerValidationVariables::AVHitStruct>::const_iterator it = v_hitstruct.begin(),
193 itEnd = v_hitstruct.end(); it != itEnd; ++it) {
194 uint RawId = it->rawDetId;
virtual void beginRun(edm::Run const &run, edm::EventSetup const &iSetup)
T getParameter(std::string const &) const
void createMEs(const edm::EventSetup &)
void resetModuleMEs(int32_t modid)
virtual void analyze(const edm::Event &, const edm::EventSetup &)
bool reset_me_after_each_run
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
unsigned long long m_cacheID_
#define DEFINE_FWK_MODULE(type)
std::pair< std::string, int32_t > GetSubDetAndLayer(const uint32_t &detid, const TrackerTopology *tTopo, bool ring_flag=0)
void fillHitQuantities(const Trajectory *trajectory, std::vector< AVHitStruct > &v_avhitout)
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
SiStripFolderOrganizer folder_organizer
void setDetectorFolder(uint32_t rawdetid, const TrackerTopology *tTopo)
vector< ParameterSet > Parameters
HistoClass NormedHitResiduals
bool accept(const edm::Event &event, const edm::EventSetup &setup)
To be called from analyze/filter() methods.
Abs< T >::type abs(const T &t)
void save(const std::string &filename, const std::string &path="", const std::string &pattern="", const std::string &rewrite="", const uint32_t run=0, SaveReferenceTag ref=SaveWithReference, int minStatus=dqm::qstatus::STATUS_OK, const std::string &fileupdate="RECREATE")
virtual void endRun(const edm::Run &, const edm::EventSetup &)
virtual void beginJob(void)
void resetLayerMEs(const std::pair< std::string, int32_t > &)
Detector identifier class for the strip tracker.
SubDetector subDetector() const
void setLayerFolder(uint32_t rawdetid, const TrackerTopology *tTopo, int32_t layer=0, bool ring_flag=0)
T const * product() const
std::map< std::pair< std::string, int32_t >, MonitorElement * > m_SubdetLayerNormedResiduals
GenericTriggerEventFlag * genTriggerEventFlag_
std::map< std::pair< std::string, int32_t >, MonitorElement * > m_SubdetLayerResiduals
MonitorTrackResiduals(const edm::ParameterSet &)
virtual void endJob(void)
void initRun(const edm::Run &run, const edm::EventSetup &setup)
To be called from beginRun() methods.
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)