26 std::string summaryFolder = ps.
getUntrackedParameter<std::string>(
"SummaryFolder",
"SummaryHistograms");
28 globalFolder_ = subsystemFolder +
"/"+ recHitTypeFolder +
"/"+ summaryFolder ;
65 if(0 != setup.
find( recordKey ) ) {
70 std::vector<int> FedsInIds= sumFED->m_fed_in;
73 while(!flag && f < FedsInIds.size()) {
74 int fedID=FedsInIds[
f];
90 std::string histoName=
"reportSummary";
98 me->
Fill(defaultValue);
107 me =
dbe_->
book2D(
"reportSummaryMap",
"RPC Report Summary Map", 15, -7.5, 7.5, 12, 0.5 ,12.5);
110 std::stringstream BinLabel;
111 for (
int i= 1 ;
i<=15;
i++){
120 BinLabel<<
"Disk"<<
i-5;
122 BinLabel<<
"Disk"<<i-11;
123 else if(i==11 || i==5)
126 BinLabel<<
"Wheel"<<i-8;
132 for(
int i=1;
i<=15;
i++){
133 for (
int j=1;
j<=12;
j++ ){
134 if(
i==5 ||
i==11 || (
j>6 && (i<6 || i>10)))
142 for (
int j=1;
j<=12;
j++ ){
151 std::stringstream segName;
152 std::vector<std::string> segmentNames;
153 for(
int i=-4;
i<=4;
i++){
156 segName<<
"RPC_Wheel"<<
i;
157 segmentNames.push_back(segName.str());
161 segName<<
"RPC_Disk"<<
i;
162 segmentNames.push_back(segName.str());
166 for(
unsigned int i=0;
i<segmentNames.size();
i++){
173 me->
Fill(defaultValue);
190 edm::LogVerbatim (
"rpceventsummary") <<
"[RPCEventSummary]: End of LS transition, performing DQM client operation";
223 std::stringstream meName;
233 float barrelFactor = 0;
235 for(
int w = -2 ; w<3; w++){
238 meName<<
globalFolder_<<
"/RPCChamberQuality_Roll_vs_Sector_Wheel"<<w;
239 myMe =
dbe_->
get(meName.str());
242 float wheelFactor = 0;
245 float sectorFactor = 0;
246 int rollInSector = 0;
250 if((
s!=4 &&
r > 17 ) || ((
s ==9 ||
s ==10) &&
r >15 ) )
continue;
256 else sectorFactor+=1;
260 sectorFactor = sectorFactor/rollInSector;
263 wheelFactor += sectorFactor;
267 wheelFactor = wheelFactor/myMe->
getNbinsX();
270 meName<<eventInfoPath_ +
"/reportSummaryContents/RPC_Wheel"<<w;
271 globalMe=
dbe_->
get(meName.str());
272 if(globalMe) globalMe->
Fill(wheelFactor);
274 barrelFactor += wheelFactor;
278 barrelFactor = barrelFactor/5;
281 float endcapFactor = 0;
290 meName<<
globalFolder_<<
"/RPCChamberQuality_Ring_vs_Segment_Disk"<<d;
291 myMe =
dbe_->
get(meName.str());
294 float diskFactor = 0;
296 float sectorFactor[6]= {0,0,0,0,0,0};
298 for (
int i = 0 ;
i <6;
i++){
299 int firstSeg = (
i *6 )+1;
300 int lastSeg = firstSeg +6;
301 int rollInSector = 0;
302 for(
int seg = firstSeg; seg< lastSeg ; seg++){
308 else sectorFactor[
i]+=1;
312 sectorFactor[
i] = sectorFactor[
i]/rollInSector;
316 for (
int sec = 0 ; sec<6; sec++){
317 diskFactor += sectorFactor[sec];
319 if (d<0) reportMe->
setBinContent(d+5, sec+1 , sectorFactor[sec]);
320 else reportMe->
setBinContent(d+11, sec+1 , sectorFactor[sec]);
324 diskFactor = diskFactor/6;
327 meName<<eventInfoPath_ +
"/reportSummaryContents/RPC_Disk"<<d;
328 globalMe=
dbe_->
get(meName.str());
329 if(globalMe) globalMe->
Fill(diskFactor);
331 endcapFactor += diskFactor;
341 float rpcFactor = barrelFactor;
344 globalMe =
dbe_->
get(eventInfoPath_ +
"/reportSummary");
345 if(globalMe) globalMe->
Fill(rpcFactor);
std::string eventInfoPath_
T getUntrackedParameter(std::string const &, T const &) const
const std::string & getName(void) const
get name of ME
void setBinContent(int binx, double content)
set content of bin (1-D)
void endLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &c)
End Lumi Block.
void endRun(const edm::Run &r, const edm::EventSetup &c)
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
bool enableReportSummary_
bool doEndcapCertification_
MonitorElement * bookFloat(const char *name)
Book float.
const eventsetup::EventSetupRecord * find(const eventsetup::EventSetupRecordKey &) const
int getNbinsY(void) const
get # of bins in Y-axis
void analyze(const edm::Event &iEvent, const edm::EventSetup &c)
Analyze.
std::string globalFolder_
void removeElement(const std::string &name)
MonitorElement * get(const std::string &path) const
get ME from full pathname (e.g. "my/long/dir/my_histo")
virtual ~RPCEventSummary()
Destructor.
void beginRun(const edm::Run &r, const edm::EventSetup &c)
MonitorElement * RPCEvents
RPCEventSummary(const edm::ParameterSet &ps)
Constructor.
void beginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, edm::EventSetup const &context)
Begin Lumi block.
std::pair< int, int > FEDRange_
double getBinContent(int binx) const
get content of bin (1-D)
std::string prefixFolder_
int getNbinsX(void) const
get # of bins in X-axis
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
void setCurrentFolder(const std::string &fullpath)
static HCTypeTag findType(char const *iTypeName)
find a type based on the types name, if not found will return default HCTypeTag