27 case(
ENERGY):
return "Energy";
break;
28 case(
TIME):
return "Time";
break;
29 case(
PULSE):
return "Pulse";
break;
30 case(
ADC):
return "ADC";
break;
31 default:
return "";
break;
37 case(
PEDESTAL):
return "Pedestal";
break;
38 case(
LED):
return "LED";
break;
39 case(
LASER):
return "Laser";
break;
40 case(
BEAM):
return "Beam";
break;
41 default:
return "Other";
break;
54 switch (
id.subdet()) {
59 default: subdetStr=
"Other";
break;
62 sprintf(name,
"%s_%s_%d_%d_%d_eid=%d_%d_%d_%d_HTR_%d:%d%c",
63 flavor.c_str(),subdetStr.c_str(),
id.ieta(),
id.iphi(),
id.depth(),
79 switch (
id.hcalSubdet()) {
84 default: subdetStr=
"Other";
break;
88 if (!chanstring.size()) {
89 chanstring =
"Unknown";
90 edm::LogInfo(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Unknown calibration channel " <<
id.cboxChannel();
93 sprintf(name,
"%s_CALIB_%s_%d_%d_chan=%s_eid=%d_%d_%d_%d_HTR_%d:%d%c",
94 flavor.c_str(),subdetStr.c_str(),
id.ieta(),
id.iphi(),chanstring.c_str(),
112 default: td=0;
break;
116 printf(
"Unknown %d !\n", et);
122 retval=(TH1*)td->Get(name);
123 int bins=0;
double lo=0, hi=0;
139 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) pedGeVlo/hi not found.";
149 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) ledGeVlo/hi not found.";
159 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) laserGeVlo/hi not found.";
169 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) beamGeVlo/hi not found.";
179 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) otherGeVlo/hi not found.";
193 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) timeNSlo/hi not found.";
208 edm::LogError(
"HcalQLPlotHistoMgr::GetAHistogram") <<
"Parameter(s) pedADClo/hi not found.";
216 retval=
new TProfile(name,name,bins,lo,hi);
217 retval->GetXaxis()->SetTitle(
"TimeSlice(25ns)");
218 retval->GetYaxis()->SetTitle(
"fC");
221 retval=
new TH1F(name,name,bins,lo,hi);
222 retval->GetXaxis()->SetTitle(
"Timing(ns)");
225 retval=
new TH1F(name,name,bins,lo,hi);
226 retval->GetXaxis()->SetTitle(
"Energy(GeV)");
229 retval=
new TH1F(name,name,bins,lo,hi);
230 retval->GetXaxis()->SetTitle(
"ADC Counts");
T getParameter(std::string const &) const
int fiberIndex() const
get the fiber index. For VME 1-8 (which of eight fibers carried by a spigot), for uTCA fibers are zer...
static const int TIME_BINS
static const int BEAM_BINS
HcalQLPlotHistoMgr(TDirectory *parent, const edm::ParameterSet &histoParams)
static const int OTHER_BINS
int htrSlot() const
get the htr slot
edm::ParameterSet histoParams_
int readoutVMECrateId() const
get the readout VME crate number
static const int LED_BINS
static std::string nameForFlavor(HistType ht)
int htrTopBottom() const
get the htr top/bottom (1=top/0=bottom), valid for VME
TDirectory * laserHistDir
int dccid() const
get the (Hcal local) DCC id for VME, crate number for uTCA
int fiberChanId() const
get the fiber channel id (which of channels on a fiber)
int spigot() const
get the spigot (input number on DCC, AMC card number for uTCA)
static const int PULSE_BINS
TH1 * GetAHistogramImpl(const char *name, HistType ht, EventType et)
static const int LASER_BINS
TH1 * GetAHistogram(const HcalDetId &id, const HcalElectronicsId &eid, HistType ht, EventType et)
static std::string nameForEvent(EventType et)
static const int PED_BINS
Readout chain identification for Hcal.
TDirectory * otherHistDir